Professional Documents
Culture Documents
Persamaan Tak Linear-Bisection Method in C
Persamaan Tak Linear-Bisection Method in C
#include<stdio.h>
#include<math.h>
float f(float x)
{
return x + cos(x);
}
main()
{
float a,b,c,T,galat,e,iterasi,akar;
int i;
char jawab;
do
{
jawab = 'y';
i=1;
printf (" ======================================== \n");
printf (" Program Bisection Persamaan Tak Linear\n ");
printf(" -=Versi 1.0=- \n ");
printf (" Programmer :Krisna Febrianto/0608483 \n ");
printf (" Ilmu Komputer - UPI \n ");
printf (" ======================================== \n");
printf("Persamaan Fungsi F(x) = x+cos(x)\n");
printf("Masukan tebakan awal a = "); scanf("%f",&a);
printf("Masukan tebakan awal b = "); scanf("%f",&b);
Program Bisection;
uses wincrt;
var
m,fx,fa,fb,fc,a,b,c,e,x:real;
iterasi:integer;
jawab : string;
begin
repeat
clrscr;
writeln (' ========================================');
writeln (' Program Bisection Persamaan Tak Linear ');
writeln (' -=Versi 1.0=- ');
writeln (' Programmer :Krisna Febrianto/0608483 ');
writeln (' Ilmu Komputer - UPI ');
writeln (' ========================================');
writeln;
write('Nilai tebakan awal a : ');readln(a);
write('Nilai tebakan awal b : ');readln(b);
write('Nilai epsilon : ');readln(e);
iterasi:=1;
repeat
writeln;
writeln('Iterasi ke ',iterasi);
writeln('Akar pada [',a:10:6,',',b:10:6,']');
c:=(a+b)/2;
{cari fa}
x:=a;
fx:=x+cos(x);;
fa:=fx;
writeln('Nilai f(a)= ',fa:10:6);
{cari fb}
x:=b;
fx:=x+cos(x);
fb:=fx;
writeln('Nilai f(b)= ',fb:10:6);
{cari fc}
x:=c;
fx:=x+cos(x);
fc:=fx;
writeln('Nilai f(c)= ',fc:10:6);
{nilai mutlak}
m:=b-a;
if m<0 then m:=m*-1;
if fa*fc<0 then b:=c
else
a:=c;
iterasi:=iterasi+1;
until m<e;
writeln;
writeln('Hampiran akarnya adalah: ',c:10:6);
writeln;
write ('Apakah anda ingin mengulanginya lagi y/t = '); readln (jawab);
until (jawab = 't');
end.