48 урок

8 клас Урок 41

Алгоритми з повтореннями для опрацювання величин. Цикл з лічильником.

Цілі:

Тип уроку: Комбінований.

Обладнання та наочність: комп’ютери з підключенням до мережі Інтернет, підручник, навчальна презентація.

Програмне забезпечення: Середовище програмування 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

ІХ Оцінювання роботи учнів