- •2.1. Теоретичні відомості 20
- •Передмова
- •Лабораторна робота № 1
- •1.1. Теоретичні відомості
- •1.1.1. Система вiкон середовища
- •1.1.1.1. Вікна редагування
- •1.1.1.2. Вікна діалогу
- •1.1.1.3. Інформаційні вікна
- •1.1.1.4. Вікна меню
- •1.1.1.5. Робота з меню
- •1.1.1.5.1. Меню роботи з файлами (File)
- •1.1.1.5.2. Меню редагування (Edit)
- •1.1.1.5.3. Меню пошуку інформації (Search)
- •1.1.1.5.4. Меню виконання програми (Run)
- •1.1.1.5.5. Меню компіляції (Compile)
- •1.1.1.5.6. Меню відлагодження (Debug)
- •1.1.1.5.7. Меню вiкон (Window).
- •1.1.1.5.8. Меню інформаційної допомоги (Help)
- •1.1.1.5.9. Локальне меню.
- •1.1.2. Основні прийоми роботи в середовищі
- •1.2. Завдання
- •1.3. Контрольні запитання з теми
- •Лабораторна робота № 2
- •2.1. Теоретичні відомості
- •2.1.1. Загальна структура Pascal-програми
- •2.1.1.1. Заголовок програми
- •2.1.1.2. Описова частина Pascal-програми
- •2.1.1.2.1. Розділ позначок (міток)
- •2.1.1.2.2. Розділ констант
- •2.1.1.2.3. Розділ типів
- •2.1.1.2.3.1. Цілочисельний тип
- •2.1.1.2.3.2. Дійсний тип
- •2.1.1.2.4. Розділ опису змінних
- •2.1.2. Арифметичнi вирази та операцiї
- •2.1.2.1. Арифметичні функції
- •2.1.2.2. Скалярні функції
- •2.1.2.3. Арифметичні операції мови Pascal
- •2.1.2.4. Правила запису арифметичного виразу
- •2.1.3. Простi оператори
- •2.1.3.1. Оператор присвоєння
- •2.1.3.2. Пустий оператор
- •2.1.4. Введення та виведення в Pascal
- •2.1.4.1. Процедури введення
- •2.1.4.2. Процедури виведення
- •2.4.3. Формати оператора виведення
- •2.2. Завдання
- •2.3. Контрольні запитання з теми
- •3.1.3. Перелічувальний тип
- •3.1.4. Вирази та операцiї вiдношення
- •3.1.5. Логiчнi вирази та операції
- •3.1.6. Структуровані оператори
- •3.1.6.1. Складений оператор
- •3.1.6.2. Умовні оператори
- •3.2. Завдання
- •3.3. Контрольні запитання з теми
- •Лабораторна робота № 4
- •4.1. Теоретичні відомості
- •4.1.1. Iнтервальний тип
- •4.1.2. Масив (регулярний тип)
- •4.1.3. Оператори повтору
- •4.1.4. Використання стандартний процедур Break і Continue в операторах циклів repeat, while та for
- •4.2. Завдання
- •4.3. Контрольні запитання з теми
- •Лабораторна робота № 5
- •5.1. Теоретичні відомості
- •5.1.1. Стрінговий тип (тип літерний рядок)
- •5.1.2. Стрінгові вирази
- •5.2. Завдання
- •5.3. Контрольні запитання з теми
- •Лабораторна робота № 6
- •6.1. Теоретичні відомості
- •6.1.1. Операції з даними перелічувального типу
- •6.1.2. Завдання
- •6.2.1. Множини
- •6.2.1.1. Операції з множинами
- •6.2.2. Завдання
- •6.2. Контрольні запитання з теми
- •Лабораторна робота № 7
- •7.1. Теоретичні відомості
- •7.1.1. Записи з варiантами
- •7.2. Завдання
- •7.3. Контрольні запитання з теми
- •Лабораторна робота № 8
- •8.1. Теоретичні відомості
- •8.1.1. Ініціалізація графічного режиму
- •8.1.2. Системи координат
- •8.1.3. Вибір кольорів в графічному режимі
- •8.1.4. Завдання стилів ліній та заливки контурів
- •8.1.5. Виведення тексту в графічному режимі
- •8.1. 6. Процедури для рисування фігур
- •8.2. Завдання
- •8.3. Контрольні запитання з теми
- •Лабораторна робота № 9
- •9.1. Теоретичні відомості
- •9.1.1. Процедури користувача
- •9.1.2. Функцii користувача
- •9.1.3. Параметри
- •9.1.4. Рекурсивні підпрограми
- •9.1.5. Область дії ідентифікаторів
- •9.2. Завдання
- •9.3. Контрольні запитання з теми
- •Лабораторна робота № 10
- •10.1. Теоретичні відомості
- •10.1.1. Стандартні процедури для текстових файлів
- •10.1.2. Функції для роботи з текстовими файлами
- •10.1.3. Приклад обробки інформації в текстових файлах
- •10.2. Завдання
- •10.3. Контрольні запитання з теми
- •Лабораторна робота № 11
- •11.1. Теоретичні відомості
- •11.1.1. Стандартні процедури обробки файлів з типом
- •11.1.2. Стандартні функції обробки файлів з типом
- •11.1.3. Приклад обробки інформації в файлах з типом
- •11.2. Завдання
- •11.3. Контрольні запитання з теми
- •Додаток 1 Повідомлення про помилки Повідомлення про помилки періоду компіляції
- •Повідомлення про помилки, що виникають під час виконання програми
- •Помилки, що виявляються dos
- •Помилки введення - виведення
- •Критичні помилки
- •Фатальні помилки
- •Додаток 2 Методичні вказівки до виконання лабораторних робіт та написання звітів
- •Додаток 3 Зразок виконання звіту до лабораторної роботи Лабораторна робота № 7.
- •Література
6.2.2. Завдання
- виконати операції над заданими множинами a i b:
6.2. Контрольні запитання з теми
Що розуміють під множиною у мові Turbo Pascal ? Наведіть приклад множини.
Як описати множинний тип ? Наведіть приклад.
Які типи даних використовуються в якості базових при побудові множинних типів.
Що таке діапазон значень множинного типу? Наведіть приклад.
Які дії можна виконувати над множинами? Результатом яких дій буде множина?
Які логічні операції" визначені над множинами?
Визначте операцію перевірки на належність множині. Наведіть приклад.
Визначте операцію перерізу множин. Наведіть приклад.
Оголосіть нетиповану константу множинного типу.
Оголосіть типовану константу множинного типу.
Лабораторна робота № 7
Тема:
Записи
Мета:
Використовувати стуктурований тип запису
7.1. Теоретичні відомості
В мові Pascal для подання сукупності даних різних типів використовується стуктурований тип запису. Запис (тип RECORD) – це структура даних, що складається з фіксованого числа компонентів, які називаються полями. При цьому поля можуть бути різних типів.
Записи зручно використовувати тоді, коли необхідно об'єднати різні дані, які належать до одного об'єкта. Наприклад, інформація про книгу в бібліотеці може бути подана у формі запису, який містить такі дані:
Шифр
Автор
Назва
Видавництво
Рік видання
Анотація
Ціна
Таким чином записи, як і масиви, використовуються для опису впорядкованої сукупності величин. Проте є певні відмінності:
Компоненти масиву повинні бути одного типу, а компоненти запису можуть мати різні типи.
При виборі елемента масиву використовують індекси, а в записах кожному компоненту присвоюється власне ім'я, яке використовується при виборі.
Означення запису в Pascal:
Type <ім'я типу> = RECORD
< ім'я m1 >[,< ім'я n1 >,...] : < тип 1 >;
< ім'я m2 >[,< ім'я n2 >,...] : < тип 2 >;
. . . . . . . . . . . . . . . . .
< ім'я mk >[,< ім'я nk >,...] : < тип k >
END;
тут mj, nj (j=1, 2 ,..., k) – імена полів, які є окремими компонентами запису.
Приклади:
Type Complex = Recod
re : Real;
іm : Real
end;
Type Book = Record
Shіfr : Real;
Autor : Strіng[10];
Nazv : String[30];
Vydaw : String[20];
Year : Integer;
Anot : String[225];
Prise : Real;
end;
Type Plan = Record
a1,a2,a3 : Complex;
x1,x2,x3 : Integer;
y : Real;
end;
Для звертання до компонентів (полів) запису треба вказати ім'я змінної-запису, поставити крапку, а після неї – ім’я поля.
Приклад:
Var Book1: Book;
Book1.Avtor:='Петриченко';
Book1.Year:=1991;
a:=Book1.Shifr;
В операторах присвоєння можна використовувати не тільки імена полів, але й імена записів. Так, для двох записів Book1 та Book2, які відносяться до одного типу Book, можна записати оператор присвоювання Book1:=Book2;
В мові Pascal можна використовувати тип запис при формуванні інших складних типів даних. Так, можна побудувати масив, елементами якого є записи, наприклад: Type BIBL = array[1..1000] of Book; Тут елементи масиву BIBL мають тип Book.
Звертання до полів запису має дещо громіздкий вид. При звертанні до полів можна використовувати спеціальний оператор WITH, що має формат:
WITH <змінна типу запису> DO <оператор>;
Один раз вказавши змінну типу запис в операторі WITH, можна працювати з іменами полів, як із звичайними змінними, тобто без вказання перед індентифікатором імені змінної, що визначає запис.
Приклад:
Var Book1 : Book;
. . . . . . . . .
Wіth Book1 do
begіn
Shіfr:=123.7;
Avtor:=Пастух_Р.;
Nazv:=Вулицями_Дрогобича;
Vydaw:=Відродження;
Year:=1992;
Prise:=2000
end;
Pascal допускає вкладення записів один в другий (тобто поле в записі в свою чергу може бути записом), відповідно оператор With також може бути вкладеним:
With RV1 do
With RV2 do
With RV3 do
Рівень вкладення не повинен перевищувати 9.
