UF

Тармақталған құрылымдарды программалау

 жоспары:

1. Шартты өту операторы

2. CASE – таңдау операторы

 

Негізгі ұғымдардың сөздігі: шартты оператор, логикалық өрнек, IF, Then Else Студенттерде қалыптасу керек білім мен дағды:  Паскаль тілінде тармақтық программалау дағдыларын меңгеру.

 

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

/Қандай да бір шартқа байланысты бір немесе басқа іс-қимылдың орындалуын қажет ететін алгоритмді тармақталушы құрылымды алгоритм деп атаймыз./

 

1 Шартты өту операторы

Шартты өту операторы IF және Case түріндегі 2 түрмен беріледі.

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

 

А)  IF операторы

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

                  

= - тең                           >= - үлкен не тең

> - үлкен             <= - кіші не тең

< -кіші                         <> - тең емес

 

IF операторының жалпы түрі:

IF A Then St

Мұндағы А- логикалық өрнек, St- белгілі бір оператор. Бұл ең жалпы түрі, көбіне келесі түр қолданылады:

       IF < логикалық өрнек > Then <оператор1> Else <оператор2>        

Егер <логикалық өрнек> ақиқат мән қабылдаса, онда Then сөзінен кейін орналасқан <оператор1> орындалады, егер <логикалық өрнек> жалған болса, онда Еlse сөзінен кейінгі <оператор2> орындалады. Ескерте кететін жағдай: Else операторының алдына нүктелі үтір белгісі қойылмайды. IF операторы қосымша мынадай екі формат түрінде де жазыла алады:

a) IF  A1 Then St1

   IF A2 Then St2 Else St3

  1.  IF A1 Then Begin IF A2  Then  St1 Else St2 End.

Мұндағы А1, А2 логикалық өрнектер, ал ST1, ST2, ST3 операторлар.

 

IF A THEN ST1 ELSE ST2 жазылудың дәл мағынасы да, қызметі де былай болады: Егер А шарты қанағаттандырылса, онда STқызметі жүзеге асады, орындалмаса ST2 қызметі орындалуы тиіс. A жазуының орнында белгілі бір логикалық өрнек болады, ал ST1, ST2-ң орнында тиісінше белгілі бір іс-қимылдар.

 

2. CASE – таңдау операторы

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

Таңдау операторының жазылуының жалпы түрі:

CASE N OF

M1: ST1;

         M2: ST2;

         MI:STI;

         END;

         A:=B;

 

Мұндағы CASE, OF END- қызметші сөздер.

 N-аударушы, MI-таңбалры, STI-операторлар. CASE операторы STI операторына іс-әрекетті тек сол жағдайға жібереді, егер N аударушының мәні MI таңбаларының біреуіне сәйкес келсе. CASE операторларының таңбалары LABEL таңбалар бөлігінде сипатталуы керек.

 

3. GOTO-шартсыз өту операторы

         Шартсыз өту операторы - GOTO операторлардың бағдарламада орналасу ретіне байланысты орындалу тәртібін бұзу үшін қолданылады

         Жалпы түрі: GOTO N;

Мұндағы N таңба. N-таңбасы алдымен LABEL бөлігінде (таңбалар бөлігінде) толық сипатталып, жазылуы керек. GOTO N жазылуы белгілі бір іс-әрекеттер орындалуы тиіс N-таңбалы қатарын, операторлар тобын орындауды шартсыз көшу операторы дейді

 

Жаттығу есептері:

 

1. Мысал: А және В екі кез келген санның үлкенін есептейтін бағдарлама құру керек.

PROGRAM T4;

                   VAR A, B, MAX:REAL;

         BEGIN

                   READ (A,B);

                   IF A>B THEN MAX:=A        ELSE MAX:=B;

         WRITE (MAX)

         END.

 

2. Мысал: Егер  A0, онда B0 үшін C=A / B, ал   C=0 үшін K=1 операторы орындалады. Сол жеріне бағдарламалық бөлік жазу қажет.   

                   IF A<> 0 THEN IF B<>0 THEN C:=A/B

                            ELSE C:=0;

                            K:=1;

 

3. Мысал :

Нақты x, y, z сандары берілген. max(x+y+z, xyz) мәнін тап.

 

Program Esep2;

Var x, y, z, a, b, max: real;

Begin

writeln(‘х,у, z мәндерін енгіз:’);

Readln(x,y,z);

a:=x+y+z;  b:=x*y*z;

if a>b then max:=a else max:=b;

writeln(‘max=’, max:4:2);

end.

 

4. Мысал:

                мұндағы  a=1,2;   x=a-3,87

 

program  chart1;

var  x,a,y:real;

       begin

       readln(a);

       x:=a-3.87;  

if x>=a  then y:=x-a {шартты тексеру}

else y:=x+a;

writeln(‘y=’,y);

end.

5. мысал. CASE I OF

         2: K:=0;

         3: K:=X*X;

         100:K:=SIN(X);
         END;

         T:=K*K;

Егер I=3 болса,онда K:=X*X операторы орындалады да, содан соң T:=K*K орындалуы тиіс.

  1. мысал .

Program aa;

Label 2,3,4,5;

Var k:integer;  y,x:real;

begin

     k:=3; x:=9;

case k+1 of

    2:  y:=sqrt(x);

    3:  y:=sqr(x));

    4:  y:=2*x;

    5:  y:=4*x+k;

    end;

write(y);

end.

Баспаға не шығады?

18

  1. мысал. 10-ға дейінгі сандардың көбейтіндісін есептеудің прграммасын құру.

Program aa1;

const n=10;

Var i:integer;  P:longint;

begin

    i:=1;

    P:=1;

1: P:=P*I;

     i:=i+1;  

if i<=n then goto 1;

write (‘P=’,P)

end.

 

 

 Әдебиеттер

1. Н.С. Заурбеков, Б.Ж.Жумажанов. Алгоритмдеу және программалау тілдері. Экономика баспасы. Алматы-2008.

2. Ж.Қ. Масанов, Б.А.Белгибаев, А.С.Бижанова, Қ.Қ.Мақұлов «Turbo Pascal». Алматы 2004.

3. Фаронов В.В.  Тurbo Pascal 7.0. Практика программирования.  Оку құралы.- М.: Нолидж, 2000ж. 416 бет.

Мәлімет сізге көмек берді ма

  Жарияланған-2014-05-26 19:52:05     Қаралды-6545

КҮН НЕДЕН ЖАСАЛҒАН?

...

Әдетте біз Күнді газдың үлкен шары деп айтамыз.

ТОЛЫҒЫРАҚ »

ДЫБЫС ҚОРШАҒАН ОРТАНЫ ЛАСТАУЫ МҮМКІН БЕ?

...

Біздің әлем жанды да, жансыз да табиғат тудыратын дыбыстарға толы.

ТОЛЫҒЫРАҚ »

БҰЛТТАРДЫҢ ҚАНДАЙ ТҮРЛЕРІ БАР ЖӘНЕ ОЛАР НЕНІ ХАБАРЛАЙДЫ?

...

Бұлттар жер беті мен тропосфераның жоғарғы қабаттары арасындағы кеңістікте шамамен 14 км биіктікке дейін қалыптасады.

ТОЛЫҒЫРАҚ »

ПЛАСТМАССА ДЕГЕНІМІЗ НЕ?

...

Металдардың көне тарихы бар, олар мыңдаған жылдар бұрын адамдарға белгілі болды.

ТОЛЫҒЫРАҚ »

ПЛАСТМАССА ЫДЫРАУЫ МҮМКІН БЕ?

...

Әдетте пластиктің ыдырауы өте ұзақ уақытты алады - 50-100 жыл.

ТОЛЫҒЫРАҚ »

СУ ҮЙДІ ЖАРЫП ЖІБЕРУІ МҮМКІН БЕ?

...

Су зиянсыз зат сияқты. Ал кейде су мылтықтай жарылып кетеді.

ТОЛЫҒЫРАҚ »

МҰНАЙ НЕДЕН ТҰРАДЫ?

...

Мұнай – қою қызыл-қоңыр, кейде дерлік қара түсті майлы сұйықтық.

ТОЛЫҒЫРАҚ »

ТЕЛЕДИДАР ҚАЙДАН ПАЙДА БОЛДЫ?

...

Қара және ақ түстің әртүрлі реңктерінен тұратын қозғалмалы бейне

ТОЛЫҒЫРАҚ »

МҰНАЙДАН НЕ ЖАСАЛАДЫ?

...

Шикі мұнай іс жүзінде қолданылмайды. Ол тазартылады және өңделеді.

ТОЛЫҒЫРАҚ »