- •Методичні рекомендації до виконання лабораторних робіт
- •Для спеціальностей
- •Лабораторна робота № 1 Лінійні програми
- •Теоретичні відомості
- •Вирази, операнди, операції.
- •Аналогічно не можна змішувати літерні та числові типи даних,тобто вираз типу:
- •Введення-виведення інформації.
- •Завдання
- •Лабораторна робота № 2 Використання операторів умовного та безумовного переходів
- •Теоретичні відомості
- •Оператор умови if
- •Завдання
- •Лабораторна робота № 3 Використання операторів циклу
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 4 Обробка табличних елементів
- •Теоретичний матеріал
- •1 Спосіб
- •2 Спосіб
- •Завдання
- •Лабораторна робота № 5 Сортування елементів масиву
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 6 Робота з даними типу String
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 7 Використання множин даних
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 8 Обробка даних типу запис
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 9 Файлові типи даних
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 10 Типизовані файли
- •Теоретичний матеріал
- •Типизовані файли
- •Завдання
- •Лабораторна робота № 11 Організація підпрограм з використанням функцій
- •Теоретичний матеріал
- •Завдання
- •Лабораторна робота № 12 Організація підпрограм з використанням процедур
- •Теоретичний матеріал
- •Параметри-значення
- •2. Параметри-змінні
- •Завдання
- •Лабораторна робота № 13 Модульна організація програм
- •Теоретичний матеріал
- •Завдання
- •Варіант 1. Робота з матрицями
- •Варіант 2. Арифметичні дії з цілими числами, які не визначаються типом Longint
- •Варіант 3. Цілочисельна арифметика
- •Варіант 4. Опрацювання лінійного масиву даних
- •Варіант 5. Аналіз текстового рядка
- •Варіант 6. Трикутник
- •Варіант 7. Опрацювання масиву даних
- •Варіант 8. Опрацювання масиву даних
- •Варіант 9. Опрацювання двовимірних масивів
- •Лабораторна робота № 14 Створення графічних зображень
- •Теоретичний матеріал
- •Завдання
- •Список літератури
Лабораторна робота № 3 Використання операторів циклу
Мета: навчитися застосовувати оператори повторення для розв’язування задач з повторенням деяких наборів операцій.
Теоретичний матеріал
Оператори повторення використовуються при організації циклів.
Цикл – це послідовність операторів, що може виконуватися більше одного разу.
В мові програмування Паскаль існує три типи циклів: for, repeat та while. Якщо кількість повторів відома заздалегідь, використовується оператор for, якщо кількість повторів невідома, застосовуються оператори repeat або while.
Оператор повтору for.
Цей оператор складається з заголовка і тіла циклу. Він може бути поданий у двох форматах.
for <параметр циклу> := <S1> to <S2> do
begin
<серія>;
end;
for <параметр циклу> := <S1> downto <S2> do
begin
<серія>;
end;
де S1 і S2 – вирази, що визначають відповідно початкове і кінцеве значення параметру циклу;
for.. do – заголовок циклу;
< серія > – тіло циклу. Тіло циклу може бути простим або складеним.
Цей оператор забезпечує виконання тіла циклу доти, поки не будуть перебрані всі значення параметра циклу від початкового до кінцевого.
Параметр циклу, його початкове і кінцеве значення повинні належати до того самого типу даних. При цьому можливо використання будь-якого скалярного типу, крім дійсного. Якщо використовуються типи integer, byte і т.д., то значення параметра циклу послідовно збільшується при for... to або зменшується при for... downto на одиницю при кожному повторі. Параметром циклу можуть служити також змінні типу char.
Кількість повторів тіла циклу в операторі for можна визначити по наступній таблиці:
Оператор |
S1<S2 |
S1=S2 |
S1>S2 |
for...to |
S2-S1+1 разів |
1 раз |
Не виконується |
for...downto |
Не виконується |
1 раз |
S1-S2+1 разів |
В операторі for після do може знаходитися складений оператор, в тілі якого заборонені оператори, що змінюють значення параметра циклу. Після нормального завершення циклу значення параметра циклу дорівнює кінцевому значенню.
Приклад програми з оператором For
Умова задачі. Знайти суму всіх натуральних чисел від 1 до 100.
Розв'язання:
Program Example_l ;
Uses crt;
Var Sum, i: integer;
Begin
Clrscr;
Sum: = 0;
For i:= 1 to 10 do ,
Sum:= Sum + i;
Writeln(‘Sum =’, Sum);
Readkey;
End.
Оператор повтору repeat
Наступний оператор циклу складається з заголовка (repeat), тіла й умови закінчення (until).
Формат опису:
repeat
< серія >
until < умова >;
Умова – вираз булевого типу. При написанні дозволені булеві операції й операції відношення. У цьому циклі спочатку виконується серія (тіло циклу), а потім перевіряється умова виходу з циклу. Саме тому ця команда повторення інакше називається циклом із постумовою. Якщо умова виходу з циклу хибна (false), цикл активізується ще раз, якщо результат істинний (true), відбувається вихід із циклу.
Цей оператор повторення має наступні характерні риси:
використовується у випадках, коди користувачу не відома кількість повторень;
тіло циклу виконується хоча б один раз;
тіло циклу виконується, поки умова хибна false;
у тілі може знаходитися будь-яка кількість операторів без операторних дужок begin... end.
принаймні один оператор у тілі циклу повинен змінювати значення умови, інакше цикл буде виконуватися нескінченно.
Для передчасного виходу з циклу можна присвоїти параметру циклу значення, що виходить за діапазон дозволених значень.
Приклад використання вказівки повторення з післяумовою
Задача. Знайти суму всіх натуральних чисел від 1 до N.
Program SUMA2;
Var
i,N,S: integer;
begin
writeln('Введіть кількість натуральних чисел:');
write('N='); readln(N);
S:=0;
repeat
S:=S+i;
until i>N;
writeln('S=',S);
end.
Оператор повтору while
Оператор while аналогічний оператору repeat, але перевірка умови виконання тіла циклу робиться на самому початку оператора, тому цикл інакше називається циклом із предперевіркою.
Формат опису:
while < умова > do
begin
< серія >;
end;
Умова – булевий вираз, а серія – простий або складений оператор. Перед кожним виконанням тіла циклу обчислюється значення виразу умови. Якщо результат являється істинним (true), тіло циклу виконується, у протилежному випадку відбувається вихід із циклу і перехід до першого після while оператору. Якщо перед першим виконанням циклу значення виразу було хибним (false), то тіло циклу взагалі не виконується і відбувається перехід на наступний оператор.
Як і в попередньому випадку, програміст сам повинен подбати про переприсвоєння значення змінної, що визначає умову виходу, інакше цикл буде нескінченним. Вихід із циклу здійснюється таким самим чином, як і в операторі repeat.
Приклад використання вказівки повторення з передумовою
Задача. Знайти суму всіх натуральних чисел від 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+i;
i:=i+l;
end;
writeln('S=',S);
end.