ПРОГРАММАЛОО.
3.1. Python программалоо тили.
7 класс Тема 3.1. Python программалоо тили
Сабактын жалпы максаты:
Python программалоо тилин үйрөнүүдөгү алгачкы түшүнүктөрдү берүү.
Алгачкы арифметикалык амалдар менен иштөөнү үйрөнүү.
Python до жаңы программаны түзүү, сактоо, натыйжасын чыгаруу жолдорун үйрөнүү.
Сабакта колдонула турган түшүнүктөр:
Программаны түзүү, сактоо, жообун чыгаруу.
Кошуу, кемитүү, көбөйтүү, бөлүү амалдары менен иштөө.
Сабакта жаңы киргизиле турган түшүнүктөр:
Бөлүүнүн бүтүн бөлүгүн ажыратуу
Бөлүүнүн калдыгын ажыратып чыгаруу
Даражага көтөрүү
Мугалимдин максаты:
Окүүчуларга программалоо тилинде иштөөнүн алгачкы түшүнүктөрүн берүү.
Арифметикалык амалдарды Pythonдо жазылышын үйрөтүү.
IDLEредакторунундагы file панели менен иштөөнү үйрөтүү.
Балдар эмнени билиши жана үйрөнүшү керек.
Арифметикалык амалдары менен Pythonдо иштөө боюнча түшүнүгү болушу керек.
Файлды сактоону, кайра чыгарууну, программанын жообун алууну.
Логикалык ой жүгүртүүсүн калыптандыруу.
Балдар менен баарлашуунун моделдери:
- 3.5 саны берилген болсо анын бүтүн бөлүгү жана бөлчөк бөлүгү кайсы?
- 3 бүтүн сан. 0.5 бөлчөк сан.
- 5 ти 3 кө бөлгөндө кандай калдыктуу сан чыгат?
- 2.
Сабактын башталышы:
Python (IPA менен: Python аталышы жайылган) - иштеп чыгуучунун өндүрүм-дүүлүгүнө жана коддун окумдуу болушуна багытталган жогорку даражалуу, жалпы милдеттерди аткарууга арналган программалоо тили. Python өзөгүнүн синтаксиси - минималдаштырылган. Ошол эле учурда, стандарттуу библиотекасы көптөгөн пайдалуу функцияларды камтыйт.
Python бир нече программалоо парадигмаларын колдойт. Алардын ичинде структуралык, функционалдык, императивдик, объектиге жана аспектиге багытталган парадигмалар да бар. Негизги архитектуралык өзгөчөлүктөрү - динамикалык типтештирүү, автоматтык эс башкаруу, толук интроспекция, бөтөнчөлүктөрдү иштетүү механизми, көп агымдык эсептөөнү колдоо жана жогорку даражалуу маалымат с
труктуралары. Python'до коддор модул болуп бириге алчу иш-милдеттер жана класстар болуп уюшулат. (модулдар өз кезегинде пакет болуп бириге алышат).
Python менен иштөө үчүн биринчи аны компьютерге жүктөө зарыл. Ал үчүн https://www.python.org/downloads/ сайтына кирсек болот. Ал жерден Python программалоо тилин эң акыркы версиясын компьютерибизге жүктөп алсак болот. Даяр болгондон соң аны ишке түшүрөбүз.
.
Алгач монитордо төмөнкү терезе пайда болот.
Булжердеги белгисинен кийин керектүү тапшырмаларды берсе болот. Enterди басканда - ал тапшырманын натыйжасы чыгат. Мисалы:
5+3 #кошуу амалы
8
5-3 #кемитүү амалы
2
5*3 #көбөйтүү амалы
15
5**2 #Даражага көтөрүү
25
10/3 #бөлүү амалы
3.3333333333335
10//3 #Бөлүүнүн бүтүн бөлүгүн ажыратуу
3
10%3 #Бөлүүнүн калдыктуу бөлүгүн чыгаруу
1
Эскертүү: # - белгисинен кийин кеткет маалымат – комментарий болуп эсептелинип, программа менен аткарылбайт.
Pythonдо өтө чоң сандар менен да иштөө оңой. Мисалы:
3**500 #3түн 500чү даражасы
36360291795869936842385267079543319118023385026001623040346035832580600191583895484198508262979388783308179702534403855752855931517013066142992430916562025780021771247847643450125342836565813209972590371590152578728008385990139795377610001
Дагы бир мисал «35 санынын цифраларынын суммасынын тап» деген тапшырма берилсе:
35//10+35%10 көрүнүшүндө тапшырма берүү мүмкүн.
Натыйжасы:
8
Же «123 санынын цифраларынын суммасын тапкыла?» десе
123//100+123%100//10+123%10 көрүнүшүндө жазылат.
Натыйжасы:
6
Бул жерде операторлор менен да иштөөгө мүмкүн.
print(“Salаm aalam”) #Еnter ди басканда жообу чыгат
Salam aalam
Бул жерде print(“ ”) маалыматты чыгаруу оператору. Ал тууралуу кийинки сабактарда көбүрөөк маалыматка ээ болобуз.
Окуучулар үчүн тапшырма:
1234 санынын цифраларынын суммасын тапкыла.
3.1.1. Программалар менен иштөө
Балдар менен баарлашуунун моделдери:
- Үй тапшырмасын кандай аткардынар?
- 1234//1000+1234//100%10+1234//10%10+1234%10
- Эми ушул ишиңерди код көрүнүшөндө жазуу, файлдарда сактоо жана жообун чыгаруу жолдорун үйрөнөбүз.
Python до программа түзүү үчүн төмөнкүчө амалдар аткарылат. Негизги менюдан file басычын басып, чыккан панелден New file же болбосо ctrl+N баскычтары терилет.
Натыйжада жаңы терезе пайда болот.
Ушул терезеге керектүү тапшырмаларды жазып программа түзөбүз. Мисалы:
Э
ми бул программага ат берип сактап коёбуз. Ал үчүн:
File бөлүмүнө save As… же ctrl+shift+s баскычтарын басып керектүү папканын ичине файлга ат коюп сакталат. Кийин F5 баскычы же менюдагы Run бөлүмүндөгү Run Module F5 баскычы басылат.
Натыйжа болсо төмөнкүчө чыгат:
Бул жердеги f=8 алынган керектүү натыйжа чыгат.
Эми уй тапшырмасын аткаруу учун программа түзүп көрөбүз.
a=1234
b=a//1000+a//100%10+a//10%10+a%10
print("Жообу=",b)
Программаны сактап F5 топчосун басабыз.
Жообу=10
Бул код менен жогорудагы ыкмалардын айырмасы, бул жерде берилген а=1234 тун мааниси компьютердин эсинде сакталып калат. Ал эми берилген 1234 санынын ордуна калаган башка сандарды да колдонсо болот.
Практикалык иш
Көрсөтүлгөн мисалдарды компьютерге киргизип, практикада колдонүп көрүңүз.
3.1.2. Маалыматтарды киргизүү жана чыгаруу операторлору (input жана print)
Сабактын жалпы максаты:
print оператору менен иштөө ыкмаларын үйрөтүү.
input оператору менен иштөө методикаларын уйрөнүү.
Сабакта колдонула турган түшүнүктөр:
Символдук саптар (строка), чыныгы сандар жана башка малыматтарды чыгаруунун жана киргизүүнүн ыкмаларын үйрөнүү.
Сабакта жаны киргизиле турган түшүнүктөр :
Рrint операторунун кошумча параметрлери менен таанышуу.
Input операторунун жазуу структурасы.
Мугалимдин максаты:
Балдар эмнени билиши жана үйрөнүшү керек:
Print оператору жардамы менен программалардын жоопторун алууну.
Тырмакча (“ ”) ичиндеги жана тырмакчасы жок маалыматтардын кандай көрүнүштө чыга турганын билүүсү зарыл.
Input оператору менен маалыматтарды киргизуу жолдору.
Сабактын башталышы:
Print оператору
print– маалыматтарды экранга чыгаруу оператору.
Мурунку темаларда көрсөтүлгөн эң кичинекей программаны кайра көрүп чыгабыз.
print(“Salаm aalam”)
Тырмакча ичинде (“ ”)жазылган сөздөр ошо боюнча өзгөртүүсүз жооп экранында чыгат. Ал үчүн жазганыбызды файлда сактайбыз анан F5 баскычын басабыз.
Натыйжа:
Salаm aalam
Тырмакча ичиндеги сөздөрдү ажыратып да жазса болот. Натыйжа өзгөрбөйт.
print("Salаm","aalam")
Эскертүү: Python тилинде " " (эки чиймелүү) жана ‘ ’ (бир чиймелүү) тырмакчалары бирдей маанини билдирет.
Ал эми сөздөрдү атайын бир өзгөрмөлүү белгилерге бириктирип компьютер эсинде сактоо ыкмасы жолу менен да натыйжа алса болот.
Мисалы үчүн:
a="salam" #пробел коюл баса эки сөз удаалаш болуп жабышып калат
b="aalam"
c=a+b
print(c)
натыйжа болсо ошондой эле:
Salаm aalam
Чыныгы сандар менен иштеп жатканда тырмакчалар иштетилбейт.
a=4
b=5
c=a+b
print(c) # F5ти басса натыйжа мындай болот:
9
Эгер сандарды тырмакчаларда жазылса анда аларды кошкондо удалаш жазылып калат.
a=”4.5”
b=”5.3”
c=a+b
print(c) #F5ти басса натыйжа мындай болот:
4.55.3
\n параметрин колдонуу
Бул буйруктан кийинки символдук сапты кийинки сапка өткөрөт.
Мисалы:
print("salаm, men komp\nutermin")
salаm, men komp
utermin
Аталган буйрук узун командаларды бөлүп коюу менен, оңой окууга мумкундк берет.
sep=” ” параметрин колдонуу
Символдук саптагы берилмелер арасына жаңы белги кошууга колдонулат. Мисалы:
print (4,5,6,sep="*") #белгилердин арасына (*) белгисин коюп чыгат.
4*5*6
end=” ” параметрин колдонуу
Саптын акырында көрсөтүлгөн белгини кошот жана кийинки сапты жанына чакырат.
print(1,2,3,end="--")
print(4,5,6)
1 2 3--4 5 6
Окуучулар үчүн тапшырмалар:
Жөгөрууда берилген мисалдарды компьютерге киргизип кайрадан текшерип көргүлө.
print оператору жардамы менен өз автобиографияңызды чыгарүүчү программаны түзүп келгиле.
Input оператору
input оператору өзгөрүүчү маалыматтарды киргизүү оператору болуп эсептелет. Input башка функциялар менен бирге берилбеген болсо символдук сапты киргизүүнү талап кылат.
Саптар кошулса тапшырмалар удалаш болуп чыгышын билебиз.
Мисалы:
a=input(‘Бүтүн санды киргиз: ’)
b=input(‘Бүтүн санды киргиз: ’)
c=a+b
print (c)
Бүтүн санды киргиз:3 # мисалга колдонуучу 3 санын киргизди
Бүтүн санды киргиз:4 # мисалга колдонуучу 4 санын киргизди
34
Биз көрүп тургандай эки сан кошулган жок: программа аларды биринин артына экинчисин жазып, бириктирип эле койду. Анткени мындай жазууда input оператору киргизилген маанилерди сан катары эмес, символ катары кабыл алат.
Аларды чыныгы сан көрүнүшүндө киргизип, математикалык амалдарды аткаруу үчүн операторду int(input()) же float(input()) түрүндө жазабыз. Бул жерде int бүтүн сандарды, float чыныгы сандарды киргизүү үчүн колдонулат.
Мисалы:
a=int(input()) b=int(input()) c=a+b print ("c=",c) 5 3 c= 8 | a=float(input()) b=float(input()) c=a+b print ("c=",c) 5.2 3.4 c= 8.6 |
Pythonдо өзгөрүүчүлөрдү киргизүү инструкциясына бир убакытта бир канча өзгөрүүчүлөрдү берүү да мүмкүн. Мисалы:
a, b = 0 , 1
Бул кодду төмөнкүчө жазуу да мүмкүн эле:
a=0
b=1
Маанилерди бир сапта аралыкты пробел менен ажыратып киргизүү да мүмкүн. Ал үчүн мындай көрүнүшүтө жазса болот:
a,b=map(int,input().split())
Мисалы:
a,b,с=map(int,input().split())
d=(a+b)/c
print(“d=”,d)
4 6 2 # (4+6) / 2 = 5
d=5
Input операторундагы кашаанын () ичине түшүндүрүүчү сөздөрдү жазса, колдонуучудан кандай маалымат киргизүү керектиги анык болот.
1-мисал: Үчбурчтуктун негизи жана бийиктиги берилген болсо, анын аянтын табуучу программаны түзүү керек:
a
Бул тапшырмага программа түзүүдөн мурда, алгач геометрия сабагында ошондой тапшырмаларды кантип аткарган экендигибизди эске салабыз.
Берилиши:
негизи = a
бийиктиги = h
аянтыs=? Чыгаруу:
же болбосо, ушул формуланы бир сапта жазса да болот:
s = (a*h) /2
Ал эми ушул формуланы төмөнкүчө программа түрүндө жазса болот:
a=float(input("Негизин киргиз: "))
h=float(input("Бийиктигин киргиз: "))
s=(a*h)/2
print ("s=",s)
F5 ти басып, керектүү сандарды киргизебиз жана натыйжа алабыз.
Негизин киргиз: 6
Бийиктигин киргиз: 4
s= 12.0
2-мисал: Өзүңүздүн классыңыздын окуучуларынын сабакка катышкандарынын санынын процентин эсептөөчү программаны түзгүлө.
Бул мисалды иштөө үчүн алгач класстагы жалпы окуучулардын санын киргизебиз, анан келбеген окуучулардын санын киргизилет. Жалпы окуучулардын санынан келбегендердин санын алып салсак келгендердин саны чыгат. Пропорция ыкмасы менен келген окуучулардын пайызын эсептейбиз.
Берилиши:
жалпы окуучу саны
келбегендерин саны
катышуу = ?%
Чыгаруу:
Келди = жалпы – келбегендер
Катышуу= келгендер*100/жалпы
Ал эми программасын түзөбүз:
jalpi=int(input("Жалпы: "))
kelbegender=int(input("Келбегендер: "))
keldi=jalpi-kelbegender
katishuu=kelgender*100/jalpi
print("Катышуу=",katishuu,"%")
Жалпы:25
Келбегендер:2
Катышуу= 92.0 %
Окуучулар үчүн тапшырмалар:
Түстүү төрт бурчтук формасындагы бутаны (мишень) ок тешип өтүптүр. Эгер бутанын a жана b жактары жана тешиктин r радиусу анык болсо, бутанын тешиктен калган жеринин аянтын табуучу программаны туз.
Биздин классыбызда бардык окуучулардын саны 28. Бүгүн 3 окуучу сабакка келген жок. Мектебибиздин деректору класс жетекчибизден келген окуу-чулардын саны канча пайзын түзүшүн сурап жатат. Биздин класс жетекчибизге ушул катышууну эсептеп берүүчү программаны түзүп бергилечи! Программаңыз ошончолук так болсун, андан башка класс жетекчилер да пайдалана алсын.
Жумушчунун айлык иш акысы жана өкмөттүн салыгынын пайызы так берилген. Ушул жумушчудан канча салык кармап калынышын жана анын колуна канча иш акысы тийишинин эсептөөчү программаны түзгүлө.
Маалыматтардын көлөмү байттарда берилген болсо, аны килобайт жана мега байттарга которуучу программа түзгүлө.
Саат 0:0:0дөн бери s секунд убакыт өттү. Саат канча болгондугун аныктагыла. Киргизүү амалында s берилет. Чыгаруу амалында үч чоңдук берилет: саат, минуталар жана секундалар. Убакыттар кийинки күнгө өтүп кетүүсүн да эсепке алгыла.
Алманбет математика предметин жакшы көрөт. Ал өзүнчө жаңы формулалар чыгарууга аракет жасайт. Бир күнү ал акыры 5 менен бүтүүчү сандардын квадраттарын табуунун бир жолун тапты. Анын айтышынча биринчи бул сандан 5 санын ажыратып алуу керек, анан калган цифрасын өзүнөн 1ге гана чоң болгон санга көбөйтүү керек. Чыккан сандын артына 25 санын кошуп жазып койсо берилген сандын квадраты чыгат экен. Алманбеттин айтканы боюнча аягы 5 менен бүтүүчү сандын квадыратын табуучу программа түзгүлө.
Киргизуу | Чыгаруу |
25 | 625 |
125 | 15625 |
345 | 119025 |