1-misol:
Guruhdagi talabalarning ro‘yxati va bahosi berilgan. Bizdan 5 bahoga o‘qiydiganlar soni va familiyasi A harfidan boshlanuvchi talabalar sonini topish talab qilingan bo‘lsin.
Mazkur ro‘yxatning har bir satri tartib raqami- N, talabaning familiyasi, ismi, sharifi-FIS va olgan bahosidan – 0 iborat.
Royhat nomli ‘aralash tur’ yoki yozuv tashkil etaylik:
Program ARALASH;
Type Royhat=Record
N:integer;
FIS:string[15];
O:integer;
Var
B: Royhat;
begin
S1: =0; S2:=0;
For I: =1 to N do
begin
For K: =1 to M do Read(B.FIS [k]);
Read(B,0) ;
If B.0=5 then S1: =S1+1;
If B,FIS[1] =’A’ then S2: =S2+1;
end;
write(S1,S2)
end.
Mustaqil bajarish uchun topshiriqlar:
1. Ikki nuqta orasidagi masofani aniqlash programasini yozing.
2. Berilgan (x, y) nukta doira ichida yoki tashqarisida ekaniligini aniqlash programasini yozing.
3. Yuqorida 1 va 2 masalalarini programasini yozishda WITH kalit so‘zidan foydalanib yozing.
4. Kompleks sonlar ustida amallarni bajarish programmalarini yozing.
5. Berilgan xizmatchilar ro‘yxatidan kerakli kishini aniqlash programasini yozing.
§3.17. To‘plam turi
Paskal tilida faqat elementlari bir xil turga tegishli chekli to‘plamlargina qaraladi. To‘plam elementining turi bu to‘plamli turning asosini tashkil etuvchi tur deyiladi.
Paskalda to‘plamli turning qiymati to‘plam bo‘ladi. To‘plamli turning aniq qiymati (o‘zgaruvchi yoki o‘zgarmas) kvadrat qavsga olingan to‘plam elementlarining ro‘yxatidan iborat bo‘ladi:
:: =
:: = [ ] yoki [< element>{,}]
:: = < ifoda> yoki . .
To‘plam elementlari asos turdagi o‘zgarmas yoki shu turga tegishli ifodadan tashkil topgan bo‘lishi mumkin. To‘plam umuman aytganda bo‘sh bo‘lishi mumkin, u holda to‘plam [ ] ko‘rinishda yoziladi.
Paskal tilida yozilgan to‘plamga misollar:
[ ], [ 2,4,5,3 ], [ ‘s’,’g’, ‘a’ ], [ n,m,4 ],
[1,2. . 5], [n. . m], [ ‘a’. . ’f’,’t’,’x’. . ’z’]
To‘plamda elementlarning joylashish tartibini ahamiyati yo‘q va har bir element bir marta hisobga olinadi.
To‘plamli turning berilishi quyidagi ko‘rinishda bo‘ladi:
:: = set of < asos tur>
::= yoki
Masalan, set of 1. . 3 ko‘rinishdagi to‘plamli turi qiymati 1..3 diapazonidagi barcha butun sonlarni o‘z ichiga oladi. Shuning uchun, bu to‘plamli turning qiymati bo‘sh to‘plam va 1,2,3 sonlaridan iborat to‘plamlar bo‘ladi:[ ], [1], [2], [3], [1,2],[1,3], [2,3],[ 1,2,3]. Shu to‘plamlargina yuqoridagi to‘plamli turning qiymati bo‘ladi.
Paskal programmalash tilida to‘plamli turning qiymatlari ustida quyidagi amallar aniqlangan:
qiymat berish, ya’ni to‘plamli turdagi o‘zgaruvchiga to‘plamli ifodani berish, ya’ni ifodaning qiymati to‘plam bo‘ladi(bunda o‘ng va chap tomondagi qiymat berish operatorining turlari bir biriga mos bo‘lishi kerak):
birlashma + ( ma’nosi xuddi matematikadagidek)
kesishma * ( ma’nosi xuddi matematikadagidek)
ayirma - ( ma’nosi xuddi matematikadagidek)
A=V munosabati A va V to‘plamni ustma-ust tushishi, A<>V - A va V to‘plamni ustma-ust tushmasligi, A V - A to‘plamni V to‘plamda yotishi, AV - A to‘plam V to‘plamni o‘z ichiga oladi, x in A - x - element A to‘plamga tegishli.
Shuni ta’kidlash kerakki, yuqorida sanab o‘tilgan birinchi uchta amalning natijasi to‘plam bo‘ladi va bu amallar ikki o‘rinli hisoblanadi. Ularning operandlari to‘plamli o‘zgarmaslar, o‘zgaruvchilar va to‘plamli ifodalar.
Munosabat amali esa mantiqiy turdagi qiymat beradi va u ham ikki o‘rinli hisoblanadi.
x in A amalida birinchi operand to‘plamning asos turini elementi, ikkinchi operand esa to‘plamli ifoda, to‘plamli o‘zgarmas yoki to‘plamli o‘zgaruvchi bo‘lishi mumkin.
Do'stlaringiz bilan baham: |