Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Процедура вывода данных




 

Процедура вывода используется для стандартных типов данных вида real, integer, char, boolean и имеет вид

write[ln][([файл],параметр1[:w1[:d1]],параметр2[:w2[:d2]],..)],

где файл – имя логического файла для вывода значений во внешний физический файл;

параметр1, параметр2 – выражение, идентификатор, значения типа integer, real, char, boolean или запись символов в апострофах;

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

:d1 – количество позиций, заданных под цифры после запятой, может применяться для величины типа real (то есть под мантиссу).

Напомним, что квадратными скобками отмечены те элементы, которые могут отсутствовать.

В отличие от процедуры read в качестве выводимой величины могут быть представлены следующие:

выражение:

write(x+y);

идентификатор:

write(z);

значения типа integer, real, char, boolean:

write(5,2.3e-02,¢ % ¢,false);

запись символов в апострофах:

write(¢ Задайте значения переменной x ¢);

 

Дополнение ln, как и для процедуры ввода, обеспечивает переход на начало новой строки. Если записано лишь writeln, то выполняется переход на новую строку.

Если не указано количество позиций под величину, которая выводится, вывод выполняется в стандартной форме. За стандартную форму принимается:

real - форма с плавающей запятой;

integer, char, boolean – простая форма отображения величины на количество позиций, которые занимает сама величина.

В этом случае можно сказать, что вывод выполняется бесформатный.

ПРИМЕР.

CONST

x: real=3.4;

i: integer= - 4;

c: char='z';

b: boolean=false;

.............

BEGIN

.............

writeln(x); writeln(i);

writeln(c); writeln(b);

.............

END.

Как результат на экране получим:

3.4000000000E+00

-4

z

false

Если вывод оформить в виде

writeln(x,i,c,b);

то выведенный результат в виде

3.4000000000E+00-4zfalse

будет совсем не понятен.

Вывод, когда указывают количество позиций для выводимой величины, называется форматным.

При выводе величины типа integer, char, boolean с указанием количества отведенных позиций значение переменной выводится в отведенном поле, прижатое к правой границе, например:

CONST

i: integer= - 4;

c: char='z';

b: boolean=false;

.............

BEGIN

.............

writeln(i:4,c:5,b:6);

END.

Как результат на экране получим:

-4 z false

Если указано число полей, записанных со знаком минус, то величина будут прижата к левой границе, например:

BEGIN

.............

writeln(i: -4,c: -5,b: -6);

END.

Как результат на экране получим:

-4 z false

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

.............

writeln(i: 1,c: 5,b: 2);

END.

Как результат на экране получим:

-4 zfalse

Этот же вывод можно оформить, используя дополнительные записи символов в апострофах:

BEGIN

.............

writeln(' i =', i: 3,', c =',c: 5,', b =', b: 5);

END.

Как результат на экране получим:

i = -4, c = z, b = false

При выводе величин типа real с указанием количества выведенных позиций через одно число значение переменной выводится в стандартной форме, то есть c плавающей точкой, но так, что оно занимает указанное количество позиций. При этом в любом случае минимальным числом позиций для вывода будет 8 – четыре позиции на мантиссу числа, включая знак и десятичную точку, одна позиция – на символ е, и три позиции – на порядок.

CONST

x: real = 3.4;

y: real = -1.223e-02;

.............

BEGIN

.............

writeln(‘x=’, x: 9,’ y=’, y: 6);

END.

Как результат на экране получим

x= 3.40e+00 y=-1.2e-02

 

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

CONST

x: real = 3.4;

y: real = -1.223e-02;

.............

BEGIN

.............

writeln((‘x=’, x: 9: 4, ’ y=’, y: 9: 4);

END.

Как результат на экране получим

х= 3.4000 у= -0.0122

Для второго числа одна цифра мантиссы не вошла в отведенное число позиций.

РЕКОМЕНДАЦИЯ. При вводе данных перед процедурой ввода всегда необходимо писать процедуру вывода с подсказкой, что именно необходимо вводить:

writeln('Введите действительные числа x, y: ');

readln(x,y);

 

 




Поделиться с друзьями:


Дата добавления: 2014-12-26; Просмотров: 327; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.