判断一个数是否为质数
质数是指在大于1的自然数中,除了1和它自身外没有其他因数的自然数。
一、标记法
flag初始值为true,当n%i === 0时(1<i<n),说明n不是质数,此时flag值为false且循环终止;当n%i != 0 时,flag的值始终为true,此时会输出n是质数。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
function num(n){
for(var i=2;i<n;i++){
var flag=true
if(n%i===0){
flag=false
document.write(n+'不是质数')
break
}
}
if(flag){
document.write(n+'是质数')
}
}
num(prompt('请输入一个数字'))
</script>
</body>
</html>二、计数法
计算n%i === 0 的次数(1<=i<=n),当count值为2时说明n为质数,当count>2时说明n不是质数。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
function num(n){
var count=0
for(var i=1;i<=n;i++){
if(n%i===0){
count++
}
}
if(count===2){
document.write(n+'是质数')
}
else if(count>2){
document.write(n+'不是质数')
}
}
num(prompt('请输入一个数字'))
</script>
</body>
</html>本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!