Циклдік алгоритмдер және оның түрлері. Қайталану саны белгісіз циклдер

Сабақтың тақырыбы:    Циклдік алгоритмдер және оның түрлері.  Қайталану саны белгісіз циклдер

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

1.Білімділік. Белгілі бір әрекеттер тізбегі бірнеше рет қайталанатын болса, онда циклдік алгоритмдерді қолдананып, есептерді шешу керектігін оқушыларға түсіндіру. Осындай есептеулерді  орындаған кезде циклді алгоритмдерді құрудағы білімдерін арттыру. Циклдік  алгоритмдердің сызба-нұсқаларын құрып, соған байланысты алгоритімін және бағдарламасы құруға дағдыландыру..

2.Дамытушылық.   Циклдік алгоритмдерді құру кезінде есепті жүйелеу арқылы шешіп,  ойлау қабілеттерін дамыту. Қайталау барысын орындау алдында оның аргументінің параметрінің алғашқы мәнін енгізу арқылы , оның қадамын орнату жағдайларын қарастырып, циклдерге деген білімдерін дамыту.

3.Тәрбиелік. Циклдік алгоритмдерді өмірмен байланыстыру арқылы оқушыларды цикілдің мәнін ұғуға тәрбиелеу. Оның қайтымдығына  өмірмен байланыстырап, мысалдар кертілу арқылы өмірдің қайтымсыз екндігіне көз жеткізу.

Сабақтың түрі: жаңа сабақты бекіту

Сабақтың көрнекілігі: инерактивті тақта, компьютер, циклға арналған бейне.

Пәнаралық байланыс:  математика

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

1.Сәлемдесу

2.Өткенді қайталау

3.Жаңа сабақты  түсіндіру

4.Жаңа сабақты  пысықтау

5.Бағалау

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

Өткенді қайталау:

  1. Алгоритмдерді неше тілде көрсетуге болады?
  2. Алгоритмдік және графикалық тілдерді түсіндір
  3. Байланыс сызықтары деген не?
  4. Блоктардың неше түрі бар?
  5. Меншіктеу командасы қалай жазылады? Ондағы айнымалылар.
  6. Командалардың неше түрі бар?
  7. Алгоритмдердің түрлерін ата.

 

Жаңа сабақты түсіндіру.

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

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

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

Қайталау санының алдын ала белгілі және белгісіз болуына байланысты  цикл екі түрге бөлінеді.  Қайталау саны алдын ала белгілі цикл – арифметикалық цикл  деп, орындалу саны белгісіз цикл —  командалық (итерациялық)  цикл деп аталады.

Арифметикалық цикл.   Арифметикалық цикл ең қарапайым цикл болып табылады және практикада жиі қолданылады. Қайталану барысында цикл параметрі арифметикалық прогрессияның  заңы бойынша тұрақты шамаға өзгеріп отырады. Алгоритм атқарылар алдында цикл параметрінің  бастапқы мәні белгілі, осыдан кейінгі қайталану барысында цикл параметрі белгілі бір шамаға (қадамға)  өзгере отырып, алдын ала берілген соңғы мәнге жетуі  қажет.

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

Интерациалық  (қадамдық) цикл.  Цикл орындалмас бұрын,  оның қайталану саны белгісіз болған жағдайда,  қадамдық циклді пайдаланады.  Циклді аяқтау  үшін белгілі бір шарт тексеріледі. Егер шарт орындалмаса,  онда кайталану командасы атқарылады.  Ал шарт орындалса,  онда цикл  қайталанбайды. Қадамдық циклді кескіндегенде модификатор қолданылмайды, себебінеше рет қайталанатынын алдын ала білмейміз.  Енді қадамдық циклге мысал келтірейік.

Қайталану саны белгісіз циклдер:

Блок —  схемаАлгоритмPascal
 

 

 
Иә                         жоқ

 

 

 

 

 

 

 

 

 

Алг

Басы

           Енгізу

Әзір  шарт

Цб

Цикл денесі

Цс

Соңы

 

 

While   шарт  do

 

Begin цикл денесі

 

 

End.

 

Мысалы:  1, 3, 5, … , 15 сандар тізбегі берілген. Осы тізбектің квадраттарының кестесін құру керек.

Берілген:  х= 1

Қажетті формула: x:= x2

Блок —  схемаАлгоритмPascal
 

 

 

 

 

 

 
Иә                              Жоқ

 

 

 

 

 

 

 

 

 

 

алг  квадраттар кестесі

нәт бүт у

басы бүт х

 

х:= 1;

әзір    x<=15

цб

у:= х2

 

шығару   х, у;

 

х:= х+2;

цс

соңы

 

Program kvkestesi;

 

Var x, y: integer;

Begin

x:= 1:

while x<=15 do

 

begin

y:= sqr(x);

 

writeln (x, y);

 

x:= x+2;

 

end;

end.

Өткенді пысықтау:

  1. Цикл деген не?
  2. Циклдің түрлері қандай?
  3. Цикл блогы қалай сызылады?
  4. Цикл блогында неше байланыс сызығы бар?
  5. Циклда егер шарт болатын болса, онда ол қалай орналасу керек?

 

Үйге  тапсырма:       1. Тақырып мазмұнына дайындалу.

  1. Есеп: 1, 3, 5, …., 15 сандар тізбегі берілген. осы тізбектің квадраттарының қосындысын есептейтін блок-схема, алгоритм және пргорамма құрып келу керек.