Статус документа
Статус документа

ГОСТ 27787-88 Язык программирования БЕЙСИК

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

3.11.1. Общее описание

Оператор-вывода предназначен для вывода данных.

Общая синтаксическая форма оператора-вывода имеет вид:

PRINT элемент р элемент р ... р элемент

где каждый элемент является либо выражением, либо вызовом-табулятора, либо пробелом, а знак пунктуации (р) является либо запятой, либо точкой с запятой.

3.11.2. Синтаксис

1) оператор-вывода = PRINT список-вывода

2) список-вывода = (элемент-вывода разделитель-вывода)* элемент-вывода.

3) элемент-вывода = выражение вызов табулятора

4) вызов-табулятора = TAB круглая-скобка-левая арифметическое-выражение круглая-скобка-правая

5) разделитель-вывода = запятая точка-с-запятой

3.11.3. Примеры

1)

PRINT X

PRINT X, Y

PRINT X, Y, Z

PRINT ,,, X

PRINT

PRINT "X EQUALS", I0

PRINT X; (Y+Z)/2

PRINT TAB (I0); A; "IS DONE".

3.11.4. Семантика

Выполнение оператора-вывода создает строку символов для передачи на внешнее устройство. Эта строка символов определяется в результате последовательной обработки каждого элемента-вывода и разделителя-вывода в списке-вывода.

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

В каждой реализации должны быть определены 2 параметра: d - максимальное количество выводимых значащих десятичных цифр числа; е - минимальное количество выводимых цифр порядка числа (см. п.3.3.1). Значение d должно быть не менее шести, а значение е - не менее двух.

Число, точно представимое целым (d или меньшим) количеством десятичных цифр, выводится в формате представления с неявно заданной точкой без указания порядка.

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

Если точность чисел, которые могут быть представлены с d или меньшим количеством цифр без задания порядка, не меньше точности в случае представления этих чисел в формате с заданным порядком, они должны выводиться без задания порядка. Например, если d=6, то 10^(-6) должно выводиться как 0.00000I.

Числа, представленные в формате с явно заданной точкой без задания порядка, должны выводиться не менее чем с d десятичными значащими цифрами и точкой; последующие нули в дробной части могут быть опущены. В представлении числа, меньшего единицы, должны отсутствовать цифры левее точки. Эта форма требует не менее d+3 символов, включая знак, точку и замыкающий пробел.

Числа, представленные с явно заданной точкой и заданным порядком, должны выводиться в формате:

"значение" Е s "порядок"

где s - знак плюс или минус, величина "значения" находится в диапазоне от единицы до десяти и представлена не менее d цифрами точности, а "порядок" содержит от одной до е цифр.

В дробной части "значения" замыкающие нули, могут быть опущены, так же как ведущие нули в "порядке". Точка распечатывается как часть "значения", поэтому выводимое число всего будет содержать d+e+5 символов (знак мантиссы, точка, Е, знак порядка и замыкающий пробел).

При обработке текстовых-выражений генерируется соответствующий текст. При обработке разделителя точка-с-запятой генерируется текст нулевой длины.