Tulisan 15
Contoh Program Regula Falsi
Menggunakan Pascal
program
regula_falsi;
uses crt;
label ulang,
akhir, tanya;
var
x1,x2,x3,y1,y2,y3
: real;
i : integer;
ab :char;
data1 :
real;
begin
ulang:
clrscr;
writeln('Tentukan
nilai akar dari persamaan f(x)=x^3+x^2-3x-3=0 dengan Regula Falsi');
write('Masukan
nilai x1 = ');readln(x1);
y1 := x1 *
x1 * x1 + x1 * x1 - 3 * x1 - 3;
writeln('
Nilai f(x1)= ',y1:0:4);
repeat
begin
write(
'Masukan 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')
else
Writeln('
Nilai X2 Belum Sesuai');
until ( y1 *
y2 ) <0;
writeln;
writeln('Penyelesaian
persamaan karekteristik dengan metoda regula falsi');
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 i<10
then
writeln('
',i,' : ',x3,' : ',y3,' : ',abs(y3),' : ')
else
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
persamaannya= ',x3);
writeln('Errornya='
,abs( y3 ));
writeln('----------------------------------------------------------------------');
tanya:
writeln('Apakah
anda ingin mengulangi (y/t): ');
readln(ab);
if (ab='y')
or (ab='Y') then
begin
goto ulang;
else if
(ab='t') or (ab='T') then
begin
goto akhir;
end
else
begin
goto tanya;
end;
akhir:
end.