gpt4 book ai didi

java - 使用递归求和所有阶乘的值

转载 作者:行者123 更新时间:2023-11-29 04:49:38 25 4
gpt4 key购买 nike


我尝试编写一个递归方法,对从 0 到输入数字的所有阶乘的值求和,并将结果作为 double 值返回。我用 递归阶乘法计算单个阶乘。 但我不明白如何制作求和所有阶乘的方法使用两次递归而不是一次递归和 for 循环的递归方法。

这是代码!

public static int factorial(int numberinput) {
if (numberinput == 0)
return 1;
else
return (numberinput*factorial(numberinput-1));
}

public static double sum(int numberinput) {
double sum = 0;
for (int i = 0; i <= numberinput; i++)
sum += factorial(i);
return sum ;
}

最佳答案

递归 sum 方法的行为与递归 factorial 方法完全相同。唯一的区别是它使用加法而不是乘法。

public static double sum(int numberinput) {
if (numberinput == 0)
return 1;
else
return factorial(numberinput) + sum(numberinput-1);
}

关于java - 使用递归求和所有阶乘的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35886442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com