上一篇学了递归之后,练习一下递归算法。
题目:使用递归算法计算阶乘的值,也就是5!=5*4*3*2*1,直接使用循环是非常简单的,这边练习一下递归算法。
先写一下两个条件
基线条件:等于1的时候返回1
递归条件:x * f(x-1)
下面直接开始写代码
package com.dlh.test.算法;import java.util.Scanner;public class 递归算法之阶乘 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int num = sc.nextInt();int result = fact(num);//调用递归函数System.out.println(num+"!"+"="+result);}private static int fact(int num) {int result = 0;if (num == 1){//基线条件return 1;}else {//递归条件result = num*fact(num-1);//递归调用自己}return result;}
}