Тақырыбы: Алгоритм, оның түрлері және қасиеттері
Қабылдаған: Машанова Раушан
Орындаған: Бакирова Перизат
Оқу тобы: ПМНО 22/2-2
2022-2023 оқу жылы 8-дәріс. Алгоритм, оның түрлері және қасиеттері Жоспары: 1. «Алгоритм» ұғымы.
2. Қарапайым алгоритмдер және олардың түрлері.
3. Алгоритмдердің қасиеттері.
4. Есептерді және теңдеулерді шешу алгоритмдеері; фигураларды салу алгоритмдері; шамаларды өлшеу алгоритмдері.
Алгоритм сөзі IX ғасырда өмір сүрген көрнекті математик Әл-Хорезмидің латын тілінде бұрмаланған аты. Ол бірінші рет арифметикалық амалдарды орындаудың ережелерін тұжырымдаған ғалым.Алгоритм дегеніміз - алға қойылған мақсатқа жету үшін немесе берілген есепті шешу үшін түсінікті де нақты ережелер бойынша орындаушыға жинақы түрде берілген реттелген нүсқаулар тізбегі. Бұл анықтамада алгоритм мен оның қасиеттерін байланыстыратын негІзгі ұғымдар беріліп отыр. Оны келесі схема түрінде көрсетеді.Бұл схемада орталық объект алгоритмді орындаушы болып түр. Орындаушы - бұл объект (немесе субъект), құрылған алгоритмді басқарады. Орындаушының негізгі әрекеті оның командалар жүйесін басқаруынан көрінеді. Кез келген есепті шешудің кірісінде берілгендер мен алгоритм командалары тұрады, шығысында нәтиже тұрады.
Алгоритмнің келесідей қасиеттері бар:
1) Алгоритмнің үздіктілігі. Информацияны өңдеу процесі ретімен жазылған жеке-жеке нұсқаулардан құралған тізбектен тұруы тиіс.
2) Алгоритмнің түсініктілігі және аньқтылыгы. Алгоритм жалпы түрде қабылдаған символдарды, алфавитті пайдаланып жазылуы тиіс. Орындаушы (адам, компьютер) алгоритмді түсініп, арындайалатын болуы керек. Орындаушыға алгоритмді орындау үшін басқа нұсқаулар іздеуіне жол қалдырмайтындай етіліп және орындалу реттері дәл көрсетіліп қатаң түрде жазылуы қажет.
3) Алгоритмнің жалпылығы. Алгоритм неғұрлым әмбебап болуы және көпшілік пайдалана алуы тиіс.
4) Алгоритмнің нәтижелігі. Нұсқаулар шексіз көп болмай, қорытындысында оның нәтижелі болуы тиіс.
Алгоритмді жазудың немесе берілу тәсілдерінің 3 түрі бар:
1. сөзбен ауызша беріледі.
2. блок-схема түрінде.
3. алгоритмдік тілде. -Блок-схема дегеніміз - информацияны өңцеу алгоритмін МЕСТ (мемлекеттік стандарт)-те бекітілген символдарды пайдаланып, графикалық түрде жазу:Алгоритмдік тіл - алгоритмді жазуға арналған тіл. Оның алфавиті, синтаксисі, семантикасы болады. Алфавит - тілдегі символдардың жиынтығы. Синтаксис - алгоритмді жазу ережесі. Семантика - сөйлемнің дұрыс құрылуы.Алгоритмнің жазылуының жаппы түрі.Алгоритм үшін бастапқы берілгендер болып табылатын шамаларды аргументтер деп атайды. Олардың тізімі арг қызметші сөзінен кейін жазылады.Алгоритмдегі аргументте, нэтижеде болмайтын шамаларды аралық шама деп атайды, ол алгоритм тақырыбынан кейін басы қыфзметші сөзінен кейін жазылады. Енді алгортмнің жазылуының жалпы түрін көрсетейік:Бұл алгоритм сызықтық алгоритм деп аталады, алгоритмдегі командалар жазылу реті бойынша бірінен соң бірі орындалады. Бұл командалар алгоитмдік тілдегі қарапайым командалар. Периметрді және ауданды есепдеу меншіктеу командасы деп аталады. Меншіктеу командасының жалпы жазылу түрі төмендегідей: атау:= өрнек
Бұл команда төмендегідей ережемен орындалады: Алдымен меншіктеу белгісінің оң жағында жазылған өрнек есептеліп, меншіктеу белгісінің сол жағында орналасқан айнымалыға енгізіледі. "Үшін" цайталану командасы. Бүл команда кестелік шамаларды өңдеуге байланысты пайдаланылатыны белгілі. Оқушыларға қандай жағдайда "әзір", қандай жағдайда "үшін" қайталануын пайдалану керектігін түсіндіру қажет. Егер кесетелерді реті бойынша іріктеу (берілген қасиеті бойынша элементтің номерін іздеу т.с.с.) қажет болса, онда "әзір" циклы пайдаланылады. Егер элементтердің қосындысы, максимум, минимум, элементтер санын іздеу қажет болса, басқа сөзбен айтқанда, барлық элементтермен біркелкі амалдар орындалатын жағдайда "үшін" циклы пайдаланылады.
Алгоритм түрлері
Алгоритм терминімен біз таныспыз. Алгоритм – қажетті нәтижеге жеткенге дейін орындалуы тиіс әрекеттер тізбегі. Басқаша айтқанда орындалуы, алға қойған мақсатқа жетуде қандай ірекеттер жасау керектігін дәл көрсететін нұсқаулар. Алгоритм орындалуына байланысты әр түрлі болып келеді. Алгоритмнің 3 түрі бар.
• Сызықтық алгоритм
• Тармақталған алгоритм
• Циклдік алгоритм
Сызықтық алгоритм қарапайым қадамдар тізбегінен тұрады. Әрекеттердің бірінен кейін бірі тізбектеле орындалуы сызықтық алгоритм деп аталады.Сызықтық алгоритмдер. Сызықтық алгоритм қарапайым командалар тізбегінен тұрады. Әрекеттердің тізбектей орындалуын сипаттайтын алгоритм – сызықтық алгоритм деп аталады.
Тармақталу алгоритмі. Күнделікті өмірде алгоритмдер негізінен тармақтарға бөлінеді. Бұл тармақтардың орындалуы шарттың орындалуына байланысты болады. Тармақталу алгоритмінде біріншіден, арифметикалық теңсіздік түрінде берілген логикалық шарт тексеріледі. Егер шарт орындалса, алгоритм бір тармақ бойынша (1 - ші серия), ал егер орындалмаса, екінші тармақ бойынша (2 - ші серия) орындалады.
Циклдік алгоритмдер. Көптеген алгоритмдерде белгілі бір әрекеттер бірнеше рет орындалады. Математикада, есеп шығару барысында айнымалы мәні өзгеруіне байланысты бір теңдеудің көмегімен бірнеше рет есептеледі. Алгоритмнің белгілі бір бөлігі бірнеше қайталанатын болса, ондай процессті цикл деп атайды. Қайталанатын бөлігі бар алгоритмдер циклдік алгоритм деп аталады. Циклдік алгоритмдер қолдану арқылы программаны қысқа да нұсқа жазуға болады. Қайталану бөлігіне қайталану (циклдік) командалары қолданады. Қайталану саны белгілі немесе белгісіздігіне байланысты циклдер екі түрге бөлінеді. Қайталану саны белгілі болса, ондай цикл арифметикалық, ал егер белгісіз болса, итерациялық деп аталады.Сызықтық алгоритмдер. Сызықтық алгоритм қарапайым командалар тізбегінен тұрады. Әрекеттердің тізбектей орындалуын сипаттайтын алгоритм – сызықтық алгоритм деп аталады.
Тармақталу алгоритмі. Күнделікті өмірде алгоритмдер негізінен тармақтарға бөлінеді. Бұл тармақтардың орындалуы шарттың орындалуына байланысты болады. Тармақталу алгоритмінде біріншіден, арифметикалық теңсіздік түрінде берілген логикалық шарт тексеріледі. Егер шарт орындалса, алгоритм бір тармақ бойынша (1 - ші серия), ал егер орындалмаса, екінші тармақ бойынша (2 - ші серия) орындалады.
Циклдік алгоритмдер. Көптеген алгоритмдерде белгілі бір әрекеттер бірнеше рет орындалады. Математикада, есеп шығару барысында айнымалы мәні өзгеруіне байланысты бір теңдеудің көмегімен бірнеше рет есептеледі. Алгоритмнің белгілі бір бөлігі бірнеше қайталанатын болса, ондай процессті цикл деп атайды. Қайталанатын бөлігі бар алгоритмдер циклдік алгоритм деп аталады. Циклдік алгоритмдер қолдану арқылы программаны қысқа да нұсқа жазуға болады. Қайталану бөлігіне қайталану (циклдік) командалары қолданады. Қайталану саны белгілі немесе белгісіздігіне байланысты циклдер екі түрге бөлінеді. Қайталану саны белгілі болса, ондай цикл арифметикалық, ал егер белгісіз болса, итерациялық деп аталады.Алгоритмді компьютерде орындау үшін оларды алдын-ала жазып алу керек. Жалпы жағдайда, алгоритм жазудың келесі түрлері қабылданған
1) табиғи тілдегі жазылуы;
2) белгілі бір түйінді сөздер – терминдер арқылы қысқаша тізбекті түрде жазу;
3) графиктік жолмен жазу;
4) программалау тілдеріндегі жазылуы.
Бірақ табиғи тілде жазылған алгоритм компьютерде орындалмайды, өйткені бұл жағдайда дәлдік, нақтылық сақталмайды. Алгоритмдерді графиктік жолмен жазу, кейіннен осы программалау тіліндегі программаға айналдыру жұмысы мемлекетік стандартпен бекітіледі.
Алгоритм құрылымы
Алгоритмдер блоктардың өзара байланысуына қарай үш құрылымға – сызықтық тармақтық және циклдік түрлерге бөлінеді.
Сызықтық немесе тізбекті алгоритм. Сызықтық алгоритм тізбектеле орналасқан командалардан, ал блок-схемалар бір сызық бойына орналасқан тізбекті блоктардан тұрады. Әрекеттердің тізбектей орындалуы – сызықтық алгоритм деп аталады.Мысалы:алг үй тапсырмасын орындау басы
күнделікті алу, тиісті бетін ашу,
үй тапсырмасын анықтау
үй тапсырмасын орындау
күнделікті орнына қою
соңы
Сызықтық алгоритм командалары осында көрсетілген рет бойынша орындалатын тізбектеле орналасқан командалардан (блоктардан) тұрады.Амалдардың бұлай бірінен соң бірі реттеліп орындалу тәртібін табиғи атқарылу дейді. Мысалы, төменде көрсетілген Z функциясының сандық м2. Алгоритмдерді Паскаль программалау тілінде әзірлеуАлгоритмдерді программалау тілінде әзірлеу программа деп аталады. Алгоритмдерді көрсетудің бүл программасы орындаушы компьютер болған жағдайда пайдаланылады. Тіл операторлары дегеніміз - компьютерге әрекеттерді орындауды ұйғаратын алгоритм командасы.Программалаудың тілдері көптеп саналады. Паскаль тілі - IBM PC дербес компьютерлері үшін программалаудың ең үздік оқу тілдерінің бірі. Басқа жоғары деңгейлі программалау тілдері сияқты Паскальдың да өз алфавиті, синтаксисі, семантикасы бар. Алфавит - пайдаланылатын түрлі символдар: эріптер, цифрлар, таңбалар жэне белгілер. Синтаксис - машинаның іс-әрекетін анықтайтын нұсқауларды , функцияларды, деректер мен өрнектеледі.