Жања типтi оныњ м‰мкiн болатын мєндерiн айќын тiзу арќылы аныќтауѓа болады. Онда м‰мкiн болатын мєндер тек ќана атымен анќыталады.
Мысалы:
Светофордыњ ж±мысын басќаратын программаны ќ±ру керек дейiк. Б±л программа светофордыњ аѓымдаѓы жайын кµрсетiн модулi болады. Светофорды кµрсететiн айнымалы ‰ш мєннiњ бiреуiн ќабылдайды: ќызыл, сары, жасыл. Оларды 1,2,3 мєндерiмен байланыстыруѓа болады (кодтауѓа болады, бiраќ ол есептiњ маѓынасын айќын кµрсетпейтiн болады). Сондыќтан, тiзбелi типтi ‰ш мєндi ењгiземiз: Red, Yellow, Green атты жєне осы типтi айнымалыны ењгiземiз.
Тiзбелi типтi жазу ‰лгiсi:
(<идентификатор 1>,..,<идентификатор n>)
Мысал:
(Red,Yellow, Creen)
(Monday,Tuesday,Wednestay,Thursday,Friday,Saturday,Sunday)
(on, off)
(left, up, right, down)
Тiзбелi типтер дискреттi тип болып саналады. Тiзбелi типтi мєндердi салыстыруѓа болады. Tiзбелi типтiњ мєндерi тiзiмде µсу ретiмен кµрсетiледi. Сонымен ќатар, тiзбелi типтерден шектелген типтер жасалуы м‰мкiн:
Monday .. Friday
Left.. Up
Бiраќ, тiзбелi типтегi аттар т±раќты болып есептеледi. Сєйкес т±раќтылары бар екi немесе оданда кµп тiзбелi типтiњ сипаттауы м‰мкiн емес.
Мысалы: type
Color1=( Red Yellow, Blue)
Color2=( Green, Blue, Gray);
Б±л сиппаттама компиляция кезiнде ќате бередi.
Мєннiњ типiн келтiру ќ±рылымы
Б±л ќ±рылым µрнектiњ типiн т‰рлендiру ‰шiн керек. Дµњгелек жаќшаѓа типтiњ идентификаторынан кейiн, µрнек жазылады.
Мысалы, aDay:= Days(Num+1);
Num:=byte( Pred(Friday));
Var
LI:longint;
I:integer;
begin
LI:= 12/3456/7
I:=integer( LI+1);
Writeln (I)
end
Экранда –10616 шыѓады.
Айнымалыныњ типiн келтiру схемасы:
типтiњ
идентификаторы ( айнымалы )
Мєннiњ типiн келтiру схемасы:
типтiњ
идентификаторы ( µрнек )
Типтердiњ эквиваленттiлiгi:
Екi Т1 жєне Т2 –типтерi тµмендегi екi шарттыњ бiреуi орындалса ѓана эквиваленттi болады:
1) Екi Т1 жєне Т2 –типтерi бiрѓана идентификатор типiн кµрсетсе;
Т2 типi Т1 типiн ќолдану арќылы
type Т2=T1
т‰рiнде сиппаталса немесе осындай тењдеулер тiзбегi арќылы сипатталса.
Мысалы:
1) type
T1= integer:
T2=T1;
T3=T2;
T1жєне Т2 эквиваленттi
2) Type
A1= array[ 1..10] of integer;
A2= array[1..10] of integer;
А1 жєне А2 жоѓарыдаѓы анаќтама бойынша эквиваленттi емес,
Var
V1,V2:array[1..10] of integer;
V1 жєне V2 эквиваленттi.
Var
V1:array[1..10] of integer;
V2:array[1..10] of integer;
V3,V4:A1;
Типтер сиымдылыѓы.
Сиымдылыќтыњ шарттары ( егер бiреуi орындалса):
екi тип эквиваленттi;
екi типте б‰тiн немесе екi типте наќты;
бiр тип шектелген тип болып табылады, сонымен ќатар негiзгi тип ретiнде басќа алынады:
type
T1=shortint
T2=1..100;
Type
T1=10..100;
T2=1..5;
екi типте жиынды типтер, сонымен ќатар олардыњ негiзгi типтерi сиымды болып табылады:
type
T1=set of byte
T2=set of 1..10;
екi типте жиналѓан символды массив, элементтер саны бiрдей жєне т.б.
Меншiктеу бойынша сиымдылыќ.
Егер сол жаѓындаѓы айнымалыныњ типi оњ жаѓындаѓы µрнектiњ типiмен сиымды болса, онда меншiктеу операторы д±рыс болып табылады.
Егер келесi шарттардыњ бiрi орындалса, екi тип меншiктеу бойынша сиымды болып табылады:
-екi типте эквиваленттi, файл типтi немесе ќ±рылымды типтi (iшiнде бiр дењгейде файлдiк типтi µрiс(бµлiк) болса);
-екi типте сиымды дискреттi тип.
Дерек элементтерiне Паскаль тiлiнде т±раќтылар мен айнымалылар жатады. Осыѓан байланысты µз мысалымызѓа сєйкес программаѓа талдау ж‰ргiзейiк.
Айнымалылар программаныњ орындалу процесiнде мєнiн µзгертедi. Программа1 программасында тµртб±рыштыњ ќабырѓалары мен периметрi айнымалы болып табылады. а жєне b–ныњ мєндерi программада µзгеруi м‰мкiн жєне соѓан байланысты
периметрдiњ мєнi де µзгередi.
Т±раќты немесе константа – µзiнiњ мєнiн программаныњ орындалу процесiнде µзгертпейдi. Ол µзiнiњ мєнiмен немесе атымен берiлуi м‰мкiн. Программа1-де периметр есептелетiн кезде а жєне b екi т±раќтылары айќын берiлген жєне тµртб±рыштыњ ќабырѓаларыныњ мєндерi 8 жєне 21.
Коментарий немесе т‰сiнiктеме. Коментарий программаны немесе оныњ ќандай да бiр бµлiгiн т‰сiндiруге арналады. Т‰сiнiктемелер(комментарийлерлер) программада болса, онда программаны т‰сiнiп оќи аламыз. Паскаль тiлiнiњ т‰сiнiктемесi– б±л (* жєне *) немесе { жєне } арасына жазылѓан симводардыњ тiзбегi.
Программа1-программасында барлыќ операторларѓа т‰сiнiктеме жазылѓан. Программа орындалѓанда барлыќ т‰сiнiктемелерге мєн берiлмейдi де есептiњ шешуiне еш єсерi болмайды. Оларды программаныњ кез келген жерiне, ќай жерде бос позиция ќалдыруѓа болады, сол жерге жазуѓа болады. М±нымен ќатар, т‰сiнiктеменi программаныњ алдына да жазуѓа болады жєне клавиатурадаѓы барлыќ символдарды ќолдануѓа болады.
Достарыңызбен бөлісу: |