Java 示例 - 计算因数

  • 问题描述

    如何使用计算一个数的阶乘的方法?
  • 解决方案

    此示例显示了使用方法计算 9(9) 数的因子的方法。
    
    public class MainClass {
       public static void main(String args[]) {
          for (int counter = 0; counter <= 10; counter++) {
             System.out.printf("%d! = %d\n", counter, factorial(counter));
          }
       }
       public static long factorial(long number) {
          if (number <= 1) return 1;
          else return number * factorial(number - 1);
       }
    }
    
  • 结果

    上面的代码示例将产生以下结果。
    
    0! = 1
    1! = 1
    2! = 2
    3! = 6
    4! = 24
    5! = 120
    6! = 720
    7! = 5040
    8! = 40320
    9! = 362880
    10! = 3628800
    
    下面是阶乘的另一个例子
    
    public class NumberFactorial {
       public static void main(String[] args) {
          int number = 5;
          int factorial = number;
          
          for(int i = (number - 1); i > 1; i--) {
             factorial = factorial * i;
          } 
          System.out.println("Factorial of 5 is " + factorial);
       }
    }
    
    上面的代码示例将产生以下结果。
    
    Factorial of 5 is 120