欢迎访问宙启技术站
智能推送

使用Java函数计算给定数字的阶乘。

发布时间:2023-06-30 15:52:25

阶乘是指一个自然数n及其之前所有自然数的乘积,通常用n!表示,例如5! = 5 × 4 × 3 × 2 × 1 = 120。

在Java中,可以使用递归和循环两种方式来计算给定数字的阶乘。

1. 使用递归方式计算阶乘:

public class Factorial {

    public static long factorial(int number) {
        if (number < 0) {
            throw new IllegalArgumentException("Number must be non-negative.");
        }
        if (number == 0 || number == 1) {
            return 1;
        }
        return number * factorial(number - 1);
    }

    public static void main(String[] args) {
        int number = 5;
        long result = factorial(number);
        System.out.println("Factorial of " + number + " is: " + result);
    }
}

2. 使用循环方式计算阶乘:

public class Factorial {

    public static long factorial(int number) {
        if (number < 0) {
            throw new IllegalArgumentException("Number must be non-negative.");
        }
        long result = 1;
        for (int i = 2; i <= number; i++) {
            result *= i;
        }
        return result;
    }

    public static void main(String[] args) {
        int number = 5;
        long result = factorial(number);
        System.out.println("Factorial of " + number + " is: " + result);
    }
}

无论使用递归还是循环方式,都需要注意数字必须是非负数。否则,要么抛出IllegalArgumentException,要么返回特定的错误码或值,具体取决于实际需求。