48 урок
Алгоритми з повтореннями для опрацювання величин. Цикл з лічильником.
Цілі:
навчальна: сформувати уявлення про синтаксис і семантику циклу з лічильником; сформувати вміння складати алгоритми з повтореннями для розв'язування задач;
розвивальна: розвивати логічне мислення та креативність;
виховна: виховувати інформаційну культуру, дбайливе ставлення до комп’ютерної техніки.
Тип уроку: Комбінований.
Обладнання та наочність: комп’ютери з підключенням до мережі Інтернет, підручник, навчальна презентація.
Програмне забезпечення: Середовище програмування Lazarus,браузер.
Хід уроку
І. Організаційний етап
· привітання
· перевірка присутніх
· перевірка готовності учнів до уроку
ІІ. Актуалізація опорних знань
Фронтальне обговорення понять: правила створення і налаштування властивостей елементів керування перемикач і прапорець; програмування обробки події вмикання перемикача і встановлення прапорця.
ІІІ. Мотивацій навчальної діяльності
Слово вчителя. Під час розв'язування багатьох задач обчислювальний процес має циклічний характер, тобто частина операторів багаторазово виконується при різних значеннях змінних. Для організації повторення дій (циклів) під час запису алгоритмів мовою Lasurus використовуються три різновиди операторів циклу з параметром, з передумовою і з післяумовою.
На уроці ми ознайомимось із синтаксисом і правилами виконання оператору циклу з лічильником.
IV. Вивчення нового матеріалу
Пояснення вчителя з елементами демонстрування презентації
(використовуються можливості локальної мережі кабінету або проектор)
Цикл – це фрагмент алгоритму, у якому одна або кілька команд можуть виконуватися більше ніж один раз. Алгоритм, який містить цикл, називається алгоритмом із циклом, або алгоритмом з повторенням.
Для організації повторення дій (циклів) при записі алгоритмів мовою Lazarus використовують три різновиди операторів циклу:
з параметром
з передумовою
з післяумовою
Команду циклу з лічильником доцільно використовувати в тих випадках, коли кількість повторень команд тіла циклу відома ще до початку виконання команди циклу. Загальний вигляд цієї команди такий:
for <ім’я змінної> := <вираз1> to <вираз2>
do begin
<команди тіла циклу>
end;
Рядок for <ім’я змінної> := <вираз1> to <вираз2> do (англ. for - для, to - до, do - робити, виконувати) називають рядком заголовка команди циклу з лічильником. Змінну в рядку заголовка команди циклу з лічильником, що стоїть перед знаком присвоювання, називають лічильником циклу.
Блок-схему команди циклу з лічильником показано на малюнку. Лічильник циклу, вираз1 і вираз2 мають набувати тільки цілих значень. Якщо тіло циклу складається лише з однієї команди, операторні дужки begin і end можна не ставити.
Виконується команда циклу з лічильником так:
1. Надати лічильнику циклу і значення вираз1.
2. Обчислити значення логічного виразу і≤вираз2.
3. Якщо значення логічного виразу true, то виконати команди тіла циклу і перейти до виконання команди 4, якщо false - перейти до виконання команди, наступної за командою циклу.
4. Збільшити значення лічильника циклу на 1.
5. Перейти до виконання команди 2.
Для ілюстрації виконання команди циклу з лічильником розглянем фрагмент проекту, в якому обчислюється сума 12 +22 +32 + 42 .
var s, і: integer;
begin
s := 0;
for і 1 to 4 do
begin
s := s + i*i;
end;
Labell.Caption := IntToStr (s);
end;
Виконаємо цей фрагмент програми.
Звертаємо вашу увагу, що після закінчення виконання команди циклу з лічильником значення лічильника циклу (змінної і) на 1 більше, ніж значення вираз2, і це значення, за потреби, можна використовувати в наступних командах.
Існує різновид команди циклу з лічильником, у якому лічильник не збільшується на 1, а зменшується на 1:
For <ім’я змінної> <вираз1> downto <вираз2> do
begin
скоманди тіла циклу>
end;
(англ. down to - униз до).
Цей цикл продовжує виконуватися, якщо значення лічильника циклу більше або дорівнює (не менше) значенню вираз2.
Задача. Скільки потрібно взяти доданків, перший з яких дорівнює заданому дійсному числу, а кожний наступний на 3 більший від попереднього, щоб їхня сума перевищила 100?
Даними цієї задачи є перший доданок. Вводитимемо його в поле.
Перед початком циклу присвоїмо змінній s, яку використаємо для збереження суми, значення першого доданка. А змінній п, яку використаємо для збереження кількості взятих доданків, присвоїмо значення 1, бо в сумі вже враховано один (перший) доданок.
До суми потрібно додавати наступні доданки, поки ця сума буде меншою, або дорівнюватиме 100. Тому логічний вираз у заголовку циклу матиме вигляд s <= 100. У тілі циклу шукатимемо наступний доданок, додаватимемо його до поточного значення суми і збільшуватимемо кількість доданих доданків на 1.
Відповідний фрагмент проекту матиме такий вигляд:
var a, s: real; n: integer;
begin
a := StrToFloat (Editl.Text);
s := a; n := 1;
while s <=100 do
begin
a := a+3;
s := s+a;
n := n+1;
end;
Labell.Caption := IntToStr(n);
end;
Робота з підручником: § 6.6
V. Фізкультхвилинка
VI. Засвоєння нових знань, формування вмінь
Практичне завдання.
Робота за комп’ютером
1) Повторення правил безпечної поведінки за комп’ютером.
2) Інструктаж учителя.
Підручник ст. 216. Рубрика «Виконайте завдання»
3) Практична робота за комп’ютерами.
4) Вправи для очей.
VIІ. Підсумки уроку
Рефлексія
1. Що нового ви сьогодні дізналися?
2. Чого навчилися?
3. Чи виникали труднощі?
VІІI. Домашнє завдання
Підручник § 6.6 ст. 213-216
ІХ Оцінювання роботи учнів