Вывод данных (PascalABC.NET)

Материал из Информационная безопасностя
Перейти к навигации Перейти к поиску

Вывод осуществляется посредством программных единиц, именуемых процедурами и функциями. Первое время мы будем использовать две процедуры – Write и Print, а также их разновидности Writeln и Println.

Процедура Write выводит данные в строку, никак их не разделяя. Процедура Print после каждого выводимого данного делает пробел. В то же время, Write позволяет при желании определить формат вывода данных, а Print лишена этой возможности. Разновидности Writeln и Println по окончании вывода дополнительно осуществляют переход к следующей строке.

Вывод текста

Это самое простое. Все, что надо вывести, заключаем в апострофы. Например

Println('Этот текст будет выведен, как написано');

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

Print('Привет! ' * 5);
 1 ##
 2 Writeln(8 * ' ', '*');
 3 Writeln(7 * ' ', 3 * '*');
 4 Writeln(8 * ' ', '*');
 5 Writeln(7 * ' ', 3 * '*');
 6 Writeln(6 * ' ', 5 * '*');
 7 Writeln(5 * ' ', 7 * '*');
 8 Writeln(8 * ' ', '*');
 9 Writeln(7 * ' ', 3 * '*');
10 Writeln(6 * ' ', 5 * '*');
11 Writeln(5 * ' ', 7 * '*');
12 Writeln(4 * ' ', 9 * '*');
13 Writeln(3 * ' ', 11 * '*');
14 Writeln(8 * ' ', '*');
15 Writeln(8 * ' ', '*');

 

       *
      ***
       *
      ***
     *****
    *******
       *
      ***
     *****
    *******
   *********
  ***********
       *
       *

Вывод числовых данных

Чтобы вывести значение некоторого выражения, это выражение достаточно написать в списке элементов вывода процедур Write или Print. Оно будет вычислено и полученное значение выведено. Несколько выводимых значений отделяются друг от друга запятыми. Чередуя числовые данные и текст, можно оформлять вывод нужным образом.

1 ##
2 Writeln('Теперь наша программа может написать, что 2x2 = ', 2 * 2);
Теперь наша программа может написать, что 2x2 = 4

Здесь два элемента вывода – текст и арифметическое выражение.

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

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

1 ##
2 var a := 45637.52;
3 Write(a, ' мм = ', a / 10:0:1, ' см = ', a / 1000:0:2, ' м');
45637.52 мм = 4563.8 см = 45.64 м