
- •Лабораторний практикум
- •«Інформатика»
- •Лабораторна робота № 1 “Середовище програмування Turbo Pascal”
- •Теоретичні відомості Основні команди оболонки програмування Turbo Pascal
- •Введення та редагування програми у середовищі Turbo Pascal
- •Переміщення курсору по тексту
- •Способи виділення тексту
- •Відміна або повторення останньої дії
- •Компіляція та виконання програми
- •Контрольні запитання
- •Змінні та сталі величини.Типи величин
- •Кожна змінна повинна бути описана один раз на початку програми після слова var. При цьому визначається тип змінної. Користувач сам вибирає тип (з урахуванням діапазону значень та розміру пам’яті).
- •Стандартні функції
- •Структура програми
- •Оператор присвоювання
- •Оператори вводу та виводу інформації
- •Контрольні запитання
- •Лабораторна робота № 3 “Умовні оператори. Оператор розгалуження”
- •Теоретичні відомості Призначення та конструкція оператора розгалуження
- •Повна форма:
- •Логічні вирази
- •Поліваріантні розгалуження (вкладені оператори розгалуження)
- •Контрольні запитання
- •Лабораторна робота № 4 “Умовні оператори. Оператор вибору”
- •Теоретичні відомості Призначення та конструкція оператора вибору
- •Приклад застосування оператора вибору
- •Контрольні запитання
- •Лабораторна робота № 5 “Циклічні оператори. Умовні цикли”
- •Теоретичні відомості
- •Оператор 1;
- •Цикл з післяумовою repeat… until
- •Відмінності у роботі циклів на перед- та післяумовою
- •Контрольні запитання
- •Контрольні запитання
- •Лабораторна робота № 7 “Процедури”
- •Теоретичні відомості Процедури
- •Процедура має загальний вигляд
- •Завдання
- •Контрольні запитання
- •Лабораторна робота № 8 “Функції”
- •Теоретичні відомості Функції
- •Функція має такий загальний вигляд:
- •Завдання
- •Контрольні запитання
- •Лабораторна робота № 9 “Одновимірні масиви”
- •Теоретичні відомості Поняття одновимірного масиву
- •Опис масивів
- •1 Спосіб
- •2 Спосіб
- •Операції над масивами
- •Контрольні запитання
- •Лабораторна робота № 10 “Двовимірні масиви або матриці”
- •Теоретичні відомості Способи описання матриць у Паскалі
- •Приклади використання двомірних масивів
- •Контрольні запитання
- •Лабораторна робота № 11 “Сортування в структурах даних”
- •Теоретичні відомості Поняття сортування
- •Способи сортування Сортування вставкою
- •Сортування вибором
- •Сортування обміном
- •Контрольні запитання
- •Лабораторна робота № 12 “Робота з рядками”
- •Теоретичні відомості Рядкові змінні
- •Процедури та функції для роботи з рядками
- •Завдання
- •Контрольні запитання
- •Лабораторна робота № 13 “Робота з множинами”
- •Теоретичні відомості Множини
- •Особливості роботи з множинами
- •Контрольні запитання
- •Лабораторна робота № 14 “Записи”
- •Створення масивів записів
- •Завдання
- •Контрольні запитання
- •Лабораторна робота № 15 “Робота з текстовими файлами ”
- •Теоретичні відомості Файлові змінні та операції з ними
- •Файлова змінна текстового типу зв’язується з конкретним файлом на диску процедурою Assign ( файлова змінна, ім’я фізичного файлу ).
- •Особливості роботи з файлами
- •Контрольні запитання
- •Лабораторна робота № 16 “Робота з типізованими файлами”
- •Теоретичні відомості Файлові змінні та операції з ними
- •Поцедури та функції для роботи з типізованими файлами
- •Rewrite(f) - Створює новий файл і відриває йог для запису і читання якщо файл з таким ім'ям вжі існує, його вміст стирається, а сам файл відкривається заново.
- •Прямийдоступ до вмісту файлів надають процедури і функції:
- •Особливості роботи з типізовами файлами
- •Завдання
- •Контрольні запитання
- •Лабораторна робота № 17 “Середовище Турбо-Прологу. Створення простої бази даних”
- •Приклад розв‘язання задачі на Пролозі
- •Лабораторна робота № 18 “Середовище Турбо-Прологу. Факти і правила. Трасування програм”
- •Контрольні запитання
- •Глосарій
- •Використана література
Завдання
Скласти програму з використанням процедури.
Побудувати таблицю значень функції на вказаному інтервалі із заданим кроком:
Контрольні запитання
Які дії виконує оператор процедури?
Який вигляд має структура опису процедури та функції? У чому відмінність між ними?
Що таке область дії ідентифікаторів? Як визначають область дії для ідентифікаторів процедур та функцій?
Які параметри називають формальними, а які – фактичними? За якими ознаками їх розрізняють?
Які є способи передавання параметрів?
Які змінні називають локальними? Який час життя та область дії таких змінних?
Які змінні називають глобальними? Який час життя та область дії таких змінних?
В яких розділах пам’яті зберігаються локальні змінні, а в яких – глобальні?
Як описати змінну процедурного типу?
Лабораторна робота № 8 “Функції”
Мета: сформувати знання про структурні принципи побудови програм з використанням підпрограм, уміння застосовувати функції.
Питання для вивчення
Функції.
Локалізація імен.
Порівняння процедур і функцій.
Теоретичні відомості Функції
Підпрограмою називається логічно закінчена група операторів мови, яку можна викликати для виконання по імені яку завгодно кількість разів з різних місць програми. В мові Паскаль одним із видів підпрограм і є процедури.
Приклад 8.Розглянемо задачу: обчислити мінімальну з відстаней між точками площини A(x1; y1), B(x2; y2) і C(x3;y3).
Алгоритм розв’язання цієї задачі очевидний:
1) обчислити відстані d1=AB, d2=AC, d3=BC;
2) обчислити m= min{d1, d2, d3}.
Відстань
між точками з довільними координатами
(x;
y),
(x’;
y’)
виражається формулою d=,
і для обчислення відстаней нам необхідно
тричі написати програмний варіант цієї
формули з різними наборами координат:
x1,
y1,
x2,
y2,
потім x1,
y1,
x3,y3,
потім x2,
y2,
x3,y3.
Ці вирази досить громіздкі й задають
по суті ті самі обчислення, тільки з
різними наборами значень. Все це можна
записати інакше.
Отже, у мові Паскаль є описи обчислень і є їх позначення. Опис обчислень, як правило, є параметризованим. Конкретні значення, з якими треба зробити обчислення, вказуються в позначенні обчислень разом із ім’ям цього опису й називаються аргументами. Опис обчислень деякого значення називається функцією, а їх позначення – викликомфункції.
У даному випадку параметрами будуть чотири координати двох точок. Назвемо їх a1, b1, a2, b2. Опис обчислень задається у вигляді функції, якій ми дамо ім’я dd:
function dd(a1, b1, a2, b2: real):real;
begin
dd:=sqrt( sqr(a1-a2)+sqr(b1-b2) )
end;
Цей опис є означенням імені dd, тому поміщається серед інших означень програми. Позначення цієї функції, тобто виклики її з конкретними аргументами записуються в тілі програми:
program minimdis(input, output);
var x1, y1, x2, y2, d1, d2, d3, m : real;
function dd(a1, b1, a2, b2: real):real;
begin
dd:=sqrt( sqr(a1-a2)+sqr(b1-b2) )
end;
begin
writeln(‘введітькоординатидвохточок:’);
readln(x1, y1, x2, y2);
d1:=dd(x1, y1, x2, y2);
d2:=dd(x1, y1, 1, 2);
d3:=dd(x2, y2, 1, 2);
if d1<d2 then m:=d1 else m:=d2;
if d3<m then m:=d3;
writeln(‘найменшавідстань: ‘, m)
end.
При виконанні цієї програми після читання значень змінних виконується виклик функції dd: значення змінних x1, y1, x2, y2 присвоюються відповідним параметрам a1, b1, a2, b2 як звичайним змінним і потім обчислюється значення dd. Воно і є значенням виразу dd(x1, y1, x2, y2), що присвоюється змінній d1.
Так само, тільки з іншими аргументами, виконуються другий і третій виклики функції, і інші значення присвоюються змінним d2 і d3.
Отже, ми бачимо, що мова Паскаль дозволяє не тільки користуватися викликами "стандартних" функцій, наприклад, odd або sin, але й створювати свої власні.