Операторы Турбо-Паскаля.
Алгоритмический язык Турбо-Паскаль
Например, операторы Write (a, b, c); или Write (a); Write (b); Write (c); или Writeln (a, b, c); — выводят значения переменных «a», «b», «c» начиная с текущей позиции курсора. После вывода данных оператором Write («сп»); курсор остается за последним выведенным символом. Оператор Writeln («сп»); после вывода данных переводит курсор на первую позицию следующей строки. Например, для вывода значений… Читать ещё >
Операторы Турбо-Паскаля. Алгоритмический язык Турбо-Паскаль (реферат, курсовая, диплом, контрольная)
Оператором называют специальную совокупность служебных слов, идентификаторов и специальных знаков выполняющих определенные действия. Операторы отделяются друг от друга точкой с запятой «;». Рассмотрим операторы Турбо Паскаля.
Оператор присваивания :=.
Оператор присваивания служит для присваивания значений переменным, например: x:=1; a:=5. 02; b := 32*a+Sin (x); S:= 'Иван Иваныч';
Составной оператор Begin «операторы» end;
Составной оператор служит для записи в свое тело других операторов, последовательность которых рассматривается в данном случае как один оператор. Этим оператором начинается и заканчивается раздел выполнения основной программы, подпрограммы, функции. После последнего оператора END основной программы ставится точка.
Операторы ввода/вывода данных
Операторы вывода данных на экран 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. 20 000 0000E+00 (тип Real, расчет без сопроцессора), либо a=5. 200 000 000 0000E+0000 (тип Double, расчет с сопроцессором).
Приведем пример программы, выполняющей различные операции с переменными разного типа.
Program N1; { работа с переменными разного типа }.
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.
Операторы ввода данных с клавиатуры Read («сп»); или Readln («сп»);
Здесь «сп» — список переменных.
Перед вводом данных с клавиатуры желательно вывести на экран поясняющее сообщение. Для этого в программу следует включить оператор вывода, например:
Write ('введите значение а='); затем оператор Readln (a); При выполнении программы на экране появится надпись: введите значение а=. Оператор Readln (a); будет ждать ввода данных. Следует набрать на клавиатуре значение переменной «а», например, число и нажать клавишу Enter.
Для ввода значений нескольких переменных, например, a, b, c применяются конструкции вида: Readln (a); Readln (b); Readln (c); или Readln (a, b, c);
При вводе нескольких числовых данных, например, оператором Readln (a, b, c); необходимо после набора каждого значения переменной нажимать клавишу SpaceBar или Enter, а в конце ввода — Enter.
При вводе значений символьных переменных нажатие клавиши Enter приводит к присвоению символьной переменной значения кода клавиши Enter (#13), поэтому значения символьных переменных вводятся одна за другой без нажатия Enter или SpaceBar (#32). Например, оператор: Readln (с1, с2, с3, c4); ожидает ввода значений символьных переменных с1, с2, с3, c4, т. е. набора на клавиатуре символов, например: " У" , " Р" , " А" , «!» и нажатия Enter. Тогда оператор Writeln (с1, с2, с3, c4); выведет на экран надпись: УРА!
Оператор Readln; без параметров служит для приостановки выполнения программы и ожидает нажатия клавиши Enter, т. е. применяется с целью приостановки вывода информации на экран для просмотра результатов. При вводе данных предпочтительнее использовать оператор Readln, поскольку оператор Read после срабатывания не считывает управляющий код (#13), который остается в буфере клавиатуры.
Приведем пример программы возведения положительного числа «x» в степень"n",.
т. е. y=xn. Расчет производится по формуле: y=en*ln (x).
Program N2; {возведение положительного числа в степень}.
Const S='введите значение';
Var n, x, y: real;
BEGIN.
Writeln ('Программу разработал Иванов');
Writeln ('Возведение положительного числа x степень n');
Writeln (S, ' аргумента х>0'); Readln (x);
Write (S, ' показателя степени n='); Readln (n);
y:=exp (n*ln (x));
Writeln ('результат y=', y:-10:6); writeln ('Нажмите Enter');
readln; {задержка экрана до нажатия Enter}.
END.