今天考试没考好,所以好好反省了一下,说明自己的基础知识不够牢固,所以对每个编程题进行研究。

第一种解法:原始的利用for循环

题目:求1!+2!+3!+4!+…+N!的值

public class Sum {public static void main(String[] args){long s;long sum=0;for(int j=1;j<=20;j++){//外循环s=1;for(int i=1;i<=j;i++){//内循环,求对应数的乘方s=s*i;}sum=sum+s;}System.out.println("总和为:"+sum);}}

第二种方法:利用方法

public class Sum {private static long factorial(int num) {//获取相应数的阶乘方法if( num==1){return 1;}return num*factorial(num-1);}public static long sum(int num){//求对应数的和的方法if( num==1){return 1;}return factorial(num)+sum(num-1);}public static void main(String[] args) {System.out.println(sum(20));}
}

第三种方法:for循环+方法

public class FacDemo {//求阶乘的方法public long fac(int n){long s=1;for(int i=1;i<=n;i++){s*=i;//s=s*i;}return s;}public static void main(String[] args) {// TODO Auto-generated method stubFacDemo facDemo=new FacDemo();long fac=facDemo.fac(3);System.out.println("3!="+fac);//测试是否正确//求1!+2!+3!+4!+..10!long sum=0;for(int i=1;i<=20;i++){fac=facDemo.fac(i);sum+=fac;}System.out.println("1!+2!+3!+4!+..20!="+sum);}}

Java实现求阶乘和的三种方法相关推荐

  1. js实现阶乘算法的三种方法

    js实现阶乘算法的三种方法 // 非递归写法 function f(n) {if (0 === n) {return 1;}let res = 1;for (let i = 1; i <= n; ...

  2. c语言数组最大可定义多少位_C语言求数组的最大值三种方法

    /* 黄哥Python培训 黄哥所写*/#include int maxValue(int* arr, int n);int maxRecursionValue(int* arr, int n);in ...

  3. Java 数组转成集合List三种方法和(数组、集合List、Set相互转换)

    Java 数组转成集合List 三种方法 package com.list;import java.util.ArrayList; import java.util.Arrays; import ja ...

  4. Java中遍历Set集合的三种方法

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  5. c语言实现求最大公约数的三种方法

    一.最大公约数 最大公因数,也称最大公约数.最大公因子,指两个或多个整数共有约数中最大的一个.a,b的最大公约数记为(a,b),同样的,a,b,c的最大公约数记为(a,b,c),多个整数的最大公约数也 ...

  6. matlab求pi值的三种方法

    https://www.icourse163.org/learn/CSU-1002475002?tid=1450231442#/learn/content?type=detail&id=121 ...

  7. Java中遍历Set集合的三种方法(实例代码)

    哈喽,欢迎来到小朱课堂,下面开始你的学习吧! Java中遍历Set集合的三种方法 废话不多说,直接上代码 1.迭代遍历: Set set = new HashSet(); Iterator it = ...

  8. java中从键盘输入的三种方法以及Console输入

    java中从键盘输入的三种方法: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre ...

  9. JAVA 取出Map元素值 的三种方法

    JAVA 取出Map元素值 的三种方法: (1)方法一: 通过Map的keySet()方法获取key 的set ,迭代set元素(每个元素调再用Map的get()方法); (2)方法二 : 通过Map ...

  10. Matlab求矩阵的逆(三种方法)

    Matlab求矩阵的逆(三种方法) 说明:若所求矩阵为非奇异矩阵(可逆矩阵),则可以精确求得其逆矩阵:若所求矩阵为奇异矩阵,则所求出的逆矩阵是近似的(不精确). 下面以矩阵A为例. inv()方法 A ...

最新文章

  1. 机智云官网用到的库-grid.css我解析
  2. 通电后第一次开机黑屏_电脑无法开机怎么办,8 种情况的修复方法
  3. 架构师之路17年精选80篇
  4. jquery实现:返回顶部(动画·代码精简版)- 代码篇
  5. vulcan 编程_如何用Next代替流星— Vulcan Next Starter简介
  6. node.js ejs_如何在Node.js应用程序中使用EJS模板
  7. 去哪儿-04-iconsDev
  8. 增量式编码器定时器配置和速度计算的处理方法
  9. 使用boost库获取应用程序的所在目录
  10. PE启动盘安装操作系统
  11. Android USBCamera投屏 - 利用UVC协议将手机上的画面有线投屏到Android车机的屏幕上
  12. 如何自学成为程序员?
  13. java 跨年 周计算公式_Java关于周跨年的周数计算
  14. Red Giant VFX Suite for mac(电影级视觉特效插件)
  15. Python茅台抢购脚本详细教程
  16. 利用Python读取Excel表格并可视化
  17. java get方法_java get方法
  18. Python2 基础
  19. 《南方有乔木》:陈伟霆、白百何带你玩转“黑科技”无人机和VR虚拟现实
  20. 云媒易:保健品行业怎么做软文推广?

热门文章

  1. 网站性能优化的34条黄金守则(三)—JavaScript和CSS
  2. JavaScript 中的单例模式 (singleton in Javascript)
  3. Sql Server 中常用的字符串函数
  4. shiro会话监听_Shiro权限控制_(二)_session
  5. el 能否定义作用域变量_EL表达式语法简介及其使用
  6. 网页加载出现没有合适的负载均衡器_一篇文章彻底了解清楚什么是负载均衡
  7. mplfinance画k线图_华尔街交易王:真正短线高手是寻找60分钟K线中的“牛股”
  8. CTreeCtrl 类的InsertItem成员函数
  9. [Python图像处理] .获取图像属性、兴趣ROI区域及通道处理
  10. nginx connect() to (13: Permission denied) while connecting