Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
pascal.pdf
Скачиваний:
114
Добавлен:
20.04.2015
Размер:
980.04 Кб
Скачать

 

34

Программирование на языке Pascal

Для процедуры, получающей текущее время, потребуется также четыре переменные: для текущего часа, текущей минуты, текущей секунды и для сотой доли секунды. Процедура называется аналогично: getTime.

uses Dos;

Var Hour, Minute, Second, HSecond:Word;

Begin

getTime(Hour, Minute, Second, HSecond); WriteLn('Сейчас ', Hour, ':', Minute, ':', Second);

end.

Форматированный вывод

В приведенных выше примерах, особенно в тех, что использовали вещественные типы данных, не уделялось внимание «красоте» выводимых значений на экран. А ведь от того насколько пользователю легко будет прочитать результаты работы программы будет зависеть удобство использования. Однако, если вещественные числа выводятся в формате 2.3550000000E+01, то рядовому пользователю будет неудобно адекватно воспринимать результаты работы программы. Поэтому в этом пункте мы расскажем о том, как можно выводит числовые результаты красиво, превращая такого рода числа в удобочитаемый вид.

Целые числа

В случае выводе целочисленных переменных (Byte, Word, Integer, LongInt), несмотря на то, что у них отсутствует дробная часть, можно указывать сколько символов будет занимать число на экране. Это необходимо в тех случаях, когда, например различные числа требуется выводить в виде таблицы.

Например, если мы выполним следующий код

Uses crt;

Begin

ClrScr;

WriteLn('Номер | Количество'); WriteLn(2,3);

WriteLn(5,6);

WriteLn(123,443);

WriteLn(12442,3);

WriteLn(33,13455);

End.

Мы получим следующий результат:

Рисунок 14

34

 

35

Программирование на языке Pascal

На этом рисунке видно, что цифры слиплись и их необходимо разделять пробелами, чтобы пользователь мог понять, где кончается одно число и начинается другое. Однако, поскольку количество разрядов разное (в некоторых столбцах числа состоят из одной цифры, в некоторых, например, из пяти), то определение количества пробелов, которые необходимо добавлять – дело весьма хлопотное.

В таких случаях указывается максимальная длина поля, которое может занимать число. Осуществляется это непосредственно в процедуре WriteLn при помощи двоеточия «:», которое ставится сразу после числа, либо после переменной. Например, если некоторое число Number должно занимать на экране 5 символов, то пишут следующим образом:

WriteLn(Number:5);

Если числу требуется меньше места, чем заявлено в процедуре WriteLn, то оставшиеся неизрасходованные позиции будут заполнены пробелами.

Например, если используется следующая запись

WriteLn(12:5);

То это означает, что Pascal выделит на экране место из пяти символов и заполнит их согласно схеме, приведенной ниже

[

1 2

]

]

Если для вывода числа требуется больше символов, чем декларируется, то размер поля автоматически будет увеличен.

Используя такой способ форматирования вывода целочисленных переменных модифицируем предыдущий код, чтобы цифры выводились в удобочитаемой форме:

Uses crt;

Begin

ClrScr;

WriteLn("Номер | Количество");

WriteLn(2:5,3:12);

WriteLn(5:5,6:12);

WriteLn(123:5,443:12);

WriteLn(12442:5,3:12);

WriteLn(33:5,13455:12);

35

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]