Sabtu, 19 November 2016

Program Delphi Mencari Akar Persamaan Tak Linier dengan Menggunakan Metode Newton Raphson

procedure TMetodeNewtonRaphson.Panel5Click(Sender: TObject);
var
  x0,x1,f0,f1,d,e,g:Real;
  i,n:integer;
begin
  x0:=strtofloat(edit1.text);
  d:=strtofloat(edit2.text) ;
  e:=strtofloat(edit3.text) ;
  n:=strtoint(edit4.text);
  i:=0;
repeat
  i:=i+1;
  listbox1.Items.add(inttostr(i));
  listbox2.Items.add(floattostr(x0));
  f0:=(x0*x0*x0*x0)+(2*(x0*x0*x0))-(x0*x0)+(2*x0)-4;
  f1:=(4*(x0*x0*x0))+(6*(x0*x0))-(2*x0)+2;
  listbox4.Items.add(floattostr(f0));
  listbox5.Items.add(floattostr(f1));
  if (abs(f1))<=d then showmessage('kemiringan terlalu kecil');
  x1:=(x0)-(f0/f1);
  listbox3.Items.add(floattostr(x1));
  g:=abs((x1-x0)/x1);
  listbox6.Items.add(floattostr(g));
  if g<=e then x0:=x1;
until
  i=n;
  edit5.Text:=floattostr(x1);
end;



procedure TMetodeNewtonRaphson.Panel6Click(Sender: TObject);
begin
edit1.Text:=' ';
edit2.Text:=' ';
edit3.Text:=' ';
edit4.Text:=' ';
edit5.text:=' ';
listbox1.items.Clear;
listbox2.items.Clear;
listbox3.items.Clear;
listbox4.items.Clear;
listbox5.items.Clear;
listbox6.items.Clear;

end;

procedure TMetodeNewtonRaphson.Panel7Click(Sender: TObject);
begin
halt;
end;

end.

0 komentar:

Posting Komentar