JavaScript

超轻量级php框架startmvc

javascript实现计算指定范围内的质数示例

更新时间:2020-08-10 11:42:01 作者:startmvc
本文实例讲述了javascript实现计算指定范围内的质数。分享给大家供大家参考,具体如下:

本文实例讲述了javascript实现计算指定范围内的质数。分享给大家供大家参考,具体如下:

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

算法:判断一个数是否是质数,只需判断它是否能被小于它开跟后后的所有数整除,这样做的运算就会少了很多,因此效率也高了很多。算法来源:《Java求质数的几种常用算法》

javascript计算指定范围内的质数源代码:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JavaScript获取指定范围内的质数</title>
<style>
body{word-break:break-all;word-wrap:break-word}
</style>
</head>
<body>
<script>
 function isPrimeNumber(v) {//判断是否为质数
 var s = Math.floor(Math.sqrt(v));
 for (var i = s; i > 1; i--) if (v % i == 0) return false;
 return true;
 }
 function getPrimeNumber(min, max) {//获取指定范围内的质数集合
 if (min > max) { var t = max; max = min; min = t;}
 var rst = [];
 for (var i = Math.max(2, min) ; i <= max; i++) if (isPrimeNumber(i)) rst.push(i);
 return rst;
 }
 var min = parseInt(prompt('请输入最小数字')) || 0;
 var max = parseInt(prompt('请输入最大数字')) || 0;
 document.write(min+'~'+max+'范围内质数有:'+getPrimeNumber(min, max));
</script>
</body>
</html>

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码,可得如下运行结果:

 

PS:这里再为大家推荐一款功能相似的在线工具供大家参考:

在线分解质因数计算器工具: http://tools.jb51.net/jisuanqi/factor_calc

javascript 计算 指定范围内 质数 计算质数