Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 4

Урок № клас

Тема: Створення алгоритмів з використанням циклів з невідомою


кількістю повторень.
Мета: Повторити типи вказівок повторення та їх запис алгоритмічною мовою та мовою
програмування. Навчити використовувати вказівки повторення для розв'язування задач з
використанням циклу з невідомою кількістю повторень.
Базові поняття й терміни:
Вказівки повторення, цикл.
Хід уроку
1. Організація класу.
2. Актуалізація опорних знань.

3. Оголошення теми, мети уроку.

4. Повторення матеріалу. Пояснення вчителя.


А) Оператор повтору repeat (Цикл «доки». )
Цикл «доки» використовують, зокрема, якщо значення зміни параметра циклу є інше, ніж
одиниця. Для цього циклу потрібно знати умову продовження виконання обчислень у
циклі. Тому його називають ще циклом з умовою або циклом з передумовою. Реалізують
цикл командою while, яка має такий вигляд:

Дія команди. Обчислюється логічний вираз. Якщо значення логічного виразу істинне,
то виконується зазначена команда (часто це складена команда). Знову перевіряється
логічний вираз і т. д. Якщо логічний вираз хибний, зазначена команда не виконується,
цикл завершується.

Умова задачі. Знайти суму всіх натуральних чисел від 1 до 100.


Розв'язок:
Sum := 0; i:=1;
while i<=100 do
begin
Sum := Sum + i;
i:=i+1
end;

в)Оператор повтору repeat.

У мові Паскаль є ще одна команда циклу — «повторювати ... до». Команда називається
repeat-until і має такий загальний вигляд:
repeat
<команди>
until <логічний вираз>;

1
Дія команди. На відміну від команди while, тут спочатку виконуються зазначені команди,
а пізніше перевіряється логічний вираз. Якщо логічний вираз істинний, то виконання циклу
завершується, якщо ні, то команди виконуються ще раз і так далі.Такий цикл інакше
називають «циклом з післяумовою». Логічний вираз тут описує умову виходу з циклу.

Приклад . Суму перших десяти цілих чисел можна обчислити так

s := 0; i := 1;
repeat
s := s + i;
inc(i)
until i > 10;

Задача 1. Задана спадна геометрична прогресія із першим членом а і знаменником q.


Визначити всі члени цієї прогресії, значення яких більші від e.
Члени спадної геометричної прогресії пов'язані таким рекурентним співвідношенням:
и. = и. q, де і = 2, 3,...; и1 = а.
Нехай, наприклад, а = 4 і q = 1/2. Тоді члени цієї прогресії набувають таких значень: 4, 2, 1,
1/2, 1/4, 1/8, 1/16, 1/32, 1/64, ... Якщо задано e = 1/15, то обчислено буде 6 членів прогресії.
Останнім у цьому випадку буде значення 1/8. Якщо ж e = 0,02, то обчислено буде 8 членів. При
цьому останній член прогресії набуває значення 1/32.
Блок-схема алгоритму обчислення членів спадної геометричної прогресії зображена на рис.

2
Початок

Введення
a,g,e

u:=a

e
<u
Виведення u

u:=u*q

Кінець

procedure TForm1.Button1Click(Sender: TObject);


var
a,g,e,u:real;
begin
a:=StrToFloat(Edit1.Text);
g:=StrToFloat(Edit2.Text);
e:=StrToFloat(Edit3.Text);
u:=a;
Label4.Caption:='';
while e<u do
begin
Label4.Caption:=Label4.Caption+' || '+FloatToStr(u);
u:=u*g
end;
end;

Задача 2.
Вася Пупкін поклав у банк n грн. За кожний рік збереження нараховується 5% річних. Через
скільки повних років сума вкладу буде не меншою за m грн.? ( n<m)

procedure TForm1.Button1Click(Sender: TObject);


var
n,m:real;
i:integer;
begin
n:=StrToFloat(Edit1.Text);
m:=StrToFloat(Edit2.Text);
3
i:=0;
repeat
i:=i+1;
n:=n+0.05*n;
until n>=m;
Label3.Caption:='Через '+IntToStr(i)+ ' років сума вкладу буде більша за '+ Edit2.Text +' грн.'
end;

Задача 3. Розробіть алгоритм і програму обчислення

суми

Пояснення. Змінна і — лічильник циклів, s — значення функції.


program n2;
var i:integer; s:real; Початок
begin
s:=l;
for i:=2 to 10 do s:=s+l/i; s:=1
writeln ('s=',s)
end.

i:=2,10,
1
s:=s+1/i

Вивід s

Кінець

Домашнє завдання:

You might also like