- •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.
- •Література
5.3. Контрольні запитання з теми
Як описати змінну рядкового типу ?
Яка максимально можлива довжина рядка символів і чому ?
Як резервується пам'ять під змінну рядкового типу ?
Чим відрізняється символьний тип даних від рядкового ?
У чому відмінність рядка символів від масиву символів?
Чим відрізняється загальна довжина рядка символів від біжучої довжини ?
Які операції допустимі над рядковими даними?
Перерахуйте основні процедури та функції для роботи з рядками символів.
Напишіть приклад використання процедури copy.
Напишіть приклад використання функції pos.
Напишіть приклад використання процедури insert.
Напишіть приклад використання процедури delete.
Лабораторна робота № 6
Тема:
Структуровані типи даних.
Мета:
Навчитись складати програми з використанням операцій над множинами.
6.1. Теоретичні відомості
6.1.1. Операції з даними перелічувального типу
Перелічувальний тип задається програмістом шляхом перелічення за порядком всієї множини його значень. Всі ці значення новоствореного типу подаються їх іменами (ідентифікаторами), які є константами типу. Перелiчувальний тип задається виразом:
Type <Iм'я типу> = (Список констант iдентифiкаторiв);
Перелічувальний тип впорядковує набір своїх констант в порядку їх зростання, тому до цих велечин можна застосувати операції відношення =, <, >, якщо обидва компоненти належать до одного типу. Результатом такого відношення є логічна величина Тrue, якщо відношення справджується, тa False, якщо відношення не справджується.
Для аргументів перелічувального типу можливе застосування стандартних функцій знаходження попереднього та наступного елементів. При цьому вірні співвідношення:
Рred (Vi)=Vi-1, i=2,3,...,N; Succ (Vi)=Vi+1, i=1,2,...,N-1,
де Vi – i-й елемент списку констант перелічувального типу.
Функція Оrd для аргумента перелічувального типу видає число, що є порядковим номером даного аргумента. При цьому порядковий номер першого елемента дорівнює 0, тобто існують співвідношення:
Оrd(V1)=0; Оrd(Vi)=Оrd(Рred(Vi))+1; i=2,3,...,n.
Характерною особливістю даних перелiчувального типу в мові PASCAL є те, що вони не можуть беcпосередньо вводитися з клавiатури в програму та виводитися на дисплей. Для цього використовуються спецiальнi прийоми з використанням оператора CASE, як видно на прикладі реалізації виведення змінної типу Season:
Var Season : (Winter, Spring, Summer, Autumn);
Begin
. . . . . . . . . . . . . . . .
Case Season of
Winter : Writeln( "Winter");
Spring : Writeln("Spring");
Summer : Writeln("Summer");
Autumn : Writeln("Autumn")
end;
Введення даних перелічувального типу з клавіатури комп'ютера здійсню-ється за допомогою спеціальним чином організованих меню.
Приклад:
Дано
Type Course = (Nord,Ost,Suid,West);
Command = (Forwar, Left, Right, Back);
Корабель йшов спочатку курсом C1, а потім курс було змінено згідно наказу Rule. Визначити C2 – новий курс корабля.
Program Ship;
Var H, L: Byte;
Course : (Nord, Ost, Suid, West);
Rule : (Forwar, Left, Right, Back);
Begin
Write('Задайте курс: Північ=1 Схід=2 Південь=3 Захід=4 ');
Readln(L);
Write('Введiть команду: Назад=1 Вліво=2 Вправо=3 Вперед=4 ');
Readln(H);
Case L of
1 : Course:=Nord;
2 : Course:=Ost;
3 : Course:=Suid;
4 : Course:=West
end;
Case H of
1 : Rule:=Back;
2 : Rule:=Left;
3 : Rule:=Right;
4 : Rule:=Forwar
end;
Case Course of
Nord : Case Rule of
Back : Course:=Suid;
Left : Course:=West;
Right : Course:=Ost;
Forwar: Course:=Nord
end;
Ost : Case Rule of
Back : Course:=West;
Left : Course:=Nord;
Right : Course:=Suid;
Forwar: Course:=Ost
end;
Suid : Case Rule of
Back : Course:=Nord;
Left : Course:=Ost;
Right : Course:=West;
Forwar: Course:=Suid
end;
West : Case Rule of
Back : Course:=Ost;
Left : Course:=Suid;
Right : Course:=Nord;
Forwar: Course:=West
end;
end;
Case Course of
Ost : Writeln('Kорабель змiнив курс на Схід');
Suid : Writeln('Kорабель змiнив курс на Південь');
Nord : Writeln('Kорабель змiнив курс на Північ');
West : Writeln('Kорабель змiнив курс на Захід')
end;
END.
