javascript 显示一定范围内的素数(质数)转
Posted 雪上
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 显示一定范围内的素数(质数)转相关的知识,希望对你有一定的参考价值。
//<span style="font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 21.6000003814697px;">素数又称质数,是大于1的自然数,并且只有1和它本身两个因数。</span><a target=_blank href="http://www.cnblogs.com/greenteaone/p/4210789.html">转文地址</a>
<!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="请输入数字" οnfοcus="clearNumbers()" />
<button οnclick="printPrime1()" >打印素数(方法1)</button>
<label>耗时</label>
<label id="showTime1"></label>
<button οnclick="printPrime2()" >打印素数(方法2)</button>
<label>耗时</label>
<label id="showTime2"></label>
</div>
<P id="all1" mode="wrap"></P>
<P id="all2"></P>
</body>
</html>
以上是关于javascript 显示一定范围内的素数(质数)转的主要内容,如果未能解决你的问题,请参考以下文章