Может кто-нибудь помочь мне написать основную функцию этой функции aadjacentElementsProduct?вопрос в следующем:
Вот что я попробовал:
struct arr_integer
{
int size;
int arr[];
};
int adjacentElementsProduct(struct arr_integer inputArray);
int main()
{
int res,i;
struct arr_integer array;
printf("Enter size of the array: ");
scanf("%d", &array.size);
printf("Enter the elements in array: ");
for (i = 0; i < array.size; i++)
{
scanf("%d", &array.arr[i]);
}
printf("%d\n", array.arr[2]);
res = adjacentElementsProduct(array);
printf("Max is %d", res);
getch();
}
Учитывая массив целых чисел, найдите пару смежных элементов, которая имеет наибольший продукт, и верните этот продукт.
Пример
Для inputArray = [3, 6, -2, -5, 7, 3],
на выходе должно быть adjacentElementsProduct(inputArray) = 21
.
7
и 3
дают самый большой продукт.
int adjacentElementsProduct(struct arr_integer inputArray)
{
int arrLength = inputArray.size;
int max = inputArray.arr[0] * inputArray.arr[1];
for (int i = 1; i < arrLength - 1; i++)
{
if (inputArray.arr[i] * inputArray.arr[i + 1] > max)
{
max = inputArray.arr[i] * inputArray.arr[i + 1];
}
}
return max;
}