- •1. Основні поняття Object Pascal
- •Label { Розділ опису міток } Const { Розділ опису констант }
- •Дійсні дані зображуються в експоненціальній формі
- •Введення і виведення даних. Для введення і виведення даних використовуються процедури
- •Лабораторна робота № 1 Лінійні програми з розгалуженнями
- •2. Оператори повторень
- •Оператор for з зарезервованим словом to виконується за алгоритмом:
- •Завершення виконання оператора for.
- •Лабораторна робота № 2 Циклічні програми. Обчислення з заданою точністю
- •3. Структуровані типи даних. Масиви
- •Лабораторна робота № 3 Алгоритми обробки масивів
- •4. Алгоритми обробки багатовимірних масивів
- •Лабораторна робота № 4 Алгоритми обробки багатовимірних масивів
- •5. Упорядкування і пошук даних
- •Лабораторна робота № 5 Упорядкування і пошук даних
- •6. Структуровані типи даних. Множини
- •Лабораторна робота № 6 Множини
- •7. Символьні рядки
- •Лабораторна робота № 7 Символьні рядки
- •8. Процедури і функції
- •Лабораторна робота № 8 Процедури і функції
- •9. Процедури і функції. Процедурні типи
- •Лабораторна робота № 9 Процедурні типи
- •Теоретичні відомості для виконання лабораторної роботи
- •1. Формула середніх прямокутників
- •2. Формула трапецій
- •3. Формула Сімпсона (формула парабол)
- •Розв’язування рівнянь. Розв’язування рівнянь виду
- •10. Рекурсивні процедури і функції Рекурсія – це такий спосіб організації обчислювального процесу, при якому підпрограма під час виконання звертається сама до себе.
- •Лабораторна робота № 10 Рекурсивні процедури і функції
- •11. Динамічні структури даних
- •Дані, які використовуються у програмі, поділяються на статичні й динамічні.
- •Вказівник може бути у трьох станах:
- •Вказівники
- •Лабораторна робота № 11 Динамічні структури даних
- •12. Файли
- •Лабораторна робота № 12 Текстові файли
- •Додаток Процедури і функції Object Pascal
- •Література
- •Практикум
- •58012, Чернівці, вул. Коцюбинського, 2
Міністерство освіти і науки України
Чернівецький національний університет
імені Юрія Федьковича
ПРОГРАМУВАННЯ
(ІНФОРМАТИКА)
ПРАКТИКУМ
Чернівці
ЧНУ
2001
ББК 32.973.2-018
П-784
УДК 681.3.06
Друкується за ухвалою редакційно-видавничої ради
Чернівецького національного університету
імені Юрія Федьковича
П-784 Програмування (інформатика). Практикум
/ Укл.: Семенюк А. Д., Сопронюк Ф.О. – Чернівці: Рута, 2001. – 145 с.
Практикум охоплює основні теми дисципліни “Програмування (інформатика)”. Він спрямований на поглиблене вивчення основ інформатики та візуального проектування програмних засобів студентами спеціальностей “Інформатика”, “Соціальна інформатика”, ”Прикладна математика”, “Трудове навчання та основи інформатики” денної і заочної форм навчання.
ББК 32.973.2-018
УДК 681.3.06
Вступ
Структура та зміст практикуму відповідають вимогам “Освітньо-професійної програми вищої освіти України”. До його складу увійшли основні теми основ інформатики і мови програмування Object Pascal візуального проектування програмних засобів у середовищі Delphi:
Основні поняття Object Pascal. Структура програми.
Оператори мови Object Pascal. Оператори циклів.
Алгоритми обчислення з заданою точністю.
Структуровані типи даних. Масиви.
Алгоритми обробки масивів.
Алгоритми обробки багатовимірних масивів.
Упорядкування і пошук даних.
Множини.
Символьні дані. Алгоритми роботи з текстами.
Записи.
Процедури і функції. Процедурні типи.
Рекурсивні процедури і функції.
Динамічні структури даних.
Файли.
До кожної теми наведені теоретичні відомості, завдання для лабораторних робіт та методичні вказівки і приклади їх виконання.
Лабораторні роботи виконуються на комп’ютері. Звіт про виконання лабораторної роботи повинен містити постановку задачі, опис алгоритму її розв’язування, текст програми, тестові приклади, результати розрахунків та висновки.
1. Основні поняття Object Pascal
Структура програми. В основі будь-якої Delphi-програми лежить проект. Основою проекту, свою чергу, є форма, на якій розміщуються необхідні для розв’язання конкретної задачі компоненти. Проект складається з різних частин, кожна з яких розміщена в окремому файлі й виконує чітко визначені функції. Набір файлів, необхідних для створення програми, називається проектом. Компілятор послідовно обробляє файли проекту і будує з них EXE-програму, що виконується. Проект складається з таких файлів:
Головний файл проекту – текстовий файл з розширенням DPR, який містить головний програмний блок. Файл проекту підключає всі програмні модулі і містить методи для запуску програми. Цей файл створює і контролює автоматично середовище Delphi.
Файли опису форм – двійкові файли з розширенням DFM, які описують форми з компонентами. В цих файлах запам’ятовуються початкові значення властивостей, встановлених в Інспекторі Об’єктів.
Файли програмних модулів – текстові файли з розширенням PAS, які містять код мовою Оbject Pascal. У цих файлах містяться методи обробки подій, які генеруються компонентами і формами.
Файл ресурсів з розширенням RES. У ньому, наприклад, зберігається піктограма програми, яку видно на Панелі Задач Windows.
Об’єктні файли з розширенням OBJ, написані іншими мовами програмування.
Файл опцій з розширенням DOF, де розміщені задані програмістом параметри компіляції і компонування проекту.
Файл з розширенням DSK, де розміщені параметри візуального середовища для даного проекту.
У проект можуть входити також логічно автономні елементи: малюнки (BMP-файли), піктограми (ICO-файли), файли довідників (HLP-файли) і т. і., але ними керує сам програміст.
Схема формування Delphi-програми від постановки задачі до отримання готового до виконання файла подана на Рис.1.1.
Специ-фікація
EXE
–програма
Файли: проекту,
форм, модулів, ресурсів, об’єктні,
опцій, параметри і т. і.
Рис. 1.1. Схема формування Delphi-програми
Найпростіша структура програми в консольному режимі роботи має вигляд:
Program <ім’я>; { Заголовок програми }
{$APPTYPE CONSOLE} {Консольний режим}
Uses { Підключення модулів}
Label { Розділ опису міток } Const { Розділ опису констант }
Type { Розділ опису типів }
Var { Розділ опису змінних }
{ Розділ опису процедур і функцій }
{ Розділ операторів }
Консольний режим роботи встановлюється директивою {$APPTYPE CONSOLE}. Текст програми розміщується у головному файлі проекту.
Типи даних. Будь-які дані – сталі, змінні, властивості, значення функцій або виразів в Object Pascal характеризуються своїми типами. Тип визначає множину допустимих значень, яких може набувати об’єкт, а також множину операцій, які застосовні до нього. Крім того, тип визначає формат внутрішнього подання даних у пам’яті комп’ютера.
Object Pascal характеризуються розгалуженою структурою типів даних, до яких належать:
прості – порядкові (цілі, логічні, символьні, перераховувані, діапазон), дійсні, дата-час;
структуровані (масиви, записи, множини, файли);
символьні рядки;
процедурні;
вказівники;
варіанти;
класи;
об’єкти.
У мові Object Pascal передбачений механізм створення, на основі перерахованих нижче базових типів, нових типів даних. Завдяки цьому механізму загальна кількість типів, які використовуються у програмі, може бути досить великою.
Прості типи даних. До них належать порядкові, дійсні типи і тип дата-час. До порядкових відносяться: цілі, логічні, символьні, перераховувані та діапазонні дані.
Цілі дані подаються цілими числами зі знаком і без знаку. В залежності від діапазону значень цілі дані без знаку можуть бути таких типів: Byte (1 байт), Word (2 байти), LongWord (4 байти), Cardinal (4 байти). Цілі дані зі знаком: ShortInt (1 байт), SmallInt (2 байти), Integer (4 байти), LongInt (4 байти), Int64 (8 байтів).
Логічні дані набувають двох значень: true (істинно), false (хибно) і можуть бути таких типів: Boolean (1 байт); ByteBool (1 байт); Bool (2 байти); WordBool (2 байти); LongBool (4 байти).
Символьні дані можуть бути типу Char (однобайтові символи коду ASCII) і типу WideChar (двобайтові символи коду Unicode).
Перераховуваний тип. Задається перерахуванням у круглих дужках всіх значень, яких він може набувати.
Тип-діапазон. Тип-діапазон є підмножиною свого базового типу, яким може бути будь-який порядковий тип, крім типу-діапазон. Тип-діапазон задається межами своїх значень
<мінімальне значення > .. <максимальне значення >.
Тип-діапазон успадковує всі властивості свого базового типу.