求20以内N!

求20以内的N!

递归方法:

public static int factorial(int n) {
        if(n==1) {
            return 1;

        }else {
            return n*factorial(n-1);
        }
    }

非递归:

import java.util.Scanner;

public class Factorial {
    public String factorial(int n) {
        int result = 1;
        for(int i=1;i<=n;i++) {
            result = result*i;//result*=i;
        }
        String s = String.valueOf(result);
        return s;
    }
}

测试主函数:

public static void main(String[] args) {
        Factorial f = new Factorial();
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        System.out.println(f.factorial(n));
        //System.out.println(f.factorial(3));
    }

猜你喜欢

转载自blog.csdn.net/qq_42175113/article/details/82221304