Pole je kolekce prvků uložených na souvislých paměťových místech. Je to nejpoužívanější datová struktura v programování. Musíte vědět, jak provádět základní operace s polem, jako je vkládání, mazání, procházení, hledání součtu všech prvků, hledání součinu všech prvků atd.
V tomto článku se naučíte, jak najít produkt všech prvků v poli pomocí iterativních a rekurzivních přístupů.
Problémové prohlášení
Dostali jste pole přílet. Musíte najít produkt všech prvků pole a poté vytisknout finální produkt. Toto řešení musíte implementovat pomocí smyček a rekurze.
Příklad 1: Nechť arr = [1, 2, 3, 4, 5, 6, 7, 8]
Produkt každého prvku pole = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320
Výstup je tedy 40320.
Příklad 2: Nechť arr = [1, 1, 1, 1, 1, 1]
Produkt každého prvku pole = 1 * 1 * 1 * 1 * 1 * 1 = 1
Výstup je tedy 1.
Iterativní přístup k nalezení produktu všech prvků pole
Produkt všech prvků pole najdete pomocí iterace / smyček podle následujícího postupu:
- Inicializovat proměnnou výsledek (s hodnotou 1) pro uložení produktu všech prvků v poli.
- Procházejte pole a vynásobte každý prvek pole pomocí výsledek.
- Nakonec vraťte výsledek.
Program C ++ k vyhledání produktu prvků pole pomocí smyček
Níže je program C ++ k vyhledání produktu prvků pole:
// Program C ++ k vyhledání produktu prvků pole
#zahrnout
pomocí jmenného prostoru std;
int findProduct (int arr [], int velikost)
{
int výsledek = 1;
pro (int i = 0; i{
výsledek = výsledek * arr [i];
}
vrátit výsledek;
}
void printArrayElements (int arr [], velikost int)
{
pro (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 << "Pole 1:" << endl;
printArrayElements (arr1, size1);
cout << "Produkt prvků pole:" << findProduct (arr1, size1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "Pole 2:" << endl;
printArrayElements (arr2, size2);
cout << "Produkt prvků pole:" << findProduct (arr2, size2) << endl;
návrat 0;
}
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Program Python k vyhledání produktu prvků pole pomocí smyček
Níže je program Python k nalezení produktu prvků pole:
# Program v Pythonu k vyhledání produktu prvků seznamu
def findProduct (arr, velikost):
výsledek = 1
pro i v rozsahu (velikost):
výsledek = výsledek * arr [i]
vrátit výsledek
def printListElements (arr, velikost):
pro i v rozsahu (velikost):
print (arr [i], end = "")
vytisknout()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
size1 = len (arr1)
print ("Pole 1:")
printListElements (arr1, size1)
print ("Produkt prvků pole:", findProduct (arr1, size1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len (arr2)
print ("Pole 2:")
printListElements (arr2, size2)
print ("Produkt prvků pole:", findProduct (arr2, size2))
Příbuzný: Jak používat smyčky v Pythonu
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Program JavaScript k vyhledání produktu prvků pole pomocí smyček
Níže je uveden program JavaScript k vyhledání produktu prvků pole:
// JavaScriptový program k nalezení produktu prvků pole
funkce findProduct (arr, velikost) {
nechť výsledek = 1;
pro (nechť i = 0; ivýsledek = výsledek * arr [i];
}
vrátit výsledek;
}
funkce printArrayElements (arr, velikost) {
pro (nechť i = 0; idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write ("Pole 1:" + "
");
printArrayElements (arr1, size1);
document.write ("Produkt prvků pole:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write ("Pole 2:" + "
");
printArrayElements (arr2, size2);
document.write ("Produkt prvků pole:" + findProduct (arr2, size2) + "
");
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Příbuzný: Metody JavaScriptu, které byste měli dnes ovládat
Program C k vyhledání produktu prvků pole pomocí smyček
Níže je program C k nalezení produktu prvků pole:
// Program C k nalezení produktu prvků pole
#zahrnout
int findProduct (int arr [], int velikost)
{
int výsledek = 1;
pro (int i = 0; i{
výsledek = výsledek * arr [i];
}
vrátit výsledek;
}
void printArrayElements (int arr [], velikost int)
{
pro (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 ("Pole 1: \ n");
printArrayElements (arr1, size1);
printf ("Produkt prvků pole:% d \ n", findProduct (arr1, size1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("Pole 2: \ n");
printArrayElements (arr2, size2);
printf ("Produkt prvků pole:% d \ n", findProduct (arr2, size2));
návrat 0;
}
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Rekurzivní přístup k nalezení produktu všech prvků v poli
Produkt všech prvků pole najdete pomocí rekurze podle níže uvedeného pseudokódu:
funkce findProduct (arr, n):
pokud n == 0:
návrat (arr [n])
jiný:
návrat (arr [n] * findProduct (arr, n - 1))
Příbuzný: Co je to pseudokód a jak z něj děláte lepšího vývojáře?
Program C ++ k vyhledání produktu prvků pole pomocí rekurze
Níže je program C ++ k vyhledání produktu prvků pole:
// Program C ++ k vyhledání produktu prvků pole pomocí rekurze
#zahrnout
pomocí jmenného prostoru std;
int findProduct (int arr [], int n)
{
if (n == 0)
{
návrat (arr [n]);
}
jiný
{
návrat (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], velikost int)
{
pro (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 << "Pole 1:" << endl;
printArrayElements (arr1, size1);
cout << "Produkt prvků pole:" << findProduct (arr1, size1-1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "Pole 2:" << endl;
printArrayElements (arr2, size2);
cout << "Produkt prvků pole:" << findProduct (arr2, size2-1) << endl;
návrat 0;
}
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Příbuzný: Úvod do algoritmu třídění bublin
Program Python k vyhledání produktu prvků pole pomocí rekurze
Níže je program Python k nalezení produktu prvků pole:
# Program v Pythonu k vyhledání eproduktu prvků seznamu pomocí rekurze
def findProduct (arr, n):
pokud n == 0:
návrat (arr [n])
jiný:
návrat (arr [n] * findProduct (arr, n - 1))
def printListElements (arr, velikost):
pro i v rozsahu (velikost):
print (arr [i], end = "")
vytisknout()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
size1 = len (arr1)
print ("Pole 1:")
printListElements (arr1, size1)
print ("Produkt prvků pole:", findProduct (arr1, size1-1))
arr2 = [1, 1, 1, 1, 1, 1]
size2 = len (arr2)
print ("Pole 2:")
printListElements (arr2, size2)
print ("Produkt prvků pole:", findProduct (arr2, size2-1))
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Příbuzný: Úvod do algoritmu sloučení řazení
Program JavaScript k vyhledání produktu prvků pole pomocí rekurze
Níže je uveden program JavaScript k vyhledání produktu prvků pole:
// JavaScriptový program k vyhledání produktu prvků pole pomocí rekurze
funkce findProduct (arr, n) {
if (n == 0) {
návrat (arr [n]);
} else {
návrat (arr [n] * findProduct (arr, n - 1));
}
}
funkce printArrayElements (arr, velikost) {
pro (nechť i = 0; idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var size1 = arr1.length;
document.write ("Pole 1:" + "
");
printArrayElements (arr1, size1);
document.write ("Produkt prvků pole:" + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write ("Pole 2:" + "
");
printArrayElements (arr2, size2);
document.write ("Produkt prvků pole:" + findProduct (arr2, size2) + "
");
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Program C k vyhledání produktu prvků pole pomocí rekurze
Níže je program C k nalezení produktu prvků pole:
// Program C k nalezení produktu prvků pole pomocí rekurze
#zahrnout
int findProduct (int arr [], int n)
{
if (n == 0)
{
návrat (arr [n]);
}
jiný
{
návrat (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], velikost int)
{
pro (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 ("Pole 1: \ n");
printArrayElements (arr1, size1);
printf ("Produkt prvků pole:% d \ n", findProduct (arr1, size1-1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("Pole 2: \ n");
printArrayElements (arr2, size2);
printf ("Produkt prvků pole:% d \ n", findProduct (arr2, size2-1));
návrat 0;
}
Výstup:
Pole 1:
1 2 3 4 5 6 7 8
Produkt prvků pole: 40320
Pole 2:
1 1 1 1 1 1
Produkt prvků pole: 1
Posilte své koncepty pole
Pole jsou nedílnou součástí programování. Jsou také jedním z nejdůležitějších témat pro technické rozhovory.
Pokud vás programy založené na polích stále děsí, zkuste vyřešit některé základní problémy s poli, například jak zjistit součet všechny prvky v poli, jak najít maximální a minimální prvek v poli, jak obrátit pole atd. Pomůže vám posílit vaše koncepty pole.
Ať už používáte JavaScript, Python nebo C ++, tyto programy se určitě sčítají.
Přečtěte si další
- Programování
- JavaScript
- Krajta
- Výukové programy pro kódování
- C Programování
Yuvraj je vysokoškolský student výpočetní techniky na univerzitě v Dillí v Indii. Je vášnivým vývojářem Full Stack Web Development. Když nepíše, zkoumá hloubku různých technologií.
Přihlaste se k odběru našeho zpravodaje
Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!
Kliknutím sem se přihlásíte k odběru