ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.12.2023
Просмотров: 69
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Лекция 6. Циклдік операторлар. for цикліБағдарлама құру кезінде бүтін сандар тізбегін (аралығын) алу қажеттігі жиі кездеседі. Мұндай есепті шешу үшін Python тілінде сандар тізбегін жасайтын range() функциясы қолданылады. Функция аргумент ретінде келесілерді қабылдайды: аралықтың бастапқы мәнін (қалыпты жағдайда 0), соңғы мәнді (өзі кірмейді) және қадам (қалыпты жағдайда 1). Функцияны шақырғанда нәтиже көрінбейді.Мысалы:>>> range(0, 10, 1) range(0, 10) >>> range(10)range(0, 10)Функция алдына list қызметші сөзі жазылса, онда тізім экранға шығады:Мысалы:>>> list(range(10))[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> list(range(2, 10, 2)) [2, 4, 6, 8] Сандар аралығын алу үшін for циклін қолдану керек. Кейбір бағдарламаларда белгілі бір шарттардың сақталуына тәуелді командалардың қандай да бір бөлігі бірнеше рет қайталанады. Мұндай әрекеттерді жүзеге асыратын командаларды цикл немесе қайталану командасы деп атайды. Python бағдарламалау тілінде циклдің екі түрі бар: 1) for циклі2) while циклі for ..in операторыfor..in операторы цикл операторының бір түрі болып табылады. Жалпы түрде for операторы көрсетілген тізімнің барлық элементін қарап шығады.Жалпы түрі: for айнымалы in тізім:цикл денесіМұнда нысан тізбегі бойынша итерация жүзеге асады, яғни тізбектің әрбір элементі бойынша жүреді. Тізбек – элементтердің реттелген тізбегі. Мысалы:for i in [1, 2, 'Text']: print(i) Нәтиже:1 2 Textfor циклі жол үшін де жұмыс жасайды: Мысалы:for i in 'Text': print(i) Нәтиже:T e x t Тізбек үшін көбінесе range() функциясы қолданылады:Мысалы: for i in range(1, 5): print(i, end=' ') else: print('Цикл for аяқталды') Нәтиже:1 2 3 4 Цикл for аяқталды range қондырылған функциясын қолданып, тізбек генерацияланады. Мысалы, range(1,5) функциясы [1, 2, 3, 4] тізбегін береді. Аралықтың соңғы мәні тізбекке кірмейді. Қалыпты жағдайда range функциясының қадамы 1-ге тең. Егер үшінші сан берілсе, онда ол қадам болып табылады. Мысалы, range(1,5,2) функциясы [1,3] тізбегін береді.Python тіліндегі for циклінің C++,C# бағдарламалау тіліндегі for циклінен айырмашылығы бар. Ол C# тіліндегі foreach цикліне ұқсас. C++ тіліндегі for (int i = 0; i < 5; i++) жолының жазылуы Python тілінде for i in range(0,5) жазылуына сәйкес келеді. Python тілінде for циклінің жазылуы басқа тілдерге қарағанда қарапайым болып табылады.
Мысалы:for i in range(1,10):print(i)Нәтиже:123456789Егер жоғарыдағы бағдарлама төмендегіше жазылса, онда сандар бір жолға арасына бос орын қойылып шығады. for i in range(0, 10, 1): print(i, end=' ') # бір жолға шығаруНәтиже:0 1 2 3 4 5 6 7 8 9 Мәндерді белгілі бір қадаммен шығаруға болады.for i in range(2, 20, 2): print(i, end=' ') Нәтиже:2 4 6 8 10 12 14 16 18Аралықты кері ретпен де шығаруға болады:for i in range(20, 2, -2): print(i, end=' ') Нәтиже:20 18 16 14 12 10 8 6 4Циклді қолдануға мысалдар қарастырайық.Мысал11. Екі таңбалы барлық жұп сандарды шығарыңдар.for i in range(10, 100,2): print(i)Мысал12. Берілген санның көбейту кестесін шығарыңдар.k=int(input("Сан енгіз "))for i in range(1, 11):p=k*iprint(k,'*',i,'=',p)Нәтиже:Сан енгіз77 * 1 = 77 * 2 = 147 * 3 = 217 * 4 = 287 * 5 = 357 * 6 = 427 * 7 = 497 * 8 = 567 * 9 = 637 * 10 = 70Мысал13. 1-ден 10-ға дейінгі сандардың қосындысы мен көбейтіндісін табыңдар.s=0;p=1for i in range(1,11):s+=i; p*=iprint('s=',s,'p=',p)Нәтиже:s= 55 p= 3628800Python- да жоғарыдағы қосынды табу бағдарламасын қысқаша жазуға да болады: print('s=',sum(list(range(1, 11))))Нәтижеде экранға s= 55 мәні шығады.Мұндағы, sum( (range(1, 11)))) – 1-ден 10-ға дейінгі сандар тізімінің қосындысы табады.Сонымен, list функциясы берілген аралықтағы тізімді жасайды, sum функциясы тізім элементтерінің қосындысын табады.
Мысалы:for i in range(1,10):print(i)Нәтиже:123456789Егер жоғарыдағы бағдарлама төмендегіше жазылса, онда сандар бір жолға арасына бос орын қойылып шығады. for i in range(0, 10, 1): print(i, end=' ') # бір жолға шығаруНәтиже:0 1 2 3 4 5 6 7 8 9 Мәндерді белгілі бір қадаммен шығаруға болады.for i in range(2, 20, 2): print(i, end=' ') Нәтиже:2 4 6 8 10 12 14 16 18Аралықты кері ретпен де шығаруға болады:for i in range(20, 2, -2): print(i, end=' ') Нәтиже:20 18 16 14 12 10 8 6 4Циклді қолдануға мысалдар қарастырайық.Мысал11. Екі таңбалы барлық жұп сандарды шығарыңдар.for i in range(10, 100,2): print(i)Мысал12. Берілген санның көбейту кестесін шығарыңдар.k=int(input("Сан енгіз "))for i in range(1, 11):p=k*iprint(k,'*',i,'=',p)Нәтиже:Сан енгіз77 * 1 = 77 * 2 = 147 * 3 = 217 * 4 = 287 * 5 = 357 * 6 = 427 * 7 = 497 * 8 = 567 * 9 = 637 * 10 = 70Мысал13. 1-ден 10-ға дейінгі сандардың қосындысы мен көбейтіндісін табыңдар.s=0;p=1for i in range(1,11):s+=i; p*=iprint('s=',s,'p=',p)Нәтиже:s= 55 p= 3628800Python- да жоғарыдағы қосынды табу бағдарламасын қысқаша жазуға да болады: print('s=',sum(list(range(1, 11))))Нәтижеде экранға s= 55 мәні шығады.Мұндағы, sum( (range(1, 11)))) – 1-ден 10-ға дейінгі сандар тізімінің қосындысы табады.Сонымен, list функциясы берілген аралықтағы тізімді жасайды, sum функциясы тізім элементтерінің қосындысын табады.