Тармақталушы алгоритм

Автор работы: Пользователь скрыл имя, 27 Февраля 2013 в 19:25, реферат

Описание

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

Работа состоит из  1 файл

Тармақталушы алгоритм.docx

— 37.60 Кб (Скачать документ)

Алгоритм

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

Алгоритм  қасиеттері

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

 

Сызықтық алгоритм

 

Егер  алгоритмнің N қадамы болса және олардың  барлығы басынан аяғына дейін  бірінен соң бірі тізбектеле орындалатын  болса, онда ондай алгоритмді сызықтық алгоритм деп атаймыз. Сызықтық алгоритмнің  блок – схемасы мына суретте бейнеленген.

                        


                         

 

                            

 

 

                            

                                                                                                                                  


 

 

 

 

                     

 

 

 

Тармақталушы алгоритм

Егер  алгоритм қадамдарының тізбектеле орындалуы  қандай да бір шартқа тәуелді өзгеретін  болса, онда ондай алгоритмді тармақталушы алгоритм дейміз.

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

Кез келген шарт мынадай үш бөлімнен тұрады:

  • сол жақ бөлігі;
  • салыстыру таңбасы;
  • оң жақ бөлігі.

Мысалдар  келтірейік: А > 0, Х < А+С,    К = 6

Мына  төменде алгоритмнің тармақталушының  бөлігінің жалпы түрі келтірілген.

егер  < шарт >

 онда  "иә" тармағы

әйтпесе " жоқ " тармағы

бітті

Мұнда егер, онда, әйтпесе, бітті – қызметші сөздер, егер команданың басын, ал бітті   команданың  аяқталуын білдіреді (1-сурет).

 

 


 

 

 

 

(1-сурет)

 

Тармақталу  командасы мына тшөмендегідей қысқаша  түрде пайдаланылады :

егер  < шарт >

 онда 

"иә" тармағы

бітті (2-сурет)


 

 

 

 

 

 

 

 

(2-сурет) 

 

program qq;

var x: integer;

begin

   writeln(‘Жасты енгіз');

   read ( x );

       if x >= 25 then

           if x <= 40 then 

           writeln (‘Болады')

           else writeln (‘Болмайды')

      else

     writeln (‘Болмайды');

end. (3-сурет)

(3-сурет)

 

program qq;

var x: integer;

begin

   writeln(‘Жасты енгіз');

   read ( x );

        if (x >= 25) and (x <= 40) then

        writeln ('Болады')

        else writeln ('Болмайды')

end.

 

Күрделі шарт – бір-бірімен логикалық операциялардың көмегімен байланысатын бірнеше қарапайым шарттардан (қатынастардан) тұрады:

    • not – ЕМЕС (терістеу, инверсия)
    • and – ЖӘНЕ (логикалық көбейту, конъюнкция, 
            шарттардың бір мезгілде орындалуы)
    • or – НЕМЕСЕ (логикалық қосу, дизъюнкция, 
            ең болмағанда бір шарттың орындалуы)
    • xor – арифметикалық НЕМЕСЕ (екі шарттың екеуін емес, біреуін ғана орындау)

 

Ерекшеліктері:

    • else-тің алдында нүктелі үтір болмауы керек
    • екінші бөліктің (else …) болмауы да мүмкін (толымсыз түрі)
    • егер блокта бір ғана оператор болса, begin мен end сөздерін жазбауға да болады

 

Қарапайым шарттар (қатынастар)

    <    <=    >    >=     =   <>

Орындау тәртібі

    • жақша ішіндегі өрнектер
    • not
    • and
    • or, xor
    • <, <=, >, >=, =, <>

Ерекшелігі – қарапайым шарттардың әрқайсысын жақшамен жабу.

Мысал:

4     1     6    2      5     3

if not (a > b) or (c <> d) and (b <> a)

then begin

  ...

end

a := 2; b := 3; c := 4; болған жағдайда ақиқат немесе жалған:

not (a > b)

(a < b) and (b < c)

not (a >= b) or (c = d)

(a < c) or (b < c) and (b < a)

(a < b) xor not (b > c)

x-тің  қандай мәндерінде шарт ақиқат  болады:

(x < 6) and (x < 10)

(x < 6) and (x > 10)

(x > 6) and (x < 10)

(x > 6) and (x > 10)

(x < 6) or (x < 10)

(x < 6) or (x > 10)

(x > 6) or (x < 10)

(x > 6) or (x > 10)

 

Есеп. Екі бүтін сан енгізіп,экранға олардың үлкенін шығару.

Шығару амалы: бірінші сан екінші саннан үлкен болса, біріншісін, ал егер кіші болса екіншісін экранға шығару.

Ерекшелігі:  атқарушының әрекеті кейбір шарттардың орындалуына байланысты болады (егер …әйтпесе …) (4-сурет).

 


 

 

program qq;

var a, b, max: integer;

begin

   writeln(‘Екі бүтін сан енгіз');

   read ( a, b );

   if a > b then begin

       end

   else begin

       end;    writeln (‘Екі санның үлкені', max);  end.

 

 

    1. Қайталанушы алгоритм

 

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

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

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

 Әзір  < шарт >

ЦБ

   команадалар тізбегі

ЦС 

Мұнда әзір, ЦБ  (циклдің басы), ЦС (циклдің  соңы) – қызметші сөздер, ЦБ  және  ЦС әзірше шарт орындалғанға дейін  орындалатын командалар тізбегін таңбалайды.


Информация о работе Тармақталушы алгоритм