☰ Mundarija · Informatika

If…else amaliyoti va elif operatori

Darslar 38–39 · 2 ta dars · M. R. Fayziyeva, D. M. Sayfurov, N. S. Xaytullayeva. Informatika va axborot texnologiyalari, 9-sinf. «Nashriyot uyi Tasvir», Toshkent, 2020
38

Amaliy mashg‘ulot: if…else operatori

Darslik: 78-bet
MaqsadAmaliy mashg‘ulotda if…else operatori bilan bo‘linish, eng kattasini topish va qiymatni shartga ko‘ra o‘zgartirish masalalarini dasturlaydi.
Yangi so‘zlar
bo‘linish sharti · divisibility condition: a % b == 0 means a is divisible by b with no remaindermaksimum · maximum: the larger of two or more numbersmodul · absolute value (modulus): the number without its signshartli o‘zlashtirish · conditional assignment: a variable receives a value depending on a condition
Tushuntirish

Bu mashg‘ulotda uchta tipik masala yechiladi. Birinchisi – bo‘linish: a soni b ga qoldiqsiz bo‘linsa, a % b == 0 bo‘ladi, aks holda qoldiq noldan farq qiladi. Ikkinchisi – ikki sondan kattasini topish: a > b bo‘lsa m = a, aks holda m = b – har ikki yo‘lda ham m ga qiymat beriladi, shuning uchun print(m) doim ishlaydi. Uchinchisi – sonning modulini topish: x manfiy bo‘lsagina belgisini o‘zgartiramiz, else kerak emas. Masalani ishlashdan oldin blok-sxemani chizing: har bir shart bitta romb, har bir yo‘l bitta blok. Dasturni kamida ikki xil qiymatda sinang: bir marta shart rost, bir marta yolg‘on bo‘lsin. Bunday ikki tomonlama sinov tarmoqlanuvchi dasturlarning asosiy tekshiruvi hisoblanadi.

Namunalar
Bo‘linishni tekshirish: a = int(input()) ⏎ b = int(input()) ⏎ if a % b == 0: ⏎     print("ha") ⏎ else: ⏎     print("yo‘q", a % b) 17 va 5 uchun qoldiq 2 bo‘lgani uchun yo‘q 2 chiqadi. Kattasini topish: a = int(input()) ⏎ b = int(input()) ⏎ if a > b: ⏎     m = a ⏎ else: ⏎     m = b ⏎ print(m) 8 va 15 uchun 15 chiqadi.
Harorat: t = int(input()) ⏎ if t >= 25: ⏎     print("issiq") ⏎ else: ⏎     print("salqin") 30 daraja uchun issiq chiqadi. Modul: x = int(input()) ⏎ if x < 0: ⏎     x = -x ⏎ print(x) -9 kiritilsa, 9 chiqadi; musbat son esa o‘zgarishsiz qoladi.
Sinfda faoliyat

«Ikki tomonlama sinov»: har bir guruh o‘z dasturi uchun ikkita sinov qiymati tanlaydi (shart rost va yolg‘on bo‘lgan holat), natijani oldindan aytib, so‘ng IDLE da tekshiradi.

Mashq
1
Quyidagi dastur nima chiqaradi? a = 12 ⏎ b = 5 ⏎ if a % b == 0: ⏎     print(a // b) ⏎ else: ⏎     print(a % b)
2
Haroratni kiritib, 25 dan yuqori yoki teng bo‘lsa «issiq», aks holda «salqin» chiqaruvchi dastur yozing.
3
Sonning modulini topuvchi dastur yozing (-9 da 9, 4 da 4).
4
Nima uchun modul masalasida else yozish shart emas?