
- •Методичні вказівки для допомоги студентам у вивченні самостійних тем з предмету
- •Урок № 6
- •Особливості інтегрованого середовища програмування Turbo Pascal. Основні пункти меню
- •Урок № 13
- •Поняття рекурсії. Зовнішні оголошення та оголошення процедур та функцій з випередженням
- •Урок № 14
- •Особливості роботи в текстовому режимі
- •Урок № 20
- •Сортування масиву. Методи сортування масиву
- •Урок № 21
- •Рекурсивне сортування масиву методом вибору
- •Урок № 21
- •Алгоритми роботи з двомірними таблицями на мові програмування Pascal
- •Урок № 25
- •Приклади опису багатомірних масивів засобами мови програмування Pascal
- •Урок № 26
- •Робота з елементами двомірного масиву
- •Урок № 27
- •Записи. Види записів. Робота з записами
- •Урок № 30
- •Множини. Дії над множинами
- •Урок № 32
- •Запис/читання файлу. Маніпуляції вмістом файлу
- •Урок № 33
- •Типізовані файли. Текстові файли. Нетипізовані файли
- •Урок № 37
- •Динамічні данні без внутрішніх посилань
- •Урок № 42
- •Робота з кольорами
- •Урок № 43
- •Робота з координатами
- •Урок № 44
- •Принцип виведення точки та лінії на екран
- •Урок № 45
- •Принцип побудови не заповнених геометричних фігур
- •Урок № 46
- •Принцип побудови заповнених геометричних фігур
- •Урок № 47
- •Виведення тексту в графічному режимі
- •Урок № 50
- •Використання модуля mouse Питання для вивчення:
- •Урок № 51
- •Принципи побудови графічного зображення, що рухається
- •Урок № 52
- •Модуль Graphs3d
Урок № 14
(згідно робочої навчальної програми)
Особливості роботи в текстовому режимі
Питання для вивчення:
1. Особливості роботи в текстовому режимі.
Основні стандартні підпрограми.
Особливості роботи в текстовому режимі. При роботі в текстових режимах із кольоровим дисплеєм кожний виведений на екран символ може бути одного з 16 (0-15) можливих кольорів. Тло може бути одним із 8 (0-7) кольорів. Для встановлення кольору виведених символів використовується процедура TextColor, для встановлення кольору тла - процедура TextBackGround. Є можливість організувати мерехтіння символів:
TextColor(Color:byte) - установити колір символів, що виводяться;
TextBackGraund(Color:byte) - установити колір тла.
Значення параметрів можуть задаватися, як константами (наприклад, Yellow), так і їх числовими еквівалентами (наприклад, 14), повний список яких наведений у таблиці:
Таблиця 1 — Значення параметрів кольорів
Темні кольори |
Світлі кольори |
0(Black) - чорний |
8(DarkGray) - Темно-сірий |
1(Blue) - синій |
9(LightBlue) - світло-синій |
2(Green) - зелений |
10(LightGreen) - світло-зелений |
3(Cyan) - блакитний |
11(LightCyan) - світло-блакитний |
4(Red) - червоний |
12(LightRed) - світло-червоний |
5(Magenta) - фіолетовий |
13(LightMagenta) - світло-фіолетовий |
6(Brown) - коричневий |
14(Yellow) - жовтий |
7(LightGray) - світло-сірий |
15(White) - білий |
Щоб додати виведеним символам ефект мерехтіння, при встановленні кольорів вказується константа Blink (або 16). Мерехтіння буде підтримуватися доти, поки не відбудеться установка кольору символів, що виводяться, без мерехтіння.
Приклад:
TextColor(Yellow+Blink);
Write('жовті символи, що миготять');
TextColor(12+16); Write('світло-червоні символи, що миготять');
TextColor(6); Write('коричневі символи');
Основні стандартні підпрограми. Існують також процедури, що керують яскравістю зображення. Всі вони діють до їх скасування, тобто до встановлення іншого режиму:
LowVideo - встановлює режим мінімальної яскравості світіння виведених на екран символів.
NormVideo - встановлює режим нормальної яскравості світіння виведених на екран символів. Цей режим встановлюється автоматично при ініціалізації модуля Crt.
HighVideo - установлює режим максимальної яскравості світіння. Існує можливість у будь-який момент роботи програми використовувати для виведення не весь екран, а деяку його частину, що називається вікном. Розмір вікна визначається користувачем, але не може перевищувати розміру екрана. Для організації вікон у Паскалі використовується процедура Window(X1,Y1,X2,Y2);
де X1, Y1 - координати лівого верхнього, а X2, Y2 - правого нижнього кута вікна. Розмір максимального вікна (повний екран) - (1,1,80,25), мінімального - один стовпчик на один рядок, тобто (1,1,1,1).
На екрані можуть знаходитися кілька вікон, але в поточний момент активним являється тільки одне з них, і всі дії, що програмуються користувачем, виконуються щодо поточного вікна.
Для формування складного зображення на екрані при виведенні інформації користувач повинен мати можливість переводити курсор у будь-яку позицію екрана. Для цього в мові Паскаль передбачені наступні процедури і функції:
GoToXY(X,Y:byte) - процедура переводить курсор у задану позицію екрану (або вікна) з координатами Х (стовпчик), Y (рядок); верхній лівий кут екрана має координати (1,1), а правий нижній в стандартному режимі (80,25);
WhereХ, WhereY - функції, що дозволяють одержати відповідні значення X- або Y- координати курсору щодо поточного вікна. Діапазон значень, що повертаються, визначається розмірами поточного вікна або повного екрана.
В текстовому режимі операторами виведення можна виводити на екран будь-який символ ASCII таблиці, навіть той, що відсутній на клавіатурі. В цьому випадку його можна вивести або за допомогою символу # з наступним ASCII-кодом символу, або шляхом набирання ASCII- коду необхідного символу на додатковій цифровій клавіатурі при натиснутій клавіші Alt. Наприклад, один той самий символ "¤" можна вивести на екран так:
Writeln('¤'); - символ отриманий одночасним натисканням клавіш Alt+<ASCII код символу>
Writeln(#253);
За допомогою таких псевдографічних символів можна отримати нескладний малюнок, схожий на всім відомий "японський кросворд", а також різного виду таблиці (дивись повний набір псевдографічних символів ASCII-таблиці). Поряд із підпрограмами організації роботи з екраном модуль Crt включає засоби керування звуком. У персональних ЕОМ є можливість генерувати звукові сигнали за допомогою вбудованого динаміка частотою 37 - 32767 Гц. Голосність звука не регулюється. Стандартний звуковий сигнал ("біп") постійної тривалості (0.25 с) і частоти (800 Гц) викликається сьомим символом (^G) кодової таблиці ASCII.
Приклад:
writeln('помилка в даних',^G);
writeln('працює процедура',#7,#7);
writeln('підключен драйвер',Chr(7),Chr(7));
Питання для контролю вивченого матеріалу:
1. Назвіть процедури встановлення кольору тла та символів.
2. Які існують процедури керування виведенням символами?
Література:
Меженний О.А.Turbo Pascal: М: Издательский дом «Вильямс», 2006. – 336 с.
Боон К. Паскаль для всех. – М.: Энергоатомиздат, 1988. – 190 с.
Васюкова Н.Д., Тюляева В.В. Практикум по основам программмирования. Язык Паскаль. – М.: издательство «Высшая школа», 1991. – 160 с.