Алгоритм түсінігі – бұл информатикадағы ең негізгі ұғымдардың бірі.



Дата19.04.2018
өлшемі24,49 Kb.
#40204
  • Алгоритм түсінігі – бұл информатикадағы ең негізгі ұғымдардың бірі.
  • «Алгоритм» сөзі IX ғасырдағы ұлы математик аль-Хорезмнің латындық үлгідегі - algorithmi деген атынан шығады, ол арифметикалық амалдарды орындау ережелерін тұжырымдайды.
  • Алгоритм дегеніміз – бастапқы мәліметтерді пайдаланып іздеген нәтижеге жеткізетін әрекеттер тізбегі.
  • Ондағы әрбір әрекет оның қадамы, қандай да бір әрекетті аяқтау туралы нұсқау алгоритм командасы, ал атқарушы жүзеге асыра алатын командалар жиынтығы атқарушының командалар жүйесі деп аталады.
  • Алгоритмдік процесс дегеніміз – шешілетін есептің нақты бастапқы берілгендеріне алгоритмді қолдану процесі.
  • Алгоритмді ұсыну құралдары:
  • ауызша (алгоритмдік тілде);
  • блок-схема түрінде;
  • бағдарламалау тілінде.
  • Алгоритмдеу – ЭЕМ-де есепті шығаруға арналған алгоритмдер мен бағдарламаларды құру техникасы.
  • Алгоритмнің блок-схемасы дегеніміз – алгоритмнің логикалық құрылымын графикалық бейнелеу.
  • Басын және соңын білдіретін тоқтату блогы
  • Берілгендерді енгізіп, нәтижелерді шығаратын енгізу-шығару блогы
  • Арифметикалық амалдарды орындайтын процесс блогы
  • Шарттың орындалу немесе орындалмауын тексеретін шешім қабылдау блогы
  • Қайталану блогы
  • Блок-схема алгоритм командаларының орындалу ретін көрсетуге арналған бағытталған граф болып табылады; мұндай графтың шыңы үш түрлі болуы мүмкін:
  • функционалдық шың
  • предикаттық шың
  • біріктірілген шың
  • 1 сурет – Граф шыңдарының бейнеленуі
  • F
  • P
  • Кез келген күрделі алгоритмдер үшін үш блок-схема құруға болады:
  • композиция немесе қозғалыс, сызықты алгоритм;
  • альтернатива немесе тармақталған алгоритм;
  • итерация немесе цикл, қайталанатын алгоритм.
  • Бірінші негізгі құрылым. Композиция немесе қозғалыс алгоритмі әр кезеңі тізбектей, яғни сызықты орындалатын есептеу процесін бейнелейді және ондағы операторлар бір рет қана орындалады.
  • Оператор деп қандай да бір әрекеттер тізбегін орындауға арналған жазбаларды айтады.
  • Екінші негізгі құрылым. Бұл - альтернатива немесе тармақталу. Тармақталған алгоритм есептеуді таңдау бастапқы шарттан немесе аралық нәтижеден тәуелді болатын есептеу процесін бейнелейді.
  • Алдын ала қарастырылған бағыттар тармақтар деп аталады.
  • Шартты тексеру нәтижесі келесі мәндердің бірін қабылдайды
  • ақиқат немесе жалған
  • иә немесе жоқ
  • 1 немесе 0.
  • Тармақталған алгоритм құрылысы:
  • 2 сурет – Тармақталған алгоритм
  • Оператор 2
  • оператор1
  • шшарт
  • иә
  • жоқ
  • оператор1
  • шшарт
  • иә
  • жоқ
  • Егер – Онда – Әйтпесе
  • құрылымы
  • Егер- Онда құрылымы
  • Үшінші негізгі құрылым. Қайталанатын алгоритм бір типті, бірнеше рет қайталанатын есептеу аймағынан тұратын есептеу процесін бейнелейді.
  • Циклдер қайталану саны белгілі және қайталану саны белгісіз болып бөлінеді.
  • Қайталану саны белгілі циклді итерациялық цикл деп аталады.
  • Бұл құрылымның үш түрі бар:
  • "цикл - әзірше"
  • "цикл - дейін"
  • қайталану санымен.
  • Циклде қайталанатын операторлар тобын цикл денесі деп атайды.

Қайталану саны белгісіз алгоритм құрылысы:

  • Қайталану саны белгісіз алгоритм құрылысы:
  • 3 сурет – Қайталану саны белгісіз алгоритм
  • Шартты тексеру
  • Цикл денесі
  • иә
  • жоқ
  • Шарт
  • Цикл денесі
  • i=1,2,…n
  • оператор
  • Блок-схема – алгоритмді графикалық түрде көрсету.
  • Алгоритмнің графиктік кескінін блок-схема түрінде беру - берілген есепті шешуді жолдарын көрнекті етіп көрсетеді.
  • Басы
  • енгізу a, b, c
  • Шығару S
  • соңы
  • p=(a+b+c)/2
  • S=(p(p-a)(p-b)(p-c)

анықталғандық – алгоритм, алгоритмді өңдеушіге де және алгоритмді орындаушыға да бір мағынада түсінікті түрде берілуі;

  • анықталғандық – алгоритм, алгоритмді өңдеушіге де және алгоритмді орындаушыға да бір мағынада түсінікті түрде берілуі;
  • нәтижелілік – міндетті түрде нәтижелер алынуы (сандар, кестелер, дыбыстар, кескіндер) немесе берілген алгоритмді қойылған есепке қолдануға болмайтыны туралы сигналдар;

жалпылық – біртипті есептер класын шешуді қамтамасыз ететін алгоритм қасиеті;

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

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

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

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

  • Алгоритмдік тіл дегеніміз – алгоритмдерді біркелкі, дәл жазуға және оларды орындауға арналған белгілеулер мен ережелер жүйесі. Алгоритмдік тілде пайдаланылатын сөздер қызметші сөздер деп аталады.
  • 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
  • Sum=S/D*D1
  • шығару Sum
  • соңы
  • басы
  • соңы
  • Sum=S/D*D1
  • S,D,D1
  • Sum
  • Бағдарламаның құрамдас бөлігі
  • Паскаль тіліндегі бағдарламаның жалпы түрі:
  • PROGRAM аты;
  • VAR айнымалылар бөлімі;
  • BEGIN
  • оператор 1;
  • … …
  • оператор n;
  • END.
  • Бағдарлама стандартты тақырып Program сөзінен басталады.
  • Тақырыбын енгізгеннен кейін берілгендерді сипаттау орындалады. Var сөзінен кейін бағдарламада кездесетін барлық айнымалылар көрсетіледі және олардың типі (integer, real, boolean) көрсетіледі.
  • Әрі қарай Begin және End сөздерінің арасында операторлар орналасады.
  • Математикалық түрде жазылу
  • Паскаль тілінде жазылуы
  • Sqrt(x)
  • Sqr(x)
  • Abs(x)
  • Exp(x)
  • sinx
  • Sin(x)
  • ctgx
  • Sin(x)/
  • cos(x)
  • lnx
  • Ln(x)
  • Арифметикалық өрнектерді жазу мысалдары:
  • 1)
  • Y:=A+B*T1/T2 - 2.3*SQRT(X)
  • 2)
  • (A1*X1+B2*X2+5*A3*X3)/(25*D-14*F)
  • 3)
  • 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); {алатын жалақыны шығару}
  • End.
  • Пернетақтадан енгізілген Х санынын экранға шығару егер ол 5-тен кіші немесе тең болса.
  • Алгоритманің блок-схемасы мына түрде болады .
  • Басы
  • Енгізу Х
  • Иә Жоқ
  • X<=5
  • Шығару Х
  • Соңы
  • Алгоритмдер мысалдары
  • 1-ден N-ге дейінгі бүтін сандардың қосындысын экранға шығару.
  • N саны пернетақта арқылы енгізіледі.
  • Алгоритманің блок-схемасы мына түрде болады .
  • Иә
  • Басы
  • S=0
  • k=0
  • k>N
  • k = k + 1
  • S = S + k
  • Соңы
  • Енгізу N
  • шығару S
  • Алгоритмдер мысалдары
  • Теңдеулер жүйесін шешу:
  • Иә
  • Иә
  • Басы
  • bx<1
  • g=bx-lg(bx)
  • Соңы
  • енгізуbx
  • шығару g
  • жоқ
  • bx=1
  • жоқ
  • g=1
  • g=bx+lg(bx)
  • Алгоритмдер мысалдары
  • Алгоритмдер мысалдары
  • Егер Х = 8 болса, S айнымалысы қандай мәнге ие болады?
  • Жауабы: S = 4
  • Иә
  • Басы
  • Х<0
  • Соңы
  • S=1
  • Иә
  • Жоқ
  • Х=0
  • Жоқ
  • S=2
  • S=4
  • Алгоритм жұмысының қортындысында А және В қандай мәндерге ие болады?
  • Жауабы: А = 1, В = 1
  • иә
  • Басы
  • А=3
  • В=2
  • А=В
  • В=В-А
  • Соңы
  • А>В
  • А=А-В
  • иә
  • жоқ
  • Алгоритмдер мысалдары
  • Бақылау сұрақтары
  • Алгоритмге түсініктеме беріңіз.
  • Алгоритмнің негізгі қасиеттерін атаңыз .
  • Алгоритмнің дискреттілігі дегеніміз не?
  • Алгоритмнің жалпылығы дегеніміз не?
  • Алгоритмнің анықтылығы дегеніміз не?
  • Алгоритмнің берілу тәсілдерін атаңыз.
  • Алгоритмнің негізгі құрылымдық базаларын атаңыз.
  • «Циклдік» құрылым туралы айтыңыз.
  • «Тармақталған» құрылым туралы айтыңыз.


Достарыңызбен бөлісу:




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

    Басты бет