Taulukko on kokoelma elementtejä, jotka on tallennettu vierekkäisiin muistipaikkoihin. Se on ohjelmoinnissa eniten käytetty tietorakenne. Sinun on tiedettävä, miten suoritetaan taulukon perustoiminnot, kuten lisäys, poisto, liikkuminen, kaikkien elementtien summan löytäminen, kaikkien elementtien tulon etsiminen
Tässä artikkelissa opit etsimään taulukon kaikkien elementtien tuloksen iteratiivisen ja rekursiivisen lähestymistavan avulla.
Ongelma
Sinulle annetaan joukko arr. Sinun on löydettävä taulukon kaikkien elementtien tulo ja tulostettava sitten lopputuote. Sinun on toteutettava tämä ratkaisu käyttämällä silmukoita ja rekursiota.
Esimerkki 1: Olkoon arr = [1, 2, 3, 4, 5, 6, 7, 8]
Matriisin kunkin elementin tulo = 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 = 40320
Siten lähtö on 40320.
Esimerkki 2: Olkoon arr = [1, 1, 1, 1, 1, 1]
Matriisin kunkin elementin tulo = 1 * 1 * 1 * 1 * 1 * 1 = 1
Siten lähtö on 1.
Iteratiivinen lähestymistapa taulukon kaikkien elementtien tuloksen löytämiseen
Löydät taulukon kaikkien elementtien tuloksen iteraatiota / silmukoita käyttämällä seuraavaa lähestymistapaa:
- Alusta muuttuja tulos (arvolla 1) kaikkien elementtien tuloksen tallentamiseksi matriisiin.
- Toista taulukon läpi ja kerro taulukon kukin elementti tulos.
- Palauta lopuksi tulos.
C ++ -ohjelma matriisielementtien tuotteen löytämiseksi silmukoiden avulla
Alla on C ++ -ohjelma taulukkoelementtien tuloksen löytämiseksi:
// C ++ -ohjelma taulukon elementtien tuloksen löytämiseksi
#sisältää
käyttämällä nimitilaa vakio;
int findProduct (int arr [], int-koko)
{
int tulos = 1;
for (int i = 0; i{
tulos = tulos * arr [i];
}
paluutulos;
}
void printArrayElements (int arr [], int-koko)
{
for (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 << "Taulukko 1:" << endl;
printArrayElements (arr1, koko1);
cout << "Taulukkoelementtien tuote:" << findProduct (arr1, koko1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "Taulukko 2:" << endl;
printArrayElements (arr2, koko2);
cout << "Matriisielementtien tuote:" << findProduct (arr2, koko2) << endl;
paluu 0;
}
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
Python-ohjelma matriisielementtien tuotteen löytämiseksi silmukoiden avulla
Alla on Python-ohjelma taulukkoelementtien tuloksen löytämiseksi:
# Python-ohjelma löytää luetteloelementtien tuote
def findProduct (arr, koko):
tulos = 1
i: lle alueella (koko):
tulos = tulos * arr [i]
palautustulos
def printListElements (arr, koko):
i: lle alueella (koko):
tulosta (arr [i], loppu = "")
Tulosta()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
koko1 = len (arr1)
tulosta ("Taulukko 1:")
printListElements (arr1, koko1)
tulosta ("Matriisielementtien tuote:", findProduct (arr1, koko1))
arr2 = [1, 1, 1, 1, 1, 1]
koko2 = len (arr2)
tulosta ("Taulukko 2:")
printListElements (arr2, koko2)
tulosta ("Matriisielementtien tuote:", findProduct (arr2, koko2))
Liittyvät: Kuinka käyttää silmukoita Pythonissa
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
JavaScript-ohjelma matriisielementtien tuotteen etsimiseen silmukoilla
Alla on JavaScript-ohjelma taulukon elementtien tuloksen löytämiseksi:
// JavaScript-ohjelma taulukon elementtien tuloksen löytämiseksi
function findProduct (arr, koko) {
anna tuloksen = 1;
for (olkoon i = 0; itulos = tulos * arr [i];
}
paluutulos;
}
funktio printArrayElements (arr, koko) {
for (olkoon i = 0; idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var koko1 = arr1.pituus;
document.write ("Taulukko 1:" + "
");
printArrayElements (arr1, koko1);
document.write ("Matriisielementtien tuote:" + findProduct (arr1, koko1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var koko2 = arr2.pituus;
document.write ("Taulukko 2:" + "
");
printArrayElements (arr2, koko2);
document.write ("Matriisielementtien tuote:" + findProduct (arr2, koko2) + "
");
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
Liittyvät: JavaScript-matriisimenetelmät, jotka sinun tulisi hallita tänään
C Ohjelma matriisielementtien tuotteen etsimiseen silmukoiden avulla
Alla on C-ohjelma taulukkoelementtien tuloksen löytämiseksi:
// C-ohjelma taulukkoelementtien tuloksen löytämiseksi
#sisältää
int findProduct (int arr [], int-koko)
{
int tulos = 1;
for (int i = 0; i{
tulos = tulos * arr [i];
}
paluutulos;
}
void printArrayElements (int arr [], int-koko)
{
for (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 ("Taulukko 1: \ n");
printArrayElements (arr1, koko1);
printf ("Taulukkoelementtien tuote:% d \ n", findProduct (arr1, koko1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("Taulukko 2: \ n");
printArrayElements (arr2, koko2);
printf ("Matriisielementtien tuote:% d \ n", findProduct (arr2, koko2));
paluu 0;
}
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
Rekursiivinen lähestymistapa matriisin kaikkien elementtien tuotteen etsimiseen
Löydät matriisin kaikkien elementtien tuloksen rekursiota seuraamalla alla olevaa pseudokoodia:
function findProduct (arr, n):
jos n == 0:
paluu (arr [n])
muu:
return (arr [n] * findProduct (arr, n - 1))
Liittyvät: Mikä on pseudokoodi ja miten se tekee sinusta paremman kehittäjän?
C ++ -ohjelma taulukkoelementtien tuotteen löytämiseksi rekursiota käyttämällä
Alla on C ++ -ohjelma taulukkoelementtien tuloksen löytämiseksi:
// C ++ -ohjelma taulukon elementtien tuloksen löytämiseksi rekursiota käyttämällä
#sisältää
käyttämällä nimitilaa vakio;
int findProduct (int arr [], int n)
{
jos (n == 0)
{
paluu (arr [n]);
}
muu
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int-koko)
{
for (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 << "Taulukko 1:" << endl;
printArrayElements (arr1, koko1);
cout << "Matriisielementtien tuote:" << findProduct (arr1, koko1-1) << endl;
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
cout << "Taulukko 2:" << endl;
printArrayElements (arr2, koko2);
cout << "Taulukkoelementtien tuote:" << findProduct (arr2, koko2-1) << endl;
paluu 0;
}
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
Liittyvät: Johdatus kuplalajittelualgoritmiin
Python-ohjelma taulukkoelementtien tuotteen löytämiseksi rekursiota käyttämällä
Alla on Python-ohjelma taulukkoelementtien tuloksen löytämiseksi:
# Python-ohjelma luetteloelementtien e-tuotteen löytämiseksi rekursiota käyttämällä
def findProduct (arr, n):
jos n == 0:
paluu (arr [n])
muu:
return (arr [n] * findProduct (arr, n - 1))
def printListElements (arr, koko):
i: lle alueella (koko):
tulosta (arr [i], loppu = "")
Tulosta()
arr1 = [1, 2, 3, 4, 5, 6, 7, 8]
koko1 = len (arr1)
tulosta ("Taulukko 1:")
printListElements (arr1, koko1)
print ("Matriisielementtien tuote:", findProduct (arr1, koko1-1))
arr2 = [1, 1, 1, 1, 1, 1]
koko2 = len (arr2)
tulosta ("Taulukko 2:")
printListElements (arr2, koko2)
print ("Matriisielementtien tuote:", findProduct (arr2, koko2-1))
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
Liittyvät: Johdatus yhdistämisen lajittelualgoritmiin
JavaScript-ohjelma matriisielementtien tuotteen löytämiseksi rekursiota käyttämällä
Alla on JavaScript-ohjelma taulukon elementtien tuloksen löytämiseksi:
// JavaScript-ohjelma taulukon elementtien tuloksen löytämiseksi rekursiota käyttämällä
function findProduct (arr, n) {
jos (n == 0) {
paluu (arr [n]);
} muu {
return (arr [n] * findProduct (arr, n - 1));
}
}
funktio printArrayElements (arr, koko) {
for (olkoon i = 0; idocument.write (arr [i] + "");
}
document.write ("
");
}
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
var koko1 = arr1.pituus;
document.write ("Taulukko 1:" + "
");
printArrayElements (arr1, koko1);
document.write ("Matriisielementtien tuote:" + findProduct (arr1, koko1) + "
");
var arr2 = [1, 1, 1, 1, 1, 1];
var koko2 = arr2.pituus;
document.write ("Taulukko 2:" + "
");
printArrayElements (arr2, koko2);
document.write ("Matriisielementtien tuote:" + findProduct (arr2, koko2) + "
");
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
C Ohjelma taulukkoelementtien tuloksen löytämiseksi rekursiota käyttämällä
Alla on C-ohjelma taulukkoelementtien tuloksen löytämiseksi:
// C-ohjelma taulukon elementtien tuloksen löytämiseksi rekursiota käyttämällä
#sisältää
int findProduct (int arr [], int n)
{
jos (n == 0)
{
paluu (arr [n]);
}
muu
{
return (arr [n] * findProduct (arr, n - 1));
}
}
void printArrayElements (int arr [], int-koko)
{
for (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 ("Taulukko 1: \ n");
printArrayElements (arr1, koko1);
printf ("Matriisielementtien tuote:% d \ n", findProduct (arr1, koko1-1));
int arr2 [] = {1, 1, 1, 1, 1, 1};
int size2 = sizeof (arr2) / sizeof (arr2 [0]);
printf ("Taulukko 2: \ n");
printArrayElements (arr2, koko2);
printf ("Taulukkoelementtien tuote:% d \ n", findProduct (arr2, koko2-1));
paluu 0;
}
Tuotos:
Taulukko 1:
1 2 3 4 5 6 7 8
Matriisielementtien tuote: 40320
Taulukko 2:
1 1 1 1 1 1
Matriisielementtien tulo: 1
Vahvista matriisikonseptejasi
Taulukot ovat olennainen osa ohjelmointia. Ne ovat yksi tärkeimmistä aiheista myös teknisissä haastatteluissa.
Jos matriiseihin perustuvat ohjelmat edelleen pelottavat sinua, yritä ratkaista joitain matriisin perusongelmia, kuten kuinka löytää summa kaikki matriisin elementit, kuinka löytää matriisin suurin ja pienin elementti, miten taulukkoon voidaan kääntää jne. Se auttaa sinua vahvistamaan matriisikonseptejasi.
Käytitpä JavaScriptiä, Pythonia tai C ++: ta, nämä ohjelmat varmasti täydentävät.
Lue seuraava
- Ohjelmointi
- JavaScript
- Python
- Koodausoppaat
- C Ohjelmointi
Yuvraj on tietojenkäsittelytieteen perustutkinto-opiskelija Delhin yliopistossa Intiassa. Hän on intohimoisesti Full Stack -verkkokehityksestä. Kun hän ei kirjoita, hän tutkii eri tekniikoiden syvyyttä.
tilaa uutiskirjeemme
Liity uutiskirjeeseemme, jossa on teknisiä vinkkejä, arvosteluja, ilmaisia e-kirjoja ja erikoistarjouksia!
Tilaa napsauttamalla tätä