gpt4 book ai didi

JAVA嵌套循环用法

转载 作者:行者123 更新时间:2023-12-01 15:05:11 25 4
gpt4 key购买 nike

我有一个作业试图使用嵌套 for 循环来完成,但我似乎不知道如何做到这一点。

我需要:

编写一个程序来模拟 throw 一对 11 面骰子并确定每种可能的骰子组合被掷出的次数百分比。要求用户输入骰子要掷的次数。 计算每种骰子组合的概率。

我不太明白如何处理滚动的结果(我已经弄清楚了),这是我在代码中的位置:

for(int x = 0; x < total_rolls; x++){
int result = roll(sides); //roll(sides) gets two random ints under 12, then adds them together

}

最佳答案

听起来您想计算骰子值组合的频率(出现次数)。

您可以创建尺寸为 11x11 的矩阵。每当您在骰子 1 上掷出类似 6 的组合,在骰子 2 上掷出 10 的组合时,都会增加矩阵中的该单元格。您可以将此矩阵视为直方图。

然后通过从矩阵中读取一个条目并将其除以total_rolls

来获得组合的模拟概率

这可能看起来像这样

int[][]histogram = new int[11][11];
for(int x = 0; x < total_rolls; x++){
int dice1 = roll(sides); //result of dice 1 (1-11)
int dice2 = roll(sides); //result of dice 2 (1-11)
histogram[dice1-1][dice2-1]++; //increment the frequency of this event
}

double prob = 1.0*histogram[5][9]/total_rolls; //probability of combination (6,10)

需要注意的两个细节,java中的数组是0索引的。另外,两个整数相除会得到一个整数,因此我们通过乘以 double 文字 1.0 将其变为 double 和整数相除;

关于JAVA嵌套循环用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13059129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com