Почему при возведении числа в степень, оно почему-то (и как-то) умножается на 0.1 и результат получается не таким, как должен быть? Допустим,, возвожу четыре в третью степень, должно получиться 4 * 4 * 4 = 64, но получается 6.400000000. Почему так?
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
a, b, c, d: real;
begin
writeln('input a, b, c and d:');
readln(a, b, c, d);
if (((b > a) AND (c > b) AND (d > c)) OR ((a > b) AND (b > c) AND (c > d))) then
begin
a := exp(3 * ln(a));
b := exp(3 * ln(b));
c := exp(3 * ln(c));
d := exp(3 * ln(d));
end
else
begin
a := 3;
b := 3;
c := 3;
d := 3;
end;
writeln('a = ', a, ' b = ', b, ' c = ', c, ' d = ', d);
readln;
end.