ПРОГРАММАЛОО.
3.3. Шарттуу операторлор.
7 класс
Тема 3.3 Шарттуу операторлор
Сабактын жалпы максаты:
Сабакта колдонула турган түшүнүктөр
if - эгер |
else – антпесе |
elif – антпесе эгер |
and – жана |
or – же |
not - эмес |
Мугалимдин максаты:
Балдар эмнени билиши жана үйрөнүшү керек:
Балдар менен баарлашуунун моделдери:
- Логика дегенде эмнени түшүнөсүнөр? - Ой жүгүртүүнү. - Суроого жооп берүүнү. - Табышмактардын жообун табууну... - Мисалы ушул дубал тууралуу силерден маалымат алуу керек болсун. Мен силерге суроо берем.Силер болсо ООБА же ЖОК деп жооп бересинер. Мен ошол сыяктуу дубал тууралу маалымат аламын. - Дубалдын түсү көкпү? - Жок. - Акпы? - Ооба. - Краска кылынганбы? - Жок. - Акталганбы? - Ооба. - Ушул жылыбы? - Ооба. - Мына көрдүнөрбү, суроолорго ооба, жок деп гана жооп бердинер. Бирок мен керектуу маалыматка ээ болдум. Pythonдо да ошондой ооба жана жокко ажырата турган оператор бар. Ал оператордун мүчөлөрү менен таанышып чыгабыз. If, elif, else, and, or, not... |
If операторунун ишин түшүнүү үчүн төмөндөгү мисалга аткаруучу программа түзүп көрөбүз.
1-тапшырма. Берилген a жана b сандарынын кайсынысы чоң экендигин табуучу программаны түз. Алгач алгоритм түзүп көрөбүз.
-
a жана b га сан киргиз.
-
Эгер ab болсо анда чоң сан a
-
Анпесе эгер a
-
Анпесе бул эки сан барабар
-
Бутту
Анын программасы төмөнкүчө болот.
a=int(input("1-санды киргиз: "))
b=int(input("2-санды киргиз: "))
if (ab):
print ("чоң сан=",a)
elif (a# elif оператору альтернативдүү шартты билдирет.
print ("чоң сан=",b)
else:
print ("барабар")
2-тапшырма. Берилген 3 түрдүү сандардын эң чоңун тапкыла.
Алгоритмин жазабыз.
-
a,b,c-ларга сан киргиз.
-
max=a деп ал.
-
Эгер max
-
Эгер max(ушул тапшырманы программага коп жолу уланта берсе болот)
-
Жообу max
Анын программасы төмөнкүүчө болот.
a=int(input("1-санды киргиз: "))
b=int(input("2-санды киргиз: "))
c=int(input("3-санды киргиз: "))
max=a
if max
max=b
if max
max=c
print ("max=",max)
Бул мисалды төмөнкүчө оңой чечими да бар:
a,b,c=map(int,input().split())
max=max(a,b,c) # кичинесин табуу үчүн min=min(a,b,c) көрүнүшүндө жазса болот.
print ("max=",max)
Демек, каралып жаткан мисалдын жообун табуу үчүн салыштыруу операторлорду пайдаланса болот. Салыштыруу операторлору жыйынтыгында True же False деген маанилерди чыгарган эки маанини бири-бири менен салыштырууга мүмкүндүк берет.
Математикалык символ | Python оператору | Мааниси | Мисал | Жыйынтык |
| | Кичине | 1 | True |
| | Чоң | 12 | False |
| | Кичине же барабар | 1 | True |
| = | Чоң же барабар | 1=2 | False |
= | == | Барабар | 1==2 | False |
| != | Барабар эмес | 1!=2 | True |
Мисалы: x * x болсо x * x тын натыйжасы 1000ден кичине экендигин билдирет.
x != y бул жерде өзгөрмөсү yке барабар эмес дегенди билдирет.
Башка программалоо тилдеринен айырмаланган Pythonдо барабардык операнддарын чынжыр ыкмасында колдонуу да мүмкүн:
Мисалы: a == b == c же 1 .
Окуучулар үчүн тапшырмалар:
-
Борбору координата башында болгон айлананын радиусу r жаначекиттин х,у координаталары берилген болсо, ушул чекит айлананын ичинде, сыртында же айланада экендигин аныктоочу программатүзгүлө.
-
Координата тегиздигинде жайгашкан эки айлананын борборлорунун координаталары жана алардын радиустарынын узундуктары берилген болсо, бул эки айлана бири-бири менен кесилишеби? Аныктоо үчүн программа түзгүлө. Программаңыз эгер айланалар кесилишсе “YES”, антпесе “NO” деген натыйжа берсин.
-
Натуралдык сан берилген. Ушул сан 4 кө бөлүнө турганын же турбаганынын аныктоочу программа түзгүлө.
-
У=
a, b, c жана x маанилери берилген. Х тин маанисине тиешелүү натыйжасы кандай болушун аныктагыла.