Массив - это набор элементов, хранящихся в непрерывных ячейках памяти. Это наиболее часто используемая структура данных в программировании. Вы должны знать, как выполнять основные операции с массивом, такие как вставка, удаление, обход, нахождение суммы всех элементов, нахождение произведения всех элементов и т. Д.
В этой статье вы узнаете, как найти произведение всех элементов в массиве, используя итеративный и рекурсивный подходы.
Постановка задачи
Вам дан массив обр. Вам нужно найти произведение всех элементов массива, а затем распечатать конечный продукт. Вам необходимо реализовать это решение, используя циклы и рекурсию.
Пример 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 ++ для поиска произведения элементов массива
#включают
используя пространство имен std;
int findProduct (int arr [], int размер)
{
int result = 1;
для (int i = 0; я{
результат = результат * arr [i];
}
вернуть результат;
}
void printArrayElements (int arr [], int size)
{
для (int i = 0; я{
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 << "Массив 1:" << endl;
printArrayElements (arr1, size1);
cout << "Произведение элементов массива:" << findProduct (arr1, size1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "Массив 2:" << endl;
printArrayElements (arr2, size2);
cout << "Произведение элементов массива:" << findProduct (arr2, size2) << endl;
возврат 0;
}
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Программа Python для поиска произведения элементов массива с помощью циклов
Ниже приведена программа Python для поиска произведения элементов массива:
# Программа Python для поиска произведения элементов списка
def findProduct (arr, size):
результат = 1
для i в диапазоне (размер):
результат = результат * arr [i]
вернуть результат
def printListElements (обр., размер):
для i в диапазоне (размер):
print (arr [i], end = "")
Распечатать()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
size1 = len (arr1)
print ("Массив 1:")
printListElements (arr1, size1)
print ("Продукт элементов массива:", findProduct (arr1, size1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len (arr2)
print ("Массив 2:")
printListElements (arr2, size2)
print ("Продукт элементов массива:", findProduct (arr2, size2))
Связанный: Как использовать циклы For в Python
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Программа на JavaScript для поиска произведения элементов массива с помощью циклов
Ниже приведена программа на JavaScript для поиска произведения элементов массива:
// Программа на JavaScript для поиска произведения элементов массива
function findProduct (arr, size) {
пусть результат = 1;
для (пусть i = 0; ярезультат = результат * arr [i];
}
вернуть результат;
}
function printArrayElements (arr, size) {
для (пусть i = 0; яdocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write ("Массив 1:" + "
");
printArrayElements (arr1, size1);
document.write ("Продукт элементов массива:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write ("Массив 2:" + "
");
printArrayElements (arr2, size2);
document.write ("Продукт элементов массива:" + findProduct (arr2, size2) + "
");
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Связанный: Методы массивов JavaScript, которые вы должны освоить сегодня
Программа на C для поиска произведения элементов массива с помощью циклов
Ниже приведена программа на языке C для поиска произведения элементов массива:
// Программа на C для поиска произведения элементов массива
#включают
int findProduct (int arr [], int размер)
{
int result = 1;
для (int i = 0; я{
результат = результат * arr [i];
}
вернуть результат;
}
void printArrayElements (int arr [], int size)
{
для (int i = 0; я{
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 ("Массив 1: \ n");
printArrayElements (arr1, size1);
printf ("Произведение элементов массива:% d \ n", findProduct (arr1, size1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("Массив 2: \ n");
printArrayElements (arr2, size2);
printf ("Произведение элементов массива:% d \ n", findProduct (arr2, size2));
возврат 0;
}
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Рекурсивный подход к поиску произведения всех элементов в массиве
Вы можете найти произведение всех элементов массива с помощью рекурсии, следуя псевдокоду ниже:
функция findProduct (arr, n):
если n == 0:
возврат (arr [n])
еще:
return (arr [n] * findProduct (arr, n - 1))
Связанный: Что такое псевдокод и как он делает вас лучшим разработчиком?
Программа на C ++ для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа на C ++ для поиска произведения элементов массива:
// Программа на C ++ для поиска произведения элементов массива с помощью рекурсии
#включают
используя пространство имен std;
int findProduct (int arr [], int n)
{
если (n == 0)
{
return (arr [n]);
}
еще
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int size)
{
для (int i = 0; я{
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 << "Массив 1:" << endl;
printArrayElements (arr1, size1);
cout << "Произведение элементов массива:" << findProduct (arr1, size1-1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "Массив 2:" << endl;
printArrayElements (arr2, size2);
cout << "Произведение элементов массива:" << findProduct (arr2, size2-1) << endl;
возврат 0;
}
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Связанный: Введение в алгоритм пузырьковой сортировки
Программа Python для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа Python для поиска произведения элементов массива:
# Программа Python для поиска результата элементов списка с помощью рекурсии
def findProduct (arr, n):
если n == 0:
возврат (arr [n])
еще:
return (arr [n] * findProduct (arr, n - 1))
def printListElements (обр., размер):
для i в диапазоне (размер):
print (arr [i], end = "")
Распечатать()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
size1 = len (arr1)
print ("Массив 1:")
printListElements (arr1, size1)
print ("Продукт элементов массива:", findProduct (arr1, size1-1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len (arr2)
print ("Массив 2:")
printListElements (arr2, size2)
print ("Продукт элементов массива:", findProduct (arr2, size2-1))
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Связанный: Введение в алгоритм сортировки слиянием
Программа JavaScript для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа на JavaScript для поиска произведения элементов массива:
// Программа на JavaScript для поиска произведения элементов массива с помощью рекурсии
function findProduct (arr, n) {
if (n == 0) {
return (arr [n]);
} еще {
return (arr [n] * findProduct (arr, n - 1));
}
}
function printArrayElements (arr, size) {
для (пусть i = 0; яdocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write ("Массив 1:" + "
");
printArrayElements (arr1, size1);
document.write ("Продукт элементов массива:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write ("Массив 2:" + "
");
printArrayElements (arr2, size2);
document.write ("Продукт элементов массива:" + findProduct (arr2, size2) + "
");
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Программа на C для поиска произведения элементов массива с помощью рекурсии
Ниже приведена программа на языке C для поиска произведения элементов массива:
// Программа на C для поиска произведения элементов массива с помощью рекурсии
#включают
int findProduct (int arr [], int n)
{
если (n == 0)
{
return (arr [n]);
}
еще
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int size)
{
для (int i = 0; я{
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 ("Массив 1: \ n");
printArrayElements (arr1, size1);
printf ("Произведение элементов массива:% d \ n", findProduct (arr1, size1-1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("Массив 2: \ n");
printArrayElements (arr2, size2);
printf ("Произведение элементов массива:% d \ n", findProduct (arr2, size2-1));
возврат 0;
}
Выход:
Массив 1:
1 2 3 4 5 6 7 8
Произведение элементов массива: 40320
Массив 2:
1 1 1 1 1 1
Произведение элементов массива: 1
Укрепите свои концепции массива
Массивы - неотъемлемая часть программирования. Это одна из самых важных тем для технических собеседований.
Если программы, основанные на массивах, все еще пугают вас, попробуйте решить некоторые базовые задачи с массивами, например, как найти сумму все элементы в массиве, как найти максимальный и минимальный элемент в массиве, как перевернуть массив и т. д. Это поможет вам укрепить ваши концепции массивов.
Независимо от того, используете ли вы JavaScript, Python или C ++, эти программы определенно складываются.
Читать далее
- Программирование
- JavaScript
- Python
- Учебники по кодированию
- Программирование на C

Юврадж - студент бакалавриата по информатике в Университете Дели, Индия. Он увлечен веб-разработкой Full Stack. Когда он не пишет, он исследует глубину различных технологий.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Нажмите здесь, чтобы подписаться