Әдістемелік құрал



Pdf көрінісі
бет30/63
Дата05.04.2023
өлшемі1,24 Mb.
#79685
1   ...   26   27   28   29   30   31   32   33   ...   63
Байланысты:
Алгоритм және оның мүмкіндіктері

 
 
 
 
 
 
Басы 
Енгіз:а,b,c 
P:=(a+b+c)/2 
S:=
)
)(
)(
(
c
p
b
p
a
p
p



Жауабы:S 
Соңы 
Басы 
Енгізу:х 
Х>1,2
y:=x
2
+sinx
2
Y:=1+x3+cos2x 
Жауабы:у 
Соңы 


56 
ОРЫНДАУШЫ ТҮСІНІГІ. 
ОРЫНДАУШЫНЫҢ ЖАРЛЫҚТАР ЖҮЙЕСІ 
Есепті шешу алгоритмі деп жазбаша жарлықтардың тізімі аталады, яғни оны 
орындау барысында есептің шешімін, не берілген мәндерде есептің шешімі жоқ 
екендігі туралы жауап алуға болады. Жалпы жағдайда есептер әр түрде бола 
алады. Мысалы, мектепке бару және үйге қайту, жолайырығындағы бағдаршамнан 
өту, шәй қайнату, тамақ пісіру және т.с.с. есептер өмірде көптеген түрде кездеседі. 
Мұндай есептерді шешу алгоритмдерін тұрмыстық алгоритмдер деп атауға 
болады. Адамзат қызметінде көптеген өмірлік тәжірибеден туындайтын әрекеттер, 
қоғам заңдары әртүрлі алгоритмдер жиынтығынан тұрады. 
Алгоритм түсінігі есепті шешу әдісі түсінігімен тығыз байланысты. Әдіс деп 
қатаң негізделген есепті шешу тәсілімен оны қолдануға болатын берілген 
мәліметтер бойынша есептер тобын анықтау мақсатында құрылған тәсілді 
зерттеуді айтады. 
Ал, алгоритм есепті шешу және практикада қолдану әдісін сипаттау б.т. Ол 
әдісті зерттеу нәтижесі бойынша құрылады. Алгоритм есепті шешу орындалатын 
әрекеттердің қатаң жазбаларының реттелген тізбегі болып табылады. Бұл 
әрекеттер шешу әдісінен туындайды. 
Алгоритмнің қасиетті сапаларының бірі – орындаушыдан шешу әдісін, яғни 
жазылған әрекеттерді не үшін орындау қажеттігін түсінуді талапетпейді. 
Орындаушыдан жазылған әрекеттерді орындай алуды және қағидаларды түсінуді 
талап етеді. 
Орындаушы алгоритмді қағида – жарлықтардың ізімен «механикалық» 
түрде орындайды. ЭЕМ-ді, алгоритмді орындау құралы ретінде пайдалану 
мүмкіндігі осыған негізделген. 
Алгоритм әрқашанда орындаушы үшін жазылады. Ол адам, ЭЕМ және т.б. 
құрылғы болуы мүмкін. Алгоритмді сипаттау, орындаушыға жазылған әрекеттер 
түсінікті болуы үшін соның тілінде жүзеге асырылады. 
Қосымша толықтырушы түсінік еңгізейік. Жеке жазбаларды – алгоритм 
жарлығын жарлық деп атайық. Алгоритм жарлықтар тізбегі б.т. Орындаушы 
түсінетін және орындай алатын барлық жарлықтар жиынын орындаушының 
барлық іс - әрекетін сипаттайтын жарлықтар жүйесі орындаушының тілі б.т. 
Мысалы, ЭЕМ үшін жарлықтар жүйесі – қосу, азайту, көбейту, бөлу және 
сандарды салыстыру. Сондықтан, алгоритм әр кезде де орындаушының жарлықтар 
жүйесінің мүмкіндігіне байланысты жазылады. Алгоритмнің мынадай түрлері 
белгілі – есептеу алгоритмдері, диалогтық алгоритмдер, графикалық алгоритмдер, 
мәліметтерді өңдеу алгоритмдері, роботтарды басқару алгоритмдері, және т.б. 
Алгоритмді жазудың бірнеше тәсілдері қалыптасқан: формула, кесте, сөз, 
графикалық, алгоритмдік бағдарламалау тілдерінде сызықты түрде және т.б. Біз 
жоғарыда алгоритмді сөз түрінде, блок- схема түрінде сипаттауға тоқталғанбыз. 


57 
Сол графикалық сипаттауды алгоритмнің блок-схемасы деп атайды. Алгоритмді 
бағдарламалау тілінде жазуды- бағдарлама деп атайды. 
Алгоритмді сөз жүзінде сипаттағанда, жазғанда, әрбір жарлықты нөмірлеп 
отырамыз, себебі, ол алгоритмді орындау барысында қайда көшу, өту керектігін 
көрсетіп отыру үшін ыңғайлы болады. Сонымен қатар қосымша: «басы», «соңы», 
қызметші жарлықтарды пайдаланатын боламыз. Бұл жарлықтар алгоритмнің 
басын, соңын және одан әрі орындау мүмкін болмаған жағдайда алгоритмнің 
орындалуын үзуді білдіреді. «Соңы» жарлыңынан бұл жарлықтың ерекшелігі 
алгоритмнің орындалуын кенеттен үзу арқылы аяқтайды білдіреді. 
Әрбір нұсқау — бұйрық. Ал орындаушының жүзеге асыра алатын 
бұйрықтар жиыны бұйрықтар жүйесі деп аталады. Мысалы, у = (ax + b) (cx - d) 
функциясын есептеу ЭЕМ-да мынадай әрекеттерден құралады: 
а-ны x-ке көбейту R1 деп, 
оған b-ны қосу нәтижесі R2 деп, 
с-ны х-ке көбейту R3 деп, 
сх-тан d-ны алу R4 деп, 
R2-ні R4-ке көбейту у деп белгіленеді. 
Алгоритмнің бұйрықтары бірінен кейін бірі кезекпен орындалады. 
Бағдарлама Алгоритм тілінде жазу, бейнелеу мағынасын береді. Компьютерде 
Алгоритмнің сызықты, тармақты, циклді, логикалық, модельдік, параллельдік, 
тізбекті т.б. түрлері қолданылады. 
2-мысал. Үш санды өсу реті бойынша орналастырыңдар.
А)алгоритмді сөз түрінде жазайық: 
Шешуі:қатар орналасқан кезкелген үш санды – А,В,С деп белгілейік. 
Мысалы:А=3,В=2,С=-4 болсын. Есепті шешу нәтижесінде А-нің мәні ең кіші сан, 
ол -4, ал С – ең үлкен сан, ол 3 болады. 
Мұндағы:А,В,С – аргументтер; 
А;В;С – нәтижелер; 
S-қосымша аралық айнымалы. 
1.Басы 
2.Егер А

В болса,онда 4п өтіңдер. 
3.S:=a; A:=B; B:=S (A,B –нің мәндерін алмастыру) 
4.Егер В

С болса онда 9п. өтіңдер 
5.Егер С

А болса онда 8п. өтіңдер 
6.S:=C; C:=B; B:=A;A:=S (C

A

B болған жағдайда реттеу) 
7.9п.өтіңдер 
8.S:=C; C:=B; B:=S (A9.Жауабын шығару 
10.Соңы 


58 
Алгоритмнің орындалу барысында алғашқы екі сан өсу реті бойынша 
орналастырылады. Егер А>B болса, онда олардың мәндерін алмастырамыз (3-
команда), егер А

В болса, онда 4п. өтеміз, ал ол кезде 3п. Орындалмайды. 
3 жарлықта А,В мәндерін алмастыру үшін S аралық ұяшығы 
пайдаланылады: 
S:=A
A

S
(A=3,B=2,S=3); 
A:=B
B

A
(A=2,B=2,S=3); 
B:=S
S

B
(A=3,B=3,S=3). 
Ары қарай алгоритм С мәніне байланысты үш бағытта тармақталады.
Бұл алгоритм тармақталушы түрге жатады. Егер алгоритмнің жазылуында 
шарттын орындалуынан тәуелді командалар бар болса, онда оны тармақтаушы 
алгоритм деп атайды. Бұл мысалдағы: 3,5,6,7,8 командалар әр кезде орындала 
беоеді. 
ә)блок-схема түрінде жазу(3-сурет): 
3-мысал. Сандардың қосындысын есептеу. 
Шешуі. Белгілеулер енгізейік, n-тізбектегі сандардың саны, х
1

2

3
,...х
n
– 
берілген сандар, s-қосындыны жинайтын айнымалы. 
Қосындыны есептеу үшін сызықты алгоритмді пайдалануға болатын еді: 
1.Басы 
2.S:=x
1
3.S:=S+x
2
4.S:=S+x
3
… 
N.S:=S+x

N+1.Соңы 
Дегенмен, бұлай жазу өте көп жарлық жазуды қажет етеді. Егер n=2000 
болса, онда 2002 жарлық қажет болады. Қайталану шартын қосылған сандарды 
санаушымен байланыстыра отырып, қайталанушы (циклдік) алгоритм құрайық 
және оған сандардың индекс көрсеткішін енгізейік. Айнымалының рет нөмірі 
индекстің мәні болып табылады. Индексті I айнымалыға енгізейік. Қосынды, әрбір 
келесі санды қосу арқылы s айнымалыға жиналады. Алдымен s-ті нөлге 
теңестіреміз,ал i=1. Сонда алгоритмнің негізгі амалы S:=S+x
1
болады. Ал, индекс 
i:=i+1 бойынша i>n болғанша өзгере береді. 
Бұл жағдайда i индексі қосылған сандарды санаушы болып табылады. Ол 
тікелей санаушы деп аталады да өсіп отырады. 
Дегенмен, сандарды қосуды кері санаушы арқылы жүргізуге де болады.Ол 
кезде алдымен i:=n деп, әр жолы бірді азайтып i:=i-1 отыру керек. Бұл кезде 
қайталану, шарт i>0 болғанда жүзеге асады. 


59 
39- сұлба. Тікелей санаушы түрінде  
1.Мұндағы: n.x
1
,x
2
,x
3
,…x
n
-аргументтер; 
S-нәтиже; 
i-аралық айнымалы. 
1.Басы 
2.S:=0 
3.i:=1 
4.S:=x
1
5.i:=i+1 
6.Егер i

n болса, онда 4п өтіңдер 
7.Жауабы:S 
8.Соңы 
2.n санды кері қарай санау бойынша қосудың алгоритмі
Мұндағы: n,x
1
,….x
n
– аргументтер; 
S-нәтиже; 
i-аралық айнымалы. 
1.Басы 
2.S:=0 
3.i:=n 
4.S:=S+x
1
Басы 
А,В,С 
енгіз 
А
 В 
S:=A;A:=B;B:
=S 
B
 C 
C
 A 
S:=B;B:=C;C:=S 
S:=C;C:=B 
B:=A;A:=R 
A,B,C шығару 
Соңы 


60 
5.i:=i-1 
6.Егер i>0 ьолса, онда 4пөт 
7.Нәтиже S 
8.соңы. 
Бұл алгоритм n

2 үшін орындалады. 
Енді осы циклдік алгоритмдерді блок-схема түрінде жазайық: 
а)n санның қосындысын тікелей санаушы арқылы есептеудің блок-схемасы: 


Достарыңызбен бөлісу:
1   ...   26   27   28   29   30   31   32   33   ...   63




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

    Басты бет