Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 12.03.2013, 19:41   #1 (permalink)
Alexei18
Member
 
Регистрация: 22.10.2012
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Pascal

Здраствуйте помогите пожалуйста если не трудно решить пример в паскале, сам в нём ни чего не понимаю(((.
Нужно решить систему линейных уравнений с помощью метода простой итерации.
Миниатюры
nieiie.png  
Alexei18 вне форума   Ответить с цитированием

Старый 12.03.2013, 19:41
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Почитав аналогичные темы вы наберетесь больше информации

Pascal ABC
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 вне форума   Ответить с цитированием
Старый 14.03.2013, 17:31   #3 (permalink)
Alexei18
Member
 
Регистрация: 22.10.2012
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

я решилно ответы не сходятся, подскажите пожалуйста что не так.
Ответ:Х1=-0,231; Х2=0,27; X3=-0,102; X4=-0,346)
Alexei18 вне форума   Ответить с цитированием
Старый 14.03.2013, 19:41   #4 (permalink)
interacia
Member
 
Регистрация: 29.01.2013
Сообщений: 91
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 565
По умолчанию

Сначала надо было к математикам обращаться. чтоб описали алгоритм. Программист сродни переводчику.
Код:
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,4]:=-7; b1:=0;
 a[2,1]:=8; a[2,2]:=28; a[2,3]:=-7; a[2,4]:=7;  b2:=4;
 a[3,1]:=1; a[3,2]:=-5; a[3,3]:=20; a[3,4]:=4;  b3:=-5;
 a[4,1]:=5; a[4,2]:=4;  a[4,3]:=3;  a[4,4]:=22; b4:=-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 10 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[4,4];
 end;
 Writeln(' x1=' ,x1:3:6,
         ' x2=' ,x2:3:6,
         ' x3=' ,x3:3:6,
         ' x4=', x4:3:6);

 End.
interacia вне форума   Ответить с цитированием
Старый 15.03.2013, 01:00   #5 (permalink)
Alexei18
Member
 
Регистрация: 22.10.2012
Сообщений: 32
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

спасибо огромное, очень помогли.
Alexei18 вне форума   Ответить с цитированием
Ads

Яндекс

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

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 02:40.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.