在这个简单的 python 程序中,我们需要使用递归找到一个数的阶乘。这是一个关于递归函数的 python 程序。
要理解这个例子,您应该了解以下 Python 编程主题:
- Python 函数
- Python 数据类型
- Python 决策语句
一个数的阶乘是多少?
在这个 python 程序中,我们必须使用 python 中的递归函数找到给定数字的阶乘。所以我们必须理解你所说的因子是什么意思。一个数的阶乘是从 1 到该数的所有数的乘积。
比如一个数5 的阶乘是 5 4 3 2 1 就是 120 。现在我们要明白什么是递归?递归是直接或间接重复调用自身的函数。在这里,我们必须递归调用阶乘函数,每次参数数小于 1。然后用一个小于 1 的参数乘以这个递归函数。
return num * factorial(num - 1)
python 中如何求一个数的阶乘?
在这个 python 程序中,我们接受来自用户的数字,并使用int
数据类型将该数字保存在变量中。现在检查数字是否小于零。如果是这样,打印,我们不能做那个数字的阶乘。现在检查数字是否为零;如果是这样,那么打印该数字的阶乘为 1。否则我们调用函数阶乘(num) ,使用递归计算阶乘。在函数内部,我们使用 python 中的if
条件来检查数字是否为 1。如果是,请返回数字。Else
调用功能**return** num * factorial(num - 1).
算法
STEP 1: 使用 python 中的输入功能输入来自用户的数字。并将该字符串转换为整数并存储在变量中。
步骤 2: 使用if
条件检查数字是否大于零。如果数字小于零,则打印找不到负数的阶乘。
步骤 3: 使用elif
条件检查数字是否等于零。然后打印零的阶乘为 1 。
STEP 4: 调用阶乘函数,将数字作为参数传递。并将结果打印为数字的阶乘在 python 编程中定义用户函数阶乘
用户定义函数阶乘
步骤 1: 使用定义函数来定义带有参数的函数阶乘。
步骤 2: 使用if
条件检查数字是否等于 1。然后返回 num。
步骤 3: 将结果作为一个数字乘以一个小于 1 的函数阶乘返回。
Python 源代码
def factorial(num): # recursive function that call itself to find the factorial of the number
if num == 1:
return num
else:
return num * factorial(num - 1) # finding factorial by multiplying number with factorial of that number less than one,
num = int(input("Enter a Number to find the factorial: ")) # accept a number in python using input function
if num < 0:
print("Factorial for negative numbers cant be calculated") # check the number is negative or not and print cannot find factorial for negative numbers
elif num == 0:
print("Factorial of 0 is 1") # if the number is 0 then print factorial of number 0 is 1
else:
print("Factorial of the number is: ", factorial(num)) # calling the factorial function using number as parameter
输出
Enter a Number to find the factorial: 5
Factorial of the number is: 120
本文链接:https://my.lmcjl.com/post/15003.html
4 评论