A tömb egy összefüggő memóriahelyeken tárolt elemek gyűjteménye. Ez a programozásban a leggyakrabban használt adatstruktúra. Tudnia kell, hogyan kell egy tömbön alapvető műveleteket végrehajtani, például beillesztés, törlés, bejárás, az összes elem összegének megkeresése, az összes elem szorzatának megtalálása stb.
Ebben a cikkben megtudhatja, hogyan lehet iteratív és rekurzív megközelítéssel megtalálni a tömb összes elemének szorzatát.
Probléma nyilatkozat
Tömböt kapsz arr. Meg kell találnia a tömb összes elemének szorzatát, majd ki kell nyomtatnia a végterméket. Ezt a megoldást hurkok és rekurzió segítségével kell megvalósítania.
1. példa: Legyen arr = [1, 2, 3, 4, 5, 6, 7, 8]
A tömb egyes elemeinek szorzata = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320
Így a kimenet 40320.
2. példa: Legyen arr = [1, 1, 1, 1, 1, 1]
A tömb egyes elemeinek szorzata = 1 * 1 * 1 * 1 * 1 * 1 = 1
Így a kimenet 1.
Iteratív megközelítés a tömb összes elemének termékének megtalálásához
A tömb összes elemének szorzatát az iteráció / ciklusok segítségével találhatja meg az alábbi megközelítés követésével:
- Inicializáljon egy változót eredmény (1-es értékkel) az összes elem szorzatának tárolásához a tömbben.
- Iteráljuk át a tömböt, és szorozzuk a tömb minden egyes elemét a eredmény.
- Végül adja vissza a eredmény.
C ++ program tömb elemek szorzatának keresésére hurkok segítségével
Az alábbiakban a C ++ program található a tömb elemek szorzatának megtalálásához:
// C ++ program a tömb elemek szorzatának megkeresésére
#include
névtér használata std;
int findProduct (int arr [], int méret)
{
int eredmény = 1;
for (int i = 0; én{
eredmény = eredmény * arr [i];
}
visszatérési eredmény;
}
void printArrayElements (int arr [], int méret)
{
for (int i = 0; én{
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. tömb:" << endl;
printArrayElements (arr1, méret1);
cout << "A tömb elemek szorzata:" << findProduct (arr1, size1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "2. tömb:" << endl;
printArrayElements (arr2, size2);
cout << "A tömb elemek szorzata:" << findProduct (arr2, size2) << endl;
visszatér 0;
}
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
Python program tömb elemek szorzatának keresésére hurkok segítségével
Az alábbiakban a Python program található a tömb elemek szorzatának megtalálásához:
# Python program a listaelemek termékének megkeresésére
def findProduct (arr, méret):
eredmény = 1
i tartományban (méret):
eredmény = eredmény * arr [i]
visszatérési eredmény
def printListElements (arr, méret):
i tartományban (méret):
nyomtatás (arr [i], end = "")
nyomtatás()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
méret1 = len (arr1)
nyomtatás ("1. tömb:")
printListElements (arr1, size1)
print ("A tömbelemek szorzata:", findProduct (arr1, méret1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len (arr2)
nyomtatás ("2. tömb:")
printListElements (arr2, size2)
print ("A tömb elemeinek szorzata:", findProduct (arr2, méret2))
Összefüggő: Hogyan kell használni a Python hurkokhoz
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
JavaScript program a tömb elemek szorzatának megtalálásához hurkok segítségével
Az alábbiakban található a JavaScript program a tömb elemek termékének megkeresésére:
// JavaScript program a tömb elemek szorzatának megkeresésére
function findProduct (arr, méret) {
legyen eredmény = 1;
for (legyen i = 0; éneredmény = eredmény * arr [i];
}
visszatérési eredmény;
}
függvény printArrayElements (arr, méret) {
for (legyen i = 0; éndocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.hossz;
document.write ("1. tömb:" + "
");
printArrayElements (arr1, méret1);
document.write ("A tömb elemek szorzata:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.hossz;
document.write ("2. tömb:" + "
");
printArrayElements (arr2, size2);
document.write ("A tömb elemek szorzata:" + findProduct (arr2, size2) + "
");
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
Összefüggő: JavaScript tömb módszerek, amelyeket ma el kell sajátítania
C Program a tömb elemek szorzatának keresésére hurkok segítségével
Az alábbiakban látható a C program a tömb elemek szorzatának megkeresésére:
// C program a tömb elemek szorzatának megkeresésére
#include
int findProduct (int arr [], int méret)
{
int eredmény = 1;
for (int i = 0; én{
eredmény = eredmény * arr [i];
}
visszatérési eredmény;
}
void printArrayElements (int arr [], int méret)
{
for (int i = 0; én{
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. tömb: \ n");
printArrayElements (arr1, méret1);
printf ("A tömb elemek szorzata:% d \ n", findProduct (arr1, méret1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("2. tömb: \ n");
printArrayElements (arr2, size2);
printf ("A tömb elemek szorzata:% d \ n", findProduct (arr2, méret2));
visszatér 0;
}
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
Rekurzív megközelítés a tömb összes elemének termékének megtalálásához
A tömb összes elemének szorzatát rekurzióval találhatja meg az alábbi álkód követésével:
function findProduct (arr, n):
ha n == 0:
visszatérés (arr [n])
más:
return (arr [n] * findProduct (arr, n - 1))
Összefüggő: Mi az álkód és hogyan tesz jobb fejlesztővé?
C ++ program a tömb elemek szorzatának megtalálásához rekurzióval
Az alábbiakban a C ++ program található a tömb elemek szorzatának megtalálásához:
// C ++ program a tömb elemek szorzatának megtalálásához rekurzióval
#include
névtér használata std;
int findProduct (int arr [], int n)
{
ha (n == 0)
{
visszatérés (arr [n]);
}
más
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int méret)
{
for (int i = 0; én{
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. tömb:" << endl;
printArrayElements (arr1, méret1);
cout << "A tömb elemek szorzata:" << findProduct (arr1, size1-1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "2. tömb:" << endl;
printArrayElements (arr2, size2);
cout << "A tömb elemek szorzata:" << findProduct (arr2, size2-1) << endl;
visszatér 0;
}
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
Összefüggő: Bevezetés a Bubble Sort algoritmusba
Python program tömb elemek szorzatának megtalálásához rekurzióval
Az alábbiakban a Python program található a tömb elemek szorzatának megtalálásához:
# Python program a listaelemek e-termékének megtalálásához rekurzióval
def findProduct (arr, n):
ha n == 0:
visszatérés (arr [n])
más:
return (arr [n] * findProduct (arr, n - 1))
def printListElements (arr, méret):
i tartományban (méret):
nyomtatás (arr [i], end = "")
nyomtatás()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
méret1 = len (arr1)
nyomtatás ("1. tömb:")
printListElements (arr1, size1)
print ("A tömb elemek szorzata:", findProduct (arr1, méret1-1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len (arr2)
nyomtatás ("2. tömb:")
printListElements (arr2, size2)
print ("A tömb elemek szorzata:", findProduct (arr2, méret2-1))
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
Összefüggő: Bevezetés a Merge Sort algoritmusba
JavaScript program a tömb elemek szorzatának megtalálásához rekurzióval
Az alábbiakban található a JavaScript program a tömb elemek termékének megkeresésére:
// JavaScript program a tömb elemek szorzatának megtalálásához rekurzióval
function findProduct (arr, n) {
ha (n == 0) {
visszatérés (arr [n]);
} más {
return (arr [n] * findProduct (arr, n - 1));
}
}
függvény printArrayElements (arr, méret) {
for (legyen i = 0; éndocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.hossz;
document.write ("1. tömb:" + "
");
printArrayElements (arr1, méret1);
document.write ("A tömb elemek szorzata:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.hossz;
document.write ("2. tömb:" + "
");
printArrayElements (arr2, size2);
document.write ("A tömb elemek szorzata:" + findProduct (arr2, size2) + "
");
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
C Program a tömb elemek szorzatának megtalálásához a rekurzió használatával
Az alábbiakban látható a C program a tömb elemek szorzatának megkeresésére:
// C program a tömb elemek szorzatának megtalálásához rekurzióval
#include
int findProduct (int arr [], int n)
{
ha (n == 0)
{
visszatérés (arr [n]);
}
más
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int méret)
{
for (int i = 0; én{
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. tömb: \ n");
printArrayElements (arr1, méret1);
printf ("A tömb elemek szorzata:% d \ n", findProduct (arr1, méret1-1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("2. tömb: \ n");
printArrayElements (arr2, size2);
printf ("A tömb elemek szorzata:% d \ n", findProduct (arr2, méret2-1));
visszatér 0;
}
Kimenet:
1. tömb:
1 2 3 4 5 6 7 8
A tömb elemek szorzata: 40320
2. tömb:
1 1 1 1 1 1
A tömb elemek szorzata: 1
Erősítse meg tömb-koncepcióit
A tömbök a programozás szerves részét képezik. Ezek a technikai interjúk egyik legfontosabb témája.
Ha a tömbökön alapuló programok még mindig megijesztenek, próbáljon megoldani néhány alapvető tömbproblémát, például hogyan találja meg az összegét egy tömb összes eleme, hogyan lehet megtalálni a tömb maximális és minimális elemét, hogyan lehet egy tömböt megfordítani stb. Ez segít megerősíteni a tömböt.
Akár JavaScriptet, akár Pythonot, akár C ++ rendszert használ, ezek a programok mindenképpen összeadódnak.
Olvassa el a következőt
- Programozás
- JavaScript
- Piton
- Kódolási oktatóanyagok
- C programozás
Yuvraj informatikus egyetemi hallgató az indiai Delhi Egyetemen. Szenvedélyes a Full Stack webfejlesztés iránt. Amikor nem ír, a különböző technológiák mélységét kutatja.
Iratkozzon fel hírlevelünkre
Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!
Kattintson ide a feliratkozáshoz