关于java:最有可能两个骰子的总和

Most likely sum of two dices

我有两个骰子,用户可以选择其中的面孔数量。我想编写代码以输出最可能的结果。例如,如果用户选择2个6面骰子,则结果应为7。但是,如果用户选择1个3面骰子和1个4面骰子,则输出应为4和5。不同循环中每个不同和的可能性如何,但是我想知道是否还有更简单的方法,因为我只在乎MOST可能的和,而不是所有的和。

任何建议或帮助将不胜感激!

编辑。由于一直抱怨打印不必要的代码,因此无法打印出我所做的所有尝试,因此,我将把您链接到我尝试过的其他示例,但是将其删除,因为它们似乎不必要地困扰着我的问题。 https://coderanch.com/t/517923/java/Dice-probability-program-nested-loops我意识到那个例子不适合,因为这需要我不确定的滚动次数。然后,我尝试通过使用while循环尝试所有可能的组合,但是我陷入了中间,因此选择不使用它。

现在我只有:

1
2
3
4
5
6
7
8
9
10
11
12
13
Scanner scanner = new Scanner (System.in);
while (scanner.hasNextInt()) {
int x,y;
x=scanner.nextInt();
y=scanner.nextInt();
if (x==y) {
int z = x+1;
System.out.println(z)
} else {
int z= ((x+y)/2)+1;
System.out.println(z);
}
}

问题:如果存在两个不同数量的人脸,则变量z仅打印出总和相等的可能性之一。


令a??和b为边数,并假设a小于(或等于)b。然后,a 1和b 1之间的所有和都具有相同的(a /(a b)的可能性),并且该可能性也是最大的。您希望如何在代码中返回此值取决于您。