Что такое форматное выражение в паскале

Обновлено: 05.11.2024

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

1. Для целых данных ( integer и др.) - формат задается одним числом, определяющим число позиций, отводимых на это число.
Пример:
Writeln ( i :5);
Выведет на экран значение переменной i , используя для этого 5 позиций (даже если число занимает меньше 5 позиций, свободные позиции все равно будут отображаться).
Если переменная i :=34, то на экран будут выведены 3 пустых позиции (они для наглядности показаны знаком подчеркивания) и число 34, т.о. всего 5 позиций.

_ _ _ 34
Если переменная i :=2345666, то данный формат ( i :5) не может быть использован (выводимое число занимает больше позиций) и будет просто игнорироваться и все значение переменной отобразиться на экране.

2. Для вещественных данных ( real и др.) - формат задается либо одним числом, определяющим число позиций, отводимых на это число в экспоненциальной форме; либо двумя числами, первое из которых обозначает общий размер поля, отведенного под это число, второе - число знаков после запятой, т.е. точность.

Пример.

Writeln ( p :12); или Writeln ( p :6:2);
Если переменная p :=1234.6789, то в первом случае на экране появится

_1.2346 E +004, а во втором 1234.68

Пример.

Пусть значение переменной X равно 123.45678, тогда оператор

Write(X); выведет "_1.23456780000000000E+02"

Write(X:8:2); выведет "_ _123.46"

Write(X:10:5); выведет "_123.45678"

Write(X:10); выведет "_1.23E+002"

Write(X:8); выведет "_1.2E+02"

Write ( X :1); выведет "_1.2 E +002"

3. Для строковых и символьных данных ( string , char ) - формат задается одним числом, определяющим число позиций, отводимых на значение этих данных (т.е. на символ или набор символов).

Пример:

Для строковой переменной ss :=’СТРОКА’ и для символьной переменной c :=’ C ’, операторы
Writeln ( ss :8); Writeln ( c :4);

выведут на экран

Т.е. в первой строчке две первые позиции из восьми отводимых будут пустыми, а остальные занимаются словом СТРОКА. Во второй строке из 4 позиций отводимых под переменную, первые три будут свободными, а последняя занята символом С.

Может оказаться полезным, что оператор Write (' ': n ) выведет на экран n пробелов. При n =6 будет

_ _ _ _ _ _

Пример:

Оператор вывода writeln имеет такой вид:

writeln(‘ За ’,t:6:2,’ сек. скорость троллейбуса v=’,v:5:1,’ м/с,’);

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

За _ _1.00 сек. скорость троллейбуса v = _ _1.5 м/ c ,

Читайте также: