小于给定数 n 的最近素数 C++

在本教程中,我们将编写一个程序来查找与给定 n 最接近的素数。这是一个简单的问题。

让我们看看解决问题的步骤。

  • 初始化数字 n。

  • 编写一个从 n - 1 到 1 迭代的循环

    • 返回您找到的第一个质数

  • 如果没有找到任何小于给定 n 的素数,则返回 -1

示例

让我们看看代码。

#include <bits/stdc++.h>

using namespace std;

bool isPrime(int n) {

   if (n == 2) {

      return true;

   }

   for (int i = 2; i <= ceil(sqrt(n)); i++) {

      if (n % i == 0) {

         return false;

      }

   }

   return true;

}

int getNearestPrimeNumber(int n) {

   for (int i = n - 1; i > 1; i--) {

      if (isPrime(i)) {

         return i;

      }

   }

   return -1;

}

int main() {

   int n = 20;

   cout << getNearestPrimeNumber(n) << endl;

   return 0;

}

输出结果

如果你运行上面的代码,那么你会得到下面的结果。

19

以上是 小于给定数 n 的最近素数 C++ 的全部内容, 来源链接: utcz.com/z/350467.html

回到顶部