我必须编写一个程序来计算中彩票的概率 按奥地利体系计算(45 分中的 6 分)。
我使用这个公式:45!/6!*39! = 45 *44*43*42*41*40/1*2*3*4*5*6
(因为数字被缩短了)。但计算不正确,程序给出 2179827
作为答案而不是 8415060
。有人可以帮助我并告诉我错误在哪里吗?
package homework_1;
public class Aufgabe_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int n = 45*44*43*42*41*40;
int m = 1*2*3*4*5*6;
int w = n/m;
System.out.println("Die Wahrscheinlichkeit ist: " + w);
}
}
提前非常感谢您! :)
最佳答案
在您的代码中45*44*43*42*41*40
它将超出int
限制。使用long
存储结果
long n = (long)45*44*43*42*41*40;
long m = (long)1*2*3*4*5*6;
long w = n/m;
关于java - 我的程序计算不正确(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60660182/