Бутун сонли типда берилганлар арифметик ифодаларда кулланиладиган кийматлардан иборат булиб, 1 дан 4 байтга ча булган хотирани эгаллайди.
Табл. 2.2. Бутун сонли типлар
Типи
|
Диапазони
|
Керак булган хотира
|
Byte
Shortint
Integer
Word
Longint
|
0..255
-128..127
-32768..32767
0..65535
-2147483648..2147483647
|
1
1
2
2
4
|
Мисол:
VAR
X1, X2: byte;
Y1: word;
2.3.2Хакикий типлар
Хакикикий типлар математик ифодаларда кулуниладиган хакикий кийматлардан иборат булиб, 4 дан 6 байтгча хотирани эгаллайди.
Табл. 2.3. Хакикий типлар
Типи
|
Диапазони
|
Мантиссаси
|
Керак булган хорира
|
Real
Single
Double
Extended
Comp
|
2.9*10E-39..1.7*10E38
1.5*10E-45..3.4*10E38
5.0*10E-324..1.7*10E308
1.9*10E-4951..1.1*10E4932
-2E+63+1..2E+63-1
|
11-12
7-8
15-16
19-20
10-20
|
6
4
8
10
8
|
Single, double, extended, comp типларидан {$N+} уланганда 8087 сопроцессори булгандагина фойдаланиш мумкин.
Мисол.
VAR
Summa: single;
Root1, Root2: double;
2.3.3Белгили типлар
Литерли (белгили) тип ПЭВМ ни код таблицасининг кийматларини аниклайди. Литерли тип узгарувчиси учун 1 байт керак булади..
Мисол.
VAR
Ch: char;
Дастурда char типидаги узгарувчилар ва константалар апостроф ичига олиб ёзилади. Мисол учун, 'А' А харфини беради, ' ' - жой ташаш, ';' - нукта вергуль.
2.3.4Булев типи
Булев типи икки хил киймат билан берилади: True (рост) ва False (ёлгон). Бу кийматлар мантикий ифодаларда ва муносабат ифодаларида кенг кулланади.
Табл. 2.5. Булев типи
Типи
|
Диапазони
|
Керак булган хотира
|
Boolean
|
True, False
|
1
| 2.4Фодаланувчининг типлари
Паскал тилида стандарт типлардан ташкари фойдаланувчи томонидан аникланган скаляр типлар мавжуд. Буларга санаб утиладиган ва интервал типлар киради ва хотирада 1 байт жой эгалайди.Шунинг учун фойдаланувчининг типлари 256 белгидан ошмаслиги керак. Уларни куллаш дастур куринишини анча узгартиради, хатоларни топиш осонлашади ва хотира тежалади.
Санаб чикиладиган типлар шу типдаги берилганлар кандай кийматларни кабул килса , шу кийматларни санаб чикиш оркали берилади. Алохида кийматлар велуль оркали ажратилади, хамма руйхат эса кавс ичига олиб курсатилади.
Ёзилиши: TYPE
<тип номи> = (<1-киймат, 2- киймат,...,п- киймат>);
VAR
<идентификатор,...> : < тип номи>;
Мисол.
TYPE
Gaz = (C, O, N, F);
Metall = (Fe, Co, Na, Cu, Zn); VAR
G1, G2, G3 : Gaz;
Met1, Met2 : Metall;
Season: (Winter, Spring, Summer, Autumn);
Бу мисолда фойдаланувчи типининг иккита Gaz ва Metall куринишидаги ёзувлари берилган. Уларни кийматини аниклаш - Менделеев Д.И даврий системасидаги газ ва металларнинг белгиланишини беради. G1, G2, G3 ва Met1, Met2 узгарувчилари юкорида келтирилган кийматларнинг биттасини кабул килиши мумкин. Бошка кийматларни кабул килиш дастурни узилишига олиб келади. Учинчи типдаги санаб утиладиганлар ананим (номсиз) ва улар VAR да кийматларни санаб утиш оркали берилади.
Season шу типдаги узгарувчи булиб, Winter, Spring, Summer ва Autumn кийматларин кабул килиши мумкин.
Бир хил типдаги санаб утиладиган кийматлар учун муносабат ва мантикий операцияларни куллаш мумкин. Тартиблаш ёзув типи элементинининг тартиб номери оркали амалга оширилади. Масалан, Winter < Spring ифодаси рост булади чунки, ёзув типида Spring Winter га нисбатан катта тартиб номерига эга.
Паскаль бошка типларга нисбатан фарклирок , фойдаланувчининг санаб утиладиган типларида киритиш-чикариш операцияларини кулламайди.Керкак буган пайтда фойдаланувчининг уэи киритиш-чикаришни ташкил килади.Санаб утилган типлар билан ишлаш учун Паскаль тилида Succ, Pred, Ord. стандарт куйи дастурларидан фойдаланилади..
Интервал тип , берилган узгарувчи учун кийматлар чегараси диапозонини аникловчи иккита консантани бериш имконини беради.
Компилятор интервал типдаги узгарувчиларда хар бир операциядан кейин урнатилган ички диапазонда узгарувчининг киймати коладими ёки йукми, текшириш кисм дастурини генерация килади. Иккала константа хам стандарт типларнинг бирортасига (real дан ташкари)тегишли булиши шарт. Биринчи константанинг киймати албатта иккинчи костанта кийматидан кичик булиши шарт.
Ёзилиши: TYPE
<типнинг номи> = <1-константа> . . <2-константа>;
VAR
<идентификатор,...> : <тип номи>;
Мисол.
TYPE
Days = 1 .. 31;
VAR
RabDay, BolnDay : Days;
Бу мисолда RabDay ва BolnDay узгарувчилари Days типида булиб, улар 1...31 диапазонда хар кандай кийматларни кабул килиши мумкин. Диапазондан чикиш дастур узилишига олиб келади. Интервал типни бошкачарок, универсал усул билан хам аниклаш мумкин. Бу усулда диапазон чегарасини константа кийматлари билан эмас, номи оркали аниклаш мумкин:
CONST
Min = 1; Max = 31;
TYPE
Days = Min .. Max; VAR
RabDay, BolnDay : Days;
Do'stlaringiz bilan baham: |