Rovnice o třech neznámých

[o úroveň výše]

Rovnice 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.


[o úroveň výše]


WEBovský počítadlo spočítalo, že si číslo počitadlo, které navštívilo od 17.října 1999 tyto stránky uložené na serveru Volny.cz
Tato stránka byla autorem naposledy editována 07.08.2007 13:27:24,
automatický update proveden 03.09.2007 22:23:44