Використовуючи розробку, учитель дає можливість учням отримати поняття про різні види циклічних операторів, правила запису та виконання циклічних операторів на мові програмування Паскаль, доцільність використання певного виду циклічного оператора.
Тема: Команди повторення (циклу). Циклічні оператори у мові програмування Паскаль.
Мета: ознайомити учнів з командою повторення та її видами, способами подання команди повторення мовою програмування, з оператором циклу; розвивати логічне мислення, навички створення програм; виховувати працьовитість, інтерес до предмета.
Обладнання: комп’ютери, картки, опорні конспекти, підручники, таблиці.
Учні повинні знати: різні види циклічних операторів, правила запису та виконання циклічних операторів на мові програмування Паскаль, доцільність використання певного виду циклічного оператора.
Учні повинні вміти: створювати найпростіші програми, що містять цикли.
Тип уроку: комбінований.
ХІД УРОКУ.
І. Організаційний етап.
Привітання з учнями, перевірка їхнього стану готовності до уроку.
ІІ. Актуалізація опорних знань.
1. Знайдіть і виправте помилки в програмі. Придумайте до неї умову задачі.
Program Z1;
Uses CRT;
Var day:real;
Begin
Clrscr;
Write (‘Введіть номер тижня:’);
Readln (day);
Case day of
1…5: write (‘Це робочий день’);
6, 7 – write (‘Це вихідний день’);
Else write (‘Це не день’);
End;
Writeln (‘тижня.’);
Readln
End.
2. Знайдіть і виправте помилки в програмі. Придумайте до неї умову задачі.
Program 1Z;
Uses CRT;
Var month:integer;
Begin
Clrscr;
Write (Введіть номер місяця:);
Readln (‘month’);
Case month of
12,1,2: write (‘Це зима’);
3..5 :write (‘Це весна’);
6..8: write (‘Це літо’);
9..11: (‘Це осінь’);
End;
Readln
End.
3. Знайдіть і виправте помилки в програмі. Придумайте до неї умову задачі.
Program Z1;
Uses CRT;
Var day:boolean;
Clrscr;
Begin
Write (‘Введіть номер дня тижня:’);
Readln (day);
Case d of :
1: write (‘Понеділок’);
2 :write (‘Вівторок’);
3: write (‘Середа’);
4: write (‘П’ятниця’);
5: write (‘Четвер’);
6: write (‘Субота’);
7: write (‘Неділя’);
End;
Readln
End.
ІІІ. Формулювання теми і мети уроку.
Більшість процесів у житті повторюються, як наприклад зміна пір року, повторення днів тижня, кругообіг води в природі і т.д. Всі ці і багато інших процесів чи подій можна назвати циклічними. Сьогодні ми з вами вивчимо тему «Команди повторення (циклу). Циклічні оператори у мові програмування Паскаль.» Я ознайомлю вас з командою повторення та її видами, способами подання команди повторення мовою програмування, з оператором циклу.
ІV. Пояснення нового матеріалу.
План
Цикл – це вид управляючої структури, що дозволяє кілька разів повторити задану кількість операторів. Цикли - основний засіб у програмуванні, що дозволяє коротко записувати алгоритм, який здійснює велику кількість дій.
Для реалізації циклічних алгоритмів у мові Паскаль використовуються оператори повторення (цикли):
Вказівка повторення з передумовою (Цикл — while )
Вказівка повторення з передумовою — while призначена для організації багатократного виконання групи вказівок (тіло циклу) до тих пір, поки залишається істинною умова виконання циклу. Значення службового слова while — поки
вказівка повторення з передумовою записується у вигляді:
while <умова> do
begin
<вказівка1>;
<вказівка2>;
.........;
<вказівка N>
end;
Наприклад.
while I<4 do
begin
S:=S+I;
I:=I+I;
end;
Виконується ця вказівка таким чином. Обчислюється значення виразу-умови. Якщо умова істинна (приймає значення TRUE), то виконується група вказівок (тіло циклу). Виконання програми знову повертається до перевірки умови циклу. Якщо умова хибна (приймає значення FALSE), то виконується вказівка, яка знаходиться після вказівки повторення з передумовою.
Примітка.
1. Якщо умова у вказівці повторення хибна при першій же перевірці, то тло циклу не виконується жодного разу. Умова вказівки є умовою входження і цикл.
2. Умову вказівки повторення з передумовою необхідно підбирати таким чином, щоб в деякий момент вона змінила своє значення з TRUE на FALSE, інакше виникне ситуація "зациклювання" програми.
3. Програмісту необхідно самому потурбуватись про необхідність збільшення (зменшення) лічильника циклу на 1. Це можна зробити таким чином І:=І+1.
4. Входження в тіло вказівки повторення можливе тільки через заголовок цієї вказівки.
Приклад використання вказівки повторення з передумовою
Задача. Знайти суму всіх натуральних чисел від 1 до N.
Program SUMA1;
var I,N,S:integer;
begin
writeln('Введіть кількість натуральних чисел:');
write('N=');
readln(N);
I:=1;
S:=0;
while I<=N do
begin
S:=S+1;
I:=i+1
end;
writeln('S=’,S)
end.
Вказівка повторення з післяумовою (Цикл-repeat-until)
Вказівка повторення з післяумовою призначена для організації багатократного виконання групи вказівок (тіло циклу) до тих пір, поки умова виконання циклу не стане істинною,
repeat
<вказівка1>;
<вказівка2>;
...........;
<вказівка N>
until <умова>;
Наприклад.
repeat
S:=S+I;
I:=I+1
until I>=4;
Службові слова вказівки означають:
repeat — повторювати, until — поки.
Вказівка повторення з післяумовою виконується таким чином. Спочатку виконуються вказівки, які входять в тіло циклу. Потім обчислюється значення умови-виразу. Якщо умова хибна (тобто має значення FALSE), то знову виконуються вказівки тіла циклу. Якщо умова стає істинною (TRUE), то виконання циклу припиняється і виконується наступна вказівка програми.
Примітка.
1. Тіло циклу, яке складається з групи вказівок, не потрібно брати в дужки (begin — end), оскільки службові слова repeat — until відіграють роль дужок.
2. Тіло циклу у вказівці повторення з післяумовою виконується щонайменше один раз.
3. Умова вказівки є умовою виходу з циклу.
4. Входження в тіло вказівки повторенням можливе тільки через заголовок цієї вказівки.
Приклад використання вказівки повторення, з післяумовою
Задача. Знайти суму всіх натуральних чисел від 1 до N.
Program SUMA2;
Var i, N,S :integer;
Begin
Writeln ('Введіть кількість натуральних чисел:');
write('N=');
readln(N);
i:=1;
S:=0;
repeat
S:=S+I;
I:=i+1;
until i>N;
writeln('S=',S); end.
Вказівка повторення з параметром (FOR — ТО — DO).
Вказівка повторення з параметром призначена для організації багатократного виконання тіла циклу для значень параметра циклу з деякої впорядкованої дискретної множини.
Вказівку повторення з параметром використовують у тих випадках, коли наперед можна визначити кількість повторень виконання вказівок циклу.
Вказівка повторення з параметром записується у вигляді:
1. for <параметр:=вираз1> to <вираз2> do
begin
<вказівка1>;
<вказівка2>;
...........;
<вказівка N>;
end;
2. for <параметр:=вираз 1> downto <вираз2> do
begin
<вказівка1>;
<вказівка2>;
...........;
<вказівкаN>;
end;
Параметр вказівки (лічильник, індекс) — це змінна скалярного (цілого, символьного, логічного або перелічувального) типу, крім дійсного.
Вираз 1 (початковий параметр вказівки) — це деяка константа такого ж самого типу, що й параметр вказівки.
Вираз 2 (кінцевий параметр вказівки) — це деяка константа такого ж самого типу, що й параметр вказівки.
Якщо в тілі вказівки повторення з параметром необхідно виконати тільки одну вказівку, то складеної вказівки begin ... end використовувати не потрібно.
for <параметр:=вираз1> to <вираз2> do
<вказівка1>;
Вказівка повторення з параметром виконується таким чином:
1. Вказівка For — to — do.
Наприклад.
For i:=К to M do
begin
<вказівка1>;
<вказівка2>;
...........;
<вказівкаN>;
end;
Параметру циклу і присвоюється початкове значення К. Він порівнюється з кінцевим значенням М. Якщо К<=М, то виконується тіло вказівки повторення. Значення К автоматично збільшується на 1 (тобто стає наступним елементом) і знову порівнюється зі значенням М. Якщо під час перевірки отримаємо, що К>М, то виконання вказівки повторення припиняється і виконується наступна після неї вказівка програми. Якщо під час першого порівняння К і М виявиться що К>М, то тіло вказівки не виконується жодного разу.
2. Вказівка For — downto — do.
Наприклад.
for i:=K downto M do
begin
<вказівка1>;
<вказівка2>;
...........;
<вказівкаN>;
end;
Параметру циклу і присвоюється початкове значення К. Він порівнюється з кінцевим значенням М. Якщо К>=М, то виконується тіло вказівки повторення. Значення К автоматично зменшується на 1 (тобто стає попереднім елементом) і знову порівнюється зі значенням М. Якщо під час перевірки отримаємо, що К<М, то виконання вказівки повторення припиняється і виконується наступна після неї вказівка програми. Якщо під час першого порівняння К і М виявиться, що К<М, то тіло вказівки не виконується жодного разу.
Примітка.
1. Вказівку повторення з параметром зручно використовувати в тих випадках, коли попередньо можна визначити кількість повторень.
2. Параметр циклу не повинен змінювати свого значення всередині тіла вказівки повторення, хоча його можна використовувати у будь-яких виразах вказівок тіла циклу.
3. Параметр циклу повинен бути описаним у розділі змінних.
4. Значення параметра циклу після закінчення виконання вказівки повторення володіє кінцевим значенням, тому перед повторним його використанням йому необхідно знову присвоїти нове початкове значення.
Приклад використання вказівки повторення з параметром
Задача. Знайти суму всіх натуральних чисел від 1 до N.
Program SUMA3;
var i,N,S:integer;
begin
writeln('Bведіть кількість натуральних чисел:');
write('N=');
readln(n);
S:=0;
for i:=l to N do
S:=S+i;
writeln('S=',S);
end.
V. Фізкультхвилинка.
VІ. Засвоєння нових знань і формування вмінь.
Практична робота «Використання різних видів циклічних операторів під час розв’язування задач»
Допишіть циклічні оператори до програм, які складені до заданих задач. Для цього відкрийте файли Bank.pas, Babusya.pas, Vasyluna.pas (File/Open/потрібний фай)
Закінчивши робити практичну, вийдіть із програми Паскаль.
VІІ. Домашнє завдання.
Прочитати § 2.9, виконати впр. 1, 2 с. 93
VІІІ. Підбиття підсумків уроку.
Рефлексія.