- •Загальні рекомендації
- •. Огляд засобів розробки програм
- •1 Загальні поняття
- •2 Системи програмування
- •3 Технології програмування
- •3.1 Алгоритмічне (модульне) програмування
- •3.2 Структурне програмування
- •3.3 Подієво-орієнтоване програмування
- •3.4 Об'єктно-орієнтоване програмування
- •3.5 Візуальне програмування
- •Запитання для контролю та самоконтролю
- •. Основні поняття алгоритмізації
- •1. Поняття алгоритму. Властивості алгоритму
- •2. Способи подання (опису) алгоритму
- •3. Правила оформлення блок-схем алгоритмів
- •4. Базові алгоритмічні конструкції
- •Запитання для контролю та самоконтролю
- •. Етапи розв’язування прикладних задач
- •1. Постановка задачі
- •2. Побудова моделі
- •3. Розробка алгоритму
- •4. Вибір структур даних
- •5. Розробка програми
- •6. Тестування програми
- •7. Аналіз результатів роботи програми
- •8. Корисні технологічні правила програмування
- •Запитання для контролю та самоконтролю
- •V. Практикум з програмування. Turbo pascal
- •Робота з інтегрованим середовищем розробника
- •Запитання для контролю та самоконтролю
- •Тема №1 структура програми. Лінійна програма. Введення/виведення. Типи даних Теоретичні відомості
- •Var перелік імен змінних та їх типів;
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №2 програми розгалуженої структури Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №3 цикли з параметром Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №4 цикли з невідомим числом повторень Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №5 використання масивів Теоретичні відомості
- •Var Ім'я : array[поч_індекс . . Кін_індекс] of Тип_даних;
- •Var Ім'я:array[поч_індекс1..Кін_індекс1,
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №6 символьний тип даних, рядки Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 7 використання допоміжних програм Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 8 використання множин Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 9 обробка записів Теоретичні відомості
- •Var Ім’я_запису : Ім’я_типу;
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 10 організація обробки файлів Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Рекомендована література
Запитання для контролю та самоконтролю
Що таке цикл?
Як можна організувати повторення в програмі?
Які існують особливості структури та використання циклу з параметром?
Чи можна всі циклічні конструкції замінити однією?
З яких етапів складається організація циклів?
Які оптимальні умови застосування циклів з параметром?
Які властивості циклу з параметром зменшують його гнучкість?
Чому не рекомендується змінювати значення параметру циклу в процесі виконання цього циклу?
Наведіть приклади задач, де найоптимальніше користуватися саме циклом з параметром?
У чому цикл з параметром зменшує, а у чому збільшує витрати часу?
Як у циклі з параметром організувати зменшення значення параметру?
Чому дорівнює значення змінної циклу одразу після завершення виконання оператору циклу?
Тема №4 цикли з невідомим числом повторень Теоретичні відомості
Коли заздалегідь невідомо, скільки разів повинні бути повторені визначені дії, використовуються оператори циклів із невідомим числом повторень. У мові Turbo Pascal таких операторів два: оператор циклу с передумовою та оператор циклу с післяумовою.
ОПЕРАТОР ЦИКЛУ З ПЕРЕДУМОВОЮ while … do використовується для перевірки деякої умови на початку циклу. Формат оператора циклу:
while логічний_вираз do
оператор;
Якщо логічний_вираз має значення True, тіло циклу (оператор) виконується, інакше виконання циклу завершується, оператор може бути простим або складеним.
ОПЕРАТОР ЦИКЛУ З ПІСЛЯУМОВОЮ repeat … until використовується для перевірки умови після кожної ітерації. Загальний вигляд оператора:
repeat
оператор1;
оператор2;
…
until логічний_вираз;
Тіло циклу повторюється доти, поки значення логічного_виразу не стане True.
Для гнучкого керування циклічними операторами до складу мови Turbo Pascal включена процедура break, яка реалізує негайний вихід із циклу. Дія процедури полягає в передачі керування оператору, що знаходиться у програмі відразу після оператора циклу.
Зауваження: Часто один циклічний оператор можна замінити іншим. Циклічні дії можна виконати без застосування операторів циклу, але технологія програмування критично відноситься до такого підходу.
Приклад
Знайти кількість членів нескінченного ряду: менших за деяке число .
Дійсне число <1 з відомим значенням, n - (результат) кількість членів ряду, менших за .
Для k=1,2, … обчислюємо значення члена ряду за формулою і порівнюємо його з . Доки для значення поточного члена ряду виконується умова ak<, n збільшуємо на одиницю.
Алгоритм:
Вибираємо типи даних: eps - дійсний тип; n, k - цілий тип.
Текст програми:
program p4;
var n,k: integer; eps: real;
begin
writeln('Введіть точність eps < 1');
readln(eps);
k:=0;
n:=0;
while (k+1)/(k+2)<eps do
begin
n:=n+1;
k:=k+1
end;
writeln('Усього ',n,' членів ряду менших за ',eps);
end.
Тестовий приклад:
Для =0.81 чотири члени ряду є меншими за .
Робоче обчислення:
Введіть точність eps < 1
0.95
Усього 18 членів ряду менших за 9.5000000000E-01