androidstudio中的计算组合
我有一个javascript来计算组合,效果很好。但当我尝试使用Android studio代码时,结果是错误的 Jsandroidstudio中的计算组合,android,android-studio,Android,Android Studio,我有一个javascript来计算组合,效果很好。但当我尝试使用Android studio代码时,结果是错误的 Js var n=16; var r=2; 函数faktor(sayi){ var sonuc=1; 对于(var i=1;i@Dorbagna,您的整数变量已溢出该值。将sonuc从int转换为long将解决您的问题 法克托(蒂克拉南)=法克托(16)=2092278988000 而int可以容纳的最大值是2147483647(Integer.MAX_值) public stati
var n=16;
var r=2;
函数faktor(sayi){
var sonuc=1;
对于(var i=1;i@Dorbagna,您的整数变量已溢出该值。将sonuc从int转换为long将解决您的问题
法克托(蒂克拉南)=法克托(16)=2092278988000
而int可以容纳的最大值是2147483647(Integer.MAX_值)
public static int tiklanan=16;
公共静态int kombinasyon=2;
//将变量int type更改为long
长sonuc2;
//将返回类型更改为long
私人长发器(int sayi){
//将局部变量int type更改为long
长sonuc=1;
对于(inti=1;我是否调用过posibilityhesapla
方法?是的,我调用过。但正如我所说,它返回-1stackowerflow))
var n=16;
var r=2;
function faktor(sayi) {
var sonuc=1;
for(var i=1;i<=sayi;i++)
{
sonuc*=i;
}
return sonuc;
}
function calculate (){
var sonuc2=faktor(n)/(faktor(r)*faktor(n-r));
console.log(sonuc2);
}
calculate();
public static int tiklanan = 16;
public static int kombinasyon = 2;
int sonuc2;
private int faktor(int sayi){
int sonuc=1;
for(int i=1;i<=sayi;i++)
{
sonuc*=i;
}
return sonuc;
}
private void posibilityhesapla(){
sonuc2=faktor(tiklanan)/(faktor(kombinasyon)*faktor(tiklanan-kombinasyon));
Toast.makeText(this, "/"+sonuc2, Toast.LENGTH_SHORT).show();
}
public static int tiklanan = 16;
public static int kombinasyon = 2;
// Change variable int type to long
long sonuc2;
//change return type to long
private long faktor(int sayi) {
// Change local variable int type to long
long sonuc = 1;
for (int i = 1; i <= sayi; i++) {
sonuc *= i;
}
return sonuc;
}
private void posibilityhesapla() {
sonuc2 = faktor(tiklanan) / (faktor(kombinasyon) * faktor(tiklanan - kombinasyon));
Toast.makeText(this, "/" + sonuc2, Toast.LENGTH_SHORT).show();
}