- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
这是我的家庭作业问题,在 Java 中:编写一个程序,模拟掷 2 个骰子 20 次。该程序输出每对结果,并计算并输出结果为 1, 1
的次数。
我尝试运行这段代码,但遇到了问题。这是我的代码:
Scanner in = new Scanner(System.in);
int dice1, dice2, i, j, countOneOne;
countOneOne = 0;
// dice1 = 0;
// dice2 = 0;
for (j = 1;j <= 5; j++) {
dice1 = 1 +(int) (Math.random() * 6);
j = dice1;
System.out.println("Result of dice1: " + dice1);
}
for (i = 1; i <= 5; i++) {
dice2 = 1 +(int)(Math.random()*6);
i = dice2;
System.out.println("Result of dice2: " + dice2);
}
System.out.println("Result of dice1: " + dice1 + " ; Result of dice2: " + die2);
if (dice1 == 1 && dice2 == 1) countOneOne++;
System.out.println(countOneOne + " is the number of 1, 1 results");
首先,它一直告诉我必须初始化 dice1
和 dice2
但我不明白为什么。但更重要的是,我知道这不可能是正确的,但我只是不确定如何编写同时掷两个骰子然后在它们同时为 1 时计数的代码。
此外,我尝试将它们放在同一个循环中。这可能吗?
最佳答案
当使用 Math.random() * 6
时,您的代码有点偏离您将获得 0
范围内的值至 5
包含(您需要添加一个)。此外,如果将掷骰子的逻辑提取到方法中,逻辑会简单得多。类似的东西,
public static int rollDie(int sides) {
return (int) (Math.random() * sides) + 1;
}
然后你想实现你的方法。循环二十次,掷两个骰子。计算蛇眼的数量并打印滚动结果。喜欢,
public static void main(String[] args) throws Exception {
int snakeEyes = 0;
// Twenty times
for (int i = 0; i < 20; i++) {
// Roll two dice
int die1 = rollDie(6), die2 = rollDie(6);
// Count snake eyes.
if (die1 == 1 && die2 == 1) {
snakeEyes++;
}
// Display roll results.
System.out.printf("Result of die1: %d ; Result of die2: %d%n", die1, die2);
}
System.out.printf("%d is the number of 1,1 results%n", snakeEyes);
}
关于java - java模拟掷两个骰子看结果是不是 `1,1`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57644383/
我刚刚向自己介绍了 WebGL 和 Threejs,作为开始,我正在尝试创建一个 3D 骰子。我已经到了创建立方体的地步,但我真的不知道如何在立方体的面上放置数字,我能找到的只是如何更改颜色。我已经查
这就是我现在得到的...... var max = 7; var min = 1; $('#dice').click(function() { random = Math.floor(Math.r
我是 Unity 的新手,一直在尝试掷骰子。我遇到了一组教程,它们允许我创建一个 3d 模具(模具使用 Rigidbody 和 Mesh Collider)并编写脚本使其在空格键上滚动,如下所示: 骰
我是 JavaScript 新手,我需要一些想法/帮助来了解如何使我的脚本正常工作。所以我们的想法是,你掷两个骰子,通过按下“掷骰子”按钮然后按下重置按钮来重置整个 HTML 中的所有内容。 所以事情
我正在尝试构建一个掷骰子游戏,如果计算机自动掷出一对骰子,并且如果 cpu 掷出 7 或 11,则用户获胜。然而,如果用户掷出 2、3 或 12,他们将自动失败。如果用户滚动任何其他数字(4、5、6、
背景 如此处所述http://www.ericharshbarger.org/dice/#gofirst_4d12 , “先走”骰子是一组四个骰子,每个都有唯一的编号,因此: 任何两个或更多骰子都不会
我是一名优秀的程序员,十分优秀!