Операторы ввода-вывода

3612
знаков
0
таблиц
0
изображений

С.А. Григорьев

Простейший оператор ввода в Паскале - оператор READ, он записывается в виде:

READ(имя,имя,...);

где имя - имена переменных или типизированных констант. Вводимые значения задаются в виде допустимых в Паскале констант и разделяются любым количеством пробелов. Для окончания ввода следует нажать клавишу Enter. Оператор ввода можно записать и как READLN, при вводе числовых переменных они эквивалентны. Кроме того, оператор READLN без списка в скобках можно использовать для организации задержки в работе программы - он будет ожидать нажатия клавиши Enter.

Простейший оператор вывода записывается в виде:

WRITE(выражение,выражение,...);

или

WRITELN(выражение,выражение,...);

Вывести можно любое выражение, если необходимо вывести текст, он заключается в апострофы. Оператор WRITELN отличается от оператора WRITE тем, что после вывода происходит переход на новую строку. Можно использовать оператор WRITELN без списка вывода для пропуска строки. Запишем пример программы, осуществляющей ввод и вывод :

 VAR i : Integer;

w : Word;

r : Real;

BEGIN

WRITELN;

{------------- ввод -------------}

WRITE('Введите целое число ');

READ(i);

WRITELN;

WRITE('Введите натуральное число ');

READ(w);

WRITELN;

WRITE('Введите вещественное число ');

READ(r);

WRITELN;

{------------- вывод -------------}

WRITELN('Вы ввели : ',i,' ',w,' ',r,' их сумма=',i+w+r);

WRITELN('Нажмите Enter для выхода');

READLN;

 END.

Впервые записав осмысленную программу, остановимся и обсудим ее внешний вид. Даже на таком тривиальном примере мы можем понять некоторые основные правила оформления программы.

1. Организация диалога с пользователем. Прежде чем записать оператор READ, вы обязаны записать хотя бы один WRITE, который выведет на экран приглашение "Введите ...", причем из этого приглашения пользователь должен понять, какие именно данные ему следует ввести. Так, в нашем примере операторы WRITE('Введите i '); READ(i); были бы неуместны, так как пользователю неизвестно, что такое i, и он мог бы ввести, например, вещественное число, что привело бы к аварийному завершению программы.

2. Оформление текста программы. Хорошо оформленная программа легко читается и быстрее отлаживается, следует стремиться к "прозрачности" текста, но не к некоторой, вполне субъективной, "красоте". Так, скажем, операторы, выполняющиеся последовательно, следует и записывать строго друг под другом, но не "елочкой" или какой-либо другой фигурой. Средства, используемые для оформления текста, крайне просты и доступны всякому - это пробелы, пустые строки и комментарии.

При выводе чисел можно их форматировать, т.е. управлять формой их представления. Для этого в списке вывода после выводимого выражения можно указывать модификаторы : “:L:d“ - для вещественных значений и “:L” для вещественных и целых. L и d - целочисленные выражения, первое из них определяет, сколько всего позиций отводится для выводимого числа на экране, а второе - сколько выводится цифр после десятичной точки. Если при выводе вещественного числа задан модификатор “:L:d“, то оно выводится с фиксированной точкой, если же задан модификатор “:L” или он отсутствует - то с плавающей точкой. Пусть значение переменной X равно 123.45678, тогда оператор

WRITE(X);  выведет " 1.2345678000E+02"

WRITE(X:8:2); выведет " 123.46"

WRITE(X:10:5); выведет " 1.235E+02"

WRITE(X:10);  выведет " 1.235E+02"

WRITE(X:8); выведет " 1.2E+02"

WRITE(X:1); выведет " 1.2E+02"

По умолчанию вещественные числа всегда разделяются при выводе пробелами, но если вы выводите подряд несколько целых чисел, не форматируя их и не выводя между ними пробелов, они будут выводиться подряд и сольются в одно чи


Информация о работе «Операторы ввода-вывода»
Раздел: Информатика, программирование
Количество знаков с пробелами: 3612
Количество таблиц: 0
Количество изображений: 0

Похожие работы

Скачать
15151
4
0

... переменных необходимо использовать указанный разделитель. Если спецификации не отделены одна от другой никакими значениями, то значения переменных заносятся через пробел. В языке СИ есть две очень удобные функции puts и gets, позволяющие вводить и выводить строку символов. Пример их использования показан ниже: #include<stdio.h> main() { char q[40]; /*объявление строки символов*/ puts ...

Скачать
23321
2
2

... языка Си, поддерживающие обмен данными с файлами на уровне потока, позволяют обрабатывать данные различных размеров и форматов, обеспечивая при этом буферизованный ввод и вывод. Таким образом, поток - это файл вместе с предоставляемыми средствами буферизации. При работе с потоком можно производить следующие действия: ·              открывать и закрывать потоки (связывать указатели на потоки с ...

Скачать
12099
0
3

... A do эквивалентно A.Day:=5; Begin Day:=5;I:=1954 End;A.I:=1954; Заключение   В процессе написания работы мы ознакомились с: организацией ввода-вывода, а именно: - процедурами ввода; - процедурами вывода; - бесформатным выводом; - форматным выводом; - описанием одномерных массивов; - вводом – выводом одномерных массивов; - описанием двумерных массивов; - вводом – выводом двумерных ...

Скачать
7313
0
0

... ('Поиск путей длины ', PathLen, ' ...'); case TryMove (x, y) of true: WriteLn ('Нашел путь :-)'); false: WriteLn ('Нет путей :-('); end; end; End. Файловый тип. Ввод/вывод.  Все рассмотренные ранее типы данных обладали одним общим свойством - число их компонентов конечно и заранее фиксировано. Однако, существует достаточно широкий класс задач, когда количество компонент данных ...

0 комментариев


Наверх