【发布时间】:2018-11-02 16:26:57
【问题描述】:
我目前正在编写一个程序,其中我必须使用 for 循环递归地计算一个数字。但不幸的是,我不知道如何正确实现这个函数,因为我当前的实现没有计算出正确的答案。
public class Calc {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double k = sc.nextDouble();
double e = sc.nextDouble();
double q = sc.nextDouble();
int n = sc.nextInt();
for (int i = 0; i < n; i++) {
k = (k + (i * e)) * (1 + q); //The problem I have is that I don't know how to access the previous element of the for-loop
}
}
}
【问题讨论】:
-
你说你应该递归,但我没有看到任何可以递归调用的方法。另外,你的尝试是什么?您的代码目前什么都不做,甚至没有编译。看起来更像是练习模板,而不是你的尝试。还要说明哪个部分有问题。阅读How to Ask,谢谢。
-
请求家庭作业帮助的问题必须包括您迄今为止为解决问题所做的工作摘要,以及对您在解决它时遇到的困难(help center,How to Ask)。
-
你的递归函数在哪里?
-
我的程序应该扫描指定的 4 个值。使用 for 循环它应该将在循环中计算的下一个值添加到现有的 k 值。基本上我试图实现的公式看起来像 k = ( k + i * e) * (1 + q)。用斜体写的k是前面的k
-
你到底想做什么。例如,预期的输出是什么?为什么要将 for 循环转换为递归函数?