§3.5. Pascal da ma’lumotlarning asosiy turlari
Ma’lumotlar ikki xil bo‘lishi mumkin: o‘zgarmaslar (ular programmani ichida fiksirlangan va o‘zgarmas bo‘lishi kerak); o‘zgaruvchilar (ular programmani ichida o‘zgarishi mumkin). Ma’lumotlar har xil turdagi komponentalarga ega strukturalarga birlashishi mumkin. Strukturani yagona qiymat yoki qandaydir obyektni qiymati sifatida ko‘rishimiz mumkin. Paskal tilida quyidagicha kelishilgan:
- ixtiyoriy berilgan qiymat qandaydir ma’lumotlar strukturasiga kiradi va alohida berilgan qiymat oddiy ma’lumotlar strukturasi deb nomlanadi (oddiy struktura);
- ma’lumotlar strukturasini elementi oddiy yoki murakkkab ma’lumotlar strukturasi (murakkab struktura) bo‘lishi mumkin;
- bir xil strukturalar har xil turlarga ega bo‘lgan ma’lumotlardan iborat bo‘lishi mumkin.
Paskal tilidagi turlardan foydalanib, programma tuzuvchi ma’lumotlarni xotirada saqlanishiga ahamiyat bermagan holda, ular bilan amallar bajaradi.
Turlar haqida gapirganimizda, bu turlardagi o‘zgaruvchi va o‘zgarmaslarni qanday qiymat qabul qilishi va ular ustida qanday amallar va standart funksiyalar ishlatilishini ko‘rsatishimiz yetarli.
Paskal tilidagi turlar asosiy va hosilaviy turlarga bo‘linadi.
Asosiy turlar oddiy strukturalardan tashkil topgan qiymatlardan, hosilaviy turlar esa murakkab strukturalardan iborat.
Asosiy turlardan ko‘rsatkich turi alohida ajratilgan, qolgan turlar esa skalyar turlar deb nomlanadi. Skalyar turlar standart va programma tuzuvchi yaratgan turlarga bo‘linadi. Standart turlarga butun, haqiqiy, mantiqiy va belgili turlar kiradi.
Butun (integer) tur. Butun turiga butun sonlar to‘plamidagi qiymatlar (amalga oshirishga bog‘liq) kiradi. Ular ustida 5 ta asosiy amallar bajariladi: qo‘shish (), ayirish (-), ko‘paytirish (*), butunni butunga bo‘lish va butun qismini olish (div), butunni butunga bo‘lish va qoldiq qismini olish (mod). Bu amallar butun natija beradi. Birinchi to‘rtta amallar oddiygina, beshinchisi esa quyidagi qoida bo‘yicha bajariladi: faqat n>0 bo‘lganda ishlatiladi,
agar m>0 bo‘lsa m mod n m - ((m div n) * n);
agar m<0 bo‘lsa m mod n m-((m div n) * n) n.
Ifodada chapdan o‘nga qarab div, mod, * amallari birinchi bo‘lib, keyin - va amallari bajariladi. Butun qiymatlarni taqqoslash va qiymat berish operatorida ishlatish mumkin.
Quyidagi standart funksiyalar butun natija beradi:
abs(x)- x-ni absolut qiymati,
sqr(x)- x-ni kvadrati,
trunc(x)- x-ni butun qismi,
round(x)- x-ni butungacha yaxlitlash.
Butun tur tartiblangan bo‘lgani uchun, quyidagi standart funksiyalarini qo‘llashimiz mumkin:
succ(x)- x-dan keyingi butun qiymatini,
pred(x)- x-dan oldingi qiymatini,
ord(x)- tartib nomerini beradi.
Masalan, 76, -234, Q56.
Butun turdagi o‘zgaruvchilarni e’lon qilish uchun quyidagi kalit so‘zlar mavjud: integer, shortint, byte, longint va word.
Har bir butun o‘zgaruvchilarni e’lon qilish uchun alohida hollarga bog‘liq ravishda shu kalit so‘zlardan biri ishlatiladi.
Quyidagi jadvalda butun sonlarni hamma turlari keltirilgan:
0>
Do'stlaringiz bilan baham: |