Конспект урока "Циклдің алғы шарты, циклдің ілесу шарты" 8 класс

Күні: 05.02.2016 ж.
Сыныбы: 8
Пәні: Информатика
Сабақтың тақырыбы : Циклдің алғы шарты, циклдің ілесу шарты.
Сабақтың мақсаты
Білімділігі: Оқушылар циклдік алгоритмдерді құруды, циклдердің командасын орындалуын
және құрылымын көрсету.
Дамытушылығы : циклдік алгоритмдерді құруды үйрете отырып, жұмыс істеу дағдыларын
қалыптастыру, логикалық ой-өрістерін дамыту.
Тәрбиелік: Оқушыларды компьютерлік сауаттылыққа тәрбиелеу.
Сабақтың түрі: аралас сабақ
Сабақтың барысы
І Ұйымдастыру кезеңі
ІІ Өткен материалды қайталау
ІІІ Жаңа сабақты түсіндіру
ІV Сабақты бекіту
V Үйге тапсырма
І Ұйымдастыру кезеңі
• Сәлемдесу, оқушыларды түгелдеу
• Оқушылардың назарын сабаққа аудару
ІІ. Өткен материалды қайталау сұрақтары
1. Циклдік алгоритм дегеніміз не?
2. Қайталау операторлары не үшін қолданылады?
3. Қайталау операторларының қанша түрі бар?
ІІІ Жаңа сабақты түсіндіру
Алғы шартты цикл. Егер iс-әрекеттiң қайталану саны белгiсiз, бiрақ қайталану шарты белгiлi
болса, онда while немесе repeat операторлары қолданылады.
While (әзiр) операторында қайталану шарты цикл денесiнен бұрын тексерiледi. Сондықтан while
операторы алғы шартты цикл деп аталады.
Жазылу форматы:
While <қайталану шарты> do
<цикл денесi>
Қайталану шарты бульдiк (логикалық) өрнек, цикл денесi - жай немесе құрама оператор. Цикл
денесi орындалудан бұрын шарттағы өрнектiң мәнi анықталады. Егер ол мән true болса, цикл
денесi орындалады. Шарттық өрнектiң мәнi тағы да анықталады, егер нәтижесi false болса
циклдың жұмысы аяқталып, while-ден кейiнгi бiрiншi оператор орындалады.
While операторында, әрбір қайталанудың алдында берілген шарт тексеріледі. Шарт ақиқат болса,
цикл денесі орындалады. Егер, шарт орындалмаса, цикл денесі де бірде-бір рет орындалмайда.
Егер, цикл денесі екі немесе екіден де көп операторлардан тұрса, оларды операторлар
жақшасының ішіне жазамыз.
While <шарт> do begin <циклдің денесі>; end;
While операторында программалаушы циклдің өзгеру қадамын өзі тағайындап отырады. Егер
әрекет белгісі “/” не тең болмаса немесе екінші сан да 0-гетең болмаса, онда программаның
орындалу процесінде бұл циклді айналып өтеді, яғни цикл бір рет те орындалмайды.
Программаны жүктеп, оның қалай жұмыс істейтін F7 пернесін қолдану арқылы тексереміз.
Мысалы: Z=Y3 функциясының мәнін есептеу керек, мұндағы Y=1,2,3,4,5,6,7.Программаның
нәтижесінде Y-тің мәні мен сәйкес функцияның мәні кесте түрінде шығады. Y-тің өзгеру қадамы
1-ге тең.
Program pr1;
Var Z,Y: integer; {берілген айнымалыны сипаттау}
Begin
Z:=1;{Y-тің бастапқы мәнін меншіктеу}
While y<=6 do {цикл тәуелді болатын шарт}
Begin
Z:=sqr(Y)*Y; { Y –тің мәнін Z-ті есептеу}
Writeln ( ‘Y=’,Y,’___ Z=’,Z) ; { Y және Z экранға шығару}
Y :=Y+1 ; { Y –тің өзгеру қадамы}
End ;
End.
Нәтижесі: Y=1 ! Z=1 Y=2 ! Z=8 Y=3 ! Z=27 Y=4 ! Z=64 Y=5 ! Z=125 Y=6 ! Z=196 Y=7 ! Z=343 1.
Turbo Pascal тілінде қайталау процесін жүзеге асыратын циклдік операторлардың үш түрі бар:
арифметикалық цикл –FOR, шартты алдын ала тексеретін цикл –While және шартты соңынан
тексеретін цикл –Repeat.
Егер шарт алдын ала циклдегі операторды (немесе құрама операторды) неше рет қайталау керек
екендігі белгісіз болып, оның тек қайталану (аяқталу) шарты берілсе, онда While, Repeat
операторлары пайдаланылады. Ал FOR операторы қайталану саны алдын ала белгілі болған
кезде қолданылады.
REPEAT (қайталау) операторы
Шарт цикл соңында тексерiлетiндiктен REPEAT (қайталау) операторы ең болмағанда бiр рет
орындалады. Циклдiң орындалу шарты ақиқат болғанда оның жұмысы тоқтатылды. Жазылу
түрi:
REPEAT <оператор> UNTIL <шарт>
{бiр оператор қайталанады}
мұндағы UNTIL-қызметшi сөз, “дейiн” болып аударылады. Ал бiрнеше оператор
қайталанатын жағдайдағы жазылуы:
REPEAT <1-оператор>;
<2-оператор>;
...
;
UNTIL <шарт>;
Бұл жерде құрмалас оператор REPEAT және UNTIL сөздерiнiң арасында
орналасып, басқа қызметшi сөздер жазылмайтыны көрiнiп тұр. Бұл операторды да
WHILE операторын пайдаланған есептерде қолдануға болады.
1-мысал. S=10+9+8+7+6 қосындысын есептеу.
Program қосын-2 ;
Var i, s : integer;
Begin
i:=10; s:=0;
REPEAT
s:=s+i;
i:=i-1;
UNTIL i<5;
Writeln(‘i=’, i, ‘s=’, s);
end.
Тапсырма. Қосындыны есептеу.
Const n=10;
Var i, p: integer; s: real;
Begin s:=0; p:=1; i:=1;
REPEAT p:=p*i;
S:=s+ sqr(i)/p;
I:=i+1;
UNTIL i>n;
Writeln(‘s=’, s:4:2);
End.
Тапсырма. N=1, 2, 3 және k=2, 4, 6, 8 барлық мәндерiнде y=2k+n айнымалысының
мәнiн табу.
Program Есеп;
Var k, n, y: integer;
Begin For i:=1 to 3 do
Begin k:=2;
While k<=8 do
Begin y:=2*k+n;
k:=k+2;
Writeln(‘y=’, y);
End;
End;
End.
ІV Сабақты бекіту
- Циклдік алгоритмнің неше түрі бар?
- Программаның нәтижесін қалай көреміз
- Қандай алгоритмдер циклдік деп аталады?
- Цикл денесі дегеніміз не?
- «Цикл әзір»және «цикл кейін» құрылымдарының айырмашылығын блок-
схема арқылы түсіндіріңіз?
- Алдын ала шартты тексеру операторы.
- REPEAT операторының жалпы жазылуы және орындалуы.
- параметірлі қайталану операторының жазылуы және орындалуы.
- Циклдің денесі дегеніміз не?
V Үйге тапсырма
Циклдің алғы шарты, циклдің ілесу шарты.