您好我正在制定一项投资计划,您可以确定在为退休储蓄之前为您的学生贷款投入尽可能多的钱,或者如果最好只支付 贷款最低付款并投资剩余部分。
我的电源功能有问题。虽然我检查了每个非无限数字的部分,但它每次都保持无限远,但是每次都是futureInvestment = inf。谁能告诉我这里做错了什么? Ps我也在头文件中使用了include。
totalTime = (retireAge-currentAge);
//A = P(1+r/n)^nt
moneyAfterMinPayment = (userMoney-monthlyLoanPayment)*12;
printf("money after min payment each year is %lf \n",moneyAfterMinPayment);
//test P = 5000. r = 5/100 = 0.05 (decimal). n = 12. t = 10.
futureInvestment = pow(moneyAfterMinPayment*(1+
investmentReturnRate),totalTime);
答案 0 :(得分:0)
典型值:
totalTime is about 40.
moneyAfterMinPayment is about 5000.
investmentReturnRate is about 1.05
因此,您计算的(5000*1.05)**40
为5250**40
,大约为10**150
。
现在你应该发现自己,正确的公式是什么。
下次出现类似问题时,请在表达式之前和之后打印参数值,以及中间结果。你会发现自己发生了什么。
答案 1 :(得分:0)
所以替换公式:
futureInvestment = pow(moneyAfterMinPayment*(1+investmentReturnRate),totalTime);
这一个:
futureInvestment = moneyAfterMinPayment * pow((1+investmentReturnRate),totalTime);
如果investmentReturnRate = 0.0,则结果必须与moneyAfterMinPayment相同。