Просмотр содержимого документа
«Цикілдік алгоритм»
Сабақтың тақырыбы: Циклдік алгоритмдер.
Мақсаты: Білімділік: Оқушылар циклдік алгоритмдерді құруды, циклдердің командасын орындалуын және құрылымын көрсету.
Дамытушылық: Білімді жүйелеу, тиянақтау, жаңа сабақты түсіндіру.
Тәрбиелік: Сауаттылыққа, ұжымда бірлесіп жұмыс істеуге үйретуді көздеу.
Әдістері: түсіндіру, ой қозғау, мағынаны ашу, өз бетімен жұмыс,
Көрнекіліктер: компьютер, сызбалар
Міндеттері: 1. Логикалық ойлау қабілетін дамыта отырып, білім білік дағдыларын
қалыптастыру. 2. Оқушының өз бетімен жұмыс істеуі, шығармашылық қабілетін дамыту.
Сабақтың барысы
І. Ұйымдастыру кезеңі
Оқушыларды сабаққа дайындау, түгендеу
Ұқыпты, ынталы болуға үйрету
Мемлекет басшысы Нұрсұлтан Назарбаевтың Қазақстан халқына Жолдауынан үзінді келтіру. Тәуелсіздік туралы сұрақтар беру
Қазақстанның жас азаматтары!
«Білімді, еңбекқор, бастамашыл, белсенді болуға қазірден бастап дағдыланыңдар. Қазір техникалық мамандықтардың, ғылым мен инновацияның күні туған заман. Ерінбей еңбек еткен, талмай ғылым іздеген, жалықпай техника меңгерген адам озады. Тұрмысы жақсы, абыройы асқақ болады. Біз жүзеге асырып жатқан түбегейлі реформалар мен атқарып жатқан қыруар істердің бәрі сендер үшін, болашақ үшін жасалуда.»
Оқушыларды топқа бөлу. Топқа бөлу үшін «Елім менің», «Атамекен», «Әнұран» сөздері жазылған қағаздарды суырып, ынылдап әннің сазы арқылы бірін-бірі тауып топқа бірігеді.
1-топ «For»
2-топ «To»
3-топ «Do»
ІІ. Үй тапсырмасын тексеру
1.Тапсырма. Сұрақтар:
Күрделі шарттар дегеніміз не?
Паскаль тіліндегі логикалық операцияларды ата.
Тармақталған алгоритм операторларын ата.
a?
X2+50 X≤0
Y=
X0
Функциясының программада жазылуы қалай?
Тармақталған алгоритм дегеніміз не?
Алгоритм түрлерін ата.
X2 X
Y=
X0
Функциясының программада жазылуы қалай?
Программа үзіндісі қандай есепті шешетінін анықтаңдар?
readln(a, b);
if ab then y:=b else y:=a
writeln ('y=',y);
Программа үзіндісі қандай есепті шешетінін анықтаңдар?
if a=0 THEN writeln(‘a оң сан’) else writeln(‘а теріс сан’);
2.Тапсырма. Шашылған жолдардан программа құрастыру
1-топ:
PROGRAM ESEP1;
VAR A, B, Y:INTEGER;
BEGIN
READLN(A,B);
IF AB THEN Y:=A ELSE Y:=B;
WRITELN('Y=',Y);
END.
2-топ:
PROGRAM ESEP2;
VAR X, Y:REAL;
BEGIN
READLN(X);
IF X
WRITELN('Y=',Y);
END.
3-топ:
PROGRAM E1;
VAR X,Y:REAL;
BEGIN
READLN(X);
IF X
WRITELN(‘Y:=’,Y);
END
ІІІ.Жаңа сабақ
Кейбір программалардың белгілі бір операторлары бірнеше рет қайталанып отыруы мүмкін. Мұндай болып келген операторлар тізбегін цикл операторлары деп атайды. Циклдік оператордың үш түрі бар: арифметикалық цикл — FOR, шартын алдын ала тексеретін цикл – WHILE және шартты соңынан тексеретін цикл – REPEAT.
Егер шартын алдын ала тексеретін циклдегі операторды неше рет қайталау керек екендігі белгісіз болып, оның тек қайталану шарты берілсе, онда WHILE, REPEAT операторлары пайдаланылады. Ал FOR операторы қайталану саны алдын ала белгілі болған кезде қолданылады.
FOR операторын параметрлі цикл операторы деп те аталады, өйткені, қайталау саны функция аргументі сияқты циклдің параметрі қызметін атқаратын басқару айнымалысы арқылы беріледі.
FOR операторының екі түрі бар:
FOR := to do ;
FOR айнымалы:=downto do оператор;
Мұндағы, S1 және S2 – цикл параметрінің алғашқы және соңғы мәндерін анықтайтын өрнектер; for…do – цикл тақырыбын анықтайтын түйінді сөздер; оператор — цикл тұлғасы.
FOR – ҮШІН, TO – ДЕЙІН, DO – ОРЫНДАУдеген мағынаны беретін түйінді сөздер.
Паскаль тілінде цикл параметрі міндетті түрде бүтін немесе реттелген типтегі айнымалы болуы қажет. Параметрдің өзгеру қадамына байланысты операторда TO немесе DOWNTO (DOWN – төмен, TO – дейін, DOWNTO — кері қарай) түйінді сөздері пайдаланылады. Егер қадам +1 ге тең болса, онда операторда TO, ал қадам - 1 – ге тең болса, онда DOWNTO сөзі қолданылады.
Параметрдің бастапқы және соңғы мәндері бүтін сан түрінде немесе өсуі, кемуі бойынша реттелетін болуы тиіс, әйтпесе оларды бүтін мен беретін арифметикалық өрнек түрінде жазуға да болады.
1-Мысал: 1- ден 100- ге дейінгі сандардың қосындысын табу керек. PROGRAM ESEP1; VAR I, S: INTEGER; BEGIN
S:=0; FOR I:=1 TO 100 DO S:=S+I; WRITELN (‘S = ‘ , S); END.
2-Мысал. 10-нан 20-ға дейінгі барлық жұп сандардың көбейтіндісін шығаратын программа құрыңдар. PROGRAM ESEP2;
VAR I, K: INTEGER;
BEGIN
K:=1;
FOR I:=10 TO 20 DO
IF I MOD 2=0 THEN
K:=K*I;
WRITELN ('K=',K);
END.
3-Мысал: 1, 3, 5, ... , 15 сандар тізбегі берілген. Осы тізбектің квадраттарының кестесін құру керек.
PROGRAM ESEP3;
VAR I, K: INTEGER;
BEGIN
FOR I:=1 TO 15 DO
IF I MOD 2=1 THEN
BEGIN
K:=SQR(I);
WRITELN ('K=',K);
END;
END.
ІV.Практикалық жұмыс. 3 топқа бөлек есептер беріледі.
1-топ: 1-ден 9-ға дейінгі тақ сандардың қосындысыншығаратын программа құрыңдар. PROGRAM ESEP1;
VAR I, S: INTEGER;
BEGIN
S:=0;
FOR I:=1 TO 9 DO
IF I MOD 2=1 THEN
S:= S +I;
WRITELN (' S =', S);
END.
2-топ: -10, -8, -6, ... , 10 сандар тізбегі берілген. Осы тізбектің кубтарының кестесін құру керек.
PROGRAM ESEP2;
VAR I, K: INTEGER;
BEGIN
FOR I:=-10 TO 10 DO
IF I MOD 2=0 THEN
BEGIN
K:=SQR(I)*I;
WRITELN ('K=',K);
END;
END.
3-топ: 10- нан 20- ға дейінгі сандардың қосындысын табу керек. PROGRAM ESEP1;
VAR I, S: INTEGER;
BEGIN
S:=0;
FOR I:=10 TO 20 DO
S:=S+I;
WRITELN ('S = ' , S);
END.
V.Сабақты бекіту.
1-топ: "Сөзтізбек" командалар тізбегін табу
W
T
E
T
O
Y
P
F
W
G
P
I
N
T
E
G
E
R
V
A
R
G
E
N
K
L
I
S
S
D
O
B
D
M
S
T
T
H
E
N
G
D
F
E
E
A
Z
S
D
M
R
E
A
L
D
F
V
H
M
F
O
R
N
I
D
O
W
N
T
O
M
H
F
R
E
A
D
L
N
A
Z
VAR, THEN, READLN, IF, INTEGER, REAL, ELSE, WRITELN, FOR, DO, TO, DOWNTO
2-топ: "Сәйкестендір"- терминдерді сәйкестендіру
1. do 1. дейін
2. writeln 2. программа соңы
3. for 3. егер
4. end. 4. мәліметтерді енгізу
5. then 5. әйтпесе
6. readln 6. мәліметтерді шығару
7. else 7. үшін
8. if 8. онда
9. to 9. орындау
3-топ:Сұрақтарға «ия», «жоқ» арқылы жауап беру
№
Сұрақтар
Ия
Жоқ
1
Программалардың белгілі бір операторлары бірнеше рет қайталанып отыруын циклдік алгоритм деп атаймыз
+
2
FOR операторы шартты алдын ала тексеретін циклде қолданылады
+
3
FOR операторы қайталану саны алдын ала белгілі болған кезде қолданылады
+
4
FOR операторын параметрлі цикл операторы деп те атайды
+
5
FOR операторының үш түрі бар
+
6
20-дан 10-ға дейінгі сандардың қосындысын табатын кезде ТО түйінді сөзін қолданамыз
+
VI. Рефлексия
• Бүгін мен білдім…
• Мен үйрендім…
• Қолымнан келді …
• Қиындық тудырды…
VIІ. Бағалау.
VIІІ.Үйге тапсырма.
1-ден 8-ге дейінгі бүтін сандардың квадраттары мен кубтарын есептеп шығару