Mavsu: “Ifoda”, Tarkibiy va tarmoqlanuvchi operatorlar Reja: Strukturali programmalashning
asosiy konstruksiyalari
Dasturlash nazariyasida har qanday murakkabligidagi masalani yechish uchun dasturni faqat, chiziqli, tarmoqlanish va takrorlanuvchi deb nomlanadigan uchta strukturani tuzish orqali yaratish mumkinligi isbotlangan. Bu natija 1966 –yilda Boym va Yakopini tomonidan ixtiyoriy dasturni faqat bu strukturalar va ularning kombinasiyasidan iborat ekvivalent dasturga almashtirish mumkinligini isbotlash yo’li bilan o’rnatilgan.
Strukturali programmalashning
asosiy konstruksiyalari
Chiziqli, tarmoqlanish va sikl strukturali dasturlashning bazaviy konstrusiyalari deb ataladi. Chiziqli deb ikki yoki undan operatorlarni (sodda yoki murakkab) ketma - ket bajarilishidan iborat konstrusiyalarga aytiladi. Tarmoqlanish yo bitta, yoki operatorning qandaydir shartining bajarilishiga bog’liq bajarilishini beradi. Sikl operatorni ko’p martalab bajarilishini bildiradi.
Strukturali programmalashning
asosiy konstruksiyalari
Bazaviy konstrusiyalarning xususiyati ulardan har qandayi faqat bitta kirish va bitta chiqishga ega, shuning uchun konstrusiyalar bir – biriga ixtiyoriy tarzda qo’yilishi mumkin, masalan, sikl har bir ichma - ich joylashgan sikllarni o’z ichiga olgan 2 ta tarmoqlanishdan iborat kelib chiqishni o’z ichiga olishi mumkin.
Chiziqli
Sikl
Tarmoqlanuvchi
Strukturali programmalashning
asosiy konstruksiyalari
Sikl
Tarmoqlanuvchi
Sikl
Tarmoqlanuvchi
Sikl
Sikl
Ketma-ket
2-rasm. Bazaviy konstruksiyalarni ichma-ich joylashtirish
“Ifoda” operatori
Vergulli nuqta bilan tugallanuvchi ixtiyoriy ifoda bajariluvchi ifodani hisoblashdan iborat bo’lgan operator sifatida qaraladi. Ifodaning xususiy holi bo’lib bo’sh operator “;” hisoblanadi (u sintaksis bo’yicha operator, ma’no bo’yicha-kerak bo’lmaganda ishlatiladi).
Misollar.
i++; // inkrement amali bajariladi;
a* = b + c; // qiymat berishli ko’paytirish bajariladi;
funk (i, k); // funksiyani chaqrish bajariladi;
shartli operator
if shartli operator hisoblashlar jarayonini ikki yo’nalishga tarmoqlash uchun ishlatiladi.
Tarmoqlanuvchi
Operator formati: if (ifoda) оператор_1;
[else оператор_2;]
shartli operator
Birinchi arifmetik tip yoki ko’rsatkich tipga ega ifoda hisoblanadi.
Agar u nolga teng bo’lmasa (yoki true qiymatga ega bo’lsa) birinchi operator, aks holda (0 yoki false qiymatga ega bo’lsa) – ikkinchisi bajariladi. Shundan so’ng boshqaruv shartli operatordan keyin keluvchi operatorga uzatiladi.
shartli operator
Tarmoqlaridan biri bo’lmasiligi mumkin, false ibora bilan birgalikda ikkinchi tarmoqni tashlab yuborish mantiqli hisoblanadi.
Agar qandaydir tarmoqda bir nechta operatorlarni bajarish talab yetilsa, ularni blokka kiritish zarur, aks holda kompyuter tarmoqlanish qayerda tugashini tushunmasligi mumkin. Blok ixtiyoriy operatorni, jumladan, tavsiflashlar va boshqa shartli operatorlarni o’z ichiga olishi mumkin (lekin faqat tavsiflashlardan iborat bo’la olmaydi).