- •Введение.
- •1. Среда языка программирования Паскаль.
- •1.1. Структура программы на Паскале.
- •Тело процедуры
- •Тело функции
- •1.2. Правила пунктуации.
- •2. Базовые элементы языка Паскаль.
- •2.1. Алфавит и словарь языка.
- •2.2. Константы и переменные, типы данных.
- •Пример 6. Запись типа zapic содержит три компонента: номер, фамилию и имя. Доступ к полям записи осуществляется через переменную spicok типа запись и массив tabl, состоящим из записей.
- •2.3. Выражения, операнды и операции.
- •3. Операторы языка Паскаль.
- •3.1. Простые операторы.
- •3.2. Структурные операторы.
- •4. Ввод-вывод.
- •4.1.Процедуры ввода-вывода.
- •4.2. Запись результатов в файл.
- •5. Процедуры и функции.
- •5.1.Функции пользователя.
- •Процедуры пользователя.
- •Приложение 1. Зарезервированные слова.
- •Приложение 2. Список ошибок.
- •Список литературы.
- •Содержание.
- •Информатика, основы программирование на паскале
4. Ввод-вывод.
4.1.Процедуры ввода-вывода.
Для выполнения операций ввода-вывода служат четыре процедуры: READ, READLN, WRITE, WRITELN. Примеры использования этих процедур приведены в этой главе и в ранее рассмотренных примерах 6, 7, 9,11.
Очистка экрана осуществляется командой CLRSCR и может выполняться только в текстовом режиме работы экрана.
Процедура чтения READ обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой и имеет формат:
READ([имя-файла,] переменная1, переменная2,…переменнаяN);
Здесь переменные – переменные допустимых типов данных, значения этих переменных набираются минимум через один пробел на клавиатуре и высвечиваются на экране. Набираемые значения должны соответствовать типам переменных. После набора данных для процедуры READ нажимается клавиша ENTER. Имя-файла – имя файла, откуда будет выполнятся чтение. Число переменных в списке может быть любым, разделяются переменные запятыми.
Процедура чтения READLN аналогична процедуре READ, имеет такой же формат, но после считывания последнего в списке значения для одной процедуры READLN данные для следующей процедуры будут считываться с начала новой строки.
Пример 12. При выполнении приведенных ниже операторов, после набора на клавиатуре значений А и В курсор автоматически перейдет на новую строку, где набирают значение переменной NOMER.
READLN(A,B);
READLN(NOMER);
Процедура записи WRITE производит вывод числовых данных, символов, строк и булевских значений и имеет формат:
WRITE([имя-файла,]переменная1, переменная2,…переменнаяN);
Имя-файла – имя файла, куда производится вывод. Для вывода на принтер имя-файла – LST, при выводе на экран дисплея этот параметр в команде отсутствует. Переменная – переменная типа INTEGER, BYTE, REAL, CHAR, BOOLEAN и т.д.
Процедура записи WRITELN производит вывод данных, но после последнего в списке значения для текущей процедуры WRITELN происходит перевод курсора к началу следующей строки. Процедура имеет формат аналогичный формату процедуры WRITE. Процедура WRITELN, записанная без параметров, вызывает перевод строки.
В процедурах WRITE и WRITELN имеется возможность записи выражения, определяющего ширину поля вывода. Переменные в процедурах WRITE или WRITELN могут записываться в одной из следующих форм:
имя-переменной
- если переменная целочисленного, символьного, строкового или булевского типа – выводится значение переменной, начиная с позиции расположения курсора, переменная вещественного типа выводится в десятичном представлении в поле шириной 18 символов в формате с плавающей точкой;
2) имя-переменной:m
- если переменная целочисленного, символьного, строкового или булевского типа – выводится значение переменной в крайние правые позиции поля шириной m символов, переменная вещественного типа выводится в десятичном представлении в крайние правые позиции поля шириной m символов в формате с плавающей точкой;
3) имя-переменной:m:n
- этот формат используется только для переменных вещественного типа, переменная выводится в крайние правые позиции поля шириной m символов в десятичном представлении в формате с фиксированной точкой, причем после десятичной точки выводится n цифр дробной части числа.
При задании формата вывода необходимо учитывать, что точка и знак – (минус) в случае отрицательного значения переменной занимают по одной позиции в записи переменной.
Примеры применения процедуры вывода с использованием форматов приведены в таблице 3.
Таблица 3. Примеры форматов вывода.
Значение переменной V |
Тип переменной |
Процедура вывода |
Результат |
1 |
2 |
3 |
4 |
134 |
целочисленная |
WRITE(V) |
134 |
134 |
целочисленная |
WRITE(V:5) |
__134 |
715.43 |
вещественная |
WRITE(V) |
__7.1543000000E+02 |
715.43 |
вещественная |
WRITE(V:11) |
7.15430E+02 |
715.43 |
вещественная |
WRITE(V:6:2) |
715.43 |
‘mashina’ |
символьная |
WRITE(V) |
mashina |
‘mashina’ |
символьная |
WRITE(V:11) |
____machina |
‘day n’ |
строковая |
WRITE(V) |
day n |
‘day n’ |
строковая |
WRITE(V:6) |
_day n |
true |
булевская |
WRITE(V) |
true |
true |
булевская |
WRITE(V:6) |
__true |
Пример 13. Печать матрицы.
FOR I:=1 TO 6 DO BEGIN
FOR J:=1 TO 6 DO BEGIN
{задание и печать элемента матрицы}
A[I,J]:=RANDOM(50);
WRITE(A[I,J]:6);
END;
{перевод курсора на новую строку после печати строки матрицы}
WRITELN;
END;