Как найти произведение всех элементов в массиве
Массив – это набор элементов, хранящихся в непрерывных ячейках памяти. Это наиболее часто используемая структура данных в программировании. Вы должны знать, как выполнять основные операции с массивом, такие как вставка, удаление, обход, нахождение суммы всех элементов, нахождение произведения всех элементов и т. Д.
В этой статье вы узнаете, как найти произведение всех элементов в массиве, используя итеративный и рекурсивный подходы.
Постановка задачи
Вам дан массив обр . Вам нужно найти произведение всех элементов массива, а затем распечатать конечный продукт. Вам необходимо реализовать это решение, используя циклы и рекурсию.
Пример 1. Пусть arr = [1, 2, 3, 4, 5, 6, 7, 8]
Произведение каждого элемента массива = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320
Таким образом, на выходе получается 40320.
Пример 2. Пусть arr = [1, 1, 1, 1, 1, 1]
Произведение каждого элемента массива = 1 * 1 * 1 * 1 * 1 * 1 = 1
Таким образом, на выходе получается 1.
Итерационный подход к поиску произведения всех элементов массива
Вы можете найти продукт всех элементов массива с помощью итераций / циклов, следуя приведенному ниже подходу:
- Инициализируйте переменный результат (со значением 1), чтобы сохранить произведение всех элементов в массиве.
- Пройдитесь по массиву и умножьте каждый элемент массива на результат .
- Наконец, верните результат .
Программа на C ++ для поиска произведения элементов массива с помощью циклов
Ниже приведена программа на C ++ для поиска произведения элементов массива:
// C++ program to find the product of the array elements
#include <iostream>
using namespace std;
int findProduct(int arr[], int size)
{
int result = 1;
for(int i=0; i<size; i++)
{
result = result * arr[i];
}
return result;
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i<size; i++)
{
cout << arr[i] << " ";
}
cout << endl;
}
int main()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof(arr1)/sizeof(arr1[0]);
cout << "Array 1:" << endl;
printArrayElements(arr1, size1);
cout << "Product of the array elements: " << findProduct(arr1, size1) << endl;
int arr2[] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof(arr2)/sizeof(arr2[0]);
cout << "Array 2:" << endl;
printArrayElements(arr2, size2);
cout << "Product of the array elements: " << findProduct(arr2, size2) << endl;
return 0;
}
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Программа Python для поиска произведения элементов массива с помощью циклов
Ниже приведена программа Python для поиска произведения элементов массива:
# Python program to find product of the list elements
def findProduct(arr, size):
result = 1
for i in range(size):
result = result * arr[i]
return result
def printListElements(arr, size):
for i in range(size):
print(arr[i], end=" ")
print()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
size1 = len(arr1)
print("Array 1:")
printListElements(arr1, size1)
print("Product of the array elements:", findProduct(arr1, size1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len(arr2)
print("Array 2:")
printListElements(arr2, size2)
print("Product of the array elements:", findProduct(arr2, size2))
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Программа на JavaScript для поиска произведения элементов массива с помощью циклов
Ниже приведена программа на JavaScript для поиска произведения элементов массива:
// JavaScript program to find the product of the array elements
function findProduct(arr, size) {
let result = 1;
for(let i=0; i<size; i++) {
result = result * arr[i];
}
return result;
}
function printArrayElements(arr, size) {
for(let i=0; i<size; i++) {
document.write(arr[i] + " ");
}
document.write("<br>");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write("Array 1:" + "<br>");
printArrayElements(arr1, size1);
document.write("Product of the array elements: " + findProduct(arr1, size1) + "<br>");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write("Array 2:" + "<br>");
printArrayElements(arr2, size2);
document.write("Product of the array elements: " + findProduct(arr2, size2) + "<br>");
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Программа на C для поиска произведения элементов массива с помощью циклов
Ниже приведена программа на языке C для поиска произведения элементов массива:
// C program to find the product of the array elements
#include <stdio.h>
int findProduct(int arr[], int size)
{
int result = 1;
for(int i=0; i<size; i++)
{
result = result * arr[i];
}
return result;
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i<size; i++)
{
printf("%d ", arr[i]);
}
printf("n");
}
int main()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof(arr1)/sizeof(arr1[0]);
printf("Array 1: n");
printArrayElements(arr1, size1);
printf("Product of the array elements: %d n", findProduct(arr1, size1));
int arr2[] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof(arr2)/sizeof(arr2[0]);
printf("Array 2: n");
printArrayElements(arr2, size2);
printf("Product of the array elements: %d n", findProduct(arr2, size2));
return 0;
}
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Рекурсивный подход к поиску произведения всех элементов в массиве
Вы можете найти произведение всех элементов массива с помощью рекурсии, следуя псевдокоду ниже:
function findProduct(arr,n):
if n == 0:
return(arr[n])
else:
return (arr[n] * findProduct(arr, n - 1))
Программа на C ++ для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа на C ++ для поиска произведения элементов массива:
// C++ program to find the product of the array elements using recursion
#include <iostream>
using namespace std;
int findProduct(int arr[], int n)
{
if (n == 0)
{
return(arr[n]);
}
else
{
return (arr[n] * findProduct(arr, n - 1));
}
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i<size; i++)
{
cout << arr[i] << " ";
}
cout << endl;
}
int main()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof(arr1)/sizeof(arr1[0]);
cout << "Array 1:" << endl;
printArrayElements(arr1, size1);
cout << "Product of the array elements: " << findProduct(arr1, size1-1) << endl;
int arr2[] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof(arr2)/sizeof(arr2[0]);
cout << "Array 2:" << endl;
printArrayElements(arr2, size2);
cout << "Product of the array elements: " << findProduct(arr2, size2-1) << endl;
return 0;
}
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Программа Python для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа Python для поиска произведения элементов массива:
# Python program to find th eproduct of the list elements using recursion
def findProduct(arr, n):
if n == 0:
return(arr[n])
else:
return (arr[n] * findProduct(arr, n - 1))
def printListElements(arr, size):
for i in range(size):
print(arr[i], end=" ")
print()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
size1 = len(arr1)
print("Array 1:")
printListElements(arr1, size1)
print("Product of the array elements:", findProduct(arr1, size1-1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len(arr2)
print("Array 2:")
printListElements(arr2, size2)
print("Product of the array elements:", findProduct(arr2, size2-1))
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Программа JavaScript для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа на JavaScript для поиска произведения элементов массива:
// JavaScript program to find the product of the array elements using recursion
function findProduct(arr, n) {
if (n == 0) {
return(arr[n]);
} else {
return (arr[n] * findProduct(arr, n - 1));
}
}
function printArrayElements(arr, size) {
for(let i=0; i<size; i++) {
document.write(arr[i] + " ");
}
document.write("<br>");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write("Array 1:" + "<br>");
printArrayElements(arr1, size1);
document.write("Product of the array elements: " + findProduct(arr1, size1) + "<br>");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write("Array 2:" + "<br>");
printArrayElements(arr2, size2);
document.write("Product of the array elements: " + findProduct(arr2, size2) + "<br>");
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Программа на C для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа на языке C для поиска произведения элементов массива:
// C program to find the product of the array elements using recursion
#include <stdio.h>
int findProduct(int arr[], int n)
{
if (n == 0)
{
return(arr[n]);
}
else
{
return (arr[n] * findProduct(arr, n - 1));
}
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i<size; i++)
{
printf("%d ", arr[i]);
}
printf("n");
}
int main()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof(arr1)/sizeof(arr1[0]);
printf("Array 1: n");
printArrayElements(arr1, size1);
printf("Product of the array elements: %d n", findProduct(arr1, size1-1));
int arr2[] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof(arr2)/sizeof(arr2[0]);
printf("Array 2: n");
printArrayElements(arr2, size2);
printf("Product of the array elements: %d n", findProduct(arr2, size2-1));
return 0;
}
Выход:
Array 1:
1 2 3 4 5 6 7 8
Product of the array elements: 40320
Array 2:
1 1 1 1 1 1
Product of the array elements: 1
Укрепите свои концепции массива
Массивы – неотъемлемая часть программирования. Это одна из самых важных тем для технических собеседований.
Если программы, основанные на массивах, все еще пугают вас, попробуйте решить некоторые основные проблемы с массивами, например, как найти сумму всех элементов в массиве, как найти максимальный и минимальный элемент в массиве, как перевернуть массив и т. Д. поможет вам укрепить ваши концепции массивов.