- •21)Рекурсія. Рекурсивні означення та підпрограми.
- •22)Типи файлів і оголошення файлових змінних
- •23)Процедурні типи
- •24)Відкриття та закриття файлів
- •25)Підпрограма-функція. Стандартні процедури та функції.
- •26)Послідовний запис і зчитування компонентів файла.
- •27)Формальні та фактичні параметри. Параметри-значення, параметри-змінні.
- •Прямий доступ до компонентів файла.
- •29)Поняття про процедуру з параметрами та без параметрів. Локальні та глобальні змінні.
- •30)Буферизація даних. Нетипізовані файли.
- •31)Переривання циклу. Створення циклу на основі вказівки безумовного переходу.
- •32)Поняття про запис. Доступ до компонентів та операції над записам.
- •33)Масив записів. Записи з варіантами.
- •34)Цикл з передумовою та післяумовою. Вкладені цикли.
- •35)Множини та множинний тип даних. Оголошення змінних множинного типу. Зображення множин в оперативній пам'яті.
- •36)Оператори циклів. Цикл з лічильником (з параметром).
- •37)Операції над множинами.
- •38)Оперативний блок. Поліваріантний вибір (Вказівка варіанту). Вказівка безумовного переходу.
- •Поняття про рядок. Функції та процедури обробки рядків.
- •40)Вибір з двох альтернатив (Вказівка розгалуження). Вкладеність конструкцій розгалуження. Логічні операції.
- •41) Загальні відомості про сортування. Сортування методом вибору.
- •42)Вказівки присвоєння, введення та виведення. Форматоване виведення. Арифметичні вирази та стандартні функції.
- •43)Загальні відомості про сортування. Сортування методом вставки.
- •44)Константа. Типізована константа. Змінна. Вирази
- •45)Загальні відомості про сортування. Сортування методом обміну.
- •46)Прості типи даних.
- •47)Загальні відомості про сортування. Швидке сортування.
- •48)Структура та розділи програми на мові Паскаль.
- •49)Загальні відомості про сортування. Сортування методом злиття.
- •50)Походження та розвиток мови Паскаль. Алфавіт та словник мови.
- •51)Класифікація мов програмування. Перетворення програм і система програмування. Мови програмування
- •53)Одновимірні масиви: поняття, його властивості, оголошення, ініціалізація, введення та виведення масиву.
- •54) Відкриті масиви
- •55)Побудова математичної моделі. Основні алгоритмічні структури.
- •Основні властивості масивів, притаманні як одновимірним, так і багатовимірним масивам:
- •Базовими операціями є:
- •Ініціалізація масиву:
- •57) Основні операції обробки одновимірних масивів: вставка та видалення елемента масиву, циклічний зсув елементів масиву.
- •58)Поняття алгоритму, властивості, способи опису.
- •59)Багатовимірні масиви: оголошення, доступ до елементів.
- •Оголошення багатовимірних масивів. Доступ до елементів
- •Можна і так:
- •60) Базові операції обробки двовимірних масивів
26)Послідовний запис і зчитування компонентів файла.
9.2.5. Послідовний запис і зчитування компонентів бінарних файлів |
Нагадаємо, що в мові Pascal визначено два різновиди бінарних файлів: типізовані і нетипізовані файли. Типізований файл є послідовністю однотипних компонентів. Нетипізований файл можна відкрити лише як файл компонентів однакового розміру, тобто як файл однотипних компонентів. Тому надалі, в розділах 9.2.5 і 9.2.6, типізовані і нетипізовані бінарні файли не розрізнятимемо. Компоненти бінарного файла нумеруються, але їх кількість не є наперед відомою, як у масивах. Між компонентами не записуються жодні роздільники. Такого поняття, як рядок, а отже, і маркер кінця рядка, для бінарних файлів не означено.Зчитування з бінарних файлів здійснюється лише процедурою Read, а запис -лише процедурою Write. Застосування до бінарних файлів процедур Readln або Writeln є неприпустимим, оскільки для таких файлів не означено поняття рядка. Синтаксис виклику процедур зчитування і запису у бінарні файли є таким:Read(<файлова змінна>;<список введення>); Write(<файлова змінна>;<список виведення>);Тут <список введення> і <список виведення> — це перелік змінних того самого типу, що й тип компонентів файла.
УВАГАЗапис констант до бінарного файла є неприпустимим. Наприклад, для того щоб до файла записати значення 1, потрібно це значення присвоїти змінній, ім'я якої вказане у списку виведення процедури Write.
Зазначимо, що один і той самий фізичний файл може бути зіставлений із різнотипними логічними бінарними файлами. Тому можна зчитувати значення компонентів того самого файла у змінні різного типу. Як використовується така технологія продемонстровано у прикладі 9.8.
27)Формальні та фактичні параметри. Параметри-значення, параметри-змінні.
Формальні та фактичні параметри
Параметри, що вказуються при описі підпрограми, називаються формальними, а параметри, які вказуються при виклику підпрограми, - фактичними. Список фактичних параметрів підпрограми повинен збігатися за кількістю і типами зі списком формальних параметрів. Список формальних параметрів необов'язковий і може бути відсутнім (у цьому випадку будуть відсутні і фактичні параметри). При описі і виклику підпрограми без параметрів круглі дужки не вказуються. Наступні поспіль однотипні параметри можна об'єднувати в підлеглі списки. Іншими словами, можна вказувати їх через кому, а за останнім параметром - їх тип. Параметри підпрограми можуть бути значеннями, змінними, константами.
Параметри-значення, параметри-змінні.
Параметри-значення та параметри-змінні
Якщо в описі функції ми вказуємо тип її результату, то описуючи процедуру, ми не виконуємо цих дій. Тому треба розглянути, як ми отримуємо значення під час виконання процедур і скільки таких значень узагалі можна отримати. Для цього треба детальніше розглянути, як відбувається передача значень фактичних параметрів відповідним формальним під час виклику підпрограм.
У списку формальних параметрів підпрограм можливі три способи їх описання :
Параметри, перед якими відсутнє службове слово var і за якими вказано їх тип (такі параметри називають параметрами-значеннями, а передача цих параметрів відбувається за значенням).
Параметри, перед якими записано службове слово var і за якими вказано їх тип (такі параметри називають параметрами-змінними, а передача цих параметрів відбувається за посиланням).
Параметри, перед якими записано службове слово var, однак за ними не вказано їх тип (передача нетипізованих параметрів за посиланням).
