«Баластан» балдардын билим берүү
чыгармачылык борбору
Компьютердик сабаттуулук ийрими
Python программалоо тилине киришүү
Даярдаган: Маанова Чынара
Циклдик программаны уюштуруу (while оператору)
Сабактын максаты:
- Циклдик алгоритмдер жана циклдик операторлор менен таанышасыңар;
- Циклдик алгоритмдерди түзүүнү үйрөнөсүңөр;
- while циклдик оператору менен программа түзүүнү үйрөнөсүңөр;
ПЛАН:
Түйүндүү түшүнүктөр:
- Баарлашуу модели;
- Циклдик алгоритм
- While оператору
- Мисалдар, циклдик программаны жазуу форматы
- Мекчиктөө оператору
- int, float,bool
- input
- import math
- range
- while оператору
- print
Балдар менен баарлашуунун моделдери
- Балдар силерге 1 ден 100 гө чейинки сандарды кошуп суммасын тап деп айтылса, канча убакыт ичинде эсептеп бүтөсүңөр?
- Белгилүү математик Аль-Хорезми тууралуу ушундай уламыш бар болчу. Аль-Хорезми 9 жашта экен. Устаты ага 1 ден 100 гө чейинки сандарды кошуп берчи деп тапшырма бериптир. Ал тапшырманы тез эле чыгарып коюптур. Кантип?
- 1 ден 100 гө чейинки сандарды катары менен бир таяктын үстүнө коюптур. 1,2,3,4,5,6,7,8,9,........98,99,100
- Анан таякты ортосунан сындырып, таяктын экинчи учун биринчи таяктын астына коюптур, 1,2,3,4,5,6,7,8,9,....50 1 дин астына 100, 2 нин астына 99....50 тин астына 51 келип түштү.
- 100,99,98,97,96,.....51 кошсом бардыгы 101 чыга берди. Мындай 101 лер бул жерде 50 даана бар экен.
- 101*50=5050 чыкты дептир
- Эми бул эсепти силер кандай аткарамын деп ойлодуңар эле?
- 1 ге 2 ни кошобуз, чыккан санга 3 тү кошобуз .....Ушинтип 100 гө чейин кошуп чыгамын деп ойлогон болчубуз.
- Келгиле ушул силер ойлогон методго алгоритм түзүп көрөбүз.
- i га санала турган сандарды беребиз. S менен ошол сандарды кошуп чыгабыз.
- Алгач i=0, s=0 болот
i=i+1 Бул формула сандарды санайт
s=s+i бул формула саналган сандарды кошот.
Ушул сыяктуу i=100 болгонго чейин кайталанат.
Мына ушундай кайталоосу бар болгон алгоритмдерди циклдик алгоритм деп айтабыз.
Кээ бир алгоритмдерде бир түрдөгү алгоритмдердин кайра-кацра келүүсүнө көп жолугабыз. Ошондой амалдардын алгоритмдерин жасоо үчүн
Python программалоо
тили
while оператору
for оператору
while оператору
while оператору - «ошондой болгон учурда кайталансын» деген маанини билдирет. Мисалы, while d
While операторунда (:) коюлгандан кийин цикл башталат жана кийинки сап жылышып жазылат (4 пробелге, же бир Tabга).
Бул оператор циклдин канча жолу кайталанаары белгисиз болгон учурларда колдонулат.
Бул оператор төмөнкүчө жазылат:
while шарт:
инструкциялардын блогу.
Клавиатурадан киргизилген натуралдык сандарды экранга чыгаруу программасы
Циклди аткарылганда алгач while оператору шартты текшерип көрөт. Эгер шарт жалган болсо, анда цикл ишин токтотот да циклдин сыртындагы командага өтөт. Эгер шарт чын болсо анда оператор кийинки берилген инструкцияны аткарып, кайра шартты текшерүүгө жөнөтөт.
1-Мисал. 1ден 10го чейинки сандарды саноо программасын түзөбүз.
d=0
while d
d+=1 бул d=d+1 дегенди билдирет.
print (d, end=“ ”) эгерде print (d) деп буйрук берсек анда ар
бир маанини бир сапка чыгарат
if шарттуу операторунда колдонулгандай эле циклдин шарты да while сөзүнөн кийин жазылат. Биздин мисалда бул: d
Каралып жаткан программада d эсептегич-өзгөрмөсү колдонулган.
Анын баштапкы мааниси 1ге барабар. Циклдин ар бир айлануусунда анын мааниси 1ге көбөйүп турат.Ошондуктан биз d+=1 (же d=d+1) сапчасын жаздык. Өзгөрмөнүн мааниси 5ке жеткенде гана цикл токтойт.
0: n=n//10 # же болбосо n//=10 n+=1 print (n) программанын натыйжасын чыгаруу үчүн F5 ти басып каалаган санды киргизсек: 19654 Жообу: 5 " width="640"
2-мисал. Берилген сандын цифраларынын санын аныктоочу программа түзөбүз.
Бул программаны түзүү үчүн берилген сандын цифраларынын оң жактан бир-бирден өчүрүп таштайбыз, жана бул иш канча жолу кайталанган экендигин санап чыгабыз:
n=int(input("Санды киргиз: "))
n=0
while n0:
n=n//10 # же болбосо n//=10
n+=1
print (n)
программанын натыйжасын чыгаруу үчүн F5 ти басып каалаган санды киргизсек:
19654
Жообу: 5
ТАПШЫРМАЛАР :
1-тапшырма:
1 ден 10го чейинки болгон сандардын суммасын табуучу программа түзгүлө.
Натыйжасы 55 чыгат.
2-тапшырма:
10 дон 1 ге чейин сандарды саноочу программаны жаз.
Натыйжасы төмөнкүүчө болот.
10 9 8 7 6 5 4 3 2 1
Программасы
1-тапшырма:
2-тапшырма
Клавиатурадан киргизилген оң сандардын суммасын табуу программасын түз
0 саны жолукмайынча киргизилген бардык сандардын суммасын табуучу программа түз
Берилген n жана m сандарынын ЭЧЖБ табуучу программаны түз
Тапшырмалар:
Берилген n санынан кичине болгон бардык так сандарды чыгааруучу программаны жаз. Мисалы: Берилиши 15 натыйжасы: 1 3 5 7 9 11 13
Көңүл бурганыңарга рахмат!!!
Программасы
1-тапшырма:
n=int(input(n=))
s=0
for i in range(1,n+1):
s+=i
if i==n:
print(i,end=“=“)
else:
printprint(i,end=“+“)
print (s)
Маани: 10
Жообу: 1+2+3+4+5+6+7+8+9+10=55
0: s+=x print (s) " width="640"
Каалаган сандардын суммасын табуунун программасы
Бүтүн сандардын суммасын табуунун программасы
n=int(input(n=))
s=0
for i in range(1,n+1):
x=int(input())
s+=x
print (s)
n=int(input(n=))
s=0
for i in range(1,n+1):
x=int(input())
if x0:
s+=x
print (s)
5ке бөлүнө турган сандардын суммасын тапкыла
Клавиатурадан киргизилген терс сандардын санын табуунун программасын түз