javascript素数,素数js代码

使用javascript编写程序,显示100以内的素数

.mainTB td

我们提供的服务有:网站制作、成都网站设计、微信公众号开发、网站优化、网站认证、邹城ssl等。为千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的邹城网站制作公司

{

text-align:right;

width:50px;

}

function generate() {

var tb = document.getElementById("tb");

var row;

var cell;

var n = 0;//当前列下标

var count;//整除数量

for (var i = 1; i 101; i++) {

count = 0;

for (var j = 1; j = i; j++) {//运算

if (i % j == 0) {

count++;

if (count 2) {

break;

}

}

}

if (count == 2) { //判断质数

if (n == 0) { //新行

row = tb.insertRow(tb.rows.length);

}

cell = row.insertCell(n);

cell.innerHTML = i;

if (++n == 6) { //跳列

n = 0;

}

}

}

}

input type="button" value="计算" onclick="generate()"/

table id="tb" class="mainTB"

/table

用JavaScript语言编程实现判断100以内的素数

以下代码可以实现JavaScript求n个素数,当n=500时满足题目需求。

function prime(n){

var primeArr = [2];

var isPrime = function(num, primeList){

if(num == 2){

return true;

}

for(var i = 3, iLen = Math.sqrt(num), j = 1; i = iLen; i = primeList[j++]){

if(num % i == 0){

return false;

}

}

return true;

}

if(isNaN(n) || n  1){

return [];

}

for(var i = 3,  i  n; i += 2){

if(isPrime(i, primeArr)){

primeArr.push(i);

}

}

return primeArr;

}

prime(100)

//函数调用

prime(100);//计算100以内的素数:

素数即除去1和其本身两个数之外,不能被任何数整除的整数。

由公理可知,如果一个整数能被分解成多个整数,则必有一个数不大于该整数的平方根(反证法可知,如果分解成的两个数都大于平方根,则乘积必大于原数),故在循环时,只需循环到该数的平方根即(Math.sqrt(num)为求平方根)

如果一个数能被2整除,则除2之外其他数都不是素数,故从3开始遍历能够减少循环次数

如果一个数能够被分解,则最终分解结果必然为多个素数之积,故循环时只需要尝试之前算好的素数能否整除当前的数,极大减少循环次数

如何用javascript编写出出1到100的素数?

for(let i=1;i=100;i++){

if(check(i)) {

console.log(i)

}

}

// 判断当前给定的数 num 是否为素数, 是素数返回 true, 否则返回 false

function check(num){

if(num === 1) {

// 1 不是素数也不是合数, 返回 false

return false

} else {

// 声明变量用于统计从1~根号下 num,之间 能被 num 整除的数的个数

let count = 0;

for(let i=1; i=Math.sqrt(num); i++) {

if(num%i === 0) {

count++

// 当发现在1~根号下 num 之间有超过1个数可以被 num 整除, 说明 num 一定不是素数,直接返回false, 后面的数不用判断了

if(count 1) {

return false

}

}

}

// 因为素数只能被1和自身整除,

// 那么从1~根号下 num 之间一定只有一个数(1)可以被 num 整除, 所以当 count 等于1时, 这个num 就是素数

return count == 1

}

return false

}

javascript写出100以内的素数

var arr = [];

for(var i = 2; i  100; i++){

var yes = true;

for(var j = 2; j = i / 2; j++){

if(i % j == 0){

yes = false;

break;

}

}

if(yes){

arr.push(i);

}

}

console.log(arr);


分享文章:javascript素数,素数js代码
网页地址:http://scyanting.com/article/dsdpcjp.html