Командалар және операторлар

Сабақ№1

Класс: 9

Сабақтың тақырыбы:Командалар және операторлар.

Сабақтың мақсаты:

  • Оқушыларға операторлардың жазылу тәртібімен таныстыру, мысал келтіру.
  • Паскаль тілінің қарапайым және күрделі операторлардың түрлерімен таныстыру және олардың міндеттерін, прграмма құруды орындалу тәртібін үйрету.
  • Операторлардың пайдаланудың ерекшелектерін және қолайлы жолдарын түсіндіру.

Сабақтын типі: Аралас сабақ

Сабақтың әдісі: түсіндіру – баяндау

Сабақтың көрнекілігі: техникалық құрал

І Қызығушылықты ояту

Операторлар

                                                                                                    

 

 

 

 

 

 

 

                                                                                                                                       

 

ІІ.Мағынаны тану

1.Өткен сабақты пысықтау.

Сұрақ-жауап әдісі

  1. Паскаль тілінде және алгоритмдік тілдерде қандай шамалар пайдаланылады?
  2. Программа құрылымы.
  3. Тілдің алфавиті.

2.Жаңа тақырып.

Паскаль тілінің операторлары.

Программаға енетін нұсқауларды (бұйрықтарды) операторлар деп атайды.

Программалау тілдерінің қарапайым операторларына: меншіктеу, шартсыз көшу, енгізу-шығару операторлары мен бос оператор және  процедураларды орындау  (шықыру) операторлары жатады.

 

Меншіктеу операторы барлық тілдерде қолданылатын негізгі оператор. Меншіктеу операторының жазылуы М:= Е; Мұнда М айнымалы атауы, «:=»  мекншіктеу белгісі,  Е арифметикалық өрнек.

Символдық өрнек апостроф ішіне алынып жазылады.

Мысал1. Математикалық өрнекті  Паскаль тілінде жаз және программа құр.  Стандарттық және математикалық өрнектермен берілген.

 

  1. а= (х+у)/(5+sqrt(х))/abs(у-sin(x)+sqrt(x))+5*arctg(x); x = 47,8

y = -5,5

  1. b = etg(u+1)sinv                                                                         u = 2,3

v = 0,8

program zadanie1;

uses crt;

var

x,y,u.v: real;

a,b: real;

begin

clrscr;

x:=47.8;

y:=-5.5;

u:=2.3;

v:=0.8;

writeln (‘программаның  протокол жұмысы’);

writeln (‘ а және b мәндерін есепте ’);

а= (х+у)/(5+sqrt(х))/abs(у-sin(x)+sqrt(x))+5*arctg(x);

b = exp(sin(u+1)/cos(u+1)*sin(v));

writeln (‘a=’,a’);

writeln (‘b=’,b’);

writeln(‘ есептеу соңы’);

readln;

     readln;

end.

 

Сандар арасында бір немесе бірнеше бос орын қалдыруға болады,  себебі  сан енгізілгенде  бос орын еске алынбайды. Мәндерді енгізгенде мән енгізілген жолдан келесі жаңа жолға  көшіру үшін параметрсіз немесе параметрмен сәйкес  READLN (a1, a2, …an);  қолданылады.

Шығару операторы. Нәтижені экранға шығару үшін WRITE (жазу)   операторы қолданылады.

WRITE (a1, a2, …an); 

Мұндағы  a1, a2, …an – жай айнымалылар немесе апостроф ішіне алынған  символдар тобы болуы мүмкін.  Мысалы:

 

Proqram  My First Proqram;

var

beqin

        write (‘Мен Турбо Паскаль тілінде программа жаздым’);

    readln (t);

writeln (‘Сәлем !’);

 readln;

end.

 

Мысал  3. Қолданушыдан  екі сан енгізуін сұрап, нәтижесін экранға шығару программасын жаз.

program AxB;

var a,b: integer;

begin

     writeln (‘Енгіз a және b’);

     reаdln(a,b);

writeln(‘көбейтінді тең’,a*b);

     readln;

end.

Шартсыз көшу операторы. Паскаль тілінде негізінен операторлар ретімен орындалады. Олардың  бұл орындалу тәртібін өзгерту үшін  көшіру операторы GO TO пайдаланылады. Әдетте, шартсыз көшіру операторы программаның кейбір бөліктерін орындамай өтіп кету үшін қолданылады. Жазылу түрі: Goto n; n – оператора аймағы.  Мысалы: Goto 120;

Goto 250;  Бұл операторлар 120 және 250 жолға көшуді көрсетеді. Бұл оператор өте сирек қолданылады.

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

Егер шарт онда 1 серия ;                                          if    b   then   a:

 Егер шарт онда 1 серия  әйтпесе 2 серия;               if b then a1 else a2

 

Мұндағы   b – логикалық өрнек; a, a1, a2 – операторы жәй немесе құрама.

Командалар begin және  end қызметші сөздерінің аралығына жазылады.

Егер if сөзінен кейінгі жазылған шарт сақталса (ақиқат боса), онда    then (онда) сөзінен кейін жазылған операторлар орындалады, онда 2 серия операторы  орындалмайды. Егер шарт сақталмаса әйтпесе else орындалады.  Мысалы:

if n div 2 * 2 = n then n1: = n else n2: = n * n;

if x <0.1 then v: = exp (x);

 

Мысал 4.  Функция  мәнін  есептейтін программа жаз.

0,      х ≤ 0

У =   x2,     x >0

program fun1;

var x,y: real;

begin

read (x);

if x<=0 then y=0 else y=x*x;

write (y);

end.

 

 

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

Таңдау                                                 case өрнек  of

жағдай 1 шарт: 1 серия                      1 тұрақты:  1 оператор ;

    жағдай 2 шарт: 2 серия                       2 тұрақты:  2 оператор;

     . . . . . . . . . .. . . . .. . . . . .                        . . . . . . . . . . . . . . . . . . . . 

     жағдай n  шарт:  n серия                    n тұрақты: n оператор

бітті                                                      end.

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

   

Мысал 8.  Функция  мәнін  есептейтін программа жаз.

n+1,                       nÎ[-15,1],

n2+2,                      nÎ[5,10],

У =       n+3,                      n  Î(15,30),

n3 +4,                       n Î(40,50)

функцияның  басқа мәнінде анықталмаған.

program fun3;

var

n:integer;

begin

writeln (‘Кез келген бүтін сан енгіз’);

read (n);

case n of

-15..1: writeln(‘n+1’);

5..10: writeln(‘n2+2’);

15..30: writeln(‘n3+3’);

40..50: writeln(‘n4+4’);

else writeln (‘Функция анықталмаған’);

end;

end.

 Қайталау операторы

  • Қайталау командасының кеңейтілген түрі:

FOR <>:=<НЗСЦ> TO <КЗСЦDO <оператор>;

  • Қайталау командасының қысқартылған түрі:

FOR <>:=<НЗСЦ> DOWNTO <КЗСЦDO <оператор>;

мұндағы  for, to және do (for, to және downto) —  кілттік сөз, <> — цикл счетчигі немесе параметрі, <НЗСЦжәне <КЗСЦ> — цикл счетчигінің бастапқы және соңғы мәні. <оператор> Турбо Паскаль тілінің кез келген операторы, циклдің денесін құрайды.

Алдын ала берілген шарт бойынша қайталаудың саны белгісіз болған жағдайда WHILE  (әзір) және DO (орындау) қызмет сөздерінің көмегі арқылы орындалады.

WHILE  <шартDO <оператор>;

     Мұндағы while және do кілттік сөз, <шарт> — логикалық өрнек,  <оператор> — Турбо Паскаль тілінің кез келген операторы, ол цикл денесін құрайды. Қашан шарт орындалып болғанша цикл операторы орындала береді.

    Оператор repeat белгісіз сандарды қайталау үшін қолданылады. Оператордың жалпы формасы:

REPEAT <шарт UNTIL <оператор>;

Мұндағы repeat и until – кілттік  сөз, <шарт> — логикалық өрнек,  <оператор> — цикл денесі. repeat операторы  while операторынан айырмашылығы шарт оператордың соңында тексеріледі логикалық өрнектің ең болмағанда бір мәні  true.

 ПАСКАЛЬ циклдық алгоритмдерде Continue  және  Break процедураларын қолданады. Continue  процедурасы цикл қадамын тез аяқтайды, программа тақырыбынан бағыт беріп отырады. Процедура  Break циклдан тез шығу жолын ұйымдастырады.

     Төменде көрсетілген программада, n  санының факториалын  есептеу көрсетілген.

Мысалы 1:

Proqram  fact;

Var

      f, i, n: integer;

beqin

      read (n);

f:=1;

for i=1 to n do f:=f*i;

writeln (‘n!=’,f);

end.

Төмендегі программа n санының факториалын repeat – until операторын қолданып есептеу мысалын қарастырайық.

Proqram  fact;

var

      f, i, n: integer;

beqin

      read (n);

f:=1;

i:=1;

repeat

f:=f*i;

i:=i+1;

until (i>n);

writeln (‘n!=’,f);

end.

 

Мысал 2: ‘Z’  тен ‘A’ әрпіне дейінгі әріптерді шығару программасын құру.

Proqram  alfabit;

Var    c: char;

beqin

      for c:=’Z’ downto ‘A’ do write (c);

readln

end.

 

Мысал 3: Фиббоначчидің N санын есептеу программасын құру. Фиббоначчи саны  мына түрде құрылған: F(0) = F(1) = 1; F(i+1) = F(i) + F(i-1);  і   үшін  i ³ 1.

Proqram  Fib;

var    a,b,c: word; i,n:byte;

beqin

     write (‘Фиббоначчи санының  номерін енгіз’)

redln(N);

a:=1; {a=F(0), а сәйкес F(i-2)}

b:=1;  {b=F(1), b сәйкес F(i-1)}

for i:=2 to N do

beqin

      с:=а+b; {c сәйкес F(i)}

a:=b;b:=c;  {сонымен а және b келесі сәйкес сандарды береді}

end;

writeln (N,’ –і сан Фиббоначчи =’,b); { N>=2  b=c}

readln

end.

 

ІІІ. Ой толғаныс

1.Сұрақ-жауап.

  1. Оператор дегеніміз не, олар қандай топтарға жіктеледі?
  2. Меншіктеу операторы қандай қызмет атқарады?
  3. Көшу операторы не үшін қажет?
  4. Бос оператор дегеніміз не?
  5. Құрама операторлар қалай ұйымдастырылады?

 

2.Есеп шығару.

Тасыма 1. Герон формуласы арқылы үшбұрыштың көлемін табыңдар.

S= sqrt(p*(p-a)*(p-b)*(p-c));  P=(a+b+c)/2

Есепті шешу үшін үшбұрыштың қабырғалыры – a,b,c мәндері  алынған. Бұл мәндерді енгізу үшін оператор read қолданылады. Программада р айнымалысы үшбұрыштың  ауданын табу үшін қолданылады.

program ;

var a,b,c,p,s: real;

begin

writeln (‘Енгіз a,bc’);

read(a,b,c);

p:=(a+b+c)/2;

s:=sqrt(p*(p-a)*(p-b)*(p-c));

writeln(‘s=’,s, ‘p=’,p:);

end.

Тапсырма 5.  Функция  мәнін  есептейтін программа жаз.

x,          x<2

Y =     2,          2<x<3

-x+5,      x>3

 

program fun2;

var x,у: real;

begin

read (x);

if x<2 then  y=x  else

if x<3 then y=2 else y=-x+5;

write (y);

end.

 

Тапсырма 6.  Функция  мәнін  есептейтін программа жаз.

z=x3/y, у =sin nx+0,5

 

program fun3;

label 2,3

var n: integer;

x,y,z: integer;

begin

read (n,x);

y=sin(n*x)+0.5

if y=0 then  write (‘y=0’)

else begin z=sqr(x)*x/y;

write (‘z=’,z);

end;

end.

Тапсырма 7.  Функция  мәнін  есептейтін программа жаз.

sin x,      х ≤ a

У =    cos x, ecли  a<x<b

tgx,   если  x ≥b

 

program fun2;

var x,a,b,z: real;

begin

read (x,a,b);

if x<=a then  z:=sin(x) else if x=b then z:=sin(x)/cos(x)

else z:=cos(x);

write (z);

end.

 

3.Бағалау

Тарау бойынша алған білімдерін қорытындылау және бағалау.

 

4.Үйге тапсырма. Командалармен операторлар. Есеп шығару