本题要求编写程序,根据公式C n m = m!(n−m)! n! 算出从n个不同元素中取出m个元素(m≤n)的组合数。
时间: 2023-02-05 21:01:42 浏览: 286
C语言程序设计-编写main程序调用函数fact求解从m个元素选n个元素的组合数的个数;组合数=m!(n!.(m-n)!);
5星 · 资源好评率100%
首先,我们可以将公式写成这样:
C(n, m) = n! / (m! * (n - m)!)
然后,我们可以使用 Python 来实现这个程序,代码如下:
```
def combination(n, m):
# 计算阶乘的函数
def factorial(x):
result = 1
for i in range(1, x+1):
result *= i
return result
return factorial(n) / (factorial(m) * factorial(n - m))
```
这个函数接受两个参数:n 和 m。它首先计算出 m! 和 (n-m)!,然后将它们相乘并除以 n!。这样就可以得到 C(n, m) 的值了。
示例用法:
```
print(combination(5, 3)) # 输出 10
print(combination(10, 5)) # 输出 252
print(combination(20, 10)) # 输出 184756
```
阅读全文