【发布时间】:2018-10-18 01:19:11
【问题描述】:
我的答案是在从 52 张牌中抽出 3 张牌的情况下找出组合的数量。就像 52 中的 0 张卡片应该 = 1、1 应该 = 52、2 = 1326 等等。但我有 0 = 1、1 = 1、2 = 52 等等。我会修改什么以达到预期的结果?我认为错误在 def factorial() 但无论我尝试什么,我似乎都无法修复/找到问题。
def factorial(num):
i = 2
if num == 0:
num = 1
print(num)
elif num > 1:
for i in range(i, num):
num = num * i
return num
def combinations(n,r):
l = n-r
nn = factorial(n)
rn = factorial(r)
ln = factorial(l)
result = nn / (rn * ln)
print(result)
return result
def main():
h = 52
a = 0
while a<4:
combinations(h,a)
a = a + 1
【问题讨论】:
-
range(i, num):->range(i, num + 1):结束参数是排除。
标签: python function statistics combinations