-1
这是我迄今为止。我无法确切地知道如何更改数字,所以它很有意义。我是否需要将索引作为等式的一部分?虽然看起来像n1(前面的数字)+(1/n2)应该给我一个新的n2。有什么想法吗?使用递归给定m(i)= 1 + 1/2 + 1/3 + 1/4 + 1/5 ... + 1/i
package myrecursivemethod;
public class MyRecursiveMethod {
private static double index = 0;
private static double stoppingPoint=10;
public static void main(String[] args) {
double n1= 0;
double n2= 1;
System.out.println("index: " + index + "->" + n1);
myRecursiveMethod(n1, n2);
}
public static void myRecursiveMethod(double n1, double n2)
{
System.out.println("index: " + index + " -> " + (n1+(1/n2)));
if (index == stoppingPoint)
return;
index ++;
myRecursiveMethod(n2, n1+(1/n2));
}
}
尝试打印出所有的变量,然后考虑是否真的看起来是正确的。 – 2014-09-28 22:46:21
尽量不要在方法中使用任何静态(或非静态)字段。这个任务可以用只有一个参数的方法完成,比如'double m(double i)'。试着按照这种方式来看公式,即m(4)=(1 + 1/2 + 1/3)+ 1/4,这意味着m(4)= m(3)+ 1/i。现在尝试概括它。 – Pshemo 2014-09-28 22:59:38
@Pshemo我会把它变成一个答案,一些观众不读评论 – DreadHeadedDeveloper 2014-09-28 23:01:21