Решаем систему двух линейных уравнений

Решить систему двух линейных уравнений можно и самому, без программы. Но весь эффект в том, что алгоритм прост и понятен, а школьнику надо научиться писать программу на Паскале. Потому и предлагают эту задачку всем. Итак, здесь приведен пример программы для решения системы линейных уравнений:
$$ \cases { a_{1}x+b_{1}y+c_{1}=0\cr a_{2}x+b_{2}y+c_{2}=0 }$$
Как известно, такая система может иметь одно решение, не иметь решений или иметь бесконечное множество решений. Программа позволяет сделать вывод о наличии решения или его отсутствии, а также о случае бесконечного числа решений.
uses crt;
var a,b,c: array[1..2] of real;
 delta, deltax, deltay,x,y: real;
 i,j: integer;
 begin
 clrscr;
 writeln('Введите коэф. системы двух линейных уравнений:');
 writeln('После ввода каждого коэффициента нажимайте ');
 for i:=1 to 2 do
 begin
 write('a[',i,']='); readln(a[i]);
 write('b[',i,']='); readln(b[i]);
 write('c[',i,']='); readln(c[i]);
 writeln;
 end;
 writeln('Решеине системы уравнений:');
 for i:=1 to 2 do
 begin
 write(a[i]:4:1,'*x + ',b[i]:4:1,'*y = ',c[i]:4:1);
 writeln;
 end;
 delta:=a[1]*b[2]-a[2]*b[1];
 writeln('Определитель системы d= ',delta:4:2);
 deltax:=c[1]*b[2]-c[2]*b[1];
 deltay:=a[1]*c[2]-a[2]*c[1];
 writeln('dx=',deltax:6:2 );
 writeln('dy=',deltay:6:2 );
 if delta<>0 then
 begin
 writeln('Cистема уравнений имеет единственное решение');
 x:=deltax/delta;
 y:=deltay/delta;
 writeln('x=',x:6:2,' y=',y:6:2)
 end
 else
 if (deltax=0) and (deltay=0) then
 writeln('Система имеет бесконечное множество решений')
 else
 writeln('Решений нет');
 readln
end.
Онлайн всего: 1
Гостей: 1
Пользователей: 0

STUDLAB Сообщить про опечатку на сайте