Вещественные типы данных в Pascal

В языке Паскаль существует несколько типов для представления действительных (вещественных) чисел. Чаще всего используется тип Real.

Вещественные типы в Pascal

Тип Диапазон Число цифр Память, байт
Real зависит от платформы ??? 4 или 8
Single 1.5e-45 .. 3.4e38 7-8 4
Double 5.0e-324 .. 1.7e308 15-16 8
Extended 1.9E-4932 .. 1.1E4932 19-20 10
Comp -2E64+1 .. 2E63-1 19-20 8
Currency -922 337 203 685 477.5808 .. 922 337 203 685 477.5807 19-20 8

Число цифр определяет точность, с которой будет храниться вещественное число. Например, для Real разрядность мантиссы может составлять не более восьми десятичных знаков. Тип Comp содержит только целые значения, которые представляются в вычислениях как вещественные.

Над действительными числами выполнимы операции сложения +, вычитания -, умножения * и деления /. Результатом этих операций является также действительное число. Даже если хотя бы один из операндов вещественный, то результат этих операций также будет вещественным.

Операция деления / дает вещественный результат и в случае двух целых операндов. Например, 6 / 2 = 3.0.

Для действительных чисел допустимы такие же операции отношения (сравнения), что и для целых чисел.

Стандартная функция abs(x) — модуль x — от целого аргумента дает целый результат, а от вещественного — вещественный, как и sqr(x) — квадрат x.

Функции, которые дают вещественный результат, как для вещественного, так и для целого аргумента:

Функция int возвращает в виде действительного значения целую часть аргумента, frac возвращает дробную часть аргумента.

var
    x: real;

begin
    x := 4.7389;
    writeln(x:10:4);

    writeln(int(x):10:4);
    writeln(frac(x):10:4);
end.

Результат выполнения:

    4.7389
    4.0000
    0.7389

Функции trunc и round возвращают результат целого типа. Первая отсекает дробную часть от аргумента, а вторая выполняет округление до ближайшего целого.

Функция random без аргументов возвращает равномерно распределенное случайное число от 0 до 1.

Не имеющая аргументов функция pi возвращает число Пифагора.

В следующих случаях нельзя использовать переменные и константы вещественного типа: