Операторы вывода write и writeln в Pascal
В Pascal существуют два оператора вывода - это write()
и writeln()
. Их отличие заключается в том, что оператор writeln после вывода на экран информации переводит курсор на новую строку, в то время как write оставляет курсор на той же строке.
Рассмотрим на примере: необходимо вывести три переменные A = 5, B = 7, C = 3 друг за другом в одну строку. В этом случае следует использовать оператор write. Код будет выглядеть следующим образом:
program one;
var A,B,C:integer;
begin
A:=5;
B:=7;
C:=3;
write(A);
write(B);
write(C);
end.
или же таким:
program one;
var A,B,C:integer;
begin
A:=5;
B:=7;
C:=3;
write(A,B,C);
end.
Результат вывода на экран будет следующим: 573
Если необходимо вывести эти же переменные в столбик, следует воспользоваться оператором writeln( ). Код будет выглядеть так:
program one;
var A,B,C:integer;
begin
A:=5;
B:=7;
C:=3;
writeln(A);
writeln(B);
writeln(C);
end.
Результат вывода на экран будет следующим: 5
7
3
Хочу заметить, что в этом случае запись writeln(A,B,C)
не принесет нужного эффекта, а именно, вывод будет осуществлен в строчку, а не в столбец.
С отличием операторов разобрались. Теперь поговорим о том, как правильно записывать в скобках у операторов write/writeln то, что мы хотим вывести на экран.
- Если мы хотим вывести переменную или несколько переменных, то достаточно просто записать их через запятую в скобках оператора вывода. Например:
write(A,B);
- Бывает, что необходимо округлить число (типа real) при выводе. Например, у нас есть переменная А = 34,756942 и необходимо вывести это число с двумя знаками после запятой. Делается это следующим образом: сначала пишем необходимый нам оператор вывода (write/writeln), внутри скобок записываем имя переменной, затем ставим двоеточие и после него цифрой указываем сколько разрядов будет выводится в целой части, затем ставим еще одно двоеточие, после которого цифрой указываем количество выводимых на экран разрядов дробной части числа. Для нашего примера пишем следующий код:
write(A:2:2);
. На экран выведется
Если для вывода целой части числа указать меньшее количество разрядов, то компилятор проигнорирует это. Например, если написать34.76
write(A:1:2);
, результат все равно будет
Если же наоборот, для вывода целой части числа указать большее количество разрядов, то перед числом выведутся пробелы, в количестве недостоющих разрядов. Например, если написать34.76
write(A:4:2);
, результат будет
Думаю, принцип понятен.34.76
- Если мы хотим вывести на экран какой-либо текст, то его следует взять в апострофы (одинарные кавычки). Вот так:
Здесь тоже ничего сложного. Едем дальше.write('Ученье - свет, неученье - тьма')
- В этом пункте хотелось бы отметить, что в скобки оператора вывода можно записывать какие-либо выражения. Допустим, если взять пример из первого урока про периметр прямоугольника, то там мы сначала посчитали периметр, затем присвоили его значение переменной P, и только потом вывели ее на экран. Хотя можно было записать:
и обойтись без переменной P. Но это уже личное дело каждого, кто-то делает первым способом, кто-то вторым.write(2*(A+B))
Все, что могло быть интересного в операторе вывода, я вам рассказал. Если возникли какие-то вопросы, не стесняйтесь задавать их, контакты для связи со мной находятся здесь. Если вопросов нет, то вперед к следующему уроку))