37
Алгоритмдегі тармақтану циклдің құрамына кіреді және цикл аяқталар
кезде бітеді. Циклді құрастыратын әрекет алгоритмін оқу ыңғайлы
болуы үшін жазу барысында оңға қарай жылжиды және осылай цикл
оңай көрінеді. Тармақталған бөлікті жылжытуға да болады. Алгоритм
блок-сызба бойынша жылжу тәртібінде жазылады және ол келесі түрде
көрінеді:
АЛГ «бұйымдарды сұрыптаудың циклдық алгоритмі»
БАС
ӘЗІР конвейрде бұйым бар
бұйымды
өлшегіш құрылғыға қою
бұйым диаметрін өлшеу
ЕГЕР диаметр берілгеннен үлкен
болса ОНДА
бұйымды № 1 дүкенге
орналастыру ӘЙТПЕСЕбұйымды № 2
дүкенге орналастыру
БОЛДЫ
ЦИКЛС
СОҢ
Осы алгоритмдегі әрекеттердің ретін қарастыралық.
Конвейрде
бұйым бар алғышарты бұзылмайынша, бұйым диаметрін өлшеу
орындалады және ол № 1 немесе №2 дүкенге орналастырылады.
БОЛДЫ қызметтік сөзі тармақталудың аяқталғанын білдіреді, одан
кейін алгоритмнің келесі жолына өту керек. Онда циклдың басындағы
ӘЗІРГЕ жолына қайта баруды талап ететін ЦИКЛС сөзі орналасқан,
яғни, бұдан кейін цикл қайталанады. Қатардағы ӘЗІРГЕ шарты
бұзылғанда, циклдік алгоритмдерді орындау тәртібі бойынша цикл
соңы ЦИКЛС белгісінен кейінгі жолға ( біздің жағдайда бұл – СОҢ
жолы) өтеді және алгоритмді орындау аяқталады.
Енді алгоритм тіліндегі анағұрлым күрделі алгоритмдерді жазамыз.
(2.5
суретіне қараңыз).
Бұл алгоритмде блок-сызбада көрініп тұрғандай алғышарт (
Тиеуге
арналған контейнер бар ма?) та, шартсоңы та бар (
Вагонда бос орын
бар ма?), сондықтан онда ӘЗІРГЕ..ЦИКЛС түріндегі және
ЦИКЛ...ӘЗІРГЕ түріндегі жазбалар үйлеседі.
Алгоритмнің алдыңғы жағынан жылжу кезіндегі блок-сызбаның
бірінші элементі – шартсоңы символынан келетін қайту сызығы.
Шартсоңы бар алгоритмде ол қайталау барысында циклдің жаңаратын
орнын көрсетеді. Алгоритмикалық тілде бұл орын ЦИКЛ қызметтік
сөзімен белгіленеді.
38
Әрі қарай алғышарттың ӘЗІРГЕ сөзімен енген графикалық
элементтері орналасқан, одан кейін шартсоңына дейінгі әрекеттердің
реті жүреді. Шартсоңы да ӘЗІРГЕ қызметтік сөзімен енгізіледі. Егер
шарт орындалса, онда шартсоңы бар алгоритмдерде ЦИКЛ жолына
қайту керек болады (біздің жағдайда – СОҢ алгоритмін аяқтауға)
Мұның бәрі
Тиеуге арналған контейнер бар алғышарты
бұзылмаған жағдайда ғана болады. Ал бұл шарт бұзылған жағдайда
алғышартты алгоритмдері ЦИКЛС цикл соңы нұсқауын басшылыққа
алатын жолға өтеді (біздің жағдайда – СОҢ алгоритмін аяқтауға).
Нәтижесінде бұл алгоритм алгоритмдік тілде келесі түрде
жазылады:
АЛГ «контейнерлерді тиеу алгоритмі»
БАС
ЦИКЛ
ӘЗІРГЕ тиеуге
арналған контейнер
бар кезекті контейнерді көтеру
контейнерді
вагонға орналастыру
контейнерді вагонға тиеу кранды
бастапқы
қалпына әкелу ӘЗІРГЕ
вагонда бос орын бар
СОҢ
ЦИКЛС
СОҢ
Жазу кезінде жолдардың жылжып кетуі ӘЗІРГЕ..ЦИКЛС немес
ЦИКЛ.. ӘЗІРГЕ циклдарының қай жерден басталып, қай жерде
аяқталатынын жылдам табуға мүмкіндік береді.
Алгоритмдік тілдегі көмекші алгоритмдердің жазбасын қарайық.
Кез келген алгоритм көмекші бола алатындықтан, бұл жазбаларда
ешқандай ерекшелік жоқ. Негізгі алгоритмнен мәліметтерді енгізу де,
нәтижелерді шығару да (қажет болғанда) көмекші алгоритмдерде
қарапайым әрекеттер болып саналады.
Негізгі алгоритмдерде көмекші алгоритмдерді шақыру оның
тақырыбын жеңіл көрсетумен жүзеге асады, онда алгоритмдік тілдегі
негізгі алгоритмнің жалпы түрі төмендегідей болуы ықтимал:
АЛГ «<атауы>»
БАС
<1-
әрекет
<2-
әрекет
<
1
алгоритмнің
<3-
әрекет
<2-
алгоритмнің
<4-
әрекет
>
>
қосымша
>
қосымша
>
атауы
атауы
>
>
СОҢ
Жоғарыда көрсетілгендей, алгоритмдерді алгоритмдік тілде жазу
команданың ретін көрсету жолындағы дайын этап болып саналады. Ол
машина қабылдай алатын, түсінетін және орындай алатын формада
болуы керек. Осы мақсаттарға қолданылатын, анағұрлым көп таралған
машиналар ЭЕМ. Өздерін электронды-есептегіш машиналармен
қабылдатуға бағытталған және ЭЕМ жұмысының ерекшеліктерін
есепке алған алгоритмидік тілдер
бағдарламалау тілдері деп аталады.
.
Достарыңызбен бөлісу: