java怎么判斷100內(nèi)的質(zhì)數(shù)
質(zhì)數(shù)是指只能被1和自身整除的正整數(shù)。在解決實(shí)際問(wèn)題時(shí),經(jīng)常需要判斷一個(gè)數(shù)是否是質(zhì)數(shù)。本文將介紹兩種常見(jiàn)的方法來(lái)判斷100以?xún)?nèi)的質(zhì)數(shù)。 方法一:窮舉法 窮舉法是最直觀簡(jiǎn)單的方法,即遍歷2到該數(shù)的平方
質(zhì)數(shù)是指只能被1和自身整除的正整數(shù)。在解決實(shí)際問(wèn)題時(shí),經(jīng)常需要判斷一個(gè)數(shù)是否是質(zhì)數(shù)。本文將介紹兩種常見(jiàn)的方法來(lái)判斷100以?xún)?nèi)的質(zhì)數(shù)。
方法一:窮舉法
窮舉法是最直觀簡(jiǎn)單的方法,即遍歷2到該數(shù)的平方根范圍內(nèi)的所有數(shù),判斷是否能被整除。代碼如下:
public class PrimeNumber {
public static boolean isPrime(int num) {
if (num lt; 2) {
return false;
}
for (int i 2; i lt; Math.sqrt(num); i ) {
if (num % i 0) {
return false;
}
}
return true;
}
public static void main(String[] args) {
for (int i 1; i lt; 100; i ) {
if (isPrime(i)) {
(i "是質(zhì)數(shù)");
}
}
}
}
方法二:埃拉托斯特尼篩選法
埃拉托斯特尼篩選法是一種更高效的質(zhì)數(shù)判斷方法。該方法通過(guò)不斷篩選出質(zhì)數(shù)的倍數(shù)來(lái)找到所有的質(zhì)數(shù)。代碼如下:
public class PrimeNumber {
public static Listlt;Integergt; getPrimeNumbers(int n) {
boolean[] isPrime new boolean[n 1];
(isPrime, true);
Listlt;Integergt; primes new ArrayListlt;gt;();
for (int i 2; i lt; n; i ) {
if (isPrime[i]) {
(i);
// 篩選出質(zhì)數(shù)的倍數(shù)
for (int j i * i; j lt; n; j i) {
isPrime[j] false;
}
}
}
return primes;
}
public static void main(String[] args) {
Listlt;Integergt; primes getPrimeNumbers(100);
for (int prime : primes) {
(prime "是質(zhì)數(shù)");
}
}
}
通過(guò)以上兩種方法,我們可以簡(jiǎn)單、高效且可靠地判斷100以?xún)?nèi)的質(zhì)數(shù)。讀者可以根據(jù)實(shí)際需求選擇最適合自己的方法。
這樣的文章格式演示例子已經(jīng)清楚了嗎?