«Створення та реалізація циклічних програм з післяумовою»
Львівський коледж
Державного університету інформаційно-комунікаційних технологій
Розглянуто та схвалено на засіданні циклової комісії природничо-математичних дисциплін Протокол № від 2012 р. Голова циклової комісії_____ Конончук О.М. | Затверджую Заступник директора з навчальної – виробничої роботи _____________ Плешівський Я.М. “_____” ____________ 2012 р |
Інструкція
до лабораторної роботи з інформатики
на тему:
«Створення та реалізація циклічних програм з післяумовою»
Викладачі Конончук П. П.,
Конончук О.М.
Львів 2012
Лабораторна робота на тему: Створення та реалізація циклічних програм з післяумовою.
Мета: Навчитися складати та реалізовувати циклічні програм з післяумовою на мові Pascal.
Теоретичні відомості
Оператор циклу з посляумовою repeat-until має наступний формат:
Repeat
<оператор 1>;
<оператор 2>;
{........}
<оператор n>
Until <yмова>;
Умова — вираз булівського типу. У цьому циклі спочатку виконується серія (тіло циклу), а потім перевіряється умова виходу з циклу. Саме тому ця команда повторення інакше називається циклом із післяумовою. Якщо умова виходу з циклу хибна ( false ), цикл активізується ще раз, якщо результат істинний ( true ), відбувається вихід із циклу. Ключові слова repeat-until виконують роль операторних дужок begin-end.
Тіло циклу repeat-until виконується хоч би один раз, так як виконання умови перевіряється в кінці циклу.Для передчасного виходу з циклу можна присвоїти параметру циклу значення, що виходить за діапазон дозволених значень.
Приклад1 програми з оператором Repeat .
Умова . Вводимо два цілих числа доти, поки обидва числа не будуть від’ємними або рівними. Для виходу з циклу користувач повинен ввести потрібні дані ( A<0 і B<0 або A=B).
program Prakt_3;
var A, B: іnteger;
begin
repeat { повторювати }
writeln ('enter A');
read (A);
writeln ('enter B');
read (B);
Until ((A<0) and (B<0)) or (A=B); { до виконання умови }
end.
Приклад3 застосування оператора циклу з післяумовою (табуляція функції на проміжку [-3; 3] з кроком 0,5)
Умова : Знайти значення функції в точках х=-3, х= -2.5, х=-2, …, х=3.
Розв’язання:
1. В даній задачі аргументом є х, результатом є у.
2. Аргумент х змінюється з кроком 0,5 від –3 до 3, отже результатів буде декілька.
3. Програма може мати вигляд:
Program tab_2;
var x, y, a, b, h: real;
begin
writeln ('a, b, h'); read (a, b, h);
x: = a;
repeat
y:= 2*cos(3*x-5);
writeln ('x=', x, 'y=',y);
x:=x+h
until x>b;
end .
Х і д р о б о т и :
1. Ознайомтесь з теоретичним матеріалом.
2. Введіть та відлагодьте програму розв’язування задач за індивідуальними завданнями.
3. У звітах складіть блок-схему алгоритму, запишіть програму і проаналізуйте результати її виконання, дайте відповіді на контрольні запитання.
4. Закрийте вікна. Закінчіть роботу. Здайте звіти.
Контрольні запитання
1. Які оператори циклу ви знаєте?
2. Що таке оператора циклу з післяумовою?
3. Яку назву має формат оператор циклу repeat-until?
4. Що таке умова в операторі циклу? Які значення вона приймає?
5. Чи можна використовувати оператор циклу repeat-until для організації циклу з довільним кроком?
6. Скільки разів виконується оператор циклу repeat-until якщо умова приймає значення false?
Індивідуальні завдання:
1-6. Скласти блок-схеми та програми обчислення суми S чи добутку P :
1. ![]() | 2. ![]() |
3. ![]() | 4. ![]() |
5. ![]() | 6. ![]() |
7-12. Скласти блок-схеми та програми обчислення виразу:
7. ![]() | 8. ![]() |
9. ![]() | 10. ![]() |
11. ![]() | 12. ![]() |
13- 18. Скласти блок-схему та програми обчислення:
13. суми перших десяти парних чисел.
14. суми цілих додатних чисел, кратних 4 і менших 50.
15. добутку цілих чисел, більших 2, менших 40 і кратних 3.
16. середнього арифметичного цілих додатних чисел менших 47.
17. добутку перших двадцяти непарних чисел.
18. суми всіх двозначних чисел, кратних 5.
19-24. Протабулювати функцію у = f ( x ) для значень аргументу х на проміжку з кроком
. Вигляд функції та значення вхідних даних подано в таблиці:
№ | Вид функції у = f(x) | Вхідні дані | ||||
a | b | xn | xk | ![]() | ||
19. | ![]() | 0.75 | 1.35 | 6.5 | 0.5 | |
20. | ![]() | 19.6 | 7.8 | 14.6 | 34.8 | 3.6 |
21. | ![]() | 1.38 | 1.26 | 60 | 100 | 4.5 |
22. | ![]() | 1.68 | 1.2 | 2.4 | 0.18 | |
23. | ![]() | 0.36 | 5.5 | 10 | 50 | 4.75 |
24. | ![]() | 1.85 | 0 | 1.2 | 0.15 |