Forum » Programiranje » c# reševanje sistema dveh enačb
c# reševanje sistema dveh enačb
japol ::
Kakšen je nabolj enostaven primer kode za reševanje sistema dveh enačb z dvema neznankama, ne da bi dodal knjižnice,...? V bistvu kakšne so možnosti?
genesiss ::
- Lahko uporabiš recimo Cramerjevo pravilo: http://www.purplemath.com/modules/crame...
- gaussova eliminacija: Gaussian elimination @ Wikipedia
- z LU dekompozicijo: LU decomposition @ Wikipedia
Za numerično stabilnost je pa treba paziti da ne deliš z malimi števili... načeloma je zelo priporočljivo uporabiti obstoječe knjižnice.
- gaussova eliminacija: Gaussian elimination @ Wikipedia
- z LU dekompozicijo: LU decomposition @ Wikipedia
Za numerično stabilnost je pa treba paziti da ne deliš z malimi števili... načeloma je zelo priporočljivo uporabiti obstoječe knjižnice.
Zgodovina sprememb…
- spremenil: genesiss ()
^TMS^ ::
1) Zapišeš koeficient v matriko (polje).
2) Izvedeš Gaussovo eliminacijo (drugi vrstici odšteješ 1/polje[1][0] mnogokratnik prve):
Tu je potrebno biti pozoren, namreč v primeru, da je prvi element v drugi vrstici 0 zamenjaš prvo vrstico z drugo. Če sta oba 0, ignoriraš stolpec.
3) Izvedeš obratno vstavljanje in imaš rešitev.
Algoritem lahko potem tudi dokaj preprosto razširiš na n spremenljivk. Pogoj bi bil, da izraz najprej pravilno interpretiraš, kar je že druga zgodba.
Cramerjevo pravilo je vsekakor tudi enostavna stvar, vendar se je potrebno zavedati, da je njegova kompleksnost 0(n!), medtem ko je kompleknost G. eliminacije =(n3).
2) Izvedeš Gaussovo eliminacijo (drugi vrstici odšteješ 1/polje[1][0] mnogokratnik prve):
Tu je potrebno biti pozoren, namreč v primeru, da je prvi element v drugi vrstici 0 zamenjaš prvo vrstico z drugo. Če sta oba 0, ignoriraš stolpec.
3) Izvedeš obratno vstavljanje in imaš rešitev.
Algoritem lahko potem tudi dokaj preprosto razširiš na n spremenljivk. Pogoj bi bil, da izraz najprej pravilno interpretiraš, kar je že druga zgodba.
Cramerjevo pravilo je vsekakor tudi enostavna stvar, vendar se je potrebno zavedati, da je njegova kompleksnost 0(n!), medtem ko je kompleknost G. eliminacije =(n3).
To iterate is human, to recurse divine.
japol ::
Hvala. Prišel sem do tega, da bosta obe enačbi vedno na enak način zastavljeni, zato sem spisal kodo na čisto enak način kot če bi enačbi ročno na papir.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | matematkaOddelek: Šola | 3178 (2157) | lebdim |
» | Sistem linearnih enačbOddelek: Šola | 1069 (991) | Math Freak |
» | Reševanje sistema treh linearnih enačbOddelek: Šola | 2089 (1804) | freesty |
» | Sistem enačb s 4 neznankamiOddelek: Šola | 3524 (3299) | lmperator |
» | MatematikaOddelek: Šola | 4082 (3475) | galu |