檢查在 C++ 中一個數字是否為完全素數


在這裡,我們將看到如何檢查一個數字是否是完全素數。如果一個數字是質數,且其所有數字也是質數,那麼這個數字被稱為完全素數。假設一個數字是 37,那麼它就是完全素數。但是 97 不是完全素數,因為 9 不是質數。

一種有效的方法是:首先,我們必須檢查是否存在任何不是質數的數字。數字必須介於 0 到 9 之間。在這個範圍內,2、3、5 和 7 是質數,其他不是質數。如果所有數字都是質數,然後檢查這個數字是否是質數。

示例

 實際操作演示

#include <iostream>
using namespace std;
bool isPrime(int n){
   for(int i = 2; i<= n/2; i++){
      if(n % i == 0){
         return false;
      }
   }
   return true;
}
bool isDigitPrime(int n) {
   int temp = n, digit;
   while(temp){
      digit = temp % 10;
      if(digit != 2 && digit != 3 && digit != 5 && digit != 7){
         return false;
      }
      temp = temp / 10;
   }
   return true;
}
bool isFullPrime(int n){
   return (isDigitPrime(n) && isPrime(n));
}
int main() {
   int num = 37;
   if(isFullPrime(num)){
      cout << "The number is Full Prime";
   } else {
      cout << "The number is not Full Prime";
   }
}

輸出

The number is Full Prime

更新於: 27-Sep-2019

278 瀏覽次數

開啟你的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.