- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在学习 MIT OpenCourseWare 计算机编程入门类(class),我不确定我是否以正确的方式解决了一个简单的模拟问题。
- What is the probability of rolling a Yahtzee! on the first roll? That is, what is the probability of rolling five 6-sided dice, and having them all display the same number?
- Write a Monte Carlo simulation to solve the above problem (the Yahtzee problem), and submit your code as
所以滚动 Yahtzee 的概率是 1/1296 或大约 .077%
这是我运行模拟的代码:
import random
def runYahtzee(numTrials):
"""Runs the classes version of the yahtzee simulation"""
success = 0
for i in range(numTrials):
dices = []
for i in range(6):
dices.append(random.randrange(1,7))
#print dices
state = True
for dice in dices:
if dice != dices[0]:
state = False
if state == True:
print "You got a Yahtzee"
print dices
success += 1
print "numTrials is: " + str(numTrials)
print "Success is: " + str(success)
rate = float(success)/numTrials
return rate
runYahtzee(10000000)
多次运行该程序,我每次都得到大约 .0001258。这是 0.012%,但实际概率约为 0.077%。我在这里做错了什么吗?
最佳答案
你做错的是掷 6 个骰子而不是 5 个。
0.001258 * 6 = 0.0007548
...接近您的 0.077%
改变你的循环:
for i in range(5):
顺便说一句,复数是dice
;单数是die
。 dices
是错误的,除非你想变得有趣。在这种情况下,您可以使用单数形式的“douse”...never say die!
关于python - 简单的 Yahtzee 模拟没有给出正确的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44401139/
我正在制作 java yahtzee 游戏,我只是想知道以下代码在任何情况下是否都会产生误报 die 是一个数组,其中包含每个骰子的伪随机(Math.random())数字,我已使用冒泡排序对它们进行
我拿回了学校作业,要求我们为 Yahtzee 游戏创建一些函数,其中之一是同类函数。这是我写的代码,我得到的评论是:“你必须能够检查所有数字直到 nrOfDieValues。”我不太确定如何检查最多
对于一项学校作业,我们正在努力用 java 实现 yahtzee 游戏,但我在为直道(小直道和大直道,这意味着 4/5 连续数字用于小直道和 5/5 表示大)。 我做了一个我认为应该有效的算法,但实际
我正在参加初学者的java类(class)。我已经使用这个 yahtzee 程序三周了,但我仍然无法弄清楚这一点。我需要滚动 5 个骰子两次,看看我是否得到一个 yahtzee(5 个骰子相同) 我在
我为 Yahtzee 编写了代码。我的代码询问用户是否想玩 Yahtzee 还是顺子。然后它会滚动,直到获得快艇或直道。 它运行良好,但需要很长时间并且需要太多轮次,所以我希望我的代码更加高效并且能够
我正在学习 MIT OpenCourseWare 计算机编程入门类(class),我不确定我是否以正确的方式解决了一个简单的模拟问题。 What is the probability of rolli
这是我的情况,我目前正在创建一个 Yahtzee game在 Lazarus IDE 中使用 Turbo Pascal 语言,我负责开发的计分方面,我已经完成了计分的下半部分,并且已经开始了较高部分,
在我制作的 Yahtzee 游戏中,我创建了一个有效的 javascript 函数来检查 5 个数字的数组是否有小顺子。我已经对它进行了无休止的测试,我相信它在 100% 的时间内都能正常工作,但就效
我一直在 StackOverflow 上寻找一个简单的 C++ 网络 TCP 连接,我似乎只找到了 Java、Python 和 C#。我知道 Python 或 Java 可以建立简单的连接,但大多数情
更新:我发现我的 DP 解决方案没有正确处理奖金的问题。我向状态数组添加了一个维度来表示前 6 个类别的总和。但是,解决方案超时。这不是很严重的超时,因为每个测试用例在我的机器上可以在不到 1 秒的时
我被要求用 Java 编写一个 Yahtzee 游戏。问题是,我有一个包含 5 个值的 vector (代表骰子),这些值是使用以下代码随机生成的: Value= 1 + (int)(Math.ran
我正在为学校的一项作业制作这个程序,但是我们需要获得获得 Yahtzee 所需的最高掷骰数和获得 Yahtzee 所需的最少掷骰数。然后我们需要找到平均卷数。目前,我对确定获得 Yahtzee 的最高
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this q
我正在尝试检查保留的骰子掷骰(最多 5 个)是否是 3 个同类,因此我正在尝试将骰子掷骰值相互比较。 R的第一个值当然显示为0,但是代码运行后R的第二个值每次都显示为8191,我不太清楚为什么。 我也
我在初学者 C++ 类(class)中,我正在尝试构建一个 Yahtzee 游戏,用户可以在该游戏中掷骰子,希望所有五个骰子都获得相同的数字。我们需要尝试握住弹出次数最多的骰子(例如,我们掷出“4 5
我目前无法让我的重压机在 100% 的时间内正常工作。有时它的行为是正确的,只会改变我选择的内容,但有时它似乎有自己的想法。这是我的代码中的一些片段。 Int main() ... whi
我想输入一些与 rand 和 srand 函数混淆的“简单”代码,并且我尝试编写 Yahtzee rolls 的模拟器。它随机掷出 5 个骰子,如果它们匹配,它会打印出你有一个 Yahtzee 以及需
我是 C++ 的初学者,这是家庭作业,但我卡住了。我还有一个问题,然后我就完成了。我想不出一种算法可以判断用户输入的是小直线 (1234) 还是 (2345) 还是 (3456)。我知道如何使用循环来
我是一名优秀的程序员,十分优秀!