Для моей функции float_pow
, когда я тестирую с отрицательным x, например, используя код float_pow (-2.5) 2
, я получаю это сообщение об ошибке:
"Ошибка: это выражение имеет тип float, ноожидалось выражение типа int ".
Но если я сделаю float_pow (-.2.5) 2
, то код на самом деле работает.Как я могу изменить свой код, чтобы мне не нужно ставить точку после тире?
let rec float_pow x n =
if n < 0 then
0.
else if n = 0 then
1.
else
x *. float_pow x (n - 1);;