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     Қаралды-7054

НЕЛІКТЕН КЕМПІРҚОСАҚ ДОҒА ТӘРІЗДІ?

...

Адамдар бұл сұрақты көптен бері қойып келеді.

ТОЛЫҒЫРАҚ »

КЕМПРҚОСАҚ ДЕГЕНІМІЗ НЕ?

...

Адамдар бұл ең әдемі табиғат құбылысының табиғаты туралы бұрыннан қызықтырды.

ТОЛЫҒЫРАҚ »

АЮЛАР НЕГЕ ҚЫСТАЙДЫ?

...

Ұйықта қысқы ұйқы аюларға қыстың аш маусымынан аман өтуіне көмектеседі.

ТОЛЫҒЫРАҚ »

МАҚТАДАН НЕ ЖАСАУҒА БОЛАДЫ?

...

Мақта – тамаша талшық беретін өте бағалы өсімдік.

ТОЛЫҒЫРАҚ »

НЕГЕ АНТАРКТИКА ЕҢ СУЫҚ КҮНТИНЕНТ?

...

Жер шарындағы ең суық аймақтар – полюстер.

ТОЛЫҒЫРАҚ »

АНТИБӨЛШЕКТЕР ДЕГЕНІМІЗ НЕ?

...

«Анти» сөзінің мағынасын елестету үшін қағаз парағын алып...

ТОЛЫҒЫРАҚ »

БӨЛМЕ НЕГЕ ЖЫЛЫ?

...

Кез келген жылытқыш алдымен айналасындағы ауаны қыздырады.

ТОЛЫҒЫРАҚ »

ЛИМОНАДТЫҢ ОП-ОҢАЙ РЕЦЕПТІЛЕРІ

...

Ыстықта шөліңізді басатын қарапайым лимонадтарға арналған 11 рецепт

ТОЛЫҒЫРАҚ »

БАЛМҰЗДАҚ ТУРАЛЫ ҚЫЗЫҚТАР

...

БАЛМҰЗДАҚ – барлық дерлік балалардың және көптеген ересектердің сүйікті тағамы.

ТОЛЫҒЫРАҚ »