У меня есть этот код, например:
(a) writeln ('real => ', exp(3*Ln(3)):0:0); // return 27
(b) writeln ('int => ', int(exp(3*Ln(3))):0:0); // return 26
Ошибка? Функция calc 3^3 (показатель степени с использованием функций ln и exp), но преобразование из вещественного в целое не выполняется; в случае (а) вернуть 27, в случае (б) вернуть (26), когда должно быть 27 оба. Как я могу это решить? Большое спасибо за помощь.
Ps: тоже присвойте результат целочисленной переменной, используя trunc, результат не изменится.
Int(X)
не возвращает целое число, а просто возвращает целочисленное значениеX
, то есть значениеX
с удаленной дробной частью. Он эквивалентенTrunc(X)
, за исключением того, что фактически возвращает целое число. - person Rudy Velthuis   schedule 09.09.2011