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示例
#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
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP