- •Лабораторна робота 6
- •1. План виконання лабораторної роботи
- •2. Основні теоретичні відомості
- •2.1. Загальні поняття про файлове введення та виведення інформації
- •2.2. Стандартні предикати для здійснення файлового введення та виведення інформації
- •2.1.3. Приклад 1 файлового уведення та виведення інформації
- •2.1.2. Приклад 2 файлового уведення та виведення інформації
- •2.1.3. Приклад 3 файлового уведення та виведення інформації
- •3. Методичні рекомендації до опрацьовування контрольних питань і виконання контрольних завдань лабораторної роботи
- •4. Контрольні питання
- •5. Завдання для самоперевірки
- •6. Контрольні завдання
- •6.1. Контрольне завдання 1
- •6.2. Контрольне завдання 2
- •7. Література
- •Вимоги до оформлення та захисту лабораторної роботи
- •Зразок оформлення титульного аркуша звіту про виконання лабораторної роботи
2.1.3. Приклад 3 файлового уведення та виведення інформації
У наведеному далі лістингу (Sheet 6_4) представлено приклад Пролог-програми, що здійснює наступні дії:
– запитує імена двох файлів (існуючого вхідного файлу та створюваного програмою вихідного файлу), які потрібно ввести з клавіатури;
– перетворює початковий текст, прочитаний із вхідного файлу, в інший текст, який містить тільки прописні літери;
– записує перетворений текст до вихідного файлу.
Для читання рядків із вихідного файлу, організовано пошук із повертанням за допомогою предикату repeat із одним параметром (символічним ім'ям файлу).
Для визначення кінця файлу, використовується стандартний предикат eof із одним параметром (символічним ім'ям файлу): даний предикат перевіряє, чи не досягнено кінець файлу.
Примітка 1. Завчасно, до початку роботи Пролог-програми, потрібно створити вхідний текстовий файл та занести до нього початковий рядок символів.
Примітка 2. Для перевірки результатів роботи Пролог-програми, потрібно відкрити створений даною програмою вихідний текстовий файл та ознайомитися з його вмістом.
% Sheet 6_4. Primer 3 of the files input and output
DOMAINS
file = input; output
PREDICATES
repeat (file)
low2up
CLAUSES
repeat (_).
repeat (File):-
not (eof (File)), repeat (File).
low2up:-
repeat (input),
readln (Str),
upper_lower (UpStr, Str),
write (UpStr), nl,
fail.
low2up.
GOAL
write ("Name of input file: "),
readln (Input),
write ("Name of output file: "),
readln (Output),
openread (input, Input),
readdevice (input),
openwrite (output, Output),
writedevice (output),
low2up,
closefile (input),
closefile (output).
3. Методичні рекомендації до опрацьовування контрольних питань і виконання контрольних завдань лабораторної роботи
Сформульована вище мета лабораторної роботи повинна бути повністю досягнена студентами в процесі виконання ними контрольних питань, завдань для самоперевірки та контрольних завдань (див. розділи 4-6 даних методичних рекомендацій).
У тому випадку, якщо студентам потрібно буде отримати детальніші відомості про ті чи інші поняття Прологу, потрібні для виконання лабораторної роботи, їм достатньо буде звернутися до методичних рекомендацій для самостійної роботи.
4. Контрольні питання
1. Назвіть і коротко охарактеризуйте стандартні предикати Прологу, призначені для введення (читання) інформації з файлів.
2. Які стандартні предикати Прологу відповідають за призначення файлів поточними пристроями читання та запису ?
3. Назвіть і коротко охарактеризуйте стандартні предикати Прологу, призначені для виведення (запису) інформації до файлів.
4. За допомогою якого стандартного домену Прологу визначаються символічні імена файлів ?
5. Яке призначення має стандартний предикат Прологу eof ?
5. Завдання для самоперевірки
Завдання 1. Запустіть на виконання та проаналізуйте результати роботи Пролог-програм, наведених у розділі 2 "Основні теоретичні відомості" даних методичних рекомендацій.
6. Контрольні завдання