[C#]調用方法判斷一個整數是否爲質數

 

  1. using System; 
  2.  
  3. namespace prime_number 
  4.     internal class Program 
  5.     { 
  6.         /// <summary> 
  7.         /// 判斷用戶輸入的是否爲一個質數,如果輸入q則退出程序! 
  8.         /// </summary> 
  9.         /// <param name="args"></param> 
  10.         private static void Main(string[] args) 
  11.         { 
  12.             do 
  13.             { 
  14.                 Console.WriteLine("請輸入一個正整數(q退出):"); 
  15.                 string imput = Console.ReadLine(); 
  16.  
  17.                 if (imput != "q")   //判斷用戶是否輸入q,不是的繼續執行。 
  18.                 { 
  19.                     int number; 
  20.                     if (int.TryParse(imput, out number))    //判斷用戶輸入的是否可以轉換爲一個整數 
  21.                     { 
  22.                         if (number > 0) 
  23.                         { 
  24.                             if (PrimeNum(number))    //調用PrimeNum方法判斷用戶輸入的整數是否爲質數 
  25.                             { 
  26.                                 Console.WriteLine("{0}是一個質數!", number); 
  27.                             } 
  28.                             else 
  29.                             { 
  30.                                 Console.WriteLine("{0}不是一個質數!", number); 
  31.                             } 
  32.                         } 
  33.                         else 
  34.                         { 
  35.                             Console.WriteLine("您輸入的不是一個正數"); 
  36.                         } 
  37.                     } 
  38.                     else 
  39.                     { 
  40.                         Console.WriteLine("您輸入的不是一個整數!"); 
  41.                     } 
  42.                 } 
  43.                 else   //用戶輸入q,退出循環。 
  44.                 { 
  45.                     break
  46.                 } 
  47.             } while (true); 
  48.  
  49.             Console.ReadKey(); 
  50.         } 
  51.  
  52.         /// <summary> 
  53.         /// 判斷一個數是否爲質數 
  54.         /// </summary> 
  55.         /// <param name="number">一個整數</param> 
  56.         /// <returns></returns> 
  57.         private static bool PrimeNum(int number) 
  58.         { 
  59.             //判斷number是否可以被2至number的平方根之間的數整除 
  60.             for (int i = 2; i <= Math.Sqrt(number); i++) 
  61.             { 
  62.                 if (number % i == 0) 
  63.                 { 
  64.                     return false;   //可以整除爲非質數 
  65.                 } 
  66.             } 
  67.             return true;    //不可以整除爲質數 
  68.         } 
  69.     } 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章