用 C++ 檢查一個數字是否被質數夾在中間


這裡我們將會了解一個數字是否被質數夾在中間。當一個數字的緊挨著它的數字和低於它的數字是質數時,稱這個數字被質數夾在中間。要解決這個問題,請檢查 n-1 和 n+1 是否是質數。

示例

 現場演示

#include <iostream>
#include <set>
#define N 100005
using namespace std;
bool isPrime(int n) {
   if (n == 0 || n == 1)
      return false;
   for (int i=2;i<=n/2;i++)
      if (n%i == 0)
         return false;
   return true;
}
bool isSanwichedPrime(int n){
   if(isPrime(n - 1) && isPrime(n + 1))
      return true;
   return false;
}
int main() {
   int n = 642;
   if(isSanwichedPrime(n)){
      cout << n << " is Sandwiched between primes: " << n-1 <<" and " << n+1;
   } else {
      cout << n << " is not Sandwiched between primes";
   }
}

輸出

642 is Sandwiched between primes: 641 and 643

更新於: 2019 年 10 月 21 日

70 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.