public boolean checkPrime(int number)
{
int divisor = 2;
int remainder = 1;
while(number != divisor)
{
remainder = number % divisor ;
if(remainder == 0)
{
return false ;
}
else
{
divisor ++ ;
}
}
return true ;
}
public void primeFactors (int num)
{
int i = 2 ;
while( i <= num)
{
if(num % i == 0)
{
boolean isPrime = checkPrime(i);
checkPrime(i) ;
if(isPrime)
{
System.out.print("," + i);
i++;
}
else
{
i++;
}
}
else
{
i++ ;
}
}
}
}我試圖做一個質因子分解Java代碼爲我的AP計算機科學類和我堅持
我遇到的問題是,我不能把它打印出來的不止僅僅指剛一個每個號碼。例如,如果你輸入16,它只會給你一個2而不是4 2。我正在使用支票素數,因爲我的教授正在製作我們,我知道您可以在沒有它的情況下執行該計劃。我在這裏是新的,我非常感謝任何建議!
一些建議:閱讀[問]。使用調試器。喝很多水。 – Amit
檢查在這裏:http://stackoverflow.com/questions/38541142/prime-number-checker-using-java和大量的質數重複。在這裏你犯了很多錯誤,比如循環到數字而不是sqrt(數字),當你找到它時不會被這個因素分開,... –