Оформление выводимых величин

Существуют различные виды оформления выводимых переменных.

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

Типичный пример – унифицированные таблицы оформления результатов циклических вычислений (табл. 5.1).

При этом в алгоритме и программе оформление таблицы разбивается на три части:

· оформление заголовка до проведения вычислений (входа в цикл);

· формирование текущей строки выводимых результатов в точке вывода (в теле цикла);

· формирование нижнего ограничителя таблицы после вывода (выхода из цикла).

Общая методика организации табличного вывода требует:

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

2. Составить заготовку шаблона заголовка таблицы и запрограммировать её.

3. Сформировать строку выводимых численных значений переменных с вертикальными разграничителями между ними.

4. Выполнить горизонтальный ограничитель после вывода (выхода из цикла).

В качестве элементов разграничителей можно использовать любой имеющийся на клавиатуре символ.

Пример формирования таблицы результатов для циклического процесса вычисления функции y = f(x) (x – аргумент, y – функция).

1. Количество выводимых столбцов – два. Длина полей, например, для аргумента 6 символов, для функции – 7.

2. Составим заготовку заголовка таблицы:

+––––––––+–––––––––+

| x(i) | y(i) |

+––––––––+–––––––––+

При составлении шаблона заголовка размер каждого столбца увеличен на две позиции. Это сделано для организации пробелов между разграничителями и выводимым значением (ширина первого столбца 6+2=8, второго – 7+2=9). По заготовленной шапке таблицы осуществим её программирование с помощью стандартных методов вывода:

printf(" +––––––––+–––––––––+\n"

" | x(i) | y(i) |\n"

" +––––––––+–––––––––+\n");

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

3. Сформируем текущую выводимую строку в соответствии с заголовком:

| x(i) | y(i) |

Оператор вывода численных значений текущей строки примет вид

printf(" | %6.2f | %7.2f |\n", x[i] , y[i]);

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

Оператор записывается в точке вывода текущих значений аргумента и функции взамен существующего (формируется его корректировкой).

4. Выполним конечный ограничитель таблицы:

+–––––––––+––––––––+

Для этого достаточно после выхода из цикла включить в программу следующий оператор:

printf(" +––––––––+–––––––––+\n");

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

При необходимости выполнения пустых строк под таблицей символ перевода \n повторяется требуемое количество раз. Например, оператор

printf(" +––––––––+–––––––––+\n\n\n\n");

предписывает после закрытия таблицы вывести три пустые строки.

ü Внимание! Рассмотренная методика организации простейшей (двухстолбцовой) таблицы является базовой при построении таблиц с любым количеством столбцов и строк, т. е. может применяться как для циклических, так и любых других процессов (например, линейных).