使用 C++ 检查数字是否为毕达哥拉斯素数

c++server side programmingprogramming

这里我们将看到另一个程序来检查数字是否为毕达哥拉斯素数。在深入研究逻辑之前,让我们先看看毕达哥拉斯素数是什么?毕达哥拉斯素数是素数,可以表示为 4n + 1。

要检测数字是否是这样的,我们必须检查数字是否是素数,如果是素数,那么我们将数字除以 4,如果余数为 1,那么它就是毕达哥拉斯素数。一些毕达哥拉斯素数是 {5、13、17、29、37、41、53,…}。

示例

#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 isPythagoreanPrime(int n) {
   if(isPrime(n) && ((n % 4) == 1)){
      return true;
   }
   return false;
}
int main() {
   int num = 29;
   if(isPythagoreanPrime(num)){
      cout << "The number is Pythagorean Prime";
   }else{
      cout << "The number is not Pythagorean Prime";
   }
}

输出

The number is Pythagorean Prime

相关文章