解析利用javascript如何判断一个数为素数

所属分类: 网络编程 / JavaScript 阅读数: 1505
收藏 0 赞 0 分享

判断是否为素数?

质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。

合数,数学用语,英文名为Composite number,指自然数中除了能被1和本身整除外,还能被其他数(0除外)整除的数。与之相对的是质数(因数只有1和它本身,如2,3,5,7,11,13等等,也称素数),而1既不属于质数也不属于合数。最小的合数是4。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>素数:只能被1和它本身整除。</title>
</head>
<body>
  <form action="">
    <h1>判断素数</h1>
    请输入一个整数:<input type="text" id="int"><br>
    判 断 结 果:<input type="text" id="result"><br>
    <input type="button" value="判断" onclick="judge()">
  </form>
  <script>
    function judge(){
      var x=document.getElementById("int").value;
      var r=document.getElementById("result");
      if(isNaN(x)==true){
        alert("请输入合法数字!!!");
      }
      else {
        if(x==1){
          r.value="1既不是素数也不是合数";
        }else if(x==2){
          r.value="2是素数";
        }else{
          for(var i=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)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,同时也希望多多支持脚本之家!

更多精彩内容其他人还在看

Canvas实现放射线动画效果

本文主要分享了Canvas实现放射线动画的示例代码。具有很好的参考价值,下面跟着小编一起来看下吧
收藏 0 赞 0 分享

微信小程序 image组件binderror使用例子与js中的onerror区别

这篇文章主要介绍了微信小程序 image组件binderror使用例子与js中的onerror区别的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

原生js轮播(仿慕课网)

本文主要分享了原生js实现仿慕课网的轮播效果。具有很好的参考价值,下面跟着小编一起来看下吧
收藏 0 赞 0 分享

Bootstrap table简单使用总结

这篇文章主要为大家总结了Bootstrap table的简单使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

微信小程序之MaterialDesign--input组件详解

本篇文章主要介绍了微信小程序之MaterialDesign--input组件详解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
收藏 0 赞 0 分享

浅析javaScript中的浅拷贝和深拷贝

本篇文章主要介绍了浅析javaScript中的浅拷贝和深拷贝,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

js时间戳和c#时间戳互转方法(推荐)

下面小编就为大家带来一篇js时间戳和c#时间戳互转方法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Bootstrap模态框使用详解

这篇文章主要为大家详细介绍了Bootstrap模态框的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Jil,高效的json序列化和反序列化库

下面小编就为大家带来一篇Jil,高效的json序列化和反序列化库。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

BootStrap实现带关闭按钮功能

这篇文章主要介绍了BootStrap实现带关闭按钮功能,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多