溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java中怎么判斷數(shù)字是否是質(zhì)數(shù)

發(fā)布時間:2020-06-21 11:36:39 來源:億速云 閱讀:1504 作者:元一 欄目:編程語言

質(zhì)數(shù)的定義:

質(zhì)數(shù)(prime number)又稱素數(shù),有無限個。一個大于1的自然數(shù),除了1和它本身外,不能被其他自然數(shù)整除,換句話說就是該數(shù)除了1和它本身以外不再有其他的因數(shù);否則稱為合數(shù)。

根據(jù)算術(shù)基本定理,每一個比1大的整數(shù),要么本身是一個質(zhì)數(shù),要么可以寫成一系列質(zhì)數(shù)的乘積;而且如果不考慮這些質(zhì)數(shù)在乘積中的順序,那么寫出來的形式是唯一的。最小的質(zhì)數(shù)是2。

判斷一個數(shù)是否為質(zhì)數(shù)的方法:

如果是偶數(shù),直接返回;然后從3開始,步長為2,一直到n的算術(shù)平方根為止,都除不盡則為質(zhì)數(shù)。

Java程序:

public class Main {
	public static void main(String[] args) {
		
		for (int j = 0; j <= 19; j++) {
			System.out.println(j+":  "+isPrime(j) );
		}

	}

	private static boolean isPrime(int src) {
		double sqrt = Math.sqrt(src);
		if (src < 2) {
			return false;
		}
		if (src == 2 || src == 3) {
			return true;
		}
		if (src % 2 == 0) {// 先判斷是否為偶數(shù),若偶數(shù)就直接結(jié)束程序
			return false;
		}
		for (int i = 3; i <= sqrt; i+=2) {
			if (src % i == 0) {
				return false;
			}
		}
		return true;
	}
}

以上就是java判斷是否為素數(shù)(質(zhì)數(shù))的方法的詳細(xì)內(nèi)容,更多請關(guān)注億速云其它相關(guān)文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI