Een array is een verzameling elementen die zijn opgeslagen op aaneengesloten geheugenlocaties. Het is de meest gebruikte datastructuur bij het programmeren. U moet weten hoe u basisbewerkingen op een array uitvoert, zoals invoegen, verwijderen, doorkruisen, de som van alle elementen vinden, het product van alle elementen vinden, enz.
In dit artikel leert u hoe u het product van alle elementen in een array kunt vinden met behulp van iteratieve en recursieve benaderingen.
Probleemstelling
Je krijgt een array arr. U moet het product van alle elementen van de array vinden en vervolgens het eindproduct afdrukken. U moet deze oplossing implementeren met lussen en recursie.
voorbeeld 1: Laat arr = [1, 2, 3, 4, 5, 6, 7, 8]
Het product van elk element van de array = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320
De uitvoer is dus 40320.
Voorbeeld 2: Laat arr = [1, 1, 1, 1, 1, 1]
Het product van elk element van de array = 1 * 1 * 1 * 1 * 1 * 1 = 1
De output is dus 1.
Iteratieve benadering om het product van alle elementen van de array te vinden
U kunt het product van alle elementen van de array vinden met behulp van iteratie/loops door de onderstaande benadering te volgen:
- Een variabele initialiseren resultaat (met een waarde van 1) om het product van alle elementen in de array op te slaan.
- Doorloop de array en vermenigvuldig elk element van de array met de resultaat.
- Breng ten slotte de. terug resultaat.
C++-programma om het product van array-elementen te vinden met behulp van lussen
Hieronder staat het C++-programma om het product van array-elementen te vinden:
// C++ programma om het product van de array-elementen te vinden
#erbij betrekken
namespace std; gebruiken;
int findProduct (int arr[], int size)
{
int resultaat = 1;
voor (int i=0; I{
resultaat = resultaat * arr[i];
}
resultaat teruggeven;
}
void printArrayElements (int arr[], int size)
{
voor (int i=0; I{
cout << arr[i] << " ";
}
cout << endl;
}
int hoofd()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof (arr1)/sizeof (arr1[0]);
cout << "Array 1:" << endl;
printArrayElements (arr1, grootte1);
cout << "Product van de array-elementen: " << 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, grootte2);
cout << "Product van de array-elementen: " << findProduct (arr2, size2) << endl;
retourneer 0;
}
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
Python-programma om het product van array-elementen te vinden met behulp van lussen
Hieronder staat het Python-programma om het product van array-elementen te vinden:
# Python-programma om het product van de lijstelementen te vinden
def findProduct (arr, maat):
resultaat = 1
voor i binnen bereik (maat):
resultaat = resultaat * arr[i]
resultaat retourneren
def printListElements (arr, grootte):
voor i binnen bereik (maat):
print (arr[i], end=" ")
afdrukken()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
maat1 = len (arr1)
print("Array 1:")
printListElements (arr1, maat1)
print("Product van de array-elementen:", findProduct (arr1, size1))
arr2 = [1, 1, 1, 1, 1, 1]
maat2 = len (arr2)
print("Array 2:")
printListElements (arr2, maat2)
print("Product van de array-elementen:", findProduct (arr2, size2))
Verwant: Hoe te gebruiken voor lussen in Python
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
JavaScript-programma om het product van array-elementen te vinden met behulp van lussen
Hieronder staat het JavaScript-programma om het product van array-elementen te vinden:
// JavaScript-programma om het product van de array-elementen te vinden
functie findProduct (arr, size) {
laat resultaat = 1;
voor (laat i=0; Iresultaat = resultaat * arr[i];
}
resultaat teruggeven;
}
functie printArrayElements (arr, grootte) {
voor (laat i=0; Idocument.schrijven (arr[i] + " ");
}
document.schrijven("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var maat1 = arr1.lengte;
document.write("Array 1:" + "
");
printArrayElements (arr1, grootte1);
document.write("Product van de array-elementen: " + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write("Array 2:" + "
");
printArrayElements (arr2, grootte2);
document.write("Product van de array-elementen: " + findProduct (arr2, size2) + "
");
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
Verwant: JavaScript-matrixmethoden die u vandaag moet beheersen
C Programma om het product van array-elementen te vinden met behulp van lussen
Hieronder staat het C-programma om het product van array-elementen te vinden:
// C-programma om het product van de array-elementen te vinden
#erbij betrekken
int findProduct (int arr[], int size)
{
int resultaat = 1;
voor (int i=0; I{
resultaat = resultaat * arr[i];
}
resultaat teruggeven;
}
void printArrayElements (int arr[], int size)
{
voor (int i=0; I{
printf("%d", arr[i]);
}
printf("\n");
}
int hoofd()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof (arr1)/sizeof (arr1[0]);
printf("Array 1: \n");
printArrayElements (arr1, grootte1);
printf("Product van de array-elementen: %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, grootte2);
printf("Product van de array-elementen: %d \n", findProduct (arr2, size2));
retourneer 0;
}
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
Recursieve benadering om het product van alle elementen in een array te vinden
U kunt het product van alle elementen van de array vinden met behulp van recursie door de onderstaande pseudocode te volgen:
functie findProduct (arr, n):
als n == 0:
terug (arr[n])
anders:
return (arr[n] * findProduct (arr, n - 1))
Verwant: Wat is pseudocode en hoe maakt het u een betere ontwikkelaar?
C++-programma om het product van array-elementen te vinden met behulp van recursie
Hieronder staat het C++-programma om het product van array-elementen te vinden:
// C++-programma om het product van de array-elementen te vinden met behulp van recursie
#erbij betrekken
namespace std; gebruiken;
int zoekProduct (int arr[], int n)
{
als (n == 0)
{
terugkeer (arr[n]);
}
anders
{
return (arr[n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr[], int size)
{
voor (int i=0; I{
cout << arr[i] << " ";
}
cout << endl;
}
int hoofd()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof (arr1)/sizeof (arr1[0]);
cout << "Array 1:" << endl;
printArrayElements (arr1, grootte1);
cout << "Product van de array-elementen: " << 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, grootte2);
cout << "Product van de array-elementen: " << findProduct (arr2, size2-1) << endl;
retourneer 0;
}
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
Verwant: Een inleiding tot het bellensorteeralgoritme
Python-programma om het product van array-elementen te vinden met behulp van recursie
Hieronder staat het Python-programma om het product van array-elementen te vinden:
# Python-programma om het product van de lijstelementen te vinden met behulp van recursie
def zoekProduct (arr, n):
als n == 0:
terug (arr[n])
anders:
return (arr[n] * findProduct (arr, n - 1))
def printListElements (arr, grootte):
voor i binnen bereik (maat):
print (arr[i], end=" ")
afdrukken()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
maat1 = len (arr1)
print("Array 1:")
printListElements (arr1, maat1)
print("Product van de array-elementen:", findProduct (arr1, size1-1))
arr2 = [1, 1, 1, 1, 1, 1]
maat2 = len (arr2)
print("Array 2:")
printListElements (arr2, maat2)
print("Product van de array-elementen:", findProduct (arr2, size2-1))
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
Verwant: Een inleiding tot het samenvoegsorteeralgoritme
JavaScript-programma om het product van array-elementen te vinden met behulp van recursie
Hieronder staat het JavaScript-programma om het product van array-elementen te vinden:
// JavaScript-programma om het product van de array-elementen te vinden met behulp van recursie
functie vindProduct (arr, n) {
als (n == 0) {
terugkeer (arr[n]);
} anders {
return (arr[n] * findProduct (arr, n - 1));
}
}
functie printArrayElements (arr, grootte) {
voor (laat i=0; Idocument.schrijven (arr[i] + " ");
}
document.schrijven("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var maat1 = arr1.lengte;
document.write("Array 1:" + "
");
printArrayElements (arr1, grootte1);
document.write("Product van de array-elementen: " + findProduct (arr1, size1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var size2 = arr2.length;
document.write("Array 2:" + "
");
printArrayElements (arr2, grootte2);
document.write("Product van de array-elementen: " + findProduct (arr2, size2) + "
");
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
C Programma om het product van array-elementen te vinden met behulp van recursie
Hieronder staat het C-programma om het product van array-elementen te vinden:
// C-programma om het product van de array-elementen te vinden met behulp van recursie
#erbij betrekken
int zoekProduct (int arr[], int n)
{
als (n == 0)
{
terugkeer (arr[n]);
}
anders
{
return (arr[n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr[], int size)
{
voor (int i=0; I{
printf("%d", arr[i]);
}
printf("\n");
}
int hoofd()
{
int arr1[] = {1, 2, 3, 4, 5, 6, 7, 8};
int size1 = sizeof (arr1)/sizeof (arr1[0]);
printf("Array 1: \n");
printArrayElements (arr1, grootte1);
printf("Product van de array-elementen: %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, grootte2);
printf("Product van de array-elementen: %d \n", findProduct (arr2, size2-1));
retourneer 0;
}
Uitgang:
Serie 1:
1 2 3 4 5 6 7 8
Product van de array-elementen: 40320
Reeks 2:
1 1 1 1 1 1
Product van de array-elementen: 1
Versterk uw matrixconcepten
Arrays zijn een integraal onderdeel van programmeren. Ze zijn ook een van de belangrijkste onderwerpen voor technische interviews.
Als programma's op basis van arrays je nog steeds bang maken, probeer dan een aantal basisarrayproblemen op te lossen, zoals het vinden van de som van find alle elementen in een array, hoe het maximum en minimum element in een array te vinden, hoe een array om te keren, enz. Het zal u helpen uw arrayconcepten te versterken.
Of je nu JavaScript, Python of C++ gebruikt, deze programma's kloppen zeker.
Lees volgende
- Programmeren
- JavaScript
- Python
- Codeerhandleidingen
- C Programmeren
Yuvraj is een student Computerwetenschappen aan de Universiteit van Delhi, India. Hij is gepassioneerd door Full Stack Web Development. Als hij niet aan het schrijven is, onderzoekt hij de diepte van verschillende technologieën.
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Klik hier om je te abonneren