我需要计算每月存款的储蓄账户的每月复利。我必须使用的变量:
每月节省(例如,我每月存入125.75美元)
月(例如,我将其存放15个月)
APR (年利率为5.65%)
现在我需要计算总储蓄金额,对于给定的数字,最终答案应该是1958.88美元
本质上,我正在使用A = P(1 + r / 12)^(12 * t),其中P是我存入的金额*月,r是APR,t是获得“的月数/ 12”多少年“
这里的问题是我不能使用math.pow()作为赋值的要求,所以我最好的猜测是我用类似于以下的for / while循环来计算它:
public static void main(String[] args)
{
double monthlySavings = 125.75;
double APR = 5.65;
int months = 15;
int monthCount = 0;
double totalSavings = 0;
while (monthCount < months)
{
totalSavings += monthlySavings + (1+APR/12/100);
mothCount++;
}
System.out.printf("Your total savings will be $%.2f\n", totalSavings);
}
上面的代码不是正确的解决方案,但它是最接近我的。问题是我每次积累的利息都会累积到总额之前。例如。它为15个存款增加了125.75 *的利息。它应该做的是从125.75 *利息开始然后加上125.75,然后取出你目前为止的总金额的利息,然后再加上125.75并再次获取总金额的利息,依此类推几个月。
这可能比我要做的要容易得多,但我已经尝试了几个小时添加不同的占位符变量,但我缺少一些关键概念,请帮忙!
答案 0 :(得分:2)
月数循环
for (int monthNumber = 0; monthNumber < numberOfMonths; monthNumber++)
{
}
然后每个月每个月添加兴趣,然后添加每月节省。按照这个顺序,你的另一种方式最终会对你刚存入的钱感兴趣,这是错误的。
totalSavings *= (APR / 12 / 100); //Although I would have separate variable for this
totalSavings += monthlySavings;
你真的不需要保持一个月的数量,但我更喜欢循环。
答案 1 :(得分:0)
在重新阅读我的问题之后,我有了一个顿悟。正如我原先想的那样,答案比我想要的要容易得多。
public static void main(String[] args)
{
double monthlySavings = 125.75;
double APR = 5.65;
int months = 15;
int monthCount = 0;
double placeHolder = 0;
double totalSavings = 0;
while (monthCount < months)
{
placeHolder += monthlySavings;
totalSavings = placeHolder * (1+APR/12/100);
placeHolder = totalSavings;
monthCount++;
}
System.out.printf("Your total savings will be $%.2f", totalSavings);
}