面试题:判断偶数和素数

来源:互联网 发布:百度贴吧数据统计 编辑:程序博客网 时间:2024/05/16 05:01

偶数

偶数就不用说了,很简单。

function isEven(i) {        // i 将会是个整数,当其是偶数的时候返回true, 不是偶数时返回false        if(i%2 == 0){            return true;        }else{            return false;        }    }    console.log(isEven(5));

素数

素数指除了1和它本身以外不能被其他数整除的数。

  • 判断方法是:2是最小的素数,大于2的数先用这个数先除以2,如果能除尽,则为合数,然后除以3,如果能除尽,则为合数…一直到这个数的开方值仍然不能除尽,则为素数。
function isPrime(i) {        // i 将会是个整数,当其是素数的时候返回true, 不是素数时返回false        if(typeof i !== "number" || !Number.isInteger(i)){            return false;        }        //2是最小的素数,2以上的偶数都能被2整除,排除        if(i == 2){            return true;        }else if(i % 2 == 0){            return false;        }        // 找到i的开方        var sqrt = Math.sqrt(i);        // 从3开始遍历,每次加2        for(var k = 3;k <= sqrt;k += 2){            if(i % k === 0){                return false;            }        }        return true;    }    console.log(isPrime(5));