【发布时间】:2013-04-09 20:33:54
【问题描述】:
我需要编写一个递归方法来计算以下系列:
m(i) = 1/3 + 2/5 + 3/7 + 4/9 + 5/11 + 6/13 + .... + i/(2i + 1)
然后我需要编写一个程序,为i = 1,2,....10 显示m(i)。
我了解递归的基本思想,到目前为止我已经完成了 2 个程序,一个用于阶乘,一个用于斐波那契数列。这个问题把我难住了。
这是我目前所拥有的。
public static void main(String[] args) {
for (int i = 1; i <= 10; i++) {
System.out.println(m(i));
}
}
public static double m(int i) {
if (i == 1)
return 1;
else
return ???;
}
【问题讨论】:
-
你卡在哪里了?到目前为止你有什么?
-
@thegrinner 为你更新了它。
-
如前所述,这个问题自然不适合递归。但是,可能是连续分子遵循具有简单递归定义的序列的情况。如果这是真的,那么这与其说是一个编程问题,不如说是一个数学问题,您可能在 math.stackexchange.com 上获得更多运气。如果这不是真的,那么这对于理解递归来说是一个糟糕的问题。