Rovnice o třech neznámýchRovnice se třemi neznámými vypadají takto (za čísla si dosadíme dvojrozměrné pole hodnot): A[1,1]x + A[1,2]y + A[1,3]z = B[1] A[2,1]x + A[2,2]y + A[2,3]z = B[2] A[3,1]x + A[3,2]y + A[3,3]z = B[3] Vypočítáme si tři hodnoty (psáno v pascalu) d:= A[1,1]*A[2,2]*A[3,3]+A[1,2]*A[2,3]*A[3,1]+A[1,3]*A[2,1]*A[3,2]- A[3,1]*A[2,2]*A[1,3]-A[3,2]*A[2,3]*A[1,1]-A[3,3]*A[2,1]*A[1,2]; dx:=B[1]*A[2,2]*A[3,3]+A[1,2]*A[2,3]*B[3]+A[1,3]*B[2]*A[3,2]- B[3]*A[2,2]*A[1,3]-A[3,2]*A[2,3]*B[1]-A[3,3]*B[2]*A[1,2]; dy:=A[1,1]*B[2]*A[3,3]+B[1]*A[2,3]*A[3,1]+A[1,3]*A[2,1]*B[3]- A[3,1]*B[2]*A[1,3]-B[3]*A[2,3]*A[1,1]-A[3,3]*A[2,1]*B[1]; dz:=A[1,1]*A[2,2]*B[3]+A[1,2]*B[2]*A[3,1]+B[1]*A[2,1]*A[3,2]- A[3,1]*A[2,2]*B[1]-A[3,2]*B[2]*A[1,1]-B[3]*A[2,1]*A[1,2]; if abs(d)<1e-10 then writeln('Není jednoznačné řešení !') else begin x:=dx/d; y:=dy/d; z:=dz/d; end; Je to standartní matematická finta na řešení rovnic o třech neznámých přes determinanty a Sarrusovo pravidlo. Po uzávěrce stránky mi došla tato reakce: Ak chces nejako zmysluplne osetrit pripady, ked je D=0 ( bud neexistuje riesenie alebo je rieseni nekonecne vela ) alebo chces riesit viac rovnic, odporucam Gausovu eliminacnu metodu. |
WEBovský
počítadlo spočítalo, že si číslo
|