是否為質數

2022-03-25 20:56:28 字數 851 閱讀 2366

思路為:

1->2是質數,所有是偶數的都是2的倍數一定不是質數(除了2,偶數一定不是質數,因此我們不需要考慮任何偶數)

2.->從3開始考慮到n的奇數,其中某個數,如3的所有整數倍的數都不是質數,我們需要找到不小於n為止,即全部考慮到

->這樣的話,當我們遍歷到9的時候,因為9不是第一次出現,他已經被3考慮為非質數了。

//**如下:

public

int countprimes(int

n) }

}return

res;

}

//當我們為3的時候已經把n內所有3的倍數都設定過了,當為5的時候我們就沒必要再去設定*3了,當為7的時候就沒有必要設定*3和*5的了,由此我們優化為下方**

每次直接從他的本身為倍數起始即可!

public

int countprimes(int

n) }

}return

res;

}

如果求前n個(不包含n)全部的質數陣列則**如下:

public

static

int getprimes(int

n) }

}int res=new

int[count+1];

res[0]=2;

int index=1;

for(int i=3;i)

}return

res;

}

判斷是否為質數

程式接受兩個正整數的輸入,構成乙個閉區間,找出這個區間內的所有質數。判斷乙個數n是否為質數時,先對這個數開平方,隨後從2開始,迴圈到這個平行根,檢查其中的數能否整除數n,若能整除,則為合數,否則為質數。由於sqrt函式的返回值是double型別,為保證準確性 如sqrt 4 返回值可能是1.9999...

判斷是否為質數 c 實現)

01 判斷是否為質數 描述 輸入正整數a,判斷是否為質數 a 106 輸入一行乙個正整數a 輸出如果a是質數,則輸出a shi zhi shu 如果a不是質數,則輸出a bu shi zhi shu。格式請參考樣例 樣例輸入 31樣例輸出 31 shi zhi shu filename isprim...

Python 判斷是否為質數或素數

乙個大於1的自然數,除了1和它本身外,不能被其他自然數 質數 整除 2,3,5,7等 換句話說就是該數除了1和它本身以外不再有其他的因數。首先我們來第乙個傳統的判斷思路 def handlernum num 質數大於 1 if num 1 檢視是否有其他因子 for i in range 2,num...