Пример 1. Исследуем работу функций round, int и frac, применив их к некоторому вещественному x. Запустите программу несколько раз для каждого x ∈ {10.2; 10.8; −10.2; −10.8}. Что вы можете сказать о типе результата каждой из этих функций? С чем, по вашему мнению, связан вид результата работы функции frac(x)? Обсудите этот вопрос в группе.
var
x: real;
begin
writeln('Исследование функций round, int, frac');
write('Введите x>>');
readln(x);
writeln('Округление: ', round(x));
writeln('Целая часть: ', int(x));
writeln('Дробная часть: ', frac(x))
end.
Функция round округляет до ближайшего целого. Функция int оставляет целую часть вещественного числа, отбрасывая дробную часть в направлении к нулю. Функция frac даёт оставшуюся часть:
Подставим заданные значения по очереди. Для
Для
Для −
Для −
| x | round(x) | int(x) | frac(x) |
|---|---|---|---|
| − |
− |
− |
− |
| − |
− |
− |
− |
По таблице round возвращает целое число, int и frac — вещественные. Поэтому целая часть может выводиться как
round: int: frac:
