СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Қабаттасқан циклдер

Категория: Информатика

Нажмите, чтобы узнать подробности

Оқушыларға мысал арқылы қабаттасқан циклдер орындау арқылы есептер шығарту.

Просмотр содержимого документа
«Қабаттасқан циклдер»

Сабақ саны: 2 сағат

Cабақтың тақырыбы: Қабаттасқан циклдер

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

1.Білімділік: Қабаттасқан циклдер туралы түсінікті беру. Оқушыларға мысал

арқылы қабаттасқан циклдер орындау арқылы есептер шығарту

2.Тәрбелік: Оқушылардың сабаққа деген қызығушылығын, бейімділігін ояту

3.Дамыту: Оқушылардың білімін арттыру, есептерді қабаттасқан циклдер

қолдана отырып шығаруды үйрену.

Сабақтың әдіс-тәсілдері: түсіндіру, ой қозғау, мағынаны ашу, өз бетімен жұмыс,

жеке жұмыс.

Көрнекіліктер: компьютер, тест, тапсырмалар.

Міндеттері: 1. Догикалық ойлау қабілеттерін дамыта отырып, білім білік

дағдыларын қалыптастыру.

2. Оқушының өз бетімен жұмыс істеуі, шығармашылық қабілетін дамыту.

Сабақтың барысы: Ұйымдастыру кезеңі

Үй тапсырмасын тексеру

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

Жаңа сабақты бекітуге сұрақтар қою.

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

Сабақты қорытындылау.


І. Ұйымдастыру кезеңі. Оқушылармен амандасу, танысу, жоқ балаларды белгілеу.


ІІ.Үй тапсырмасын тексеру:

1. Цикл дегенімез не?

Цикл – белгілі бір әрекеттер тізбегінің бірнеше рет қайталанып орындалуы.

2. Алдын-ала шартты тексеру операторы дегеніміз не?

Алдын-ала шартты тексеру операторы- қайталаушы операторлар

қайталанып келетін процестерді программалау үшін қолданылады:

While do

begin

;

end;

3. Кейінгі шартты цикл операторы дегеніміз не?

Кейінгі шартты цикл операторы дегеніміз - Repeat операторы

while операторына ұқсас, бірақ айырмашылығы мынада:

Қайталану шарты цикл денесінен кейін тексеріледі, яғни, қайталанатын

іс- әрекеттер кем дегенде 1 рет орындалады. Сондықтан Repeat операторы

кейінгі шартты цикл деп аталады.Шарттың нәтижесі true болғанда

циклдің орындалуы тоқтайды.

Repeat

;

Until ; М,












1-мысал. 1,3,5,....,15 сандары квадраттарының көбейтіндісін анықтайтын программаны Pascal тілінде құру керек.

Шешуі:

1-тәсіл


2-тәсіл

program_ESEP;

var x,y,p: integer;

begin

x:=1; p:=1;

while xdo

begin

y:=sqr(x);

p:=p*y;

x:=x+2;

end;

writeln(‘p=’,p);

end.

program_ESEP;

var x,y,p: integer;

begin

x:=1; p:=1;

repeat

y:=sqr(x);

p:=p*y;

x:=x+2;

until x15;

writeln(‘p=’,p);

end.

4. Қайталану саны белгілі циклдер дегеніміз не?

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

блок-схема

Алгоритмдік тіл

Pascal тілі








цикл денесі




параметрлі қайталану командасы:


үшін х бастап хбас

дейін хсоң қадам хқад

цб

цикл денесі

цс

1-нұсқа (санағыштың мәні өседі, хқад=1 )


for x:=xбас to xсоң do

begin

цикл денесі (серия);

end;


егер xбас xсоң болса, онда цикл денесі бір ретте орындалмайды.


2-нұсқа (санағыштың мәні кемиді, хқад= -1)


for x:=xбас downto xсоң do

begin

цикл денесі (серия);

end;

егер xбас xсоң болса, онда цикл денесі бір ретте орындалмайды











Оқушыларға қайталау тапсырма:

М, Әр түрлі 10 сан енгізіп, олардың квадраттарын табу:

І – циклдің параметрі, х- берілген сан, у – санның квадраты.

Program povtor

Var

i:integer; x,y: real;

begin

for i:=1 to 10 do

begin

readln(x);

y:=sqr(x);

writeln (‘x=’, x);

writeln (‘y=’, y);

end;

readln;

end.

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

Егер цикл денесінің өзі циклден тұрса, ондай цикл қабаттасқан деп, ал басқа циклдің денесіндегі цикл ішкі цикл деп аталады.

Қабаттасқан циклді жазу ережесі: ішкі циклдің барлық операторлары сыртқы цикл денесінің ішінде орналасуы тиіс.

Айнымалының сипаттау бөлімінде циклді басқарушы айнымалылар i және j бүтін byte типімен сипатталады. Программаның орындалуы сыртқы I циклінен басталады. Сыртқы циклдің операторы бірінші рет орындалғанда, параметрдің бастапқы (1) және соңғы (10) мәндері есептеліп, i-ге алғашқы 1 мәні меншіктеледі.

Одан соң мыналар орындалады:

  1. i10 шарты тексеріледі.

  2. Егер шарт дұрыс болса, цикл денесінің операторы, яғни, ішкі цикл орындалады.

    1. ішкі циклдің for операторы 1-рет орындалғанда, оны басқарушы j параметрінің бастапқы (1) және соңғы (10) мәндері есепеліп, бастапқы 1 мәні меншіктеледі.

    2. j 10 шарты тексеріледі.

    3. Егер шарт орындалса, цикл денесіндегі оператор, яғни writeln(i, “*”, j, “=”, i*j); орындалады. Ол экранға 1*1=1 жазуын шығарады. (Мұндағы 1 i мен j-дің кезекті мәндері)

    4. Одан соң j мәні бірге артып, ішкі циклдің for операторы j 10 шартын тексереді.

    5. Егер шарт орындалса, ішкі цикл денесі I-дің тұрақты мәнінде j 10 шарты қате болғанша орындалады. Егер j 10 шарты орындалмаса, яғни j10 болса, ішкі цикл орындалуын тоқтатады да, сыртқы циклдің for операторы i-параметрі бойынша орындалады.

  3. i-параметрдің мәні 1-ге артады да, i10 шарты тексеріледі. Егер шарт орындалмаса, Яғни i10 болса, сыртқы цикл денесі орындалмайды. Программаның орындалуы сыртқы for циклінің сыртына шығады да, end операторына беріледі. Программа жұмысын тоқтатады.


Сонымен қабаттасқан цикл былай орындалады:

  1. сыртқы циклдің параметрі бастапқы мәніне ие болады.

  2. Ішкі цикл денесі ішкі цикл параметрінің барлық мәнінде қайталанады.

  3. Сыртқы циклдің параметрі келесі мәніне ие болады, 2-пункт қайталанады, параметр соңғы мәніне жеткен соң, сыртқы цикл тоқтайды.


Мысалы, көбейту кестесін шығару.

pogram esep;

var i,j:byte;

begin

for i:=1 to 10 do

for j:=1 to 10 do

writeln (i, “*”,j, “=”,i*j);

end.


IV.Жаңа сабақты бекітуге сұрақтар қою.

  1. Қабаттасқан циклді жазу ережесі?

  2. Есеп тақтада оқушыларға демонстративті түрде біріге отырып шығару.

Екінші сабақ.

Қабаттасқан цикл арқылы бекіту есептерін шығару.

Мысалы, оқушыларға тапсырмалар компьютерде 5-6 есептер :

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

Program_19;

Var i,j:byte; --бүтін сандар деген

Begin

for i:=1 to 4 do

begin

for j:=1 to 6 do

write(‘*’);

writeln;

end;

end.

2.Символдар тізбегін мына түрде шығару керек:

a

ab

abc

….

abcd…z

program_20;

var i,j:char;

begin

for i:=’a’ to ‘z’ do

begin

for j:=’a’ to i do

write(‘’,j);

end;

end.


3.Келтірілген КОТ+КТО=ТОК мысалында цифрлар әріптенмен ауыстырылған.Әріптермен белгіленген санды тап.

program s;

var i,j,k:byte;

begin

for i:= 0 to 9 do

for j:= 0 to 9 do

for k:= 0 to 9 do

if (i*200+j*11+k*11)=(k*10+j*10+i) then writeln(i,j,k);

end.




Похожие файлы