Una matriz es una colección de elementos almacenados en ubicaciones de memoria contiguas. Es la estructura de datos más utilizada en programación. Debe saber cómo realizar operaciones básicas en una matriz, como inserción, eliminación, recorrido, encontrar la suma de todos los elementos, encontrar el producto de todos los elementos, etc.

En este artículo, aprenderá a encontrar el producto de todos los elementos de una matriz mediante enfoques iterativos y recursivos.

Planteamiento del problema

Te dan una matriz arr. Debe encontrar el producto de todos los elementos de la matriz y luego imprimir el producto final. Debe implementar esta solución mediante bucles y recursividad.

Ejemplo 1: Sea arr = [1, 2, 3, 4, 5, 6, 7, 8]

El producto de cada elemento de la matriz = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320

Por tanto, la salida es 40320.

Ejemplo 2: Sea arr = [1, 1, 1, 1, 1, 1]

El producto de cada elemento de la matriz = 1 * 1 * 1 * 1 * 1 * 1 = 1

Por tanto, la salida es 1.

Enfoque iterativo para encontrar el producto de todos los elementos de la matriz

instagram viewer

Puede encontrar el producto de todos los elementos de la matriz utilizando iteraciones / bucles siguiendo el enfoque a continuación:

  1. Inicializar una variable resultado (con un valor de 1) para almacenar el producto de todos los elementos de la matriz.
  2. Itere a través de la matriz y multiplique cada elemento de la matriz con el resultado.
  3. Finalmente, devuelva el resultado.

Programa C ++ para encontrar el producto de elementos de matriz usando bucles

A continuación se muestra el programa C ++ para encontrar el producto de los elementos de la matriz:

// Programa C ++ para encontrar el producto de los elementos de la matriz
#incluir
usando el espacio de nombres std;
int findProduct (int arr [], int tamaño)
{
int resultado = 1;
para (int i = 0; I{
resultado = resultado * arr [i];
}
devolver resultado;
}
void printArrayElements (int arr [], int tamaño)
{
para (int i = 0; I{
cout << arr [i] << "";
}
cout << endl;
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int tamaño1 = tamaño de (arr1) / tamaño de (arr1 [0]);
cout << "Matriz 1:" << endl;
printArrayElements (arr1, tamaño1);
cout << "Producto de los elementos de la matriz:" << findProduct (arr1, size1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int tamaño2 = tamaño de (arr2) / tamaño de (arr2 [0]);
cout << "Matriz 2:" << endl;
printArrayElements (arr2, tamaño2);
cout << "Producto de los elementos de la matriz:" << findProduct (arr2, size2) << endl;
return 0;
}

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Programa Python para encontrar el producto de elementos de matriz usando bucles

A continuación se muestra el programa Python para encontrar el producto de los elementos de la matriz:

# Programa de Python para encontrar el producto de los elementos de la lista
def findProduct (arr, tamaño):
resultado = 1
para i en rango (tamaño):
resultado = resultado * arr [i]
devolver resultado
def printListElements (arr, tamaño):
para i en rango (tamaño):
print (arr [i], end = "")
imprimir()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
tamaño1 = len (arr1)
imprimir ("Matriz 1:")
printListElements (arr1, tamaño1)
print ("Producto de los elementos de la matriz:", findProduct (arr1, size1))
arr2 = [1, 1, 1, 1, 1, 1]
tamaño2 = len (arr2)
imprimir ("Matriz 2:")
printListElements (arr2, tamaño2)
print ("Producto de los elementos de la matriz:", findProduct (arr2, size2))

Relacionada: Cómo usar bucles for en Python

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Programa JavaScript para encontrar el producto de elementos de matriz utilizando bucles

A continuación se muestra el programa JavaScript para encontrar el producto de los elementos de la matriz:

// programa JavaScript para encontrar el producto de los elementos de la matriz
function findProduct (arr, size) {
deje resultado = 1;
para (sea i = 0; Iresultado = resultado * arr [i];
}
devolver resultado;
}
function printArrayElements (arr, size) {
para (sea i = 0; Idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write ("Matriz 1:" + "
");
printArrayElements (arr1, tamaño1);
document.write ("Producto de los elementos de la matriz:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write ("Matriz 2:" + "
");
printArrayElements (arr2, tamaño2);
document.write ("Producto de los elementos de la matriz:" + findProduct (arr2, size2) + "
");

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Relacionada: Métodos de matriz de JavaScript que debe dominar hoy

Programa C para encontrar el producto de elementos de matriz utilizando bucles

A continuación se muestra el programa en C para encontrar el producto de los elementos de la matriz:

// Programa en C para encontrar el producto de los elementos de la matriz
#incluir
int findProduct (int arr [], int tamaño)
{
int resultado = 1;
para (int i = 0; I{
resultado = resultado * arr [i];
}
devolver resultado;
}
void printArrayElements (int arr [], int tamaño)
{
para (int i = 0; I{
printf ("% d", arr [i]);
}
printf ("\ ⁠n");
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int tamaño1 = tamaño de (arr1) / tamaño de (arr1 [0]);
printf ("Matriz 1: \ ⁠n");
printArrayElements (arr1, tamaño1);
printf ("Producto de los elementos de la matriz:% d \ ⁠n", findProduct (arr1, size1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int tamaño2 = tamaño de (arr2) / tamaño de (arr2 [0]);
printf ("Matriz 2: \ ⁠n");
printArrayElements (arr2, tamaño2);
printf ("Producto de los elementos de la matriz:% d \ ⁠n", findProduct (arr2, size2));
return 0;
}

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Enfoque recursivo para encontrar el producto de todos los elementos en una matriz

Puede encontrar el producto de todos los elementos de la matriz utilizando la recursividad siguiendo el pseudocódigo a continuación:

función findProduct (arr, n):
si n == 0:
volver (arr [n])
demás:
return (arr [n] * findProduct (arr, n - 1))

Relacionada: ¿Qué es el pseudocódigo y cómo lo convierte en un mejor desarrollador?

Programa C ++ para encontrar el producto de elementos de matriz mediante recursividad

A continuación se muestra el programa C ++ para encontrar el producto de los elementos de la matriz:

// Programa C ++ para encontrar el producto de los elementos de la matriz usando recursividad
#incluir
usando el espacio de nombres std;
int findProduct (int arr [], int n)
{
si (n == 0)
{
retorno (arr [n]);
}
demás
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int tamaño)
{
para (int i = 0; I{
cout << arr [i] << "";
}
cout << endl;
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int tamaño1 = tamaño de (arr1) / tamaño de (arr1 [0]);
cout << "Matriz 1:" << endl;
printArrayElements (arr1, tamaño1);
cout << "Producto de los elementos de la matriz:" << findProduct (arr1, size1-1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int tamaño2 = tamaño de (arr2) / tamaño de (arr2 [0]);
cout << "Matriz 2:" << endl;
printArrayElements (arr2, tamaño2);
cout << "Producto de los elementos de la matriz:" << findProduct (arr2, size2-1) << endl;
return 0;
}

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Relacionada: Introducción al algoritmo de clasificación de burbujas

Programa Python para encontrar el producto de elementos de matriz mediante recursividad

A continuación se muestra el programa Python para encontrar el producto de los elementos de la matriz:

# Programa Python para encontrar el producto de los elementos de la lista usando recursividad
def findProduct (arr, n):
si n == 0:
volver (arr [n])
demás:
return (arr [n] * findProduct (arr, n - 1))
def printListElements (arr, tamaño):
para i en rango (tamaño):
print (arr [i], end = "")
imprimir()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
tamaño1 = len (arr1)
imprimir ("Matriz 1:")
printListElements (arr1, tamaño1)
print ("Producto de los elementos de la matriz:", findProduct (arr1, size1-1))
arr2 = [1, 1, 1, 1, 1, 1]
tamaño2 = len (arr2)
imprimir ("Matriz 2:")
printListElements (arr2, tamaño2)
print ("Producto de los elementos de la matriz:", findProduct (arr2, size2-1))

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Relacionada: Introducción al algoritmo de ordenación por fusión

Programa JavaScript para encontrar el producto de elementos de matriz mediante recursividad

A continuación se muestra el programa JavaScript para encontrar el producto de los elementos de la matriz:

// Programa JavaScript para encontrar el producto de los elementos de la matriz mediante recursividad
función findProduct (arr, n) {
si (n == 0) {
retorno (arr [n]);
} demás {
return (arr [n] * findProduct (arr, n - 1));
}
}
function printArrayElements (arr, size) {
para (sea i = 0; Idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write ("Matriz 1:" + "
");
printArrayElements (arr1, tamaño1);
document.write ("Producto de los elementos de la matriz:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write ("Matriz 2:" + "
");
printArrayElements (arr2, tamaño2);
document.write ("Producto de los elementos de la matriz:" + findProduct (arr2, size2) + "
");

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Programa C para encontrar el producto de elementos de matriz mediante recursividad

A continuación se muestra el programa en C para encontrar el producto de los elementos de la matriz:

// Programa en C para encontrar el producto de los elementos de la matriz usando la recursividad
#incluir
int findProduct (int arr [], int n)
{
si (n == 0)
{
retorno (arr [n]);
}
demás
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int tamaño)
{
para (int i = 0; I{
printf ("% d", arr [i]);
}
printf ("\ ⁠n");
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int tamaño1 = tamaño de (arr1) / tamaño de (arr1 [0]);
printf ("Matriz 1: \ ⁠n");
printArrayElements (arr1, tamaño1);
printf ("Producto de los elementos de la matriz:% d \ ⁠n", findProduct (arr1, size1-1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int tamaño2 = tamaño de (arr2) / tamaño de (arr2 [0]);
printf ("Matriz 2: \ ⁠n");
printArrayElements (arr2, tamaño2);
printf ("Producto de los elementos de la matriz:% d \ ⁠n", findProduct (arr2, size2-1));
return 0;
}

Producción:

Matriz 1:
1 2 3 4 5 6 7 8
Producto de los elementos de la matriz: 40320
Matriz 2:
1 1 1 1 1 1
Producto de los elementos de la matriz: 1

Fortalezca sus conceptos de arreglos

Las matrices son una parte integral de la programación. También son uno de los temas más importantes para las entrevistas técnicas.

Si los programas basados ​​en matrices aún te asustan, intenta resolver algunos problemas básicos de matrices, como cómo encontrar la suma de todos los elementos de una matriz, cómo encontrar el elemento máximo y mínimo en una matriz, cómo invertir una matriz, etc. Le ayudará a fortalecer sus conceptos de matriz.

Cuota
Correo electrónico
Cómo encontrar la suma de todos los elementos en una matriz

Ya sea que esté usando JavaScript, Python o C ++, estos programas definitivamente se suman.

Leer siguiente

Temas relacionados
  • Programación
  • JavaScript
  • Pitón
  • Tutoriales de codificación
  • Programación en C
Sobre el Autor
Yuvraj Chandra (47 Artículos publicados)

Yuvraj es estudiante de licenciatura en Ciencias de la Computación en la Universidad de Delhi, India. Le apasiona el desarrollo web Full Stack. Cuando no está escribiendo, está explorando la profundidad de diferentes tecnologías.

Más de Yuvraj Chandra

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse