TURBO PASCAL |
Новости |
1. 7. 1.
Операторы ввода/вывода данных
Операторы вывода данных на экран
Write("сп"); или
Writeln("сп");
Здесь "сп"
-
список переменных.
Например, операторы
Write(a, b, c); или
Write(a); Write(b);
Write(c); или
Writeln(a, b, c); - выводят значения переменных
"a", "b", "c"
начиная с текущей позиции курсора.
После вывода данных оператором Write("сп"); курсор остается за последним
выведенным символом. Оператор
Writeln("сп"); после
вывода данных переводит курсор на первую
позицию следующей строки.
Например, для
вывода значений переменных "a",
"b", "c"
в трех строках экрана следует написать:
Writeln(a);
Writeln(b); Writeln(c); Оператор Writeln;
переводит курсор на начало
следующей строки экрана. Оператор Write('Моя
первая программа !'); выводит
на экран указанный текст.
В операторах вывода допускается
производить арифметические действия,
например, оператор
Writeln(32*a+Sin(x)); соответствует
операторам b:=32*a+Sin(x);
Writeln(b);
При выводе данных можно задавать формат
вывода. Для этого
после имени переменной ставится знак
двоеточие " : " ,
например: Writeln(a:5:2); - при
выводе значения переменной вещественного
типа отводится 5 позиций (включая
отрицательный знак и точку),
из них 2 позиции отводится для вывода
цифр в дробной части. При
выводе значения переменной целого типа
задается количество позиций для числа (включая
отрицательный знак), например:
Writeln(i:8);
При выводе
значений символьных и строковых переменных
формат определяет число позиций для вывода
значения переменной (текста).
При выводе число
или текст выравниваются по правому краю отведенного
поля, например:
если а:=5. 02;, то оператор
Writeln('а=', a:6:2); выведет на экран:
а= _ _ 5. 02, если
n:= '116'; s:= 'Школа N';,
то оператор Writeln(s:7,
n:6); выведет на экран надпись: Школа N _ _ _ 116 .
Для выравнивания числа или текста по
левому краю
отведенного поля первый знак формата
задается отрицательным,
например: оператор Writeln('а=', a:-8:2); выведет на экран надпись: а=5.
02 оператор Writeln(s:7,
n:-6); выведет на экран надпись:
Школа N116 .
При недостатке количества позиций для
вывода число
или текст выводятся полностью,
а формат игнорируется,
кроме формата вывода дробной части
числа. Если формат
вывода не задавать, то
значения целых и строковых переменных
выводятся полностью, а
вещественных -
в экспоненциальной форме с количеством
цифр, соответствующих
типу переменной, например,
оператор Writeln('а=',
a); выведет
на экран надпись: a=5. 0200000000E+00
(тип Real, расчет
без сопроцессора ), либо
a=5. 02000000000000E+0000 ( тип Double,
расчет с сопроцессором ).
Приведем пример программы,
выполняющей различные операции с
переменными разного типа. Program N_1;
{
работа с переменными разного типа } var
x, y,
z : real;
x0, y0: byte;
{
описание типов переменных }
x1, y1, z1: integer; xb, yb, zb:
boolean;
c1, c2, c3: char;
s1, s2, s3: string; Begin
x := 5. 8; y:=
3. 4; x1:=
43; y1:= 28;
{
присвоение значений }
c1:= 'Z'; c2:=
'S'; x0:=
65;
xb:= True;
yb:= False;
s1:= 'Иванов _ ';
s2:= 'Петров _ '; Writeln('Математические
операции:');
Z:= x+y;
{ и
т. д. }
Write('x:=', x:3:1,
' _ _ y:=', y:3:1);
Writeln(' _ _ Z:= x+y;', '
_ _ z=', z:5:2);
Writeln;
z1:= x1 div y1;
{ и
т.
д.
}
Write('x1:=', x1:3,
' _ _ y1:=', y1:3);
Writeln(' _ _ Z1:= x1 div y1;',
' _ _ z1=', z1:2);
Writeln;
{
Пустая строка }
readln;
{
Задержка экрана до нажатия Enter } Writeln('Логические
операции:');
Zb:= xb and yb;
{ и т. д.
}
Write('xb:=', xb,
' _ _ yb:=', yb);
Writeln(' _ _ Zb:= xb and yb;', '
_ _ zb=', zb);
Writeln;
{ Пустая строка }
readln;
{
Задержка экрана до нажатия Enter } Writeln('Операции
сравнения:');
Zb:= c1 > c2;
{ и т. д. }
{ символы
сравниваются по номеру ASCII кода }
Write('c1:=', c1,
' _ _ c2:=', c2);
Writeln(' _ _ Zb:= c1 > c2;', '
_ _ zb=', zb);
Writeln;
{ строки сравниваются по номеру ASCII кода
первых символов }
{ если первые символы совпадают,
то сравниваются вторые и т. д.
}
Zb:=
S1>S2; {
и т. д.
}
Write('s1:=', s1,
' _ _ s2:=', s2);
Writeln(' _ _ Zb:= s1 > s2;', '
_ _ zb=', zb);
Writeln;
{
Пустая строка }
readln;
{
Задержка экрана до нажатия Enter } Writeln('Математические
функции:');
Z:= sin(x*Pi/180);
{ и т. д. }
Write('x:=', x:4:2);
Writeln(' _ _ Z:= sin(x*Pi/180);', '
_ _ z=', z:10:7);
Writeln;
{
Пустая строка }
readln;
{
Задержка экрана до нажатия Enter } Writeln('Математические
процедуры:');
Write('x1:=', x1);
Inc(x1);
{ и
т.
д.
}
Writeln(' _ _ Inc(x1);', ' _
_ x1=', x1);
Writeln;
{
Пустая строка }
readln;
{ Задержка экрана до нажатия
Enter } Writeln('Функции
преобразования типов:');
c3:= Chr(x0);
{ и т. д. }
Write('x0:=', x0);
Writeln(' _ _ c3:=Chr(x0);', '
_ _ c3=', c3);
readln
{
Задержка экрана до нажатия Enter } end.
Все приводимые ниже задания
предполагают написание и отладку программ,
выполняющих указанные в заданиях
действия. |
(с) Все права защищены. По всем интересующим вопросам прошу писать электронный адрес |