欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java如何用递归方法求阶乘

程序员文章站 2022-03-11 14:04:18
java 用递归方法求阶乘一个正整数的阶乘,是所有不大于该数的正整数的积,并且0的阶乘为1,n的阶乘写作n!,由1808年基斯顿·卡曼(christian kramp,1760~1826)引进这个表示...

java 用递归方法求阶乘

一个正整数的阶乘,是所有不大于该数的正整数的积,并且0的阶乘为1,n的阶乘写作n!,由1808年基斯顿·卡曼(christian kramp,1760~1826)引进这个表示法。

java代码:

//用递归方法求阶乘
public class factorial{
    public static void main(string[] args){
        int n = 5;
        for(int n = 0; n <= n; n++){
            int fact = factorial(n);
            system.out.println(n + " 的阶乘值是: " + fact);
        }               
    }
    public static int factorial(int n){
        if(n < 1)
            return 1;       
        return factorial(n-1) * n;
    }
}

输出:

0 的阶乘值是: 1
1 的阶乘值是: 1
2 的阶乘值是: 2
3 的阶乘值是: 6
4 的阶乘值是: 24
5 的阶乘值是: 120

java 用递归计算1~n阶乘的值

java中使用递归计算1~n阶乘的值

public class test {
 // 求阶乘的方法
 public static int factorial (int m) {
  if (m == 1) {
   // 这里要记住,return的是factorial方法,而不是结束执行if方法。
   return 1;
  }
  return m * factorial(m - 1);
 }
 
 public static void main(string[] args) {
  int n = n;
  system.out.println(factorial(n));
 }
}

java中使用递归计算1~10阶乘的值(这里将数值代入的话更好理解)

public class test {
 // 求阶乘的方法
 public static int factorial (int m) {
  if (m == 1) {
   // 这里要记住,return的是factorial方法,而不是结束执行if方法。
   return 1;
  }
  return m * factorial(m - 1);
 }
 
 public static void main(string[] args) {
  int n = 10;
  system.out.println(factorial(n));
 }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。