- •Методичні рекомендації до виконання лабораторних робіт
- •Для спеціальностей
- •Лабораторна робота № 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 Створення графічних зображень
- •Теоретичний матеріал
- •Завдання
- •Список літератури
Лабораторна робота № 13 Модульна організація програм
Мета: навчитись створювати модулі і використовувати їх при розробці програмних проектів.
Теоретичний матеріал
Структура модуля
Повна форма
unit ; {заголовок модуля}
interface {опис інтерфейсу}
uses …{список модулів}
label …{оголошення загальнодоступних міток}
const …{ оголошення загальнодоступних констант}
type …{ оголошення загальнодоступних типів}
var …{ оголошення загальнодоступних змінних}
procedure …{заголовки загальнодоступних процедур}
function …{ заголовки загальнодоступних функцій}
implementation {початок виконуваної (інтерфейсної) частини}
uses …{модулі, що використовуються при реалізації}
label …{оголошення прихованих глобальних міток}
const …{ оголошення прихованих глобальних констант}
type …{ оголошення прихованих глобальних типів}
var …{ оголошення прихованих глобальних змінних}
procedure …{заголовки і вміст загальнодоступних і прихованих процедур}
function …{ заголовки і вміст загальнодоступних і прихованих функцій}
begin{початок ініціалізації}
…{тут можуть бути будь-які оператори }
end. {кінець модуля}
скорочена форма
unit ; {заголовок модуля}
interface {інтерфейс на частина}
<розділ описів>
implementation {реалізаційна частина}
<тексти підпрограм користувача>
begin
{блок ініціалізації}
end.
Ім'я модуля повинне співпадати з іменем того файлу, в якому знаходиться вихідний текст модуля.
У блоці ініціалізації у разі потреби задають початкові дані, відкривають файли, чистять екран тощо. Цей блок виконується першим. Якщо блок ініціалізації не потрібен, то службове слово begin опускають.
Всі допоміжні програмні елементи, оголошені в інтерфейсній частині, називаються прихованими, так як вони доступні для використання тільки в даному модулі і не видимі для програми, яка використовує модуль.
Щоб оформити підпрограму як модуль в меню Compile необхідно в пункті Destination встановить значення Disk (замість Memory) компілювати модуль за допомогою команди Compile/Build. Після успішної компіляції на диску отримаємо файл з тим же іменем, але розширенням .tpu.
Для того, щоб створити для заданого pas-файлу ехе-файл необхідно виконати команду: Compile Destination Disklt+F9.
Завдання
1. Створити модуль, опис об’єктів якого вибрати за варіантом вказаним викладачем. Написати програму для демонстрації всіх підпрограм розробленого модуля.
Варіант 1. Робота з матрицями
Const MaxR, MaxC – максимальна кількість рядків та стовпчиків. TElement – тип елементів матриці.
Тип матриці: TMatr = array[1..MaxR, 1..MaxC] of TElement;
1) procedure MatrixRead(var A : TMatr);
Ввести розмірність матриці та її елементи з клавіатури.
2) procedure MatrixWrite(var A : TMatr);
Вивести елементи матриці у звичайній формі.
3) function IsMatrixK(A: TMatr): Boolean;
Повернути значення True, якщо матриця квадратна.
4) procedure MatrixMultK(var A: TMatr; K: TElement);
Обчислити добуток матриці А на число К.
Варіант 2. Арифметичні дії з цілими числами, які не визначаються типом Longint
Const MaxCountDigit – найбільша кількість цифр чисел.
TCountDigit=0..MaxCountDigit – тип кількості цифр.
Тип числа:
TDigit = 0..9
TNumber= array[1..MaxCountDigit] of TDigit;
1) Procedure NumberRead(var A: TNumber);
Ввести число з клавіатури.
2) Function GetDigit(A: TNumber): TCountDigit;
Визначити кількість цифр числа.
3) Procedure NumberPlus(A,B: TNumber; var R: TNumber);
Обчислити суму чисел А, В.
4) Procedure NumberStep(A: TNumber; N: integer; var R: TNumber);
Піднести число А до степеня N.