用JS编写求出100以内的质数

JavaScript013

用JS编写求出100以内的质数,第1张

// 定义函数,计算是不是质数, 只能被1和自己整除的数

function isPrime(n) {

    if (n <= 3) { return n > 1 }

    if (n % 2 == 0 || n % 3 == 0) { return false }

 

    for (var  i = 5 i * i <= n i += 6) {

        if (n % i == 0 || n % (i + 2) == 0) { 

            return false 

        }

    }

    return true

}

// 测试

console.log(isPrime(2)) // true

console.log(isPrime(3)) // true

console.log(isPrime(4)) // false

console.log(isPrime(5)) // true

运行结果:

参考下面代码

function isprime(x)

{

for(var i = 2i <sqrt(x)i++)

if(isdiv(x, i) == 0) return false

return true

}

<html>

<head>

</head>

<body>

<script type="text/javascript">

var sum = 0//定义一个变量装和

var zhisu = ""

for(var i=1 i<=100i++){ //从1到100加

var iszs = true

for(var j=2j<ij++){

if(i%j==0){

iszs = false

break

}

}

if(iszs){

zhisu += i + ","

sum+=i //等于sum = sum + i

}

}

alert("质数有:"+zhisu)

alert(sum)

</script>

</body>

</html>