Comment trouver le produit de tous les éléments d’un tableau

Un tableau est un ensemble d'éléments stockés dans des emplacements mémoire contigus. C'est la structure de données la plus utilisée en programmation. Vous devez savoir comment effectuer des opérations de base sur un tableau, comme l'insertion, la suppression, le parcours, trouver la somme de tous les éléments, trouver le produit de tous les éléments, etc.

Dans cet article, vous apprendrez à trouver le produit de tous les éléments d'un tableau à l'aide d'approches itératives et récursives.

Énoncé du problème

On vous donne un tableau arr . Vous devez trouver le produit de tous les éléments du tableau, puis imprimer le produit final. Vous devez implémenter cette solution à l'aide de boucles et de récursivité.

Exemple 1 : Soit arr = [1, 2, 3, 4, 5, 6, 7, 8]

Le produit de chaque élément du tableau = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320

Ainsi, la sortie est 40320.

Exemple 2 : Soit arr = [1, 1, 1, 1, 1, 1]

Le produit de chaque élément du tableau = 1 * 1 * 1 * 1 * 1 * 1 = 1

Ainsi, la sortie est 1.

Approche itérative pour trouver le produit de tous les éléments du tableau

Vous pouvez trouver le produit de tous les éléments du tableau à l'aide d'itérations/boucles en suivant l'approche ci-dessous :

  1. Initialisez une variable result (avec une valeur de 1) pour stocker le produit de tous les éléments du tableau.
  2. Itérer dans le tableau et multiplier chaque élément du tableau avec le résultat .
  3. Enfin, retournez le résultat .

Programme C++ pour trouver le produit d'éléments de tableau à l'aide de boucles

Vous trouverez ci-dessous le programme C++ pour trouver le produit des éléments du tableau :

 // 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;
}

Production:

 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

Programme Python pour trouver le produit d'éléments de tableau à l'aide de boucles

Vous trouverez ci-dessous le programme Python pour trouver le produit des éléments du tableau :

 # 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))

Connexe: Comment utiliser les boucles For en Python

Production:

 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

Programme JavaScript pour trouver le produit des éléments de tableau à l'aide de boucles

Vous trouverez ci-dessous le programme JavaScript pour trouver le produit des éléments du tableau :

 // 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>");

Production:

 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

En relation: Méthodes de tableau JavaScript que vous devriez maîtriser aujourd'hui

Programme C pour trouver le produit des éléments du tableau à l'aide de boucles

Vous trouverez ci-dessous le programme C pour trouver le produit des éléments du tableau :

 // 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;
}

Production:

 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

Approche récursive pour trouver le produit de tous les éléments d'un tableau

Vous pouvez trouver le produit de tous les éléments du tableau en utilisant la récursivité en suivant le pseudocode ci-dessous :

 function findProduct(arr,n):
if n == 0:
return(arr[n])
else:
return (arr[n] * findProduct(arr, n - 1))

Connexes : Qu'est-ce que le pseudocode et comment fait-il de vous un meilleur développeur ?

Programme C++ pour trouver le produit d'éléments de tableau à l'aide de la récursivité

Vous trouverez ci-dessous le programme C++ pour trouver le produit des éléments du tableau :

 // 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;
}

Production:

 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

Connexes : Introduction à l'algorithme de tri à bulles

Programme Python pour trouver le produit d'éléments de tableau à l'aide de la récursivité

Vous trouverez ci-dessous le programme Python pour trouver le produit des éléments du tableau :

 # 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))

Production:

 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

Connexes : Introduction à l'algorithme de tri par fusion

Programme JavaScript pour trouver le produit des éléments de tableau à l'aide de la récursivité

Vous trouverez ci-dessous le programme JavaScript pour trouver le produit des éléments du tableau :

 // 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>");

Production:

 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

Programme C pour trouver le produit d'éléments de tableau à l'aide de la récursivité

Vous trouverez ci-dessous le programme C pour trouver le produit des éléments du tableau :

 // 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;
}

Production:

 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

Renforcez vos concepts de baie

Les tableaux font partie intégrante de la programmation. Ils sont également l'un des sujets les plus importants pour les entretiens techniques.

Si les programmes basés sur des tableaux vous font toujours peur, essayez de résoudre quelques problèmes de base sur les tableaux comme comment trouver la somme de tous les éléments d'un tableau, comment trouver l'élément maximum et minimum dans un tableau, comment inverser un tableau, etc. Cela vous aidera à renforcer vos concepts de baies.