Forum » Programiranje » Matrike mnozenje
Matrike mnozenje
Eliminator ::
Imam eno vprasanje glede mnozenja matrik... S pomocjo interneta mi je sicer uspelo napisat funkcijo za mnozenje 2 kvadratnih matrik, vendar mi algoritem ni cisto jasen. A bi mi ga lahko en malo razlozo..
Hvala za pomoc
P.S
Zakaj mora biti se tu ena for zanka, poleg for zank za vrstice in stolpce?
Hvala za pomoc
void mnozenje(double matrika1[XX][XX],double matrika2[XX][XX], double v) { double zmnozena[XX][XX]; for (int i=0; i<v; i++) { for (int j=0; j<v; j++) { zmnozena[i][j]=0; for(int k=0; k<v;k++) { zmnozena[i][j]+=matrika1[i][k]*matrika2[k][j]; } } cout<<endl; }
P.S
Zakaj mora biti se tu ena for zanka, poleg for zank za vrstice in stolpce?
brodul ::
Ali ti je je jasno, kako se množi matrike (tudi nekvadratne) ?
Pretending to be a mature adult is so exhausting.
Eliminator ::
amm recimo da ja... Tak na pamet ne vem vendar ce pogledam formulo bi znal... Vem da more bit stevilo vrstic iz prve enako stevilu stolpcev iz druge
Eliminator ::
aha.. Sedaj pa se imam tezavo pri potenciranju matrike... Naredil sem da eno matriko pomnozim samo z sabo... Sedaj pa ne vem kako bi naredil, da se ta matrika pomnozi sama z sabo tolikokrat koliko je potenca... Prosim za pomoc :D
Eliminator ::
Eliminator je izjavil:
aha.. Sedaj pa se imam tezavo pri potenciranju matrike... Naredil sem da eno matriko pomnozim samo z sabo... Sedaj pa ne vem kako bi naredil, da se ta matrika pomnozi sama z sabo tolikokrat koliko je potenca... Prosim za pomoc :D
A lahko kdo pove prosim ? :D
overlord_tm ::
Eliminator je izjavil:
aha.. Sedaj pa se imam tezavo pri potenciranju matrike... Naredil sem da eno matriko pomnozim samo z sabo... Sedaj pa ne vem kako bi naredil, da se ta matrika pomnozi sama z sabo tolikokrat koliko je potenca... Prosim za pomoc :D
imas matriko A. Pomnozis jo samo s sabo da dobis matriko A2. Potem matriko A2 pomnozis z A da dobis A3. A3 pomnozis z A da dobis A4. Seveda potem obstaja veliko optimizacij takega algoritma, ampak to je najbol naivna implementacija.
Eliminator ::
Ja samo ne razumem kako bi to napisal v programu...
za mnozenje imam kodo zdaj tak
sedaj mi ni jasno kako bi še enkrat pomnozil z isto matriko in kako bi potem nastavil, da se tolikokrat mnozi sama za sabo, kot je potenca, ki jo vnese uporabnik(recimo 6 --> da se 6x pomozi sama z sabo)
za mnozenje imam kodo zdaj tak
for (int i=0; i<vel; i++) { for (int j=0; j<vel; j++) { AB[i][j]=0; for (int k=0; k<vel; k++) { AB[i][j]+=A[i][k]*B[k][j]; } cout<< AB[i][j]<<" "; } cout<<endl; }
sedaj mi ni jasno kako bi še enkrat pomnozil z isto matriko in kako bi potem nastavil, da se tolikokrat mnozi sama za sabo, kot je potenca, ki jo vnese uporabnik(recimo 6 --> da se 6x pomozi sama z sabo)
Eliminator ::
Ja sem probal delat nekaj z se eno for zanko, ki tece od 1 pa do velikosti potence, vendar nikoli nisem dobil pravega rezultata. Mogoce nisem vstavil na pravo mesto to for zanko? A lahko prosim kdo napise kam morem vstavit to for zanko oz. ce lahko kdo napise primer, da vidim kako more zgledat.
Hvala za pomoc
Hvala za pomoc
amacar ::
Pošlji mi mail na amadej.pevec@gmail.com pa ti pošljem moj program (naloga N20 :-)). Sem pa 1. letnik na feriju, smer rit.
Drugače pa to for zanko moraš imeti pred tem ko kličeš funkcijo za množenje matrik.
Drugače pa to for zanko moraš imeti pred tem ko kličeš funkcijo za množenje matrik.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | MatrikeOddelek: Šola | 1630 (1213) | Sqrt2 |
» | Strassenovo množenje matrikOddelek: Programiranje | 2172 (1913) | eXoo |
» | Program v COddelek: Programiranje | 1926 (1765) | darkkk |
» | Grafična kartica s štirimi gigabajtiOddelek: Novice / Grafične kartice | 4227 (2715) | Senitel |
» | mnozenje matrikOddelek: Programiranje | 4729 (4391) | Vesoljc |