Оқулық «Білім беруді дамыту Федералды институты»



Pdf көрінісі
бет18/142
Дата14.01.2022
өлшемі4,68 Mb.
#24019
түріОқулық
1   ...   14   15   16   17   18   19   20   21   ...   142
2.2.3. 
Циклдік алгоритмдер 
Біз  бірдей  әрекеттер  қайталанып  келетін  процестерді  жиі 
байқаймыз  немесе  оларға  қатысамыз.  Мысалы,  дүкендегі  сатушының 
қалай  жұмыс  істейтінін  қарастырайық.  Барлық  сатып  алушыларға  ол 
бір  схема  бойынша  қызмет  көрсетеді:  тауарды  беру  –  ақшаны  алу  – 
чекті шығару – қайтарымын беру. Тек тауарлардың көлемі мен түрлері 
ғана өзгереді. Кинотеатрдағы бақылаушы мына схема бойынша жұмыс 
жасайды:  билетті  алу  –  сеансты  тексеру  –  билетті  жырту  –  билетті 
қайта  беру.    Осылай  күні  бойы  жүздеген  рет  қайталанады.  Сонымен 
қатар бір әрекетті бірнеше рет көлікке азық-түлік тиейтін жүк тасушы 
да;  конвейрдегі  жұмысшы  да;  бөлмеге  тұсқағаз  жабыстырушы  маляр 
да; сіз де шай ішкенде немесе таңертең сабаққа барғанда қайталайсыз. 


21 
 
Бұйымдарды  сұрыптау  алгоритмін  қарастыруға  қайта  оралайық. 
Бұл алгоритмде бір бұйыммен өндірілген бір реттік әрекет баяндалған.   
Ол  №  1  немесе  №  2  дүкенге  жіберілді  және  алгоритм  осымен 
аяқталды.  Бірақ  шынайы  бұйымдардың  сұрыптауға  үлкен  көлемде 
түсетіні.  Яғни,  алгоритмде  баяндалған  әрекеттер  қайта-қайта 
қайталануы  тиіс.  Ұзақтығы  қандай?    Сірә,  конвейрде  бұйым  болған 
кезде шығар. 
Сұрыптау  процесі  көп  рет  қайталануы  үшін  алгоритмді  қалай 
өзгертуге болады? Нақты қандай әрекеттерді қайталау керек және қай 
уақытқа дейін?  Шешімнің екі нұсқасы бар: 
■ 
шарт  жасау,  оны  орындау  барысында  әрекетті  қайталап  отыру 
қажет,  шарт  қалай  бұзылады,  солай  қайталауды  тоқтатып, 
алгоритмді  жалғастыруға  көшу  керек  (мысалы,  шарбақ 
тақтайларын  ол  біткенше  сырлау,  содан  кейін  ғана  түскі  үзіліске 
кірісу); 
■ 
бірдей  әрекеттерді  қажетті  деңгейге  жеткенше  қайталау    (мысалы, 
бөшкеге он литр су құю). 
Бірінші  нұсқа  анағұрлым  әмбебеп  –  ол  тақтай  саны  әртүрлі 
шарбақтараға  сәйкес  келе  береді,  сонымен  бірге  алдын  ала  белгісіз 
болған  жағдайдарда  да.  Бірақ  бұл  алгоритм  нұсқасын  орындаушы 
жасалған шарттың орындалуын тексере алуы керек (шарбақ аяқталды 
ма?), адам үшін қиындық тудырмайтын нәрселердің машина үшін ауыр 
болуы мүмкін. 
 
Ал  екінші  нұсқа  машина  үшін  қиындық  тудырмайды  – 
механикалық,  электрлік,  электрондық  және  басқа  да  есептегіштер 
бұрыннан  бар  және  олар әртүрлібір  бұл  нүсқа  иілігіштіктен  ада  және 
алгоритмді  орындау  шарты  өзгереген  кезде  (мысалы  бөшкені 
кішірегіне  ауыстырған  кезде)  алгоритмнің  өзіндегі  нұсқауды  өзгерту 
қажет (құйылатын шелектің санын өзгерту).  
Алгоритмдегі 
қайталанатын 
әрекет 
топтары 
циклді 
қалыптастырады.  Бірдей  әрекеттер  қайталанап  келетін  алгоритмдер 
циклдік алгоритмдер деп аталады 
Қайталау  шарты  бұзылған  жағдайда  алгоритмді  орындаушы 
циклден тыс тұрған келесі әрекеттерге көшеді 
Алгоритмде  бұйымдарды  сұрыптау  мен  олардың  саны  алдын  ала 
белгісіз  болғандықтын,  бірінші  нұсқаны  пайдаланып  көреміз  – 
орындалуы  сұрыптау  процесін  қайталау  үшін  қажетті  шартты  тауып 
алуға  тырысамыз.  Мұндай  шарт  конвейрде  кезекті  бұйымдардың  бар 
болуы. Егер сұрыптауды адам жүргізсе, бұл бұйымды кездестіру оңай.  


22 
 
 
Егер сұрыптаушы алгоритмді орындаушы машина болған жағдайда, ол 
конвейрдегі бұйымның бар екендігін тексере алуы тиіс. Машина мұны 
қалай жасайды, әрі қарай қарастырайық. Ал қазір сұрыптау алгоритмін 
циклдің қайталану шартымен толықтырамыз: 
1. 


Достарыңызбен бөлісу:
1   ...   14   15   16   17   18   19   20   21   ...   142




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет