Процедура Readln.
E6 .
. . . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . . .
Процедура Read.
Эта процедура предназначена для ввода данных сплошным потоком.
Правила записи значений данных очень просты:
- разделителем между числами являются один или несколько пробелов;
- пробелы в числе недопустимы;
- вещественные числа можно записывать в форме с точкой или в форме с экспонентой.
Пример. Пусть в программе надо организовать ввод значений: N - целого типа; А, В, С - вещественного типа. Тогда фрагмент программы можно записать в виде
Var N : Integer;
A, B, C : Extended;
. . . . . . . . . . . . . .
Begin
Read(N, A, B, C);
. . . . . . . . . . . . .
Если необходимо ввести значения: N =34 ; A = 15,0; B = 23,5; C = 2.85 105;,
тогда на клавиатуре надо набрать:
34 15 23.5 2.85е5
После нажатия Enter первое число будет занесено в ячейку памяти для N, второе число - в ячейку памяти для А и так далее.
Ввод из внешнего файла.
Для организации ввода из внешнего файла необходимо:
- в разделе переменных объявить файловую переменную с идентификатором типа Text;
- связать внешний файл с файловой переменной с помощью процедуры Assign(ФП, 'путь'), где ФП - файловая переменная; "путь" - это путь к внешнему файлу;
- открыть файл для чтения с помощью процедуры Reset(ФП);
- указать в процедуре Read файловую переменную;
- после окончания ввода закрыть файл с помощью процедуры Close(ФП).
Пример. Если в программе Р6 надо организовать ввод значений N, A, B, C из внешнего файла VxodP6.txt , который хранится в в каталоге С:\Tp\Pas , то в программе должены быть записаны следующие фрагменты (Fvx - файловая переменная)
Var N : Integer;
A, B, C : Extended;
Fvx : Text;
Begin {главная прогр.}
Assign(Fvx, 'C:\Pas\VxodP6.txt');
Reset(Fvx);
Read(Fvx, N, A, B, C);
Close(Fvx);
В файлеVxodP6.txt должны быть записаны значения переменных, например так:
Стандартный файл Input и внешний файл с расширением txt являются текстовыми файлами, а это значит, что при каждом нажатии на клавишу Enter в процессе записи значений данных в файл формируется признак конца строки.
Процедура Read при чтении данных из файла игнорирует этот признак конца строки и читает все подряд. Это означает, что если в программе несколько процедур Read, то значения данных будут прочитаны правильно независимо от того, как они записаны в файл: на одной строке или на нескольких строках.
Действие процедуры Readln аналогично действию процедуры Read, но при каждом нажатии на клавишу Enter (при вводе данных) процедура Readln автоматически переходит к следующей строке. При использовании нескольких процедур Readln необходимо следить за расположением данных на строках. Например если в программе записано
Readln(А, В):
. . . . . . .
Readln(С);
то на первой строке должны располагаться значения А и В, а на второй строке - значение С. Если мы расположим все три значения на одной строке, то третье значение будет проигнорировано и программа будет ожидать ввода значения С с вторй строки.
В процедуре Readln список может отсутствовать - такая запись используется для перехода к следующей строке.
4.7.2. Вывод данных.
В ТР имеется две возможности для вывода данных:
- вывод на экран монитора;
- вывод во внешний файл.