在C ++中,数组中所有元素的积可被给定数K整除

给定具有n个整数和另一个整数k的数组arr [n],任务是找到乘积k中所有被arr []整除的元素。

为了解决该问题,我们必须迭代数组的每个元素,并确定它是否可以完全被数字k整除,然后乘积所有元素并将其存储到变量中。就像我们有一个数组arr [] = {1、2、3、4、5、6}并假设k = 2一样,因此数组中可被2整除的数字是2、4、6,它们的乘积将等于48。

因此,让我们看一下示例,我们如何根据输入来获取答案

输入值 

arr[] = {10, 11, 55, 2, 6, 7}

K = 11

输出结果 

605

说明-被11整除的数字是11和55,只有它们的乘积是605

输入值 

arr[] = {9, 8, 7, 6, 3}

K = 3

输出结果 

162

解决问题的方法如下

  • 迭代整个数组,直到数组的最后。

  • 寻找每个可被K整除的整数。

  • 乘积K可除的每个元素。

  • 返回。

  • 打印结果。

算法

Start

Step 1→ declare function to find all the numbers divisible by number K

   int product(int arr[], int size, int k)

      declare int prod = 1

      Loop For int i = 0 and i < size and i++

      IF (arr[i] % k == 0)

         Set prod *= arr[i]

      End

      End

      return prod

Step 2→ In main()   Declare int arr[] = {2, 3, 4, 5, 6 }

   Declare int size = sizeof(arr) / sizeof(arr[0])

   Set int k = 2

   Call product(arr, size, k)

Stop

示例

#include <iostream>

using namespace std;

//函数以k整除数组中的元素

int product(int arr[], int size, int k){

   int prod = 1;

   for (int i = 0; i < size; i++){

      if (arr[i] % k == 0){

         prod *= arr[i];

      }

   }

   return prod;

}

int main(){

   int arr[] = {2, 3, 4, 5, 6 };

   int size = sizeof(arr) / sizeof(arr[0]);

   int k = 2;

   cout<<"product of elements are : "<<product(arr, size, k);

   return 0;

}

输出结果

如果运行上面的代码,它将生成以下输出-

product of elements are : 48

以上是 在C ++中,数组中所有元素的积可被给定数K整除 的全部内容, 来源链接: utcz.com/z/350188.html

回到顶部