Minggu, 08 April 2012

Contoh Program Metode Regulafalsi

uses crt;
label ulang;
var
x1,x2,x3,y1,y2,y3:real;
i:integer;
Ab:char;
data1:real;
begin
ulang:
clrscr;
write('tentukan nilai persamaan f(x)=x^3+x^2-3x-3=0 dengan regulafalsi');
write('masukan nilai x1');
readln(x1);
y1:=x1*x1*x1+x1*x1-3*x1-3;
writeln('nilai f(x)=',y1:0:4);
repeat
begin
write('asukan nilai x2=');
readln(x2);
y2:=x2*x2*x2+x2*x2-3*x2-3;
write('nilai f(x2)=',y2:0:4);
end;
if y1*y2 <0 then
writeln('syarat nilai OK!');
writeln('nilai x2 belum sesuai');
until y1*y2 <0;
writeln;
writeln('penyelesaiannya persamaan karakteristik dengan regulafalsi');
writeln('----------------------------------------------------------');
writeln(' n            X           f(x)            error           ');
writeln('----------------------------------------------------------');
repeat
begin
i:=i+1;x3:=(x2-(y2/(y2-y1))*(x2-x1));
y3:=x3*x3*x3+x3*x3-3*x3-3;
if y1*y2<0 then
writeln(' ',i,':',x3,':',y3,':',abs(y3),':');
writeln(' ',i,':',x3,':',y3,':',abs(y3),':');
if y1*y3 <0 then
begin
x2:=x3;y2:=y3;
end
else
begin
x1:=x3;y1:=y3;
end;
end;
until abs(y3)<1E-08;
writeln('------------------');
writeln('Akar persamaan=',x3);
writeln('errornya=',abs(y3));
writeln('------------------');
writeln('apakah anda ingin mengulang ?[y/t]');
readln (ab);
if (ab='y') or (ab='y') then
begin
goto ulang
end;
end.

Tidak ada komentar:

Posting Komentar