Алгоритм командалары. Алгоритм құрылымы. Сызықтық алгоритм, тармақталған алгоритм, қайталау алгоритімі
Сабақ жоспары
Сыныбы : 7«А»
Сабақтың тақырыбы: Алгоритм командалары. Алгоритм құрылымы. Сызықтық алгоритм, тармақталған алгоритм, қайталау алгоритімі
Сабақтың мақсаты:
Білімділігі:Бала бойына бүгінгі тақырыпты өту барысында
білімдерін арттыру.
Тәрбиелігі:Әр оқушыны іскерлікке, нақтылыққа,
ынтымақтылыққа тәрбиелеу.
Дамытушылығы:Оқушының әрбір сабаққа ынтасы мен қабілетін біріктіріп,
пәнге деген қызығушылығын арттыру.
Сабақтың түрі: жаңа сабақты меңгерту сабағы
Сабақтың өту әдісі: сөздік, көрнекі, практикалық
Сабақтың көрнекілігі: компьютерлер, интерактивті тақта, презентация.
Сабақтың барысы:
а) ұйымдастыру кезеңі
б) сабақ сұрау
в) бағалау
г) жаңа сабақ
д) бекіту
е) үйге тапсырма
ж) қорытынды
Қауіпсіздік ережелерін қайталау сұрақтары.
- Жалпы техникалық қауіпсіздікті сақтау ережелеріне қойылатын қандай талаптар бар?
- Компьютерлік сыныпқа кірер алдында қандай талаптар қойылады?
- Компьютермен жұмыс істер алдындығы қойлатын талаптарды ата.
- Компьютермен жұмыс істеу барысында қандай талаптар қойылады?
- Компьютермен жүмыс аяқтағаннан кейінгі қойылатын талаптар.
- Электр тоғымен зақымданғанда қандай алғашқы көмек көрсету тәсілдері бар?
- Көз талғанда қандай жаттығулар жасалынады?
Жаңа сабақты түсіндіру
Алгоритм, программа ұғымдары
«Алгоритм» ұғымы информатикада ақпарат сияқты іргелі ұғымдар қатарына жатады. Алгоритм атауы атақты араб математигі Әбу Жафар Мұхаммед ибн Мұса әл-Хорезми ( 763-850 ж.ж) есімінің латынша Algorithmi (Алгоритми) болып жазылуына шыққан. Ол санаудың ондық жүйесінде көп орынды сандар мен арифметикалық амалдардың орындалу ережесін ұсынған. Бұл ережелер қосынды мен көбейтіндіні табуға арналған амалдарды орындауға қажетті тізбектен құрылған. Сол ереже осы күнге дейін қолданылып келеді.
Әл-Хорезмидің ұсынған тәсілін жатқаушыларды алгоритмдіктер деп, ал «алгоритм» ұғымын бірқатар қасиеттері бар ережелер жүйесі деп атаған. Қазіргі кезде «алгоритм» ұғымы тек математикалық есеп шешу әдісімен ғана шектелмейді. Оның мағынасы әлдеқайда кең. Әрбір компьютер алдын-ала берілген алгоритммен, яғни жоспарлы жұмыс істейді.
Алгоритм дегеніміз – іс әрекеттің рет-ретімен орындалуы. Кез-келген есепті қарапайым амалдарды тізбектей орындау арқылы шығаруға болады. Алгоритімді компьютерде орындау үшін оны программа түрінде жазып шығу керек.
Программа компьютерге түсінікті командалардан тұрады. Осы командалар тізбе орындау соңында есептің нәтижесі шығады. Командалар тізбегін – программа қарастыруға болады. Команда бір ғана қарапайым амалды орындау үшін берілген бұйрық ретінде қабылданады. Командалар: арифметикалық немесе логикалық амал; ақпарат тасымалдау командасы; берілген сандарды салыстыру командасы; берілген сандарды салыстыру командасы; нәтижені экранға, қағаз басып шығару командасы; келесі командаға көшу тәртібін орындау; т.б. болып бөлінеді.
Алгоритмнің орындалу
Күнделікті тұрмыстан алгоритмге бір мысал келтірейік. Студент болу үшін алгоритм мынадай қадамдарын орындау керек:
1.Мектепті тәмамдау.
2.Бірыңғай ұлттық тестілеуден өту.
3.Керекті құжаттарды, аттестаттың түпнұсқасын емтихан қорытыдысымен белгілі
бір мамандықты көрсетіп, конкурсқа тапсыру.
4.Конкурстан өту.
5.Таңдаған мамандығы бойынша оқитын жоғары оқу орнын анықтау.
Бұл пункттердің орнын ауыстыруға бомайды. Олар көрсетілген ретпен кезегі орындалуы тиіс. Сонда ғана көздеген нәтижеге қолымыз жетеді.
Алгоритм – информатика мен есептеу техникасының іргелі ұғымдарының бірі.
Техникалық құрылғылдары дұрыс пайдалана алу үшін есеп шешу жолы, яғни орындалатын іс-әрекеттердің тізбегі әрі түсінікті, әрі нақты болуы қажет.
Алгоритм қасиеттері
Алгоритмнің айқын, дәл өрнектелу қасиеті. Алгоритмде келтірілген барлық әрекеттердің мағынасы айқын, нықты анықталған болу керек. Онда қандай қадам көрсетілсе тек солар ғана орындалуы қажет. Есеп шығаруға керектің бәрі анықталуы және орындаушыға түсінікті әрі нақты болуы тиіс.
- Алгоритмнің үзіктілік қасиеті. Алгоритмнің үзік модульдерге бөлінуі, яғни алгоритмді бірнеше кішкене алгоритмдерге жіктеу мүмкін болу керек. Бұл қасиеті бойынша алгоритм аралық нәтиже беретіндей бірнеше ықшам бөліктерге, ал олар одан кіші қадамдарға бөлінеді, яғни мәселені шешу процесінің тізбегі жеке-жеке әрекеттер жіктеледі. Сондықтан алгоритмді, екі-үш бқлікке бөліп, оларды жеке қабылдай алатын дәрежеде жұмыс істелінуі қажет.
- Алгоритмнің нәтижелік қасиеті. Кез-келген алгоритмнің нәтижесі болу керек. Әрекеттердің шектеулі санынан кейін белгілі бір уақытта қорытынды нәтиже алуымыз қажет.
- Алгоритмнің жалпылық немесе ортақтық қасиеті. Алгоритм құрғанда белгілі бір жеке проблемаға қарсы ғана арналмай, осы тәріздес мәселелер шешуін толық қамтуға мүмкіндік беретіндей етіп құрылуы қажет.
- Алгоритмнің формальды орындалуы. Алгоритмді орындағанда орындаушы оныәр командасының мағынасын түсінуі де, түсінбеуі де мүмкін. Бірақ алгоритмнің әр командасы орындаушының нақты бір әрекетті орындауын талап етеді.
Алгоритм жазу жолдары
Алгоритмді компьютерде орындау үшін оларды алдын-ала жазып алу керек. Жалпы жағдайда, алгоритм жазудың келесі түрлері қабылданған
1) табиғи тілдегі жазылуы;
2) белгілі бір түйінді сөздер – терминдер арқылы қысқаша тізбекті түрде жазу;
3) графиктік жолмен жазу;
4) программалау тілдеріндегі жазылуы.
Бірақ табиғи тілде жазылған алгоритм компьютерде орындалмайды, өйткені бұл жағдайда дәлдік, нақтылық сақталмайды. Алгоритмдерді графиктік жолмен жазу, кейіннен осы программалау тіліндегі программаға айналдыру жұмысы мемлекеттік стандартпен бекітіліп, ақпарат өндеу жұмысында кеңінен қолданылады.
Алгоритмдік тіл және программалау тілі ұғымы
Алгоритмдік тіл деп – орындалатын әрекеттерді, амалдарды бірыңғай және дәл жазуға арналған, өз тіліміздің кейбір сөздерімен пайдаланатын белгілер мен ережелер жүйесін айтады. Алгоритмдік тіл бір жағынан табиғи тілге жақын, сондықтан оны қарапайым мәтін түрінде жазады және оқиды. Алгоритмдік тіл – математикалық белгілер сандар, шамалар мен функция атаулары, арифметикалық белгілері, жақша және басқа да символдармен қатар белгілі бір қызмет атқаратын терминдер қамтиды. Алгоритмдік тілде мәтін құруға пайдаланылатын қарапайым белгілер – тілдің символдары деп, ал ондай символдар жиынын – оның алфавиті деп атайды.
Алгоритмдерді жәні алгоритмдік тілде құрылған амалдар тізбегін компьютерге түсінікті командалар мәтіні түрінде жазуға арналған жасанды тілдерді программалау тілдері деп атайды. Паскаль, Си, Дельфи, Бейсик, Фортран тәрізді программалау тілдері – ағылшын тіліндегі кейбір сөздерді алгоритм құруда кеңінен пайдаланады. Ол сөздердің саны онша көп емес, оларды түйінді сөздер деп атайды. Әр компьютердің өзінің машиналық тілі болады, ол командалар тілі немесе кодтар тілі деп аталады. Алгоритмдік тілде және программалау тілінде программа жазу – ыңғайлы болып табылады. Оларды белгілі бір машинада орындау үшін сол программалау тілін машина тіліне автоматты түрде аударатын түрлендіргіш программалар болуы керек, оларды транслятор деп атайды. Трансляторлар үш түрге бөлінеді: интерпретатор, компилятор және ассемблер.
Интерпретатор – берілген прогамманың әрбір жолын (командасын) жеке-жеке аударып отырып орындайтын транслятор түрі.
Компилятор – бірден барлық программа мәтінін толық аударып машина тіліндегі бір модуль түріне келтіреді де, сонан соң сол модульді компьютер жадына қайта жазып алып, оны кейін тек біздің алауымыз бойынша орындайды.
Алгоритм құрылымы
Алгоритмдер блоктардың өзара байланысуына қарай үш құрылымға – сызықтық тармақтық және циклдік түрлерге бөлінеді.
- Сызықтық немесе тізбекті алгоритм. Сызықтық алгоритм тізбектеле орналасқан командалардан, ал блок-схемалар бір сызық бойына орналасқан тізбекті блоктардан тұрады. Әрекеттердің тізбектей орындалуы – сызықтық алгоритм деп аталады.
Мысалы:
алг үй тапсырмасын орындау
басы
күнделікті алу, тиісті бетін ашу,
үй тапсырмасын анықтау
үй тапсырмасын орындау
күнделікті орнына қою
соңы
Сызықтық алгоритм командалары осында көрсетілген рет бойынша орындалатын тізбектеле орналасқан командалардан (блоктардан) тұрады.
Амалдардың бұлай бірінен соң бірі реттеліп орындалу тәртібін табиғи атқарылу дейді. Мысалы, төменде көрсетілген Z функциясының сандық мәнін есептеп шығару алгоритмін жасау керек болсын.
2 2 2
Z = ax + b + cos (ax + b) – tg (ax + b)
алг Z функциясын есептеу
(нақ a, b, x, z )
арг a, b, x
нәт z
басы
a, b, x енгізу
t : = ax 2 + b
z : = t + cost + tgt
x, z шығару
соңы
Сонымен қарастырылған алгоритм қарапайым сызықтық алгоритмнің мысалы ьолып табылады. Мұндағы 2-блок — a, b, x мәндерін пернелерден программаға енгізу блогы, 3-блок t — ның,
ал 4-блок Z функциясының мәндерін есептейді. 5-блок х айнымаласының және Z функциясының нәтижесін қағазға басып шығарады.
- Тармақталу алгоритмдері. Тармақталу алгоритмінде көбінесе арифметикалық теңсіздік түрінде берілген логикалық шарт тексеріледі. Егер орындалса, онда алгоритм бір тармақпен жүзеге асырылады да, соңында екі тармақ қайта бірігеді. Мұндай алгоритмде шартты тексеру тармақталу командасы деп аталады. Оны алгоритмдік алгоритмдік тілде өрнектелгенде егер, онда, әйтпеес, бітті
түйінді сөздері пайдаланылады. Орынду тәсіліне байланысты тармақталу командасы «таңдау»(толымды) және «аттап өту» (толымсыз) болып екі түрге бөлінеді.
- Циклдік алгоритмдер. Көптеген алгоритмдерде белгілі бір әрекеттер тізбегі бірнеше рет қайталанып орындалып отырады. Математикада есеп шығару кезінде бір теңдеуді пайдаланып, ондағы айнымалы мәнінің өзгеруіне байланысты оны бірнеше рет қайталап есептеуге тура келеді. Осындай есептеу процесі бөліктерінің қайталап орындалуы цикл деп атайды, ал қайталанатын бөлігі бар алгоритдер тобы циклдік алгоритмдер жатады. Қайталану командасын алгоритмдік жазу үшін әзірше (әзір), цикл бар (цб), және цикл соңы (цс) түінді сөздер қолданылады.
Тапсырма: (20 бет 1-3 жаттығу)
- Күрделі тармақталу
- Күрделі шарттарды пайдалану
- Арифметикалық циклдер
- Итерациялық (қадамдық) цикл.
Сабақты бекіту сұрақтары
- Алгоритм командалары есеп шартына байланысты қалай бөлінеді?
- Жай және құрама командалардың айырмашылықтары қандай?
- Сызықтық алгоритм дегеніміз не?
- Тармақталу алгоритмі мен циклдік алгоритмнің
айырмашылығы қандай?
- Компьютерде есеп шығару қандай кезеңдерден тұрады?
Үйге тапсырма:Оқу. Y=(AX-B)(CX+D) өрнегінің алгоритмін құрып келу