JS判斷質數

思路:

質數是指在大於1的自然數中,除了1和該數自身外,無法被其他自然數整除的數。2是唯一一個既是偶數又是質數的數字。

首先判斷傳入的參數是否爲number類型,其次將小於2的數字和偶數排除,最後用循環去檢查數字(不需要檢查參數開方後之後的數字,只需檢查前半部分的數字就可以了)。

 

代碼如下:

function isPrimeNum(num) {
    if(typeof num !== "number") {
        return false;
    } else if(num < 2) {
        return false;
    } else if(num === 2) {
        return true;
    } else if(num % 2 === 0) {
        return false;
    }
    let sq = Math.sqrt(num);
    for(let i=3; i <= sq; i += 2){
        if(num % i === 0) {
            return false;
        }
    }
    return true;
}

console.log(isPrime(3));

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章