判斷一個數是否為素數的方法


一、如何寫一個判斷某輸入數字是否為素數(即質數)?

  簡單來說有兩種方法:假設從鍵盤輸入一個整數n

方法一】判斷n是否能被2~n-1間的整數除

 1 int isPrime(int k)
 2 {
 3     int j;
 4     for ( j=2; j<k; j++ )    
 5     {
 6         if(k%j==0)    // 如果不為素數返回0 
 7         {
 8              return 0;
 9         }
10         }
11     return 1;    // 反之則返回1 
12 }

方法二】判斷n是否能被2~√n間的整數除

 1 int isPrime(int k)
 2 {
 3     int j;
 4     for ( j=2; j<=sqrt(k); j++ )    
 5     {
 6         if(k%j==0)    // 如果不為素數返回0 
 7       {
 8            return 0;
 9         }
10     }
11     return 1;    // 反之則返回1 
12 }

import:方法一與方法二中,后者的空間復雜度更小,效率更高,不易出錯,親測,五星good job (๑•̀ㅂ•́)و✧

·············································································Graceful Line···············································································································

 

 

                                                                                                    計算機小白懵懂求學

                                                                                                       敬請批評指正!謝謝!

                                                                                                                                     ----yuhaow


免責聲明!

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



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