在C ++中将最小因子范围内的所有数字计算为K

在本教程中,我们将讨论一个程序,以查找因子为K的最小范围内的数字。

为此,我们将提供一个范围[a,b]。我们的任务是计算给定范围内最小因子为K的数字。

示例

#include <bits/stdc++.h>

using namespace std;

//检查K是否为质数

bool if_prime(int k){

   if (k <= 1)

      return false;

   for (int i = 2; i < k; i++)

   if (k % i == 0)

      return false;

      return true;

}

//检查是否有任何数可被K整除

int check(int num, int k){

   int flag = 1;

   for (int i = 2; i < k; i++) {

      if (num % i == 0)

         flag = 0;

   }

   if (flag == 1) {

      if (num % k == 0)

         return 1;

      else

         return 0;

   }

   else

      return 0;

}

//计算可能的数字

int findCount(int a, int b, int k){

   int count = 0;

   if (!if_prime(k))

      return 0;

   else {

      int ans;

      for (int i = a; i <= b; i++) {

         ans = check(i, k);

         if (ans == 1)

            count++;

         else

            continue;

      }

   }

   return count;

}

int main(){

   int a = 2020, b = 6300, k = 29;

   cout << findCount(a, b, k);

   return 0;

}

输出结果

28

以上是 在C ++中将最小因子范围内的所有数字计算为K 的全部内容, 来源链接: utcz.com/z/316519.html

回到顶部