Masyvas yra elementų, saugomų gretimose atminties vietose, rinkinys. Tai dažniausiai naudojama programavimo duomenų struktūra. Turite žinoti, kaip atlikti pagrindines masyvo operacijas, pvz., Įterpimą, ištrynimą, perėjimą, visų elementų sumos paiešką, visų elementų sandaugos suradimą ir kt.

Šiame straipsnyje sužinosite, kaip rasti visų masyvo elementų sandaugą naudojant iteracinius ir rekursinius metodus.

Problemos pareiškimas

Jums suteikta masyvas arr. Turite rasti visų masyvo elementų sandaugą, tada atspausdinti galutinį produktą. Turite įdiegti šį sprendimą naudodami kilpas ir rekursiją.

1 pavyzdys: Tegul arr = [1, 2, 3, 4, 5, 6, 7, 8]

Kiekvieno masyvo elemento sandauga = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320

Taigi, išvestis yra 40320.

2 pavyzdys: Tegul arr = [1, 1, 1, 1, 1, 1]

Kiekvieno masyvo elemento sandauga = 1 * 1 * 1 * 1 * 1 * 1 = 1

Taigi išvestis yra 1.

Pakartotinis metodas surasti visų masyvo elementų produktą

Visų masyvo elementų sandaugą galite rasti naudodami iteraciją / kilpas, vadovaudamiesi toliau pateiktu metodu:

instagram viewer
  1. Inicializuokite kintamąjį rezultatas (kurio vertė yra 1) saugoti masyvo visų elementų sandaugą.
  2. Kartokite per masyvą ir padauginkite kiekvieną masyvo elementą su rezultatas.
  3. Galiausiai grąžinkite rezultatas.

„C ++“ programa, skirta rasti masyvo elementų produktą naudojant kilpas

Žemiau pateikiama C ++ programa, skirta rasti masyvo elementų produktą:

// C ++ programa masyvo elementų sandaugai rasti
# įtraukti
naudojant vardų sritį std;
int findProduct (int arr [], int dydis)
{
int rezultatas = 1;
už (int i = 0; i{
rezultatas = rezultatas * arr [i];
}
grąžinimo rezultatas;
}
void printArrayElements (int arr [], int dydis)
{
už (int i = 0; i{
cout << arr [i] << "";
}
cout << endl;
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int dydis1 = sizeof (arr1) / sizeof (arr1 [0]);
cout << "1 masyvas:" << endl;
printArrayElements (arr1, dydis1);
cout << "Masyvo elementų sandauga:" << findProduct (arr1, size1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int dydis2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "2 masyvas:" << endl;
printArrayElements (arr2, dydis2);
cout << "Masyvo elementų sandauga:" << findProduct (arr2, size2) << endl;
grąžinti 0;
}

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

„Python“ programa masyvo elementų produktui rasti naudojant kilpas

Žemiau yra „Python“ programa, skirta rasti masyvo elementų produktą:

# Python programa, skirta surasti sąrašo elementų produktą
def findProduct (arr, dydis):
rezultatas = 1
i diapazone (dydis):
rezultatas = rezultatas * arr [i]
grąžinimo rezultatas
def printListElements (arr, dydis):
i diapazone (dydis):
spausdinti (arr [i], pabaiga = "")
spausdinti ()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
dydis1 = len (arr1)
spausdinti ("1 masyvas:")
„printListElements“ („arr1“, „size1“)
spausdinti ("Masyvo elementų produktas:", findProduct (arr1, dydis1))
arr2 = [1, 1, 1, 1, 1, 1]
dydis2 = len (arr2)
spausdinti ("2 masyvas:")
printListElements (arr2, size2)
spausdinti ("Masyvo elementų produktas:", findProduct (arr2, dydis2))

Susijęs: Kaip naudoti „Python“ kilpoms

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

„JavaScript“ programa, skirta rasti masyvo elementų produktą naudojant kilpas

Žemiau yra „JavaScript“ programa, skirta rasti masyvo elementų produktą:

// „JavaScript“ programa, kad surastumėte masyvo elementų produktą
funkcija findProduct (arr, dydis) {
tegul rezultatas = 1;
už (tegul i = 0; irezultatas = rezultatas * arr [i];
}
grąžinimo rezultatas;
}
funkcija printArrayElements (arr, dydis) {
už (tegul i = 0; idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var dydis1 = arr1.length;
document.write ("1 masyvas:" + "
");
printArrayElements (arr1, dydis1);
document.write ("Masyvo elementų produktas:" + findProduct (arr1, dydis1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var dydis2 = arr2.length;
document.write ("Masyvas 2:" + "
");
printArrayElements (arr2, dydis2);
document.write ("Masyvo elementų produktas:" + findProduct (arr2, size2) + "
");

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

Susijęs: „JavaScript“ masyvo metodai, kuriuos turėtumėte išmokti šiandien

C programa masyvo elementų produktui rasti naudojant kilpas

Žemiau yra C programa, skirta rasti masyvo elementų produktą:

// C programa masyvo elementų sandaugai rasti
# įtraukti
int findProduct (int arr [], int dydis)
{
int rezultatas = 1;
už (int i = 0; i{
rezultatas = rezultatas * arr [i];
}
grąžinimo rezultatas;
}
void printArrayElements (int arr [], int dydis)
{
už (int i = 0; i{
printf ("% d", arr [i]);
}
printf ("\ ⁠n");
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int dydis1 = sizeof (arr1) / sizeof (arr1 [0]);
printf ("1 masyvas: \ ⁠n");
printArrayElements (arr1, dydis1);
printf ("Masyvo elementų produktas:% d \ ⁠n", findProduct (arr1, dydis1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int dydis2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("2 masyvas: \ ⁠n");
printArrayElements (arr2, dydis2);
printf ("Masyvo elementų sandauga:% d \ ⁠n", findProduct (arr2, dydis2));
grąžinti 0;
}

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

Rekursyvus metodas rasti masyvo visų elementų produktą

Visų masyvo elementų sandaugą galite rasti naudodami rekursiją, vadovaudamiesi toliau pateiktu pseudokodu:

funkcija findProduct (arr, n):
jei n == 0:
grįžti (arr [n])
Kitas:
grįžti (arr [n] * findProduct (arr, n - 1))

Susijęs: Kas yra pseudokodas ir kaip jis padaro jus geresniu kūrėju?

„C ++“ programa, skirta rasti masyvo elementų produktą naudojant rekursiją

Žemiau pateikiama C ++ programa, skirta rasti masyvo elementų produktą:

// C ++ programa masyvo elementų sandaugai rasti naudojant rekursiją
# įtraukti
naudojant vardų sritį std;
int findProduct (int arr [], int n)
{
jei (n == 0)
{
grįžti (arr [n]);
}
Kitas
{
grįžti (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int dydis)
{
už (int i = 0; i{
cout << arr [i] << "";
}
cout << endl;
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int dydis1 = sizeof (arr1) / sizeof (arr1 [0]);
cout << "1 masyvas:" << endl;
printArrayElements (arr1, dydis1);
cout << "Masyvo elementų sandauga:" << findProduct (arr1, dydis1-1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int dydis2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "2 masyvas:" << endl;
printArrayElements (arr2, dydis2);
cout << "Masyvo elementų sandauga:" << findProduct (arr2, size2-1) << endl;
grąžinti 0;
}

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

Susijęs: Įvadas į burbulų rūšiavimo algoritmą

„Python“ programa masyvo elementų produktui rasti naudojant rekursiją

Žemiau yra „Python“ programa, skirta rasti masyvo elementų produktą:

# Python programa sąrašo elementų eproduktui rasti naudojant rekursiją
def findProduct (arr, n):
jei n == 0:
grįžti (arr [n])
Kitas:
grįžti (arr [n] * findProduct (arr, n - 1))
def printListElements (arr, dydis):
i diapazone (dydis):
spausdinti (arr [i], pabaiga = "")
spausdinti ()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
dydis1 = len (arr1)
spausdinti ("1 masyvas:")
„printListElements“ („arr1“, „size1“)
spausdinti ("Masyvo elementų produktas:", findProduct (arr1, dydis1-1))
arr2 = [1, 1, 1, 1, 1, 1]
dydis2 = len (arr2)
spausdinti ("2 masyvas:")
printListElements (arr2, size2)
print ("Masyvo elementų sandauga:", findProduct (arr2, dydis2-1))

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

Susijęs: Sujungimo rūšiavimo algoritmo įvadas

„JavaScript“ programa, skirta rasti masyvo elementų produktą naudojant rekursiją

Žemiau yra „JavaScript“ programa, skirta rasti masyvo elementų produktą:

// „JavaScript“ programa masyvo elementų produktui rasti naudojant rekursiją
funkcija findProduct (arr, n) {
jei (n == 0) {
grįžti (arr [n]);
} Kitas {
grįžti (arr [n] * findProduct (arr, n - 1));
}
}
funkcija printArrayElements (arr, dydis) {
už (tegul i = 0; idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var dydis1 = arr1.length;
document.write ("1 masyvas:" + "
");
printArrayElements (arr1, dydis1);
document.write ("Masyvo elementų produktas:" + findProduct (arr1, dydis1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var dydis2 = arr2.length;
document.write ("Masyvas 2:" + "
");
printArrayElements (arr2, dydis2);
document.write ("Masyvo elementų produktas:" + findProduct (arr2, size2) + "
");

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

C Programa masyvo elementų produktui rasti naudojant rekursiją

Žemiau yra C programa, skirta rasti masyvo elementų produktą:

// C programa masyvo elementų sandaugai rasti naudojant rekursiją
# įtraukti
int findProduct (int arr [], int n)
{
jei (n == 0)
{
grįžti (arr [n]);
}
Kitas
{
grįžti (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int dydis)
{
už (int i = 0; i{
printf ("% d", arr [i]);
}
printf ("\ ⁠n");
}
int main ()
{
int arr1 [] = {1, 2, 3, 4, 5, 6, 7, 8};
int dydis1 = sizeof (arr1) / sizeof (arr1 [0]);
printf ("1 masyvas: \ ⁠n");
printArrayElements (arr1, dydis1);
printf ("Masyvo elementų produktas:% d \ ⁠n", findProduct (arr1, dydis1-1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int dydis2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("2 masyvas: \ ⁠n");
printArrayElements (arr2, dydis2);
printf ("Masyvo elementų produktas:% d \ \n", findProduct (arr2, dydis2-1));
grąžinti 0;
}

Išvestis:

1 masyvas:
1 2 3 4 5 6 7 8
Masyvo elementų produktas: 40320
2 masyvas:
1 1 1 1 1 1
Masyvo elementų sandauga: 1

Sustiprinkite savo masyvo koncepcijas

Masyvai yra neatsiejama programavimo dalis. Tai viena iš svarbiausių temų ir techniniuose interviu.

Jei masyvais pagrįstos programos vis dar jus gąsdina, pabandykite išspręsti kai kurias pagrindines masyvo problemas, pavyzdžiui, kaip rasti jų sumą visi masyvo elementai, kaip rasti maksimalų ir mažiausią masyvo elementą, kaip pakeisti masyvą ir kt. Tai padės jums sustiprinti savo masyvo koncepcijas.

Dalintis
El
Kaip rasti masyvo visų elementų sumą

Nesvarbu, ar naudojate „JavaScript“, „Python“ ar „C ++“, šios programos tikrai papildo.

Skaitykite toliau

Susijusios temos
  • Programavimas
  • „JavaScript“
  • „Python“
  • Kodavimo vadovėliai
  • C programavimas
Apie autorių
Yuvraj Chandra (Paskelbti 47 straipsniai)

Yuvraj yra informatikos bakalauro studentas Delio universitete, Indijoje. Jis aistringai domisi „Full Stack“ interneto plėtra. Kai nerašo, jis tyrinėja įvairių technologijų gylį.

Daugiau iš „Yuvraj Chandra“

Užsiprenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kuriame rasite techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Norėdami užsiprenumeruoti, spustelėkite čia