Важливо:
До списку введення можуть входити змінні цілого, дійсного, символьного або рядкового типу. Змінні, ідентифікатори яких є параметрами процедури читання, не можуть бути булевого типу.
Якщо список змінних налічує декілька змінних, то користувач набирає значення через пробіл, а в кінці рядка натискає клавішу Enter. Або натискає після кожного значення клавішу Enter.
Наприклад, фрагмент програми:
var x0 : byte;
x, z : real;
y : integer;
begin
read (x0);
read (x, y, z);
...
end.
На екрані повинно бути, наприклад:
32
5.25 –10 0.05
або,
32
5.25
–10
0.05.
На відміну від процедури read процедура readln (від read line – читати рядок) після введення всіх вказаних в процедурі елементів списку здійснює перехід до наступного рядка дисплею. Процедура readln має синтаксис:
readln (ім’я1, ім’я2, ..., ім’яN);
де readln – ім’я процедури;
ім’я1, ім’я2, ..., ім’яN – список введення.
Приклад (I, K, L – цілого типу):
readln (I, K);
read (L);
Треба ввести з клавіатури, наприклад
5 10
15
Тоді дія процедур ведення забезпечить значення змінних I = 5, K = 10, L=15.
Якщо викликати процедуру readln без параметрів, програма чекатиме натиснення клавіші Enter для продовження своєї роботи.
Виведення, або запис (від англ. write – писати), значення виразу на дисплей здійснюється за допомогою процедури writeln або write.
Синтаксис процедури write:
write (елемент1, елемент2, ..., елементN);
де write – ім’я процедури;
елемент1, елемент2, ..., елементN – список виведення.
Важливо:
Елементом списку виведення може бути ціле або дійсне число (3, 42, –1732.3), символ (‘a’, ’z’), рядок (‘Hellow world’), логічне значення (true), іменована константа, змінна, вираз, звернення до функції (якщо результатом функції є цілий, дійсний, символьний, рядковий або логічний тип).
Формально розмір рядка не обмежений. Але якщо рядок символів, що виводиться, має довжину, яка перевищує ширину вікна дисплею, то символи переносяться на новий рядок. Також якщо виведення символу здійснюється в правому кутку останнього рядка, то вже відображені рядки символів автоматично зсуваються догори.
Процедура writeln має синтаксис:
writeln (елемент1, елемент2, ..., елементN);
де write – ім’я процедури;
елемент1, елемент2, ..., елементN – список виведення.
Всі елементи друкуються в одному рядку дисплею в заданому порядку. Після цього курсор встановлюється в початок наступного рядка.
Для переходу на новий рядок екрана чи пропуску рядка використовують команду writeln без параметрів.
За допомогою процедур write, writeln можливо здійснити форматне виведення даних, тобто представлення результатів в потрібному для користувача вигляді. Для цього після елементу в списку виведення записують формат – двокрапка і число цілого типу, що позначає кількість позицій на екрані (елемент : m). Елемент може бути не тільки цілим числом, але і виразом цілого типу, константою, змінною, зверненням до функції. Тобто в цьому випадку процедура виводу виглядає так:
writeln (елемент1: ширина1, елемент2 : ширина2, ..., елементN : ширинаN);
Коли ширина поля більше кількості цифр в числі, елемент автоматично доповнюється початковими пробілами. Усередині поля значення вирівнюється по правій границі поля. Якщо ширина поля недостатня, вона автоматично збільшується мінімально необхідного розміру.
Наприклад, для змінних цілочислового типу, що мають значення k = 50, L = 3, d = 200, форматний вивід на екран дисплея виглядає наступним образом:
writeln (k, L : 2, d : 4);
На екрані
50 3 200
Розглянутий вище спосіб завдання формату можна використовувати для цілих і дійсних значень, символів, рядків та логічних виразів. Але при такому завданні формату дійсні числа виводяться в експоненціальній формі (або формі з плаваючою крапкою). Так для w = 123,45 маємо:
№ |
Процедури виведення |
Результат |
Кількість позицій на екрані |
1 |
writeln (w); |
1.2345000000000E+002 |
23 |
2 |
writeln (w : 9); |
1.2E+002 |
10 |
3 |
writeln (w : 15); |
1.234500E+002 |
15 |
Якщо не використовувати форматне виведення, то для даних дійсного типу на екрані виділяється 23 позиції, тобто число представляється у вигляді:
,
де Х – число, по модулю менше за 10;
Е – спеціальний символ;
– знак «плюс» або «мінус».
Спосіб виведення за номером 1 називають стандартним. Другий і третій приклад використовує формат в експонентній формі. Ще вивід такого типу називають виводом із плаваючою крапкою.
Необхідно зазначити, що ширину поля для дійсних чисел необхідно вказувати не менше 9 (середа Lazarus).
Для дійсних чисел передбачено ще один тип виведення – з фіксованою крапкою. В цьому випадку після поля ширини через двокрапку необхідно вказати і другий параметр – кількість позицій, які відводяться під дробову частину із загальної ширини поля. Якщо кількість цифр, що виводяться, менша за ширину поля, то значення вирівнюється по правій межі, тобто зліва добавляються пробіли. Якщо перед числом, що означає ширину поля, поставити мінус, значення вирівнюється по лівій межі.
Наприклад, змінну w можна вивести на екран таким чином:
Процедури виведення |
Результат |
writeln (w : 6 : 2); |
123.45 |
writeln (w : 8 : 2); |
123.45 |
writeln (w :- 8 : 2); |
123.45 |
writeln (w : 8 : 4); |
123.4500 |
Структура програми
Програма складається з наступних розділів:
program {заголовок програми}
uses {розділ підключення модулів, які використовуються}
label {розділ оголошення міток}
const {розділ оголошення іменованих констант}
type {розділ оголошення Типів}
