61
АЛГОРИТМДІ ЖАЗУ ТӘСІЛДЕРІ
Алгоритмдегі жарлықтардың, нұсқаулардың берілу түріне қарай алгоритмді
жазу әдістерін ажыратуға болады. Орындаушының өзіңе тән біліміне байланысты
арнайы таңбалар, сөздер, іс-қимылдар, схемалар арқылы
алгоритмдерді жазудың
тәсілдерін ұйымдастыруға болады.
Мысалы, цирктегі құстар мен жануарларға алгоритмдер арнайы дауыстар,
іс-қимылдар арқылы, автокөлік жүргізу алгоритмі,
телевизор, магнитофонды
жұмыс істету алгоритмі арнайы пернелерді басу, бұрау арқылы жүзеге
асыоылады;т.с.с. әртүрлі
таңбалармен, белгілермен берілген алгоритмдер көп
кездеседі.
Орындаушы-адам болатын жағдайда алгоритм көбінесе сөзбен жазылады.
Сөзбен жазылған алгоритмдер, ретпен орналасқансөйлемдерден тұрады. Сонымен
бірге алгоритмдер арнайы таңбалар,
блок-схемалар, формулалар, кесте түрінде,
ноталар арқылы жазылады.
Енді сөзбен жазылған алгоритмге мысалдар қарастырайық.
1-мысал. Екі бүтін санның ең үлкен ортақ бөлгішін (ЕУОБ) табу керек. Бұл
есепті шешу, үлкен санды кішісінен бөлу арқылы, сонан соң кіші санды қалдыққа
бөлу, бірінші қалдықтыекінші қалдыққа бөлу және т.с.с. қалдық нол болғанша
тізбектей бөлу арқылы жүзеге асырылады. Саны бойынша
ең соңғы бөлгіш нәтиже
б.т.
Бастапқы берілген екі бүтін санды М және N деп белгілейік.Бөлуді
қайталанып отыратын азайту амалы мен алмастырайық. Онда алгоритмді келесі
түрде ұйымдастыруға болады:
1.Басы
2. (M,N) еңгізініздер.
3.Егер M
N болса, онда 4 пунктке, әйтпесе 7 пунктке өтіңдер.
4.Егер M > N болса, онда 5 пунктке, әйтпесе 6 пунктке өтіңдер.
5.М:=M-N; 3 пунктке өтіңдер.
6.N:=N-M; 3 пунктке өтіңдер.
7.EYOB:=M
8.EYOB:=M жауапқа шығару.
9.Соңы.
2-мысал. Максимум мен минимумды іздеу алгоритмі. Ол үшін бізге кез
келген n нақты саннан тұратын шекті тізбек а
1
,...,а
2
,...а
n
берілсін. Сандардың саны
аз болған жағдайда максимум мен минимумды оңай көрсетуге болады. Ал, егер n
үлкен болса, онда есеп қиындайды. Бірнеше жүздеген
көпразрядты сандардың
ішінен максимуммен минимуммын табудың қиындығы жоғары болады.
Сондықтан, бір анықталған жүйеге сүйену қажет. Мысалы, алғашқы мән ретінде
максимум үшін де, минимум үшін де алғашқы тұрған санды алайық. Ары қарай
ретімен әрбір санды максимумның мәнімен салыстырамыз.
Егер келесі сан
максимумнан үлкен болса, онда оны максимумның жаңа мәні ретінде
62
қабылдаймыз, онан соң келесі тұрған санға өтеміз. Егер қарастырылып отырған
сан максимумнан үлкен болмаса, ондаоны минимум
ретінде алынған санмен
салыстырамыз. Егер осы сан минимумнан кіші болса,онда оны минимумның жаңа
мәні ретінде қабылдаймыз; егер бұл сан минимумнан кіші болмаса,келесі
санды
таңдауға өтеміз. Осындай әдіспенсандардың бәрін салыстыру арқылы максимум
мен минимумын соңғы мәнін табамыз. Осы айтылған ережені сөзбен жазу
тәсілімен былай жазуға болады:
1. Басы
2. (а
1
.i=1.2….n) енгізіндер.
3.min:=a
1
; max:=a
1
7
4.i:=2
5.Егер a
1
>max, онда 6 п. өтіңдер, әйтпесе 7 п.өтіңдер
6.max:=a
1
; 9 пункткеөтіңдер.
7.Егер a
1
8.min:=a
9.i:=i+1
10. Егер i
11.(max,min) жауапқа шығарындар.
12.Соңы.
Достарыңызбен бөлісу: