java中用于计算银行货币账户的递归代码
我想用java实现一个递归代码,用于在投资几年后计算银行的货币账户。。。这是我的密码java中用于计算银行货币账户的递归代码,java,Java,我想用java实现一个递归代码,用于在投资几年后计算银行的货币账户。。。这是我的密码 public static double computeCapital(double capital, int years, double interestRate) { if (years == 0) { return capital; } else { double newcapital = capital * Math.pow(interestRate,year);
public static double computeCapital(double capital, int years, double interestRate) {
if (years == 0) {
return capital;
} else {
double newcapital = capital * Math.pow(interestRate,year);
return computeCapital(newcapital , years+1 , interestRate);
}
}
我的代码正确吗?
谢谢您的停止条件为年==0 您的递归从年开始,并计算年-1的资本 如果你想知道你在3年内的资本,你将在2年内计算资本并乘以利率。
2年资本为1年资本乘以利率
查看。不,您的代码将无法通过编译,即使您将
年更改为年
,您也可能会得到StackOverflower错误。请使用它不是一年吗?否则递归将花费很长时间..如何纠正它?Burkhard为什么是年-1?这不是应该计算,直到达到所需的年份,然后停止!
public static double computeCapital(double capital, int years, double interestRate) {
if (years == 0) {
return capital;
}
else{
return computeCapital(capital, years-1, interestRate)*(1+interestRate);
}
}