
- •Базовий курс програмування у середовищі Turbo Pascal Методичні вказівки
- •Базовий курс програмування у середовищі Turbo Pascal Методичні вказівки
- •Практична робота №1
- •Організація вводу та виводу даних
- •Мета роботи: ознайомитись з конструкціями мови Turbo Pascal, структурою програм, стандартними типами даних і процедурами вводу та виводу.
- •Теоретичні відомості
- •1 Особливості мови Turbo Pascal
- •1.1 Спеціальні символи
- •1.2 Зарезервовані (ключові) слова
- •1.3 Ідентифікатори
- •1.5 Числа
- •1.6Рядки
- •1.7 Коментарі
- •2 Структура програми
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №2
- •Логічні та циклічні структури
- •Теоретичні відомості
- •1 Логічні структури
- •1.1 Команда розгалуження if (умовна команда)
- •1.2 Команда goto
- •1.3 Команда вибору (сase)
- •2 Циклічні структури
- •2.1 Команда циклу з параметром (for)
- •2.2 Команда циклу з передумовою (while)
- •2.3 Команда циклу з постумовою (repeat)
- •2.4 Порівняння роботи команд циклу while, repeat та for
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №3
- •Одновимірні масиви. Сортування
- •Мета роботи: ознайомитись з поняттям одновимірних масивів та діями над ними, навчитися застосовувати різні методи сортування для розв’язку математичних і технічних задач.
- •Теоретичні відомості
- •1 Одновимірні масиви
- •1.1 Додавання елементів масиву
- •1.2 Лічильник
- •1.3 Екстремуми
- •2 Методи сортування
- •2.1 Метод лінійного сортування
- •2.2 Сортування методом «бульбашки»
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №4
- •Багатовимірні масиви
- •Мета роботи: вивчити технологію роботи з багатовимірними масивами.
- •Теоретичні відомості
- •1 Опис багатовимірних масивів
- •2 Доступ до елементів масивів
- •3 Масиви ідентичного типу
- •4 Головна та побічна діагоналі
- •6 Ввід матриці
- •7 Виведення матриці
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №5
- •Підпрограми
- •Мета роботи: ознайомитись з правилами використання підпрограм, вивчити відмінності між процедурами та функціями.
- •Теоретичні відомості
- •1 Процедури та функції
- •1.1 Опис процедури
- •1.2 Опис функції
- •1.3 Формальні та фактичні параметри
- •1.3.1 Передача параметрів у підпрограмах
- •1.3.2 Виклик підпрограм
- •1.4 Глобальні та локальні змінні
- •1.5 Основні відмінності між функціями і процедурами
- •2 Рекурсивні функції
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №6
- •Символьні та рядкові змінні
- •Мета роботи: ознайомитись з прийомами роботи із символьними та рядковими змінними.
- •Теоретичні відомості
- •1 Символьні змінні
- •2 Множини
- •3 Рядкові змінні
- •3.1 Оголошення рядкових змінних
- •3.2 Доступ до окремих елементів рядка
- •3.3 Зміна поточної довжини рядка
- •3.4 Злиття рядків
- •3.5 Порівняння рядків
- •3.6 Порожній рядок
- •3.7 Рядки і символи
- •3.8 Масиви символів і рядка
- •3.9 Стандартні підпрограми для обробки рядків.
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №7
- •Записи. Записи з варіантами
- •Мета роботи: навчитись створювати прості бази даних за допомогою записів та записів з варіантами.
- •Теоретичні відомості
- •1 Записи
- •2 Записи з варіантами.
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №8
- •Файли: текстові, типізовані, нетипізовані
- •Мета роботи: ознайомитись з випадками використання файлів, типами файлів та методами обробки елементів файлів.
- •Теоретичні відомості
- •1 Текстові файли
- •2 Типізовані файли. Мітки
- •3 Нетипізовані файли
- •Приклад 4:
- •Приклад 5:
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №9
- •Мета роботи: вивчити структуру та особливості роботи з модулями в Turbo Pascal.
- •Теоретичні відомості
- •1 Структура модуля
- •1.1 Заголовок модуля
- •1.2 Інтерфейс модуля
- •1.3 Виконавча частина модуля
- •1.4 Розділ ініціалізації.
- •2 Етапи розробки модуля
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №10
- •Графіка
- •Мета роботи: ознайомитись з принципами побудови графіків функцій та інших графічних об’єктів за допомогою засобів TurboPascal.
- •Теоретичні відомості
- •1 Основні процедури і функції модуля Graph
- •2 Робота із зображеннями.
- •3 Побудова і масштабування графіків
- •Індивідуальні завдання
- •Контрольні питання
- •1 Дані динамічної структури
- •2 Вказівник
- •3 Списки
- •4 Стек. Черга
- •4.1 Алгоритм побудови стека
- •4.2 Алгоритм побудови черги
- •Індивідуальні завдання
- •Контрольні питання
- •Практична робота №12
- •Об’єктно-орієнтоване програмування
- •Мета роботи: засвоїти матеріал щодо можливостей TurboPascal при створенні об’єктів.
- •Теоретичні відомості
- •1 Поняття «об'єкт»
- •2 Спадкування
- •Індивідуальні завдання
- •Контрольні питання
- •Список літератури
- •Зразок оформлення результатів виконання практичного завдання
Індивідуальні завдання
Варіанти.
1-7
Дано послідовність, що містить від 1 до 30 слів, у кожному з яких від 1 до 5 прописних латинських літер; між сусідніми словами – кома, за останнім – крапка. Надрукувати:
Цю ж послідовність слів, але в зворотному порядку.
Цю ж послідовність слів, але видаливши з неї повторні входження слів.
Цю ж послідовність слів, але видаливши з неї слова, які займають непарні позиції.
Цю ж послідовність слів, але видаливши з неї слова, які займають парні позиції.
Усі слова, що зустрічаються в послідовності по одному разу.
Усі різні слова, вказавши для кожного з них число його входжень у послідовність.
Усі слова за абеткою (за першою літерою).
8-14
Дано послідовність, що містить від 2 до 50 слів, у кожному з яких від 1 до 8 прописних латинських літер; між сусідніми словами – не менше одного пробілу, за останнім – крапка. Надрукувати ті слова послідовності, що задовольняють наступні властивості:
Слово симетричне (наприклад, авва).
Слово непарної довжини і симетричне відносно середньої літери (наприклад, авова).
Перша літера слова є його останньою літерою.
Перша літера слова входить в нього ще раз.
Друга літера слова входить в нього ще раз.
Остання літера слова входить в нього ще раз.
Передостання літера слова входить в нього ще раз.
15-35
Дано послідовність, що містить від 2 до 30 слів, у кожному з яких від 2 до 10 прописних латинських літер; між сусідніми словами – кома, за останнім – крапка. Надрукувати всі слова послідовності, попередньо перетворивши кожне з них за наступним правилом:
Перенести першу літеру в кінець слова.
Перенести останню літеру на початок слова.
Видалити зі слова першу літеру.
Видалити зі слова останню літеру.
Видалити зі слова всі наступні входження першої літери.
Видалити зі слова всі попередні входження останньої літери.
Залишити в слові тільки перші входження кожної літери.
Якщо слово непарної довжини, видалити його середню літеру.
Якщо слово непарної довжини, видалити його першу літеру.
Якщо слово непарної довжини, видалити його останню літеру.
Перенести першу літеру в позицію передостаннього символу слова.
Перенести останню літеру в позицію другого символу слова.
Видалити зі слова літери парних позицій.
Видалити зі слова літери непарних позицій.
Поміняти у слові місцями літери парних позицій на літери непарних позицій.
Видалити зі слова всі наступні входження другої літери.
Видалити зі слова всі попередні входження передостанньої літери.
Залишити в слові тільки перші входження другої літери.
Якщо слово непарної довжини, видалити літеру, яка є наступною після середньої.
Якщо слово непарної довжини, видалити його другу літеру;
Якщо слово непарної довжини, видалити його передостанню літеру.
Контрольні питання
Чи можуть відрізнятися кодові таблиці на різних комп’ютерах?
Яким чином визначити коди всіх символів на конкретному комп’ютері?
За якої умови символу можна присвоїти рядок?
У яких випадках при оголошенні змінних типу string удаються до обмеження їх максимальної довжини?
Чому в нульову комірку рядка не можна безпосередньо записати число, яке дорівнює його довжині?
Чому масиву символів не можна присвоїти змінні типу string, а обернене присвоєння цілком припустиме?
Яким чином можна визначити номер коду символу в його десятковому поданні?
Яка функція перетворює десятковий код символу в сам символ?
Яким чином здійснюється доступ до окремих елементів рядка?
Яким чином здійснюється злиття та порівняння рядків?
Для чого використовують порожній рядок та яким чином його позначають у програмі?
Які є стандартні підпрограми для обробки рядків?
Що таке множина?
Яким чином визначаються константи множини?