Алгоритмнің қасиеттері
Алгоритм жеке нұсқаулардан тұрады және нақты орындаушыға арналып жазылады. Сондықтан алгоритмде орындаушының мүмкіндіктері ескерілуі керек, біздің жағдайымызда алгоритмдердің орындаушысы - электронды есептеуіш машина. Компьютерге алгоритм белгілі бір программалау тілінде жазылып енгізіледі, компьютер программа нұсқауларын орындайды.
Қойылған мәселені шешудің дұрыс алгоритмі мынадай негізгі қасиеттерге ие болуы тиіс: анықтылық, нәтижелілік, жалпыламалық, дискреттік (үздіктілік).
Алгоритмнің анықтылығы дегенде оның әрбір адымы әртүрлі түсінікке жол бермейтін, дәл және анық тұжырымдалған ережені түсінеміз.
Алгоритмнің нәтижелілігі деп санаулы қадам жасалған соң қарастырылған мәселенің не шешімі табылатынын, не шешімі жоқтығы анықталатынын айтады.
Алгоритмнің жалпыламалық қасиеті бойынша дайын алгоритммен жеке бір есепті ғана емес, осы есеп класына тиісті кезкелген есепті шығару мүмкін болуы тиіс.
Алгоритмнің дискреттілігі (үздіктілігі) деп алгоритммен анықталған есептеулерді жекеленген кезеңдерге (қарапайым амалдарға) жіктеуді ұғамыз.
Қойылған мәселені шешу үшін осы негізгі қасиеттерді қанағаттандыратын алгоритм түзу мүмкін болмаса, мәселе “алгоритмдік жолмен шешілмейтін” деп аталады да, оны ЭЕМ-де шешу мүмкін болмайды.
Көп жағдайда алгоритм түзу дайын алгоритмді орындаудан қиын соғады, есепті шығару жолын білгенмен оны жинақты алгоритм түрінде көрсету оңай емес. Егер есепті шешу алгоритмі әбден пысықталса, оны көпшілікке түсінікті түрде қалай жазуға болады? Алгоритм түсінікті де көрнекі және ықшам болғаны дұрыс.
ЭЕМ бір тактілік уақытта бір ғана қарапайым не логикалық операцияны орындай алатын етіп құрылғандықтан, ақпаратты өңдеу үшін машинаға берілетін командалар (нұсқаулар) осы сияқты нұсқаулар тізбегінен тұрады.
Компьютерде есепті шешу процесі - бұл адам және ЭЕМ арасындағы біріктірілген сала. Бұл процесті бірнеше тізбектелген этаптар түрінде көрсетуге болады. Адамға тиісті этаптар, шығармашылық саламен байланыстысы - қойылуы, алгоритмизациясы, есептің программасы және нәтижелерді талдауы, ал компьютерге тиістісі - өңделген алгоритммен сәйкес келетін ақпаратты өңдеу этаптары.
Бұл этаптарды келесі мысалдарда қарастырамыз: екі бүтін санның соммасын есептеу және мониторға нәтижесін шығару.
Бірінші этап – есептің қойылымы. Бұл этапқа есепті қолданатын жұмыс саласын жақсы білетін адам қатысады, ол есептің мақсатын нақты анықтауы керек, есептің мазмұнына сөздік түсінік беруі және оның шешімімен жалпы жақындық ұсынуы керек. Мысалы, екі бүтін санның соммасын есептеу үшін сандар қалай қосылатын білетін адам есепті келесі әдіспен түсіндіре алады: екі бүтін санды енгізу, оларды бір-біріне қосу және есептің нәтижесі ретінде соммасын шығару.
Екінші этап – математикалық немесе ақпараттық моделдеу. Бұл этаптың мақсаты – есеп компьютерде шешілуі үшін, есептің математикалық моделін құру. Көптеген есептердің математикалық моделінде тек қана формулалар мен логикалық шарттар келтіріледі. Бұл этап бірінші этаппен тығыз байланыста және оны бөлек қарастырмасада болады, бірақ құрылған модель үшін бірнеше шешу әдістері танымал болуы мүмкін және олардың ішінен ең ыңғайлысын таңдау керек болады. Жоғарыда түсіндірілген есеп үшін екінші этап келесідей болады: компьютерге енгізілген сандарды А және В атауымен жадыда сақтаймыз, содан соң бұл сандардың сомасының мағынасын А + В формуласы бойынша есептейміз және нәтижесін жадыда Summa атауымен сақтаймыз.
Үшінші этап – есептің алгоритмі. Математикалық түсіндіру негізінде шешудің алгоритмін құрастыру керек. Алгоритм дегеніміз - қойылған есептің шешуге бағытталған әрекеттер тобын іске асыру үшін атқарушыға түсінікті әрі дәл нұсқаулар жиынтығы. Алгоритмдерді орындайтындар адамдар, роботтар, компьютерлер болуы мүмкін.
Төртінші этап - программалау. Программа - бұл орындаушы (компьютер) орындайтын әрекеттердің жоспары. Үшінші этапта құрылған алгоритм бойынша программа алгоритмдік тілде жазылады.
Бесінші этап – жазылған программаны компьютерге программалау жүйесінде еңгізу.
Алтыншы этап – тестілеу және программаны жөндеу. Бұл қадамда ЭЕМ қөмегімен алгоритм орындалады, қателер ізделінеді және олар жойылады. Программаны жөндеу – бұл күрделі және стандартты емес процесс.Күрделі программалар бөлек фрагменттермен тексеріледі.
Жетінші этап - жөнделген программаның орындалуы және нетижені талдау. Бұл қадамда программа жұмысқа қосылып, алғашқы керекті мәндер беріліп. программа нәтижесі алынады. Шыққан нәтижелер талданып, нәтижелерге сай шешімдер, ұсыныстар, шығарулар жағдыланады. Талдау шешімі бойынша есептің құрылған жолдары қайтадан қарастырылып, есептің бірінші қадамына қайтып оралып, есеп жаңадан шешілуі мүмкін.
Мысал-1:
Конус бетінің жақ ауданын және көлемін есептеңіз. Биіктігі Һ, радиусы R берілген. Нәтижені шығарыңыз. Sконус=πRl, V=?
1-ші қадам: R-ді енгізу.
2-ші қадам: Һ-ты енгізу.
3-ші қадам: l-ды анықтау, l= ;
4-ші қадам: S-ті анықтау, S=πRl;
5-ші қадам: V-ны анықтау, V=1/3*πRһ;
6-шы қадам: S,V-ны шығару.
Мысал-2:
А=3, В=5,С=7 осы айнымалылардың мәні нешеге тең?Егер мына амалдар ретімен орындалса, а-меншіктеу.
а:=а+1, в:=а+в, с:=а+в, а:= ;
1-ші қадам: а:=4.
2-ші қадам: в:=9.
3-ші қадам: с:=13.
4-ші қадам: а:=±2.
Жауабы: а=2,в=9,с=13.
Достарыңызбен бөлісу: |