|
{ решение системы 2-х уравнений с двумя неизвестными }
{ ------------------------------------------------------------------------ }
{ решение уравнений вида }
{ |a1*x + b1*y = c1 }
{ |a2*x + b2*y = c2 }
{ }
{ метод решения: }
{ |c1 b1| |a1 c1| }
{ |c2 b2| |a2 c2| }
{ x = --------- y = --------- }
{ |a1 b1| |a1 b1| }
{ |a2 b2| |a2 b2| }
{ }
{ выражаем определители второго порядка: }
{ x = (c1*b2-c2*b1)/(a1*b2-a2*b1) }
{ y = (a1*c2-a2*c1)/(a1*b2-a2*b1) }
{ ------------------------------------------------------------------------ }
var a1,a2,b1,b2,c1,c2,x,y,d,dx,dy:real;
begin
writeln('введите коэффициенты уравнения: a1,b1,c1,a2,b2,c2');
readln(a1,b1,c1,a2,b2,c2);
d := (a1*b2-a2*b1);
dx := (c1*b2-c2*b1);
dy := (a1*c2-a2*c1);
if ( d=0 ) and ( (dx=0) or (dy=0) ) then
writeln('бесконечное множество решений')
else if ( d<>0 ) and ( (dx=0) or (dy=0) ) then
writeln('нет решений')
else begin
x:=dx/d; y:=dy/d;
writeln('x = ', x); writeln('y = ', y);
end;
end.
| |