在 C++ 中判断一个数是否能被列表中的每个数整除


在这个问题中,我们给定一个包含 n 个数字的列表和一个数字。我们的任务是查找一个数字是否能被列表中的每个数字整除

我们需要检查给定的数字是否能整除列表中的所有元素。

让我们举个例子来理解这个问题,

输入:list[] = [4, 10 ,6, 5, 9] num = 5

输出:

解释

元素 4、6、9 不能被 5 整除。

解决方案:

为了解决这个问题,我们需要检查列表中的任何元素是否能被 num 整除。如果列表中的每个数字都能被 num 整除,则返回 true,否则返回 false。

算法:

步骤 1:循环 i -> 0 到 n,n 是列表的长度。

步骤 1.1:如果 list[i] % num != 0,则返回 -1。
步骤 1.2:否则,list[i] % num == 0,继续。

步骤 2:返回 1。

程序说明我们解决方案的工作原理,

示例

在线演示

#include <iostream>
using namespace std;

bool isListDivNum(int list[], int num, int size)
{
   for (int i = 0; i < size; i++) {
      if (list[i] % num != 0)
         return false;
   }
   return true;
}

int main() {
   
   int list[] = {762, 9, 123, 99};
   int num = 3;
   int size = (sizeof(list) / sizeof(list[0]));
   if (isListDivNum(list, num , size))
      cout<<"All elements of the list are divisible by number";
   else
      cout<<"All elements of the list are not divisible by number";

   return 0;
}

输出 -

All elements of the list are divisible by number

更新于: 2021年1月22日

220 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告