【发布时间】:2013-02-22 03:51:05
【问题描述】:
所以我将运行一个玩掷骰子的模拟器。
我的任务要求我运行 sim 10,000,000 次。
这些都不是问题;我制作了 sim,我知道如何运行,我知道如何创建所需的变量。
我不确定,我应该如何存储每场比赛的结果?
我最终需要找到的是:
每场比赛的平均投掷次数 游戏中的最大掷骰数 需要超过 30 卷的游戏数量 获胜次数 损失数 获胜的概率 最长的胜利序列和最长的失败序列
一切都很简单,我只是不知道如何存储 10,000,000 个数字然后轻松访问它们。
例如第一个: 平均卷数 我应该创建一个包含 10,000,000 个项目的数组列表吗?在每局游戏结束时添加一项,然后将它们全部相加并除以 10,000,000?
我意识到这应该可行,我只是想知道是否有其他方法,或者可能是更好(更有效)的方法。
这个问题的新部分: 我可以从一个方法返回多个值吗?目前,模拟运行了 10,000,000 次,每次都会返回输赢。但我还需要它来返回每场比赛的掷骰数......否则我无法计算出平均掷骰数和最高掷骰数以及超过 30 次掷骰的游戏数。
这里有什么想法吗?
【问题讨论】:
-
您为什么需要 10,000,000 个数字有什么特别的原因吗?如果是这样,您打算在列表中存储什么?
-
为什么需要存储每次运行的结果?您可以即时计算所有汇总统计数据。
-
NirmalGeo:运行 Sim 10,000,000 次只是任务的一部分。很可能会有不止一个数组将游戏的输赢存储为 1 和 0;一个会存储每场比赛的掷骰数。
-
感知:我现在正在研究那个方法;因为这似乎是最好的路线。这只是弄清楚我所有的变量以及如何收集它们的数据的问题。在这一点上我花了很多时间,因为我对 Java 很陌生!
标签: java arrays list simulator