javascript 显示一定范围内的素数(质数)

简介:

素数又称质数,是大于1的自然数,并且只有1和它本身两个因数。

具体实现代码如下:

复制代码
<!DOCTYPE HTML>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <script type="text/javascript" src="http://files.cnblogs.com/greenteaone/jquery-2.1.3.min.js" charset="utf-8"></script>
    <title></title>
</head>
<body>
<script type="text/javascript">
    //方法1,当要求取得超过5000范围内的素数时,此法耗时少
    function printPrime1(){
        var t1=new Date();
        var n=$("#number").val();
        var status=0;
        var numbers='方法1:2,3';
        var all=2;
        console.log('素数=',2);
        for(var i=5;i<n;i++){
            for (var j = 2; j <= Math.sqrt(i); j++) {
                if (i % j == 0) {
                    status = 0;
                    break;
                } else {
                    status = 1;
                }
            }
            if(status==1){
                numbers=numbers+','+i;
                all=all+1;
            }
        }
        var t2=new Date();
        var t=parseFloat(t2-t1);
        $("#showTime1").html(t);

        $('#all1').html('总的素数'+all+','+numbers);
    }
    //方法2:当要求取得小于5000范围内的素数时,此法耗时跟方法1相差不大
    function printPrime2(){
        var t1=new Date();
        var n=$("#number").val();
        var status=0;
        var all=1;
        var numbers='方法2:2';
        for(var i=3;i<n;i++){
            for(var k=2;k<i;k++){
                if(i%k==0){
                    status=0;
                    break;
                }else{
                    status=1
                }
            }
            if(status==1){
                numbers=numbers+','+i;
                all=all+1;
            }
        }
        var t2=new Date();
        var t=t2-t1;
        $("#showTime2").html(t);
        $('#all2').html('总的素数'+all+','+numbers);
    }
    function clearNumbers(){
        $('#all1').html('');

        $('#all2').html('');
    }
</script>
<style type="text/css">
    input{
        text-align: center;
        height:30px;
        border:1px solid #CCC;
        border-radius: 3px;
        box-shadow:3px 3px lavender ;
    }
    button{
        box-shadow: 2px 3px lavenderblush;
        height: 30px;
        border-radius: 13px;
        border: 1px solid #ccc;
        background: coral;
    }
    label{
        width: 60px;
    }
    p{
        width:90%;
        margin:auto;
        word-break: break-all ;
        line-height: 30px;
    }
    div{
        width:90%;
        margin:auto;
    }
</style>
<div>

    <input type="text" id="number" placeholder="请输入数字" onfocus="clearNumbers()"  />
    <button onclick="printPrime1()" >打印素数(方法1)</button>
    <label>耗时</label>
    <label id="showTime1"></label>
    <button onclick="printPrime2()" >打印素数(方法2)</button>
    <label>耗时</label>
    <label id="showTime2"></label>
</div>
<P id="all1" mode="wrap"></P>
<P id="all2"></P>
</body>
</html>
复制代码

 

作者:绿茶叶 
出处:http://www.cnblogs.com/greenteaone/ 
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载:http://www.cnblogs.com/greenteaone/p/4210789.html

目录
相关文章
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0
|
2月前
|
消息中间件 Web App开发 JavaScript
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
77 0
|
4天前
|
JavaScript 前端开发 测试技术
学习JavaScript
【4月更文挑战第23天】学习JavaScript
11 1
|
11天前
|
JavaScript 前端开发 应用服务中间件
node.js之第一天学习
node.js之第一天学习
|
1月前
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
|
1月前
|
JavaScript
Vue.js学习详细课程系列--共32节(4 / 6)
Vue.js学习详细课程系列--共32节(4 / 6)
35 0
|
1月前
|
前端开发 搜索推荐 JavaScript
编程笔记 html5&css&js 001 学习编程从网页开始
编程笔记 html5&css&js 001 学习编程从网页开始
|
2月前
|
前端开发 JavaScript
从零开始学习前端开发:HTML、CSS、JavaScript入门指南
【2月更文挑战第1天】本文将带领读者从零开始学习前端开发,介绍HTML、CSS和JavaScript的基础知识与应用,帮助读者快速入门前端开发领域。
65 1
|
2月前
|
数据采集 机器学习/深度学习 JavaScript
画【Python折线图】的一百个学习报告(二、pyecharts引入js文件)
画【Python折线图】的一百个学习报告(二、pyecharts引入js文件)
51 0
|
2月前
|
JSON 前端开发 JavaScript
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
35 0
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)