11/16/2016
Gauss Seidel Menggunakan ListBox
Persamaan sudah harus diketahui terlebih dahulu
procedure TForm1.Button1Click(Sender: TObject);
var
xo,yo,zo,x,y,z,e,gx,gy,gz:Real;
i,j,k,n:Integer;
begin
xo:=StrToFloat(Edit1.Text);
yo:=StrToFloat(Edit2.Text);
zo:=StrToFloat(Edit3.Text);
e:=StrToFloat(Edit4.Text);
n:=StrToInt(Edit5.Text);
i:=0;
j:=0;
k:=0;
repeat
i:=i+1;
j:=j+1;
k:=k+1;
x:=((-1*2)+yo-zo)/3;
y:=(4+zo-x)/4;
z:=(10-x-y)/3;
gx:=Abs((x-xo)/x);
Listbox1.Items.Add(IntToStr(i));
Listbox2.Items.Add(FloatToStr(x));
Listbox3.Items.Add(FloatToStr(gx));
Edit6.Text:=FloatToStr(x);
if gx>e then
begin
xo:=x;
yo:=y;
zo:=z;
end;
until (gx<e) or (i=n);
xo:=StrToFloat(Edit1.Text);
yo:=StrToFloat(Edit2.Text);
zo:=StrToFloat(Edit3.Text);
e:=StrToFloat(Edit4.Text);
n:=StrToInt(Edit5.Text);
i:=0;
j:=0;
k:=0;
repeat
i:=i+1;
j:=j+1;
k:=k+1;
x:=((-1*2)+yo-zo)/3;
y:=(4-x+zo)/4;
z:=(10-x-y)/3;
gy:=Abs((y-yo)/y);
Listbox4.Items.Add(IntToStr(j));
Listbox5.Items.Add(FloatToStr(y));
Listbox6.Items.Add(FloatToStr(gy));
if gy>e then
begin
xo:=x;
yo:=y;
zo:=z;
end;
Edit7.Text:=FloatToStr(y);
until (gy<e) or (j=n);
xo:=StrToFloat(Edit1.Text);
yo:=StrToFloat(Edit2.Text);
zo:=StrToFloat(Edit3.Text);
e:=StrToFloat(Edit4.Text);
n:=StrToInt(Edit5.Text);
i:=0;
j:=0;
k:=0;
repeat
i:=i+1;
j:=j+1;
k:=k+1;
x:=((-1*2)+yo-zo)/3;
y:=(4-x+zo)/4;
z:=(10-x-y)/3;
gz:=Abs((z-zo)/z);
Listbox7.Items.Add(IntToStr(k));
Listbox8.Items.Add(FloatToStr(z));
Listbox9.Items.Add(FloatToStr(gz));
if gz>e then
begin
xo:=x;
yo:=y;
zo:=z;
end;
Edit8.Text:=FloatToStr(z);
until (gz<e) or (k=n);
end;
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment