C ++中数组中所有成对连续元素的乘积

给定一个n个整数的数组arr [n],任务是找到所有成对连续元素的乘积。

数组arr []中的连续元素是,如果我们位于第ith个元素,即arr [i],则其连续元素将是arr [i + 1]或arr [i-1],因此乘积将是arr [ i] * arr [i + 1]或arr [i] * arr [i-1]。

输入值 

arr[] = {1, 2, 3, 4}

输出结果 

2, 6, 12

说明 

Splitting into pairs {1,2}, {2, 3}, {3, 4}
Their results will be 1*2 = 2, 2*3 = 6, 3*4 = 12

输入值 

arr[] = {9, 5, 1, 2, 6, 10}

输出结果 

45, 5, 2, 12, 60

说明 

Splitting into pairs {9, 5}, {5, 1}, {1, 2}, {2, 6}, {6, 10}
Their results will be 9*5 = 45, 5*1 = 5, 1*2 = 2, 2*6=12, 6*10=60

以下使用的方法来解决问题-

  • 从数组的第0个元素开始循环,直到小于n-1。

  • 对于每个我检查其i + 1的产品,每个i和i + 1的产品都会打印结果。

算法

Start
Step 1→ Declare function to calculate product of consecutive elements
   void product(int arr[], int size)
      Declare int product = 1
      Loop For int i = 0 and i < size – 1 and i++
         Set product = arr[i] * arr[i + 1]
         Print product
      End
Step 2 → In main()   Declare int arr[] = {2, 4, 6, 8, 10, 12, 14 }
   Declare int size = sizeof(arr) / sizeof(arr[0])
   Call product(arr, size)
Stop

示例

#include <iostream>
using namespace std;
//函数查找连续对的乘积
void product(int arr[], int size){
   int product = 1;
   for (int i = 0; i < size - 1; i++){
      product = arr[i] * arr[i + 1];
      printf("%d ", product);
   }
}
int main(){
   int arr[] = {2, 4, 6, 8, 10, 12, 14 };
   int size = sizeof(arr) / sizeof(arr[0]);
   printf("产品是: ");
   product(arr, size);
   return 0;
}

输出结果

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

产品是: 8 24 48 80 120 168