判斷一個數是否為質數


 質數是指在大於1的自然數中,除了1和它自身外沒有其他因數的自然數。

一、標記法,flag初始值為true,當n%i === 0時(1<i<n),說明n不是質數,此時flag值為false且循環終止;當n%i != 0 時,flag的值始終為true,此時會輸出n是質數。

 

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
    <script>
        function num(n){
            for(var i=2;i<n;i++){
              var flag=true
                if(n%i===0){
                    flag=false
                    document.write(n+'不是質數')
                    break
                }
            }
            if(flag){
                    document.write(n+'是質數')
                }
        }
        num(prompt('請輸入一個數字'))
    </script>
</body>
</html>

 

二、計數法,計算n%i === 0 的次數(1<=i<=n),當count值為2時說明n為質數,當count>2時說明n不是質數。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6     <title>Document</title>
 7 </head>
 8 <body>
 9     <script>
10         function num(n){
11             var count=0
12             for(var i=1;i<=n;i++){
13                 if(n%i===0){
14                     count++
15                 }
16             }
17             if(count===2){
18                     document.write(n+'是質數')
19                 }
20                 else if(count>2){
21                     document.write(n+'不是質數')
22                 }
23         }
24         num(prompt('請輸入一個數字'))
25     </script>
26 </body>
27 </html>

 輸出一個區間的所有質數:https://www.cnblogs.com/strongerPian/p/12635632.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM