Помощь - Поиск - Пользователи - Календарь
Полная версия: Алгоритмизация и методика исчисления
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Дарья
Если вы знакомы с таким предметом как алгоритмизация, а может и не знакомы, ну вобщем, если можете, то помогите мне в ниженаписанной проге учесть возможность того, что система не имеет решений(все варианты).(Прога решает систему линейных уравнений методом последовательных исключений Гаусса)
Program alg;
uses crt;
label m;
var a:array [1..4,1..5] of real;
x: array[1..4] of real;
i,j,k,n,l:byte; dop:real;
procedure menjat;{меняет местами строку с нулевым а[i,n] иследующую за ней}
begin
for j:=1 to 5 do begin
dop:=a[i,j]; a[i,j]:=a[i+1,j];
a[i+1,j]:=dop;
end;
end;
Procedure pechat;{печать матрицы}
begin writeln;
for j:=1 to 5 do
write(a[1,j]:3:2,' '); writeln;
for j:=1 to 5 do
write(a[2,j]:3:2,' '); writeln;
for j:=1 to 5 do
write(a[3,j]:3:2,' '); writeln;
for j:=1 to 5 do
write(a[4,j]:3:2,' '); writeln;
end;
begin {основная программа}
{задание количества неизвестных матрицы и ввод коэффициентов}
clrscr; writeln ('vvedite kolichestvo neizvestnih'); read(k);
l:=k+1;
for i:=1 to k do begin
Writeln ('vvedite koefficienti ',i,'j stroki');
for j:=1 to l do
read (a[i,j]);
end;
clrscr; pechat;
{________________________}
{приведение матрицы к треугольному виду}
While n<k do begin
inc(n);
for i:=n to k do
for j:=l downto n do
begin
if a[i,n]=0 then menjat;
a[i,j]:=a[i,j]/a[i,n];
end;
pechat; readln;
for i:=k downto n+1 do
for j:=n to l do
a[i,j]:=a[i,j]-a[n,j];
writeln;
pechat; readln;
end;
{_______________}
{нахождение неихвестных системы}
x[4]:=a[4,5]/a[4,4];
x[3]:=(a[3,5]-a[3,4]*x[4])/a[3,3];
x[2]:=(a[2,5]-a[2,4]*x[4]-a[2,3]*x[3])/a[2,2];
x[1]:=(a[1,5]-a[1,4]*x[4]-a[1,3]*x[3]-a[1,2]*x[2])/a[1,1];
{___________}
Writeln;
For i:= 1 to 4 do
write ('x[',i,']=',x[i]:5:2,' ');
readln;
end.



Вот. :) буду оч. благодарна за помощь!
А то скоро сессия. . .и тогда . . :mega_chok:
AruNimotsi
1. Условием нерешаемости системы считать недостаточное количество коэфициентов??? или же существуют какието дополнительные ограничения??
2. Не могли бы вы Дарья форматировать программу более понятно и вставлять примечания, а то трудновато для восприятия.
Дарья
Нужно ещё учесть возможность того, что определитель равен нулю.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.