解析利用javascript如何判断一个数为素数
判断是否为素数?
质数(primenumber)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。
合数,数学用语,英文名为Compositenumber,指自然数中除了能被1和本身整除外,还能被其他数(0除外)整除的数。与之相对的是质数(因数只有1和它本身,如2,3,5,7,11,13等等,也称素数),而1既不属于质数也不属于合数。最小的合数是4。
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>素数:只能被1和它本身整除。</title>
</head>
<body>
<formaction="">
<h1>判断素数</h1>
请输入一个整数:<inputtype="text"id="int"><br>
判断结果:<inputtype="text"id="result"><br>
<inputtype="button"value="判断"onclick="judge()">
</form>
<script>
functionjudge(){
varx=document.getElementById("int").value;
varr=document.getElementById("result");
if(isNaN(x)==true){
alert("请输入合法数字!!!");
}
else{
if(x==1){
r.value="1既不是素数也不是合数";
}elseif(x==2){
r.value="2是素数";
}else{
for(vari=2;i<x;i++){
if(x%i==0){
r.value=x+"不是素数";
break;
}
}
if(i==x){
r.value=x+"是素数";
}
}
}
}
</script>
</body>
</html>
值得注意的是:在这里我们可以使用isNaN()方法来判断用户输入是否合法:
alert(isNaN(NaN));//true
alert(isNaN(10));//false(10是一个数值)
alert(isNaN("10"));//false(可以被转化成数值10)
alert(isNaN("blue"));//true(不能被转化成为数值)
alert(isNaN(true));//false(可以被转化成数值1)
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,同时也希望多多支持毛票票!