递归实现阶乘:Python/Java/JS代码对比
Python 代码示例
def calculate_factorial(n): if n == 0 or n == 1: return 1 else: return n * calculate_factorial(n - 1) number = int(input("Enter a number: ")) print(f"The factorial of {number} is {calculate_factorial(number)}") Java 代码示例
import java.util.Scanner; public class Factorial { public static int calculateFactorial(int n) { if (n == 0 || n == 1) { return 1; } else { return n * calculateFactorial(n - 1); } } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter a number: "); int number = scanner.nextInt(); System.out.println("The factorial of " + number + " is " + calculateFactorial(number)); } } JavaScript 代码示例
function calculateFactorial(n) { if (n === 0 || n === 1) { return 1; } else { return n * calculateFactorial(n - 1); } } const number = parseInt(prompt("Enter a number: ")); console.log(`The factorial of ${number} is ${calculateFactorial(number)}`); 代码说明
以上代码实现了计算一个数的阶乘的功能。用户输入一个数字,程序会计算并返回该数字的阶乘。递归方法被用来实现阶乘的计算。每种编程语言的实现方式略有不同,但核心逻辑相同。