Тема. Цикл з лічильником
Оператор циклу for ... to … do
Оператор for використовується в тому випадку, коли деяку послідовність дій треба виконати кілька разів, причому число повторень заздалегідь відомо.
Загальний вигляд оператора for … do:
for <лічильник>: = <поч_знач> to <кін_знач> do
begin
<Тіло циклу>
End;
де:
- лічильник - змінна-лічильник числа повторень;
- поч_знач - вираз, що визначає початкове значення лічильника циклу;
- кін_знач - вираз, що визначає кінцеве значення лічильника циклу;
- тіло циклу - оператори, які будуть повторюватися.
- Змінна-лічильник, вирази поч_знач і кін_знач повинні бути цілого типу.
- Кількість повторень циклу можна обчислити за формулою: кін_знач - поч_знач +1.
- Якщо між begin і end знаходиться тільки один оператор, то begin і end можна не писати.
Виконується команда циклу з лічильником так:
1. Надати лічильнику циклу і значення поч_знач.
2. Обчислити значення логічного виразу і ≤ кін_знач.
3. Якщо значення логічного виразу true, то виконати команди тіла циклу і перейти до виконання команди
4. Якщо false - перейти до виконання команди, наступної за командою циклу.
5. Збільшити значення лічильника циклу на 1.
6. Перейти до виконання команди 2.
Крок зміни циклу завжди однаковий і дорівнює інтервалу між двома найближчими значеннями типу параметра (при цілочисельному значенні параметра крок дорівнює 1).
Можна скористатись величиною перелічуваного типу. Наприклад,
- Списком непарних чисел першого десятка: 1, 3, 5, 7, 9
- Списком голосних літер українського алфавіту : ‘а’, ‘о’, ‘у’, ‘е’, ‘и’, ‘і’, ‘ї’, ‘ю’
Cписок значень у мові програмування Lasurus обмежують круглими дужками
Отримання випадкових значень величин у програмному коді.
У програмах, написаних мовою програмування Lazarus, у програмному коді опрацювання події один раз звертаються до функції Randomize, яка підключає генератор випадкових чисел та надає можливість отримувати щоразу інші значення. Тоді в програмному коді можна отримати випадкові значення величин різних типів.
Опис Значення змінної А
Randomize;
A:=random; Випадкове дійсне число від 0,0 включно до 1,0
Randomize;
A:=random(10); Випадкове ціле число від 0 включно до 10
Randomize;
A:=random(b-a+1)+a; Випадкове ціле число від а до b включно
Вправа 1 Вивести таблицю квадратів чисел
|
Програмний код procedure TForm1.Button1Click(Sender: TObject); |
Якщо в операторі for замість слова to записати Downto, то після чергового виконання тіла циклу значення лічильника буде не збільшуватися, а зменшуватися.
Вправа 2. Створення таблиці множення
|
Програмний код procedure TForm1.Button1Click(Sender: TObject); procedure TForm1.Button2Click(Sender: TObject); procedure TForm1.FormCreate(Sender: TObject);
|
procedure TForm1.Button3Click(Sender: TObject); |
Вправа 3. Створити проект обчислення суми квадратів цілих чисел: 1, 2, 3, ...
Алгоритм проекту |
Программный код проекта procedure TForm1.Button1Click(Sender: TObject); procedure TForm1.Button2Click(Sender: TObject); |
Вправа 4. Полічити кількість слів у введеному користувачем тексті. Вважатимемо, що слова відокремлюються виключно одним пробілом
Алгоритм проекту Интерфейс проекта
|
Программный код проекта uses ......... procedure TForm1.Button1Click(Sender: TObject); var n, i, k: integer; s : string; begin k:=0; //количество слов в предложении for i:= 1 to n do label1.caption := 'количество слов в предложении = ' + inttostr(k); end; procedure TForm1.Button2Click(Sender: TObject); |
Вправа 5. Знайти факторіал числа n за формулою: f ! = 1 * 2 * З *... * n.
Алгоритм проекту. Интерфейс проекта |
Программный код проекта procedure TForm1.Button1Click(Sender: TObject); procedure TForm1.Button2Click(Sender: TObject); |
Вправа 6. З клавіатури вводяться п'ять дійсних чисел, серед яких можуть бути як додатні, так і від'ємні числа. Знайти середнє арифметичне додатних чисел.
Алгоритм проекту. Интерфейс проекта |
Программный код проекта procedure TForm1.Button1Click(Sender: TObject); label2.Caption := 'среднее арифметическое положительных чисел = ' + floattostrF(s/k,ffFixed,6,3); procedure TForm1.Button2Click(Sender: TObject); |
Вправа 7. Розробити проект у якому за введеним початковим і кінцевим значенням температури в текстове поле буде виведений список відповідних температур за шкалою Фаренгейта, якщо для такого перетворення використовують формулу: Tf = 9/5*Tc + 32.
Интерфейс проекта
|
Программный код проекта procedure TForm1.Button1Click(Sender: TObject);
|