ЕСЕПТЕУДІҢ АЛГОРИТМДІК ШЕШІМІ АЛГОРИТМДІК КҮРДЕЛІКТІ ТАЛДАУ




Презентация қосу
Сабақтың тақырыбы:
ЕСЕПТЕУДІҢ АЛГОРИТМДІК
ШЕШІМІ
АЛГОРИТМДІК КҮРДЕЛІКТІ ТАЛДАУ
Жоспары:
1. Алгоритмдер және шешімдерді іздеу
2. Алгоритмдер қасиеттері
3. Негізгі алгоритмдер түрлері
4. Алгоритмдерді орындау

Алгоритм түсінігі – бұл информатикадағы
ең негізгі ұғымдардың бірі.
«Алгоритм» сөзі IX ғасырдағы ұлы
математик аль-Хорезмнің латындық үлгідегі -
algorithmi деген атынан шығады, ол
арифметикалық амалдарды орындау ережелерін
тұжырымдайды.
Алгоритм дегеніміз – бастапқы мәліметтерді
пайдаланып іздеген нәтижеге жеткізетін
әрекеттер тізбегі.
Ондағы әрбір әрекет оның қадамы, қандай
да бір әрекетті аяқтау туралы нұсқау алгоритм
командасы, ал атқарушы жүзеге асыра алатын
командалар жиынтығы атқарушының
командалар жүйесі деп аталады. 2
Алгоритмдік процесс дегеніміз – шешілетін
есептің нақты бастапқы берілгендеріне
алгоритмді қолдану процесі.
Алгоритмді ұсыну құралдары:
• ауызша (алгоритмдік тілде);
• блок-схема түрінде;
• бағдарламалау тілінде.

Алгоритмдеу – ЭЕМ-де есепті шығаруға арналған
алгоритмдер мен бағдарламаларды құру
техникасы.

Алгоритмнің блок-схемасы дегеніміз –
алгоритмнің логикалық құрылымын 3
БЛОКТАР
Басын және соңын білдіретін
тоқтату блогы
Берілгендерді енгізіп,
нәтижелерді шығаратын
енгізу-шығару блогы
Арифметикалық амалдарды
орындайтын процесс блогы
Шарттың орындалу немесе
орындалмауын тексеретін
шешім қабылдау блогы
Қайталану блогы
Блок-схема алгоритм командаларының
орындалу ретін көрсетуге арналған
бағытталған граф болып табылады; мұндай
графтың шыңы үш түрлі болуы мүмкін:
1.функционалдық шың
2.предикаттық шың
3.біріктірілген шың

F P

1 сурет – Граф шыңдарының бейнеленуі 5
Кез келген күрделі алгоритмдер үшін үш блок-
схема құруға болады:
1. композиция немесе қозғалыс, сызықты
алгоритм;
2. альтернатива немесе тармақталған алгоритм;
3. итерация немесе цикл, қайталанатын
алгоритм.

Бірінші негізгі құрылым. Композиция немесе
қозғалыс алгоритмі әр кезеңі тізбектей, яғни
сызықты орындалатын есептеу процесін
бейнелейді және ондағы операторлар бір рет
қана орындалады.

Оператор деп қандай да бір әрекеттер тізбегін 6
Екінші негізгі құрылым. Бұл - альтернатива
немесе тармақталу. Тармақталған алгоритм
есептеуді таңдау бастапқы шарттан немесе
аралық нәтижеден тәуелді болатын есептеу
процесін бейнелейді.

Алдын ала қарастырылған бағыттар тармақтар
деп аталады.

Шартты тексеру нәтижесі келесі мәндердің бірін
қабылдайды
• ақиқат немесе жалған
• иә немесе жоқ
• 1 немесе 0.
Тармақталған алгоритм құрылысы:

иә жо иә жо
шшарт шшарт
қ қ

оператор1 Оператор 2
оператор1

Егер – Онда – Әйтпесе Егер- Онда
құрылымы құрылымы

2 сурет – Тармақталған алгоритм
Үшінші негізгі құрылым. Қайталанатын алгоритм
бір типті, бірнеше рет қайталанатын есептеу
аймағынан тұратын есептеу процесін бейнелейді.
Циклдер қайталану саны белгілі және қайталану
саны белгісіз болып бөлінеді.

Қайталану саны белгілі циклді итерациялық цикл
деп аталады.
Бұл құрылымның үш түрі бар:
• "цикл - әзірше"
• "цикл - дейін"
• қайталану санымен.
Циклде қайталанатын операторлар тобын цикл
денесі деп атайды.
Қайталану саны белгісіз алгоритм
құрылысы:

Шартты жо
тексеру қ Цикл денесі

иә

Цикл денесі Шарт

3 сурет – Қайталану саны белгісіз алгоритм
ҚАЙТАЛАНУ САНЫ БЕЛГІЛІ
АЛГОРИТМ СХЕМАСЫ:

i=1,2,…n

оператор

Блок-схема – алгоритмді графикалық түрде
көрсету.
Басы
Алгоритмнің графиктік
кескінін блок-схема енгізу a,
түрінде беру - берілген b, c

есепті шешуді жолдарын p=(a+b+c)/2
көрнекті етіп көрсетеді.
S= (p(p-a)(p-b)(p-c)

Шығару
S

соңы

АЛГОРИТМ ҚАСИЕТТЕРІ
• анықталғандық – алгоритм, алгоритмді
өңдеушіге де және алгоритмді
орындаушыға да бір мағынада түсінікті
түрде берілуі;
• нәтижелілік – міндетті түрде нәтижелер
алынуы (сандар, кестелер, дыбыстар,
кескіндер) немесе берілген алгоритмді
қойылған есепке қолдануға
болмайтыны туралы сигналдар;

• жалпылық – біртипті есептер класын
шешуді қамтамасыз ететін алгоритм
қасиеті;
• дискреттік – бір-бірінен ажыратылған
ұйғарымдардың реттелген жиынтығы
түрінде алгоритмнің жазылу ;
• түсініктілік- орындаушының
командалар жүйесіндегі ғана
командалар түрінде көрсетілетін
алгоритм қасиеті.

Алгоритмнің өз-өзіне қосымша ретінде
қатынасы болуы мүмкін, бұл жағдайда оны
рекурсивтік қатынас деп атайды.
- Егер алгоритмнің өз-өзіне қатынасы
командасы алгоритмнің өзінде болса, онда
мұнда рекурсия тура рекурсия деп аталады.
- Егер берілген алгоритмді шақыру осы
алгоритмге қатынасы бар қосымша
алгоритмнен болса онда мұндай рекурсияны
жанама деп атайды.

Алгоритмдік тіл дегеніміз –
алгоритмдерді біркелкі, дәл жазуға
және оларды орындауға арналған
белгілеулер мен ережелер жүйесі.
Алгоритмдік тілде пайдаланылатын
сөздер қызметші сөздер деп
аталады.

АЛГОРИТМДІК ТІЛДЕГІ ҚЫЗМЕТШІ
СӨЗДЕР:
1. АЛГ – қызметші сөзі. Алгоритмнің басында, оның
атауының алдында жазылады.
2. БАСЫ және СОҢЫ – қызметші сөздері (begin, end).
Алгоритмнің басы мен соңында жазылады.
3. АРГ и НӘТ – аргументті және алгоритм нәтижесін
жазу үшін қолданылады.
4. ЕНГІЗУ және ШЫҒАРУ – берілгендерді енгізу және
шығару үшін қолданылады.
5. ЕГЕР, ОНДА, ӘЙТПЕСЕ, БІТТІ – қызметші сөздері
(if, then, else, end). Тармақталған командаларды жазу
үшін қолданылады (бітті – команданың соңы).
6. ӘЗІР, ДЕЙІН, ҚАЙТАЛАУ, ЦБ, ЦС – қызметші
сөздері (while, do, repeat, until, for, to, do). Қайталау
командаларын жазу үшін қолданылады.
Қарапайым есептерге мысал
Мысал. Штаттағы жұмыскер айына 45000 теңге
жалақы алады. Ол 25 жұмыс күнінің 15 күнінінде
жұмыс істеді. Алатын жалақысын есептеу керек.
Алгоритм тілінде: Блок- схемасы
алг pr1
арг S,D,D1; басы
нәт Sum S,D,D1
басы
енгізу S, D,D1 Sum=S/D*D1
Sum=S/D*D1 Sum
шығару Sum
соңы соңы
Бағдарламаның құрамдас бөлігі
Паскаль тіліндегі бағдарламаның жалпы түрі:
PROGRAM аты;
VAR айнымалылар бөлімі;
BEGIN
оператор 1;
… …
оператор n;
END.
Бағдарлама стандартты тақырып Program сөзінен
басталады.
Тақырыбын енгізгеннен кейін берілгендерді сипаттау
орындалады. Var сөзінен кейін бағдарламада кездесетін
барлық айнымалылар көрсетіледі және олардың типі
(integer, real, boolean) көрсетіледі.
Әрі қарай Begin және End сөздерінің арасында
операторлар орналасады. 19
СТАНДАРТТЫҚ ФУНКЦИЯЛАР
Математикалық түрде жазылу Паскаль тілінде жазылуы

Sqrt(x)
x
2 Sqr(x)
x
Abs(x)
x
x Exp(x)
e
sinx Sin(x)
ctgx Sin(x)/
cos(x)
lnx Ln(x)
АРИФМЕТИКАЛЫҚ ӨРНЕКТЕР
Арифметикалық өрнектерді жазу мысалдары:

1) Y A B T1 2.3 X
T2

Y:=A+B*T1/T2 - 2.3*SQRT(X)

2) a1 x1 b2 x2 5a3 x3
25d 14 f

(A1*X1+B2*X2+5*A3*X3)/(25*D-14*F)

3) Y log a x 5 a x

Y:=ln(x)/ln(a)+exp(1/5*ln(a+x))
Мысал. Штаттағы жұмыскер айына 45000 теңге жалақы
алады. Ол 25 жұмыс күнінің 15 күнінінде жұмыс істеді.
Алатын жалақысын есептеу керек.
Паскаль тілінде:
Program pr1;
var S, D,D1,Sum : real; {айнымалыларды сипаттау}
Begin
write(‘жалақы S=‘); Read(S);
write(‘жұмыс күні D=‘); Read(D);
write(‘жұмыс жасаған күні D1=‘); Read(D1);
Sum:=S/D*D1;
Writeln(Sum); {алатын жалақыны шығару}
Алгоритмдер мысалдары

Басы
Пернетақтадан
енгізілген Х санынын
Енгізу
экранға шығару егер Х

ол 5-тен кіші немесе
Иә
тең болса. Жоқ X<=5

Алгоритманің блок- Шығару
Х

схемасы мына түрде
болады .
Соңы

Алгоритмдер
мысалдары
Басы
1-ден N-ге дейінгі
бүтін сандардың Енгізу

қосындысын N

экранға шығару. S=0
k=0

N саны
пернетақта арқылы k>N
Иә

енгізіледі.
шығару
k=k+1 S
S=S+k

Алгоритманің блок- Соңы

схемасы мына
түрде болады .

Алгоритмдер
мысалдары
Теңдеулер жүйесін Басы

шешу:
bx lg bx bx 1 енгізуbx

q 1 bx 1
bx lg bx bx 1 жо Иә g=bx-lg(bx)
қ bx<1

жо Иә
қ bx=1 g=1

g=bx+lg(bx)

шығару
g

Соңы

Алгоритмдер
мысалдары
Басы

Иә Жоқ
Х<0

Иә Жоқ
S=1 Х=0

S=2 S=4

Соңы

Егер Х = 8 болса, S айнымалысы қандай
мәнге ие болады?
Жауабы: S = 4 26
Алгоритмдер
мысалдарыБасы
А=3
В=2

иә
А=В Соңы

иә жоқ
А>В

А=А-В В=В-А

Алгоритм жұмысының қортындысында А және В
қандай мәндерге ие болады?
Жауабы: А = 1, В = 27
Бақылау сұрақтары
1. Алгоритмге түсініктеме беріңіз.
2. Алгоритмнің негізгі қасиеттерін атаңыз .
3. Алгоритмнің дискреттілігі дегеніміз не?
4. Алгоритмнің жалпылығы дегеніміз не?
5. Алгоритмнің анықтылығы дегеніміз не?
6. Алгоритмнің берілу тәсілдерін атаңыз.
7. Алгоритмнің негізгі құрылымдық базаларын
атаңыз.
8. «Циклдік» құрылым туралы айтыңыз.
9. «Тармақталған» құрылым туралы айтыңыз.

Ұқсас жұмыстар
Алгоритмдер түсінігі мен қасиеттері
Шешілмейтін алгоритмдер туралы тү сінік. Алгоритм кү рделілігі. Алгоритм тү сінігінің функция тү сінігімен байланысы. Алгоритмдік тіл жә не оны орындаушылардың сипаттамалары
Алгоритм туралы мәлімет
Орта мектептегі информатика оқулықтарына талдау
Алгоритм күрделілігі
Алгоритмдік тілдің алфавиті, синтаксисі және семантикасы. Тілдің синтаксисін синтаксистік
Оқытудың инновациялық технологияларын пайдалану ерекшеліктері
ЖАДҚА түскен БІЛІМДІ
лгоритмдік тілдің алфавиті, синтаксисі және семантикасы. Тілдің синтаксисін синтаксистік диаграмма және метатіл формуласы көмегімен сипаттау
Алгоритм туралы ақпарат
Пәндер