Тема: Pascal
Показать сообщение отдельно
Старый 14.03.2013, 17:29   #2 (permalink)
Alexei18
Member
 
Регистрация: 22.10.2012
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Program Metod_Prostoy_Iteracii ;
Uses crt;
const n=4; e=0.001;
Type matrix= array [1..n,1..n] of real;
Var A:matrix;
i,j,k:integer;
x1,x2,x3,x4:real;
b1,b2,b3,b4:real;
begin
a[1,1]:=13; a[1,2]:=1; a[1,3]:=-3; a[1,3]:=-7; b1:=0;
a[2,1]:=8; a[2,2]:=28; a[2,3]:=-7; a[2,3]:=7; b2:=4;
a[3,1]:=1; a[3,2]:=-5; a[3,3]:=20; a[3,3]:=4; b3:=-5;
a[4,1]:=5; a[4,2]:=4; a[4,3]:=3; a[4,3]:=22; b3:=-8;
Writeln('исходная матрица');
For i:=1 to n do
begin
For j:=1 to n do
Write(A[i,j]:6:1);
Writeln;
end;
Writeln('b1=' ,b1:3:1,' b2=' ,b2:3:1,' b3=' ,b3:3:1, 'b4=', b4:3:1, ' ' );
x1:=0; x2:=0; x3:=0; x4:=0;
For k:=1 to 100 do
begin
x1:=(b1-a[1,2]*x2-a[1,3]*x3-a[1,4]*x4)/a[1,1];
x2:=(b2-a[2,1]*x1-a[2,3]*x3-a[2,4]*x4)/a[2,2];
x3:=(b3-a[3,1]*x1-a[3,2]*x2-a[3,4]*x4)/a[3,3];
x4:=(b4-a[4,1]*x1-a[4,2]*x2-a[4,3]*x3)/a[3,3];
if abs(x1-x1)<=e Then
if abs(x2-x2)<=e Then
if abs(x3-x3)<=e Then
if abs(x4-x4)<=e Then
end;
Writeln('x1=' ,x1:3:6,' x2=' ,x2:3:6,' x3=' ,x3:3:6,' x4=', x3:3:6);
End.
Alexei18 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070