Циклдік алгоритмдерді программалау. Белгілі шарты бар циклдарды бағдарламалау. Көп жағдайларда аргументтердің әр түрлі мәндері бойынша алгоритмнің белгілі бір бөліктерін немесе алгоритмдік тілдің бірнеше операторлар тобын бірнеше рет қайталауға тура келеді. Осындай процестерді ұйымдастыру үшін циклдік құрылымы бар алгоритмдер, дәлірек айтқанда, қайталанатын алгоритмдер (операторлар) пайдаланылады. Қайталанатын бөліктер әр түрлі заңдылықтар, ережелер бойынша құрастырылады. Python тілінде қайталау процесін екі түрлі жолмен ұйымдастыруға болады: - Алдын-ала берілген шарт бойынша қайталауды ұйымдастыру; - параметрдің мәні бойынша қайталауды ұйымдастыру. Бұл қайталаудың қай-қайсысын алсақ та, олар қайталану операторының көмегімен жүзеге асырылады. Қайталану операторлары құрама операторлардың қатарына жатады.
Қайталану операторының бұл түрі алдын-ала берілген шарт бойынша жүзеге асырылады. Сондықтан бұл қайталау көп жағдайларда қайталану саны белгісіз болған жағдайда пайдаланылады. Бұл оператор WHІLE (оқылуы-уаил) - әзір қызметші сөзінің көмегімен орындалады да, алгоритмдік тілдегі “әзір” қайталану командасына сәйкес келеді.
7 дәріс
Белгілі шарты бар бағдарламалау циклдері. Белгілі қайталану саны бар циклдарды бағдарламалау. Циклдік алгоритм үшін әртүрлі бағдарламалау опциялары. While операторын пайдалануда төмендегідей ерекше (тығырықты) жағдайлар болуы мүмкін: 1) егер While тақырыбындағы шарт бірінші тексеруден жалған болса, қайталану денесі бірде-бір рет орындалмайды. Бұл программалауда қалыпты жағдай болып есептеледі. Өйткені программада қайталану. параметрінің программаның орындалуы барысындағы өзгерісіне байланысты қайталану денесін орындамай, басқаруды келесі операторға беруі қажет болуы мүмкін. 2) егер While тақырыбындағы шарт ешқашан жалған мәнге айналмайтын болса, қайталау процесінің барлық кезеңінде ақиқат болып отырса, қайталану процесі ешқашан аяқталмайды. Егер прогаммадағы қайталану шексіз орындалатын болса, бұл процесс программадағы тұйықталу деп аталады. Бұл жағдайда программа (қатып) өздігінен аяқтала алмайды. Қайталану процесі аяқталу үшін қайталану денесінде циклдан мәжбүрлі түрде қайталану процесін тоқтататын break операторының немесе программадан шығуды жүзеге асыратын exit функциясының болуы міндетті. Сонымен бірге, ерекше (тығырықты) жағдайлар тағы қандай кездерде болуы мүмкін? Пайдаланушы программада сипатталғанындай, бүтін сан енгізуі тиіс. Программада input () функциясы арқылы енгізілген жол int() функциясының көмегімен бүтін типке түрлендіріледі. Егер сан емес, жолдық символдар енгізілсе ValueError деп аталатын ерекше жағдай туындайды, ол программада except деген тармақпен өңделеді. Осымен программаның жұмысы аяқталады.
Қайталанатын объектінің барлық элементтерімен жұмыс істеуге «үшін» for қайталану операторын пайдалануға болады. Оның жазылу форматы: for in оператор Мұндағы айнымалы атауы қайталану параметрі деп аталады.
Практикада for операторы range функциясының көмегімен іріктелетін сандық мәндер үшін және кортеждермен жұмыс істеуде де пайдаланылады.
for қайталану операторындағы қайталану параметрінің бастапқы және соңғы мәнін, қайталау қадамын көрсетуге болады.
for қайталану операторындағы қадам мәні теріс сан болуы мүмкін. Бұл жағдайда оператордың жазылу форматындағы қайталану параметрінің бастапқы және соңғы мәндерінің орны алмасады және қадам саны теріс сан болады. Сонымен қатар, бір кортеждің ішінде әртүрлі типті мәліметтер орналаса алады.
Кортеждің элементтері кортеж болуы мүмкін. Төмендегі кортеждегі 4 санының индексін былай сипаттап жазамыз: Tuple4 = (5, (4,3),(6,)) print(Tuple4 [1][0]).
Кортеж элементтерін индекстеу (номерлеу) 0-ден басталатынын айттық. Оның номері квадрат жақшаның ішіне алынып жазылады, алдымен сыртқы индекс, одан кейін ішкі индекс квадрат жақша арқылы көрсетіледі. Біздің мысалда индексі 1 болатын элемент кортеж – оның индексі 1, осы кортеждің 0-ші элементі – 4.
Сонымен, кортеждер көбінесе объектілерді сипаттау үшін пайдаланылады. Кортеж элементтері ретінде кестедегі бір жолдың элементтерін алуға болады. Мысалы, кестенің бір жолында суденттің атыжөні, телефоны, туған жылы туралы мәліметтер орналасуы мүмкін. Кортеж элементтерін сипаттағанда үтір арқылы жазылған элементтердің оң жағында арифметикалық операциялар пайдаланылмаған жағдайда жақшаны жазбауға болады. Кортеждерге қолданылатын келесі операция – кортеж элементтерін жинақтау және ашу деп аталады. Үтір арқылы жазылған элементтер бір объектіге жинақталады. Мұны кортежді жинақтау (упаковка) деп атайды. Бұл кортеж элементтерін құру. Сонымен, кортеж элементтерін жинақтау үшін кортеж атауынан кейін меншіктеу белгісін қойып, үтір арқылы кортеж элементтерін жазамыз. Осыған кері әрекет кортеж элменттерін ашу (распаковка) деп аталады, дәлірек айтқанда, кортеждің әрбір элементтерін жеке айнымалыларға меншіктеп басып, шығаруға және операциялар қолдануға болады.