C++中计算数组中所有可被给定数字K整除的元素的乘积
给定一个包含n个整数的数组arr[n]和另一个整数k,任务是找到arr[]中所有可被k整除的元素的乘积。
为了解决这个问题,我们必须迭代数组的每个元素,并找出它是否完全可被数字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
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
示例
#include <iostream> using namespace std; //function to find elements in an array divisible by 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
广告