我正在尝试计算以下情况的每月付款:
5,000美元借款3年,每月复利8.00%,期末1000美元到期。
/*
From Math.pas
function Payment(Rate: Extended;
NPeriods: Integer;
const PresentValue: Extended;
const FutureValue: Extended;
PaymentTime: TPaymentTime): Extended;
*/
var
Pmt : Extended;
begin
Pmt := Payment(0.08/12,36,5000,1000,ptEndOfPeriod);
Edit1.Text := FloatToStr(Pmt);
end
结果= -181.351526101918
结果是正确的,除非它是否定的。
为什么Payment函数的结果会返回负数?
答案 0 :(得分:8)
负值是预期的。如果运行Excel的PMT功能,您将看到相同的结果。
该功能在钱的方向之间取得平衡。负号表示您正在为借入的资金支付资金(函数调用中的正值)。如果在函数中切换为负值(即-5000和-1000),则结果为正。
答案 1 :(得分:1)
既然你借了钱,你可以试试** - ** 5000和** - ** 1000吗?
答案 2 :(得分:1)
5000要变成1000,你必须取走一些东西,而不是添加它。由于您是付款而未收到,因此您应该预期会有负数。