gpt4 book ai didi

java - 帕斯卡三角形达到极限

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:26:32 25 4
gpt4 key购买 nike

所以发生的事情是,当三角形到达第 13-14 行时,数字要么变得太大,要么计算不正确。无论哪种方式,我都坚持了一段时间。在这些更高的数字之前,我认为没有理由可以完美地进行计算。可能是这些值超出了整数的限制或者方法中可以包含什么?任何输入或帮助将不胜感激。

public class Pascal { 

/**
* @param args
*/
public static void main(String[] args) {

for(int i = 0; i < 10; i++){
for(int j = 0; j <= i; j++){
System.out.print(Pascal.factorial(i) / (Pascal.factorial(j) * Pascal.factorial(i
- j)) + " ");
}
System.out.println();
}
}

public static int factorial(int num){
int num2 = 1;
for(int i = num; i >= 2; i--){
num2 *= i;
}
return num2;
}

}

最佳答案

是的,12! = 479,001,600 适合 32 位整数但 13! = 6,227,020,800 没有。

还有another formula对于仅涉及加法的二项式系数。如果您使用那个,只要最终结果适合您的类型,您就不必使用更大的类型。

关于java - 帕斯卡三角形达到极限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24707081/

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