Масивът е колекция от елементи, съхранявани в съседни места на паметта. Това е най-използваната структура от данни в програмирането. Трябва да знаете как да извършвате основни операции върху масив, като вмъкване, изтриване, обръщане, намиране на сумата от всички елементи, намиране на произведението на всички елементи и т.н.

В тази статия ще научите как да намерите произведението на всички елементи в масив, използвайки итеративни и рекурсивни подходи.

Декларация за проблема

Даден ти е масив обр. Трябва да намерите продукта на всички елементи от масива, след което да отпечатате крайния продукт. Трябва да приложите това решение, като използвате цикли и рекурсия.

Пример 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.

Итеративен подход за намиране на произведението на всички елементи на масива

instagram viewer

Можете да намерите произведението на всички елементи на масива, използвайки итерация / цикли, като следвате подхода по-долу:

  1. Инициализирайте променлива резултат (със стойност 1) за съхраняване на произведението на всички елементи в масива.
  2. Итерирайте през масива и умножете всеки елемент от масива с резултат.
  3. Накрая върнете резултат.

Програма C ++ за намиране на продукта на елементи от масив с помощта на цикли

По-долу е програмата C ++ за намиране на произведението на масивни елементи:

// C ++ програма за намиране на произведението на елементите на масива
#include
използване на пространство от имена std;
int findProduct (int arr [], int размер)
{
int резултат = 1;
за (int i = 0; i{
резултат = резултат * arr [i];
}
връщане на резултат;
}
void printArrayElements (int arr [], int размер)
{
за (int i = 0; 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 << "Масив 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, размер):
резултат = 1
за i в обхват (размер):
резултат = резултат * arr [i]
връщане на резултата
def printListElements (arr, размер):
за i в обхват (размер):
отпечатване (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 ("Array 2:")
printListElements (arr2, size2)
print ("Продукт на елементите на масива:", findProduct (arr2, size2))

Свързани: Как да използвам за цикли в Python

Изход:

Масив 1:
1 2 3 4 5 6 7 8
Продукт на елементите на масива: 40320
Масив 2:
1 1 1 1 1 1
Продукт на елементите на масива: 1

Програма JavaScript за намиране на продукта на масивни елементи с помощта на цикли

По-долу е дадена програмата JavaScript за намиране на продукта на масивни елементи:

// Програма JavaScript за намиране на произведението на елементите на масива
функция findProduct (arr, размер) {
нека резултат = 1;
за (нека i = 0; iрезултат = резултат * arr [i];
}
връщане на резултат;
}
функция printArrayElements (arr, размер) {
за (нека i = 0; idocument.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 програма за намиране на произведението на елементите на масива
#include
int findProduct (int arr [], int размер)
{
int резултат = 1;
за (int i = 0; i{
резултат = резултат * arr [i];
}
връщане на резултат;
}
void printArrayElements (int arr [], int размер)
{
за (int i = 0; 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 ("Масив 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 ++ програма за намиране на произведението на елементите на масива, използвайки рекурсия
#include
използване на пространство от имена std;
int findProduct (int arr [], int n)
{
ако (n == 0)
{
връщане (arr [n]);
}
друго
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int размер)
{
за (int i = 0; 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 << "Масив 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 (arr, размер):
за i в обхват (размер):
отпечатване (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 ("Array 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 програма за намиране на произведението на елементите на масива с помощта на рекурсия
функция findProduct (arr, n) {
ако (n == 0) {
връщане (arr [n]);
} друго {
return (arr [n] * findProduct (arr, n - 1));
}
}
функция printArrayElements (arr, размер) {
за (нека i = 0; idocument.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 програма за намиране на произведението на елементите на масива, използвайки рекурсия
#include
int findProduct (int arr [], int n)
{
ако (n == 0)
{
връщане (arr [n]);
}
друго
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int размер)
{
за (int i = 0; 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 ("Масив 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 Програмиране
За автора
Юврадж Чандра (47 статии публикувани)

Yuvraj е студент по компютърни науки в Университета на Делхи, Индия. Той е запален по Full Stack Web Development. Когато не пише, той изследва дълбочината на различните технологии.

Още от Юврадж Чандра

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!

Щракнете тук, за да се абонирате