返回列表 發帖

判斷是否為質數 (二)

更改上一個版本
讓迴圈次數可以更加減少 提高程式效率
  1. //使用者自行輸入一個數字 電腦自動判斷 該數字是否為質數
  2. #include<iostream>
  3. #include<cstdlib>
  4. using namespace std;
  5. int main()
  6. {
  7.     int num =0;//使用者輸入
  8.     bool isPrime = true; // 布林值 判斷是否質數
  9.     int count =0;
  10.     cin >> num;
  11.     if(num !=2)
  12.     {
  13.     for(int i=2;i<num;i++) //從2開始 一直到小於使用者輸入的數字為止 (扣除 1和自己本身以外)
  14.     {
  15.        count++;
  16.        if(num % i ==0) //判斷是否能整除
  17.        {
  18.          isPrime = false; //只要整除 就代表該數字不是質數 回傳false
  19.          break; //跳離當前迴圈      
  20.        }
  21.        else{
  22.          isPrime = true;      // 代表該數為質數
  23.        }      
  24.     }
  25. }   


  26.      cout << "跑了" << count << "次" << endl;
  27.     if(isPrime == true)
  28.     {
  29.       cout << "是質數" << endl;           
  30.     }
  31.     else{
  32.       cout << "不是質數" << endl;     
  33.     }

  34.     system("pause");
  35.     return 0;   
  36. }
複製代碼

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表