2.1 Delphi –дегі деректер типі 

    

Object Pascal тілінде типтер маңызды роль атқарады. Delphi-де қолданылатын Object Pascal тілінің типтерінің мәні айтарлықтай ескен, яғни олардың көмегімен программистің негізгі құралы кластар анықталады.

    Жалпы деректер типтерін екi топқа бөлiп қарастырамыз:  қарапайым  және күрделі типтер(кесте 1).

 

         Кесте  1  - Деректер типтері

Қарапайым типтер(скалярлық)

Күрделі типтер(құрылымдық)

Сандық

Жолдық

логикалық

массивтер

символдық

жиындар

санаулы

файлдық

нұсқағыштық

 

 

   Сандық - типті деректер(кесте 2 -3)

    Сандық – типтер ондық санау жүйесіндегі сандар: 0, 1,2, 3, 4, 5,  6, 7, 8, 9 – цифрлары арқылы беріледі. Ал, он алтылық санау жүйесіндегі сандарды жазу үшін олардың алдына $ -символы қойылады: $1FA.  

 

Кесте 2 -  Бүтін сандық  типтер

Тип

Ұзындығы

Мәндерінің диапазоны  

integer

4 байт

-2147483648 ... 21474833647 

Cardinal

4 байт

0 ... 4294967295

shortint

1 байт

-128 ...127   

Smaillint

2 байт

-32768 ... 32767

byte

1 байт

0 .. 255 

word

2 байт

0 .. 65535   

longint

4 байт

-2147483648 .. 2147483647  

Int64

8 байт

-9223372036854775808..9223372036854775807;

Longword

4 байт

0..4294967295;

    

Кейде нақты сандарды экспоненциальды түрде жазуға болады. Экспоненциалды бөлiм Е символынан(мантисса) тұрады:             

                            5.18Е+02   = 518 =  5.18*102 

                            10Е-03   = 0.01=  10*10-3  

 

Кесте 3 -  Нақты сандық  типтер

Тип

Ұзындығы

Цифрлар саны

Мәндерінің диапазоны  

 

Real48

6 байт

11-12

2.9e-39 .. 1.7e+38

 

Real

8 байт

15-16

5.0e-324 .. 1.7e+308

 

single

4 байт

7-8

1.5e-45 .. 3.4e+38

double

8 байт

15-16

5.0e-324 .. 1.7e+308

 

extended

10байт

19-20

3.6e-4951 .. 1.1e+4932

 

comp

8 байт

19-20

-2e63 .. 2.e63

 

Currency

8 байт

19-20

-922337203685477.5808..922337203685477.5807

 

 

     Символдық - типті деректер

     Символдық типтегi деректер апострофқа алынған символдар(сhar), жолдық шамалар(string). Мысалы, символдық  деректер:  ‘a’,  ‘xyz’, ‘F2c’ . Символдық типті деректермен:  салыстыру, біріктіру және т.б. жолдарды  өндеу амалдар  орындалады. Бұл типтің мәндері ASCII, ANSI, Unicode кестелеріндегі символдар болады(кесте 4).

 

Тип

Жолдың макс ұзындығы

Ескерту  

String,  ShortString,

255

 

AnsiString;

231

8 биттік

Сhar, AnsiChar, WideChar,

1

0...255

WideString,

230

Unicode

 

     Логикалық - типті деректер

     Математиканың ерекше бөлiмi логиканы ашқан ағылшын математигi Д.Бульдiң есiмiне байланысты логикалық типтi деректерді буллевтiк(bollean) деп атайды. Паскаль тiлiнде логикалық деректерге: true(ақиқат) және false(жалған) логикалық тұрақтылар жатады. Логикалық тұрақтылардан және   операциялардан -  логикалық өрнектер  құралады.  type Boolean = (False, True);

 

     Деректердің санаулы типiн қолданушы анықтайды, оларды кейде шектеулі деп атайды және интервалды типтер деп аталады. Санаулы типті анықтау үшін оның мәндері алдын ала белгілі болу керек.

Мысалы,  мәнi гүлдер тiзiмi болатын Flowers санаулы типiнiң жазылуы:

Type

      Flowers=(rose, lily, iris, aster);

 

Num, Litter - интервалды типтердiң  сипатталуы:

Type

     Num=1..100;         {1-ден 100-ге дейiнгi бүтiн сандар}

     Litter=’a’..’z’;        {a-мен z -аралығындағы латын әрiптерi}

      

Құрылымды типтер - қарапайым типтiң бiрiктiрiлген түрi, оларға массивтер, жолдық шамалар, жиындар, жазбалар, файлдар жатады.

           

Күн және уақыт типі

Күн, уақыт типі TdataTime стандартты идентификаторымен беріледі, ол уақытты және күнді анықтауға арналған. Жадыдағы көлемі 8 байт орын алады.

Күнмен және уақытпен жұмыс істеу үшін төмендегідей функцияларды пайдаланылады:

Function Date :  TDateTime;  // ағымдағы күнді береді;

Function DateToStr (D: TDateTirae) : String;  // күнді символдар жолына түрлендіреді.

Function DateTimeToStr (D: TDateTime)  :  String;  // күн мен уакытты символдар жолына түрлендіреді;

Function FormatDateTime (Format: String; Value : TDateTime) : String;  // күн мен уақыт Format параметрінің спецификаторына сәйкес Value
параметрінен символдар жолына түрлендіреді.

Function Now : TdateTime  // ағымдағы күн мен уақытты береді;

Function Time : TdateTime;  // ағымдағы уақытты береді;

Function   TimeToStr   (Т: TDateTime) :   String;  //  уақытты жолға айналдырады;