JavaScript 用for迴圈輸出1-100之間所有的質數(只能被1和自身整除的數,不包括1)
阿新 • • 發佈:2019-01-07
用for迴圈輸出1-100之間所有的質數(只能被1和自身整除的數,不包括1)
也就是說 2 3 5 7 11 。。。等只有被1和自身整除的數字。
如何判斷出1到100的字數呢?
拿 51這個數字舉例
我們可以用for迴圈記錄一下
51%j=0的發生了幾次 這裡的 j表示 1到 51自身
for (var j = 1; j <= 51; j++) {
if( 51%j ==0 ){
count++;
}
}
console.log(count);
很顯然count是輸出的是2;
接下來,因為已知1不是質數,所以我們for迴圈2--100,然後在裡面新增以上for迴圈判斷程式碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{margin:0;padding: 0;} span{ display: inline-block; width: 60px; height: 16px; line-height: 16px; padding: 2px; margin: 5px; border: 1px solid red; text-align: center; } a{ text-decoration:none; } </style> </head> <body> <div id="wrap"></div> <script> var wrap = document.getElementById("wrap"); var str = ""; for (var i = 2; i <= 100; i++) { var count = 0; for (var j = 1; j <= i; j++) { if( i%j ==0 ){ count++; } } if (count == 2) { str += "<span>" + i + "</span><br>"; } count = 0; } wrap.innerHTML = str; </script> </body> </html>
這裡需要主要的是 count是用來記錄能被整除的次數 迴圈到最後我們需要重新設定count=0;