А. А. Медатов, М. К. Абдувохидов, О. А. Маматқулов


Адабиётлар: [1],[2],[6] Берилмаларнинг структураланган типлари


Download 0.79 Mb.
bet41/57
Sana20.12.2022
Hajmi0.79 Mb.
#1035125
1   ...   37   38   39   40   41   42   43   44   ...   57
Bog'liq
Turbo Pascal услубий кулланма янги

Адабиётлар: [1],[2],[6]
Берилмаларнинг структураланган типлари.

Режа:
1. Тўпламлар.


2. Ёзув типлар.

1. Паскаль тилида берилган иҳтиёрий тўплам ва унинг элементлари билан ҳам иш кўриш мумкин. Тўплам элементларининг сони 256 тадан ортиб кетмаслиги талаб қилинади. Тўплам элементларида ord функцияси 0 дан 255 гача бутун сонли қиймат беради.


Тўплам типини эълон қилишда set of ёрдамчи сўзларидан фойдаланилади ва бу сўзлардан кейин диапазон типи ёки саноқли типлардаги каби тўплам элементлари эълон қилинади. Тўплам типида ҳам константалардан фойдаланиш мумкин.
Масалан:
type
a=set of ‘a’..’b’;
b=set of (Qosh, ayir, kop, bol);
c=set of 0..9; d=set of’0’..’9’;
var
kh:a; amal: b;
const
j:c=[0,2,4,6,8];
rb:d=[‘0’..’9’]

Тўплам типини бевосита var сўзидан кейин ҳам эълон қилиш мумкин.


Масалан,
var
a:set of ’a’..’b’;
b:set of (Qosh, ayir, kop, bol);
const
j:set of 0..9=[0,2,4,6,8];
rb:set of ‘0’..’9’=[‘0’..’9’];
Тўплам элементлари учун қуйидаги амаллар ўринли "" -(бирлашма), "-" - (айрима), "*" - (кесишма), "" - тенг, "<>"- тенг эмас, "< ёки >"- қисм тўплам, "in" - чап томондаги тўпламнинг ўнг томондаги тўпламда ётиши ёки ётмаслигини текшириш.

2. Ёзув типи майдонлар деб номланувчи компонентлардан иборат бўлиб, бу компонентларнинг типлари ихтиёрий бўлиши мумкин. Ёзув типини аниқлашда record ва end хизматчи сўзларидан фойдаланилади. Бу сўзлар орасида барча майдонлар ва уларнинг типлари эълон қилинади. Ҳар бир майдон “;” белгиси ёрдамида якунланади.


Масалан,
type
Complex=record;
Re:real;
Im:real
end;
Бундай аниқланган тип номи Complex дан иборат. Complex нинг объектлари Re ва Im майдонлардан иборат бўлиб, улар real типдадир.
Программада x ва y ўзгарувчилар Complex типли бўлса, уларнинг ҳар бирида иккитадан майдон бўлади:
var x,y:Complex;
Майдонларга мурожаат қилиш учун ёки майдон ўзгарувчиларига қиймат бериш учун ўзгарувчи номи, нуқта белгиси ва майдон номи ёзилиб, одатдаги ўзгарувчилар каби иш юритилади.
Бизнинг мисолимизда Complex типли ёзув орқали комплекс сонларни ифодалаш мақсадида унинг ҳақиқий қисмини Re ва мавхум қисмини Im сўзлари ёрдамида аниқлаб олдик. x ва y лар эса Complex типли бўлганлиги учун, уларнинг ҳар бири иккитадан ҳақиқий ва мавхум қисмлари учун аниқланган майдонларга эга. Ушбу майдонларга мурожаат қилиш x.Re ва x.Im ёки y.Re ва y.Im каби амалга оширилади.
x.Re, x.Im, y.Re ва y.Im лардан биз кўриб ўтган ўзгарувчилар каби иш олиб борилади.
Комплекс сонларини белгилаш учун унинг ҳақиқий ва мавхум қисмларини майдонлар сифатида қараш мумкин.
Ёзувдаги майдонларга мурожаат қилишда ёзув номини ёзмаслик учун with операторидан фойдаланилади.
Бичими:
with<ўзгарувчи>do<оператор>
Масалан,
with x do begin
Re:=3.1;
Im:=276;
end;
Юқорида киритилган типлардан фойдаланиб, икки комплекс соннинг кўпайтмасининг дастурини қуйидагича тузиш мумкин:

Download 0.79 Mb.

Do'stlaringiz bilan baham:
1   ...   37   38   39   40   41   42   43   44   ...   57




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling