type
rec1=record
a:Byte;
b:Word;
end;
rec2=record
c:Longint;
case x:Byte of
1:(d:Word);
2:(e:record
case Boolean of
3: (f:rec1);
3: (g:single);
3: (c:Word)
end)
end;
var
r:rec2
begin
r.x:=255
if r.e.g=0 then
writeln (o.k.)
else
writeln (r.e.g)
end.
Бу мисолда ёзувдаги Е майдонга аниќланувчи Case Boolean of ибора, фаќат TRUE ва FALSE – иккита ќийматга эга бўлувчи, мантиќий турни танлов калити деб эълон ќилади. Бундан кейин келадиган вариантларда танлов ўзгармаслари бу турга умуман хос бўлмаган ќийматларга эга бўлибгина ќолмасдан, балки улардан яна иккитаси такрорланади ћам, вариантларнинг умумий сони эса, кутилганидек иккита эмас, балки учта бўлади.
Майдон исмлари, ёзувнинг улар эълон ќилинган чегарасида, ўзига хос бўлиши керак, лекин, агар ёзувлар майдон – ёзувларга эга бўлса, яъни бири иккинчисининг ичига кирган бўлса, исмлари ичма-ичликнинг ћар хил поѓоналаридан такрорланиши мумкин (охирги мисолда С майдонга ќаранг).
9.3. Тўпламлар
Тўплам – бир турли бир-бири билан мантиќан боѓлиќ объектлар бирлашмасидир. Боѓлиќликлар хусусиятлари фаќат дастурчи томонидан тушунилади, Турбо Паскал уни назорат ќилмайди. Тўпламга кирувчи элементлар миќдори 0 дан 256 гача бўлган чегарада ўзгариши мумкин (таркибида элемент бўлмаган тўплам бўш тўплам дейилади). Элементлар миќдорининг барќарорлиги билан тўпламлар массивлар ва ёзувлардан фарќ ќилади.
Таркибидаги ћамма элементлари бир хил бўлганда (бунда элементларнинг тўпламда келиш тартиби аћамиятсиз) ва фаќат шундагина икки тўплам тенг кучли дейилади. Агар бир тўпламнинг ћамма элементлари, шунингдек бошќасига ћам кирса, биринчи тўплам иккинчисига кирган, деб айтилади. Бўш тўплам ихтиёрий бошќа тўпламга киради.
Тўпламнинг аниќланиши ва берилишига мисол:
Do'stlaringiz bilan baham: |