
- •Основи програмування та алгоритмічні мови
- •III етап. Опис алгоритму
- •V етап. Налагодження програми
- •Vі етап. Експлуатація програми
- •1. Визначення алгоритму
- •2. Властивості алгоритму
- •3. Форми запису алгоритму
- •4. Типи алгоритмів
- •1. Історія створення мови Паскаль
- •2. Структура програми
- •3. Елементи мови
- •4. Типи даних
- •5. Прості типи даних
- •6. Стандартні функції мови Паскаль
- •1. Складові інтерфейсу середовища програмування
- •2. Створення та виконання найпростішої програми
- •3. Налагодження програм
- •4. Перетворення програм
- •1. Процедури введенні-виведення
- •2. Процедури управління розташуванням інформації на екрані
- •3. Процедури роботи з кольором
- •4. Програми лінійної структури
- •1. Види циклів
- •5. Вкладені цикли
- •6. Пряма передача управління в операторах циклу
- •1. Поняття масиву
- •2. Опис масивів
- •3. Введення - виведення елементів масиву
- •4. Операції над масивами
- •1. Пошук мінімального (максимального) елемента у масиві
- •2. Бінарний пошук
- •3. Алгоритми упорядкування масивів
- •3.1. Упорядкування вставлянням
- •3.2. Упорядкування вибором
- •3.3. Упорядкування обміном
- •1. Поняття підпрограми. Типи підпрограм
- •2. Процедури
- •3. Формальні і фактичні параметри. Глобальні та локальні змінні
- •4. Функції
- •1. Рекурсія
- •2. Випереджальне оголошення підпрограм
- •3. Інші директиви компілятору
- •1. Стандартні модулі
- •2. Модулі користувача
- •Implementation
- •1. Загальні принципи роботи з файлами
- •2. Текстові файли
- •3. Типізовані (двійкові) файли
- •4. Нетипізовані файли
- •5. Фізична модель операцій читання та запису інформації у текстовий файл
- •6. Директиви компілятору при роботі з файлами
- •8. Розв’язування задач з використанням файлів
- •1. Перелічуваний тип
- •2. Обмежений тип
- •1. Запис та його оголошення
- •2. Доступ до компонентів та операції над записами
- •3. Записи з варіантами
- •4. Вкладеність записів
- •1. Встановлення (ініціалізація) графічного режиму
- •2. Кроки створення графічних об'єктів
- •3. Стандартні прoцедури і функції модуля Graph для работи з кольорами
- •4. Прoцедури і функції для работи з пікселями
- •5. Процедури для роботи з колом, дугами
- •6. Процедури для роботи з прямокутниками
- •7. Процедури для роботи з графічними примітивами типу "лінія".
- •8. Методи створення рухомих графічних об'єктів засобами мови Паскаль
- •9. Особливості виведення текстових повідомлень в графічному режимі
1. Запис та його оголошення
Запис — це структурований тип даних, що являє собою об'єднання фіксованої кількості змінних одного або декількох типів. Змінні, що входять до складу запису, називаються його полями.
Можливість інтегрування в один запис різнотипних компонентів становить головну відмінність запису від масиву. На відміну від терміна «масив», терміном «запис» позначається саме тип даних, а дані цього типу називаються екземплярами записів. Таке застосування термінології пояснюється тим, що для типу запису, як правило, оголошується окремий ідентифікатор, а тип масиву найчастіше оголошується неявно, разом із оголошенням змінної масиву.
Оголошення записів як типів даних здійснюють в розділі type Pascal-програми. Після цього їх можна використовувати для оголошення змінних типу запису - це робиться в розділі оголошення змінних var. Оголошення запису та змінної типу запису має такий вигляд:
type <ім'я типу> = record <ім'я поля1>:<тип>; .................. <ім'я поляN>:<тип>; end; var <ім'я змінної>:<ім'я типу>;
Оголошення типу розпочинається ключовим словом record і завершується словом end. Між цими словами міститься список оголошень полів. Кожне поле оголошується як ідентифікатор змінної певного типу. Ім'я поля має бути унікальним в межах запису. Наведемо приклади оголошень записів і змінних відповідних типів.
2. Доступ до компонентів та операції над записами
Імена полів різних записів можуть збігатися. Тому звернення до компонентів записів здійснюється через складене ім'я, що має такий синтаксис:
<ім'я змінної типу запису>.<ім'я компонента>
Крапку, що записується між іменем запису та іменем компонента, інколи називають символом оператора доступу. Якщо екземпляр деякого запису є полем іншого запису, то складені імена полів такого екземпляра міститимуть декілька символів оператора доступу. Складність доступу до компонентів записів може бути зменшена, якщо використати конструкцію with, яку ще називають оператором приєднання. Синтаксис конструкції with такий:
with <список змінних типу запис> do begin <оператори> end;
В операторах всередині конструкції with замість імен змінних типу запис вказуються лише імена полів. Дія однієї конструкції with розповсюджується на вміст лише одного складеного оператора і лише на ті записи, імена яких були вказані у списку змінних типу запис.
Над компонентами записів можна здійснювати будь-які операції, що є допустимими для типів цих компонентів. Для екземплярів запису як цілісних об'єктів означена тільки одна операція — присвоєння. Слід пам'ятати, що присвоєння значення змінній деякого типу запису призведе до присвоєнь значень всім полям цієї змінної. Присвоєння значень змінних типу запису іншим змінним можливе тільки за умови їх однорідності, тобто змінні, що беруть участь у присвоєнні, повинні мати однаковий склад компонентів та їх типів. Наприклад, для оголошених нижче змінних Z1 та Z2 присвоєння є коректним.
var Z1,Z2:record str:string; number:real; end; begin Z1:=Z2; end.