用递归求5的阶乘,并把结果在控制台输出

阶乘定义:一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。

递归:一句话就是,方法自己调用自己。

需求:用递归求5的阶乘,并把结果在控制台输出

思路:
1.定义一个方法,用于递归求阶乘,参数为一个int类型的变量
2.在方法内部判断该变量的值是否为1
是:return 1;
不是:return n * (n-1)!
3.调用方法
4.输出结果

代码:

package com.yang.demo;

/**
 * @author WangYang
 * @version 1.0
 * @create 2020-02-10 14:28
 * 一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。
 * 自然数n的阶乘写作n!。
 */
public class FactorialDemo {
    public static void main(String[] args) {
        //调用方法
        int result = getFactorialResult(5);
        System.out.println("阶乘结果是"+result);
    }

    //Factorial result
    public static int getFactorialResult(int n){
        //在方法内部判断该变量值是否为1
        if(n == 1){
            //是:返回1
            return 1;
        }else {
            //不是:返回n * (n-1)!
            return n * getFactorialResult(n-1) ;
        }
    }
}

运行结果:

发布了7 篇原创文章 · 获赞 5 · 访问量 835

猜你喜欢

转载自blog.csdn.net/Wangyang_1705/article/details/104258119