【发布时间】:2013-12-28 09:04:01
【问题描述】:
编写一个模拟 2 个六面骰子的滚动。你的程序应该有一个函数 Roll() 来返回掷骰子的总和。您可以假设六个面中的每一个都同样有可能被掷出(也就是说,骰子是“公平的”)。运行您的模拟 1000 次并报告每次求和发生的频率。
到目前为止,我有这个,但我的程序似乎不会把总和加起来。我可能完全错了。请提供任何帮助。我认为我的主要问题在于我的印刷声明。我需要输出打印 2 的总和、3 的总和、4 的总和等到 12 显示多少次。
def Roll():
for i in range(1000):
one = 0
two = 0
three = 0
four = 0
five = 0
six = 0
dice1= float(0)
dice2= float(0)
dice1 = random.randint(1,6)
if dice1 == 1:
one = one + 1
count= 1
return count
elif dice1 == 2:
two = two + 1
count= 1
return count
elif dice1 == 3:
three = three + 1
count= 1
return count
elif dice1 == 4:
four = four + 1
count= 1
return count
elif dice1 == 5:
five = five + 1
count= 1
return count
else:
six = six + 1
count= 1
return count
dice2 = random.randint(1,6)
if dice2 == 1:
one = one + 1
elif dice2 == 2:
two = two + 1
elif dice2 == 3:
three = three + 1
elif dice2 == 4:
four = four + 1
elif dice2 == 5:
five = five + 1
else:
six = six + 1
total = one + two + three + four + five + six
print("2", dice1 + dice2)
print("3", dice1 + dice2)
print("4", dice1 + dice2)
print("5", dice1 + dice2)
print("6", dice1 + dice2)
print("7", dice1 + dice2)
print("8", dice1 + dice2)
print("9", dice1 + dice2)
print("10", dice1 + dice2)
print("11", dice1 + dice2)
print("12", dice1 + dice2)
【问题讨论】:
-
我删除了 SQL 标签,因为这似乎与 SQL 无关。
标签: python simulator python-3.2