您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Java >> java 初学者 跪求java 求阶乘之和的思想。

java 初学者 跪求java 求阶乘之和的思想。

来源:网络整理     时间:2016/8/4 0:56:36     关键词:

关于网友提出的“ java 初学者 跪求java 求阶乘之和的思想。”问题疑问,本网通过在网上对“ java 初学者 跪求java 求阶乘之和的思想。”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: java 初学者 跪求java 求阶乘之和的思想。
描述:

求 1~7的 阶乘之和


解决方案1:

引用 2 楼 DearLC 的回复:
这是比较简单的方法,你可以看看

public class Test {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 7; i++) {
sum += jiecheng(i);//再把1-7的阶乘累加起来就行了
}
System.out.println(sum);
}
public static int jiecheng(int n){//先定义求一个数n的阶乘的方法
int sum =1;
for (int i = 1; i <= n; i++) {
sum *= i;
}
return sum;//返回n的阶乘
}
}

+1对初学者比较好理解 解决方案2:

int count = 0, s = 1, i = 0;
while (i++ < 8 && (count += s = s * i) > 0);
System.out.println(count);
解决方案3:

这是比较简单的方法,你可以看看


public class Test {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 7; i++) {
sum += jiecheng(i);//再把1-7的阶乘累加起来就行了
}
System.out.println(sum);
}
public static int jiecheng(int n){//先定义求一个数n的阶乘的方法
int sum =1;
for (int i = 1; i <= n; i++) {
sum *= i;
}
return sum;//返回n的阶乘
}
}
解决方案4:

方法有很多种,可以用循环。最好试下用递归,加深对方法的理解

解决方案5:

直接递归就可以实现


public class Test {
    public static int jiecheng(int n) {
        if (n == 1) return 1;
        return n * jiecheng(n - 1);
    }
    public static int sum(int n) {
        if (n == 0) return 0;
        return jiecheng(n) + sum(n - 1);
    }
    public static void main(String... args) {
        System.out.println(sum(7));
    }
}

以上介绍了“ java 初学者 跪求java 求阶乘之和的思想。”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3102339.html

相关图片

相关文章