Дипломная работа: Алгоритмический язык Паскаль
а) для операций "*, +, -", результат имеет тип REAL, если один из операндов имеет тип REAL; если оба операнда типа INTEGER, то результат имеет тип INTEGER;
б) для "/" результат всегда имеет тип REAL;
в) для "DIV, MOD" операнды и результат имеют тип INTEGER.
Значение переменной интервального типа, образованной на основе INTEGER, всегда имеет тип INTEGER. При использовании оператора присваивания нужно соблюдать типизацию объектов слева и справа от знака ":=". Смешение типов недопустимо, за исключением, когда слева от знака ":=" может стоять тип REAL, а справа - тип INTEGER.
В Паскале при написании выражений используются стандартные функции, которые разделяются на следующие виды.
1. Арифметические (математические) функции:
а) ABS(X), X - REAL и INTEGER, на выходе тот же тип;
б) ARCTAN(X), COS(X), SIN(X), EXP(X), LN(X), SQR(X), SQRT(X).
Для этих функций X есть REAL или INTEGER, а результат всегда REAL.
2. Функции преобразования типов:
а) CHR(X), где X - INTEGER;
Результат - символ, кодом которого является число X.
Например: CHR(65) = 'А'.
б) ORD(X), где X - CHAR;
Результат - число типа INTEGER.
Например: ORD('А') = 65.
Эту функцию можно использовать в определении номера элемента в перечислимом типе. Например, пусть имеется фрагмент программы:
type DAY=(mo,tu,we,th,fr,sa,su);
var DEN: DAY;
DEN:=tu; I:=ORD(DEN);
Значением переменной I будет 1, т.к. нумерация начинается с нуля.
в) ROUND(X), где X - REAL;
Результат INTEGER - ближайшее целое к X.
г) TRUNC(X), где X - REAL.
Результат INTEGER - целая часть X.
НАПРИМЕР:
TRUNC(5.8)=5; ROUND(3.14)=3;
ROUND(5.8)=6; TRUNC(-7.7)=-7;
TRUNC(3.14)=3; ROUND(-7.7)=-8.