Циклдік алгоритмдер

41

Сабақтың тақырыбы: Циклдік алгоритмдер.

Сабақтың мақсаты: 1) Оқушыларға алгебра, информатика пәндерінің арасындағы байланысты көрсете отырып, олардың шығармашылық қабілетін дамыту, тақырыпты ғылыми тұрғыда түсіне білуге, өз бетімен еңбектенуге, ойлауға дағдыландыру.

2) Оқушыларды бағдарлама құруға баулу арқылы, олардың логикалық қабілеттерін дамыту мен олардың сабаққа қызығушылығын арттыру.

  Пәнаралық байланыс: алгебра

Сабақтың түрі: интеграциялық

Сабақтың типі: жаңа сабақ түсіндіру, практикамен байланыстыру.

Қолданылатын көрнекіліктер: графопроектор, Турбо Паскаль бағдарламасы.

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

І. Ұйымдастыру бөлімі

ІІ. Өткен материалдарды еске түсіру

  1. Алгоритм ұғымы деген не?
  2. Алгоритмдер қандай типтерге бөлінеді?

(сызықтық, тармақталған, циклдік)

ІІІ. Жаңа сабақ

Циклдік алгоритмдер

Циклдік алгоритмдер бірнеше қайталанатын бөліктерден тұрады. Циклдік алгоритмдерді құру үшін мынандай операторлар қолданылады. FOR, REPEAT, WHILE.

Параметрлі FOR операторы

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

Бұл оператордың екі жалпы түрі бар:

  • for i:= n1 to n2 do <оператор>
  • for i:= n2 downto n1 do <оператор>

мұндағы, for- оператордың аты, «үшін» болып аударылады; to- түйінді сөз (дейін); do- түйінді сөз (орындау); i- цикл параметрі санауға, реттеуге болатын типтегі айнымалы; n1, n2- цикл параметрінің алғашқы және соңғы мәндері; <оператор>- бірнеше рет қайталанатын оператор.

 

Pascal программалау тіліндегі бүтін сандардың типтері дегеніміз- әртүрлі диапазондардағы бүтін сандар жиынын белгілеуге арналған типтер.

 

Бүтін тип Мәндер диапазоны Жадының көлемі
Integer -32 768..+32 767 2 байт
Longint -2 147 483 648..+2 147 483 647 4 байт
Byte 0..255 1 байт

 

Мысал:

  • ден 100-ге дейінгі натурал сандардың қосындысын табу керек, яғни мынадай қосындыны анықтау қажет:

Program Қосынды;

Var i, s: integer;

Begin s:=0;

For i:=1 to 100 do {цикл басы}

s:=s+i; {қайталану операторы}

Writeln (‘қосынды=’,s); {қосындыны жауапқа шығару}

End.

 

 

ІУ. Бекіту

  • есеп. N! (факториалды) есептеу алгоритмін және программасын құру керек. (1*2*3*.. N көбейтіндісі N факториал деп аталады. Факториал ! арқылы белгіленеді.)

Шешуі.

Алг  факториал (арг бүт N,                     program_17; {Факториал}

нәт бүт F)

 var і; n: integer;

басы  бүт І                                                          f: longint;

енгізу   N                                                   begin

                                                                          write (бүтін сан енгізу n=’);

F:=1                                                                  readln (n);

үшін І бастап 1 дейін N                                       f:=1;

цб                                                                            for i:=1 to n do

F:=F*I

цс                                                                            f:= f*i;

   шығару F                                                    writeln (‘n!=’,f);

соңы                                                           end.

 

Оқушылар 5!, 6!, 10!, 12!, 15!, 25! есептеп, нәтижесін экраннан көрсету.

  • есеп. Келесі фигураны экранға басып шығару керек.

program_19; {Жұлдызша}

      var i, j: byte;                                      ******

begin                                                  ******

                 for i:=1 to 4 do                       ******

      begin                                                  ******

                 for j:=1 to 6 do

                   write(‘*’);

           writeln;

           end;

end.

У. Қорытындылау.

     Программаны орындау нәтижесін анықтаңдар (компьютерсіз):

 А) begin                                                            Ә) begin

               s:=0;                                                               for x:=1 to 15 do    

              for i:= -4 to 1 do                                            begin

                       s:=s+i;                                                       y:= sqr(x);

              writeln  (s);                                                    writeln (x, y);

end.                                                                              end;

end.   

                                                                               

УІ. Бағалау

 

УІІ. Үйге тапсырма

 

  1. n-ші мүшесінің формуласымен берілген Хn=n2+5 тізбегінің алғашқы он мүшесін есептеу программасын құрыңдар.
  1. Төмендегі фигураны экранға басып шығаратын программа құрыңдар:

*

**

***

****

*****

******