27-dars. Else-elif filial bloklari – Ifni chuqurroq o’rganish

Oldingi darsda biz shoxlangan konstruksiya bilan tanishgan edik, if
bugungi darsimizda bu konstruksiyaning murakkabroq variantlarini batafsil ko‘rib chiqamiz.


Case Study

Ish stolida fayl yarating, test22.pykodlashni unutmang. Unga quyidagi dastur kodini qo’lda yozamiz:

# -*- kodlash: utf-8 -*-

yabloki = 100
zemlyanika = 50
sliva = 70

# Tarmoqli dizayn yaratishning birinchi varianti
agar yabloki < zemlyanika:
	chop u "Sharbat qulupnay-olma bo'ladi."	
	
agar zemlyanika < yabloki:
	chop u "Sharbat olma va qulupnay bo'ladi."


# Tarmoqli dizayn yaratish uchun ikkinchi variant
agar yabloki < zemlyanika:
	chop u "Sharbat qulupnay-olma bo'ladi."

boshqa:
    chop u "Sharbat olma va qulupnay bo'ladi."


# Tarmoqli dizayn yaratish uchun uchinchi variant
agar yabloki < zemlyanika:
	chop u "Sharbat qulupnay-olma bo'ladi."
boshqa:
    agar sliva > zemlyanika:
        chop u "Sharbat olxo'ri va qulupnay bo'ladi."
		
# Tarmoqli dizaynni yaratishning to'rtinchi varianti
agar yabloki < zemlyanika:
	chop u "Sharbat qulupnay-olma bo'ladi."
elif sliva > zemlyanika:
    chop u "Sharbat olxo'ri va qulupnay bo'ladi."

Kodning qisqacha tushuntirishi

Kodni tuzishning birinchi varianti oldingi darsdagi kabi. 
Agar biz ko’proq qulupnay olsak, sharbat qulupnay-olma bo’ladi. 
Agar biz ko’proq olma olsak, sharbat olma-qulupnay bo’ladi.

Ikkinchi variant. Ikkinchi blok o’rniga ifbiz else. Bu ixtiyoriy blok, lekin ikkita if blokidan ko’ra yozish osonroq va qisqaroq. Shuning uchun dasturchilar undan tez-tez foydalanadilar. Bu quyidagilarni anglatadi: 
agar qulupnaydan kamroq olma bo’lsa, unda sharbat qulupnay-olma bo’ladi, 
aks holda sharbat olma-qulupnay bo’ladi. 
Ya’ni, bu erda bizda ikkita variant bor – yoki qulupnaydan ko’ra ko’proq olma bor yoki aksincha. Bu “aksincha” so’zning ma’nosi else.

Uchinchi variant. Va agar uchinchi shartni qo’shsak – olxo’ri. Bunday holda, biz else blokiga ichki blok qo’shishimiz kerak if. Va biz uchinchi shartni unga quramiz.

To’rtinchi variant. Bu uchinchi variant bilan bir xil, lekin biz so’zlarni birlashtiramiz elseva blok . Bu shartlarning barcha asosiy bloklari ustki bloklar ostida to’liq yotishini ta’minlash uchun amalga oshiriladi. Agar siz buni uchinchi variantga muvofiq qilsangiz, unda har bir asosiy blok o’ngga 4 ta bo’shliqqa siljiydi. Va agar dasturda 20 ta shart mavjud bo’lsa, u holda dastur oynasida xunuk “narvon” bo’ladi va eng past else-if bloki o’ngga o’tadi.ifelif


Hozircha biz yangi buyruqlar bilan tanishmoqdamiz: if-else-elif . Ammo keyinroq ular ko’pincha foydalanuvchi bilan interaktiv muloqot qilish uchun ishlatilishini tushunasiz.

Misol uchun, agar siz nazariy haydovchilik imtihonidan o’tayotgan bo’lsangiz: 

  1. Agar siz 20 ball to’plasangiz, imtihondan o’tdingiz.
  2. Agar siz 19 ball to’plasangiz, sizga 5 ta qo’shimcha savol beriladi.
  3. Agar siz 18 ball to’plasangiz, sizga 10 ta qo’shimcha savol beriladi.
  4. Agar siz 17 yoki undan kam ball to’plagan bo’lsangiz, imtihondan o’tmagansiz.

Imtihon natijalarini hisoblash dasturini yaratish uchun dasturchi uchun vazifa taxminan shunday ko’rinadi. Va u imtihondan o’tish uchun turli xil variantlarni ko’rsatish uchun if-else-elif bloklaridan foydalanishni boshlaydi .

Endi PowerShell dasturini oching va buyruqni kiriting:python desktop/test22.py

Oxir-oqibat, siz rasmdagi kabi natija olishingiz kerak.


Uy vazifasi

  1. Mening kodimni o’rganing va dastur kodning har bir satrida bajaradigan harakatlar haqida gapiring.
  2. O’zgaruvchilarning qiymatlarini o’zgartirishga harakat qiling va natijaga qarang.

Va keyingi darsda biz if bloklari yordamida foydalanuvchini dastur kodiga qanday jalb qilishni o’rganamiz, ya’ni kichik o’yin shaklida interaktiv stsenariyni yaratish – 28-darsga o’ting . 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *