[英]issue in loop of finding prime number in java
我知道這里的錯誤是在 for 循環中,因為它應該是 i=2 但是如果我把它設置為 i=1 那么為什么它沒有進入循環。有人可以干運行這段代碼並告訴我這到底是怎么回事問題
if(n==2)
{ return true;}
for(int i=1;i<=Math.sqrt(n);i++){
if(n % i == 0){
return false;
}
}
return true;
首先,您需要了解其背后的數學原理。 任何數字(即整數正數)除以 1 時都會給出提示 0:
n % 1 == 0
因此,此條件將始終為真。 如果你的情況,一旦你在 n = 1,你返回 false。 我建議你在程序的每一行都打印出 output,你會看到行為。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.