Python 阶乘函数计算组合数 C(m, n) - 代码示例与解析
Python 计算组合数 C(m, n) - 代码示例
本文使用 Python 编写自定义函数计算阶乘,并利用该函数计算组合数 C(m, n)。
计算公式:
C(m, n) = m! / (n! * (m-n)!)
**代码实现:**python# 自定义函数,计算阶乘def factorial(n): if n == 0: return 1 else: return n * factorial(n-1)
输入 m 和 nm, n = map(int, input().split())
判断数据是否符合要求if m < n or m <= 0 or n <= 0: print('Error')else: # 计算组合数 C = factorial(m) // (factorial(n) * factorial(m-n)) print(C)
运行效果示例:
运行效果 1:
10 5252
运行效果 2:
5 10Error
代码解析:
- 自定义函数
factorial(n): 用于计算阶乘,当n为 0 时返回 1,否则递归调用自身计算n-1的阶乘并乘以n。2. 输入m和n: 使用input()函数获取用户输入的两个正整数,并使用map(int, input().split())将输入字符串转换为整数并分别赋值给m和n。3. 数据校验: 判断m是否小于n或者m或n是否小于等于 0,如果是,则输出Error,否则进行组合数计算。4. 计算组合数: 使用factorial()函数计算m、n和m-n的阶乘,然后使用//进行整数除法得到组合数C。
总结:
本文提供了一个简洁的 Python 代码示例,用于计算组合数 C(m, n),并对代码进行了详细解析,方便理解和应用。
原文地址: https://www.cveoy.top/t/topic/j786 著作权归作者所有。请勿转载和采集!