Lazarus, ошибка при делении чисел

Есть функция:

function DiscontValue(MoneyValue: real; CurrentTime: integer;
         Tau: integer; ProcentRate: double; h: double = 1): real;
begin
   Result := MoneyValue / (1 + ProcentRate * ((CurrentTime - Tau)/h));
   writeln(floattostr(Result));
end;

При ее вызове:

s1 := DiscontValue(1000, 3, 0, 0.25);

в строке

writeln(floattostr(Result));

выходит ошибка введите сюда описание изображения

Подскажите, пожалуйста, как правильно приводить типы при делении? Или я что-то делаю не так?


Ответы (1 шт):

Автор решения: zurn

Я поменял тип Real и Double на Currency и все заработало.

→ Ссылка