Паскаль. Основы программирования


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


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

Так, после ввода значений коэффициентов: 2 3 -10, на экран будет выдан результат:

Уравнение имеет два различных корня

x1 = -3.1084952830E+00    x2 = 1.6084952830E+00

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

Чтобы избежать всех этих неприятностей, можно использовать форматированный  вывод информации.

В Турбо-Паскале предусмотрен вывод данных с форматами. В общем случае формат имеет следующий вид:

r:f1:f2

Здесь r - имя переменной, значение которой выводится (в данном случае - x1 или x2), формат f1 указывает, сколько позиций нужно для всего числа, включая знак числа, целую часть, точку и дробную часть числа; f2 - число позиций дробной части числа (после точки).

 Если формат указан, то значение переменной r выводится в виде константы с фиксированной запятой, например: 12.35, .123. Если параметры f1 и f2 опущены, то вещественная переменная выводится в виде константы с плавающей запятой, например: 2.534E03, 5.67E-12 и т.п.  В этом случае значения f1 и f2 устанавливается по умолчанию.

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

несколько пробелов; знак минус (-) или пробел; последовательность цифр (целая часть); точка; последовательность цифр (дробная часть).

Рассмотрим несколько примеров форматированного вывода результатов для вещественных переменных.

Пример. Пусть переменная r получает значение частного от деления вещественных переменных a на b.

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

Program Problem;

    uses WinCrt;

    var

       a, b, r : real;

    begin

       write('Введите значение переменной a '); readln(a);




Начало  Назад  Вперед



Книжный магазин