Anda di halaman 1dari 16

LAPORAN PRAKTIKUM 4 DAN 5

Nama : Bunga Ria

NIM : 1855201065

Judul Praktikum : Metode Bagi Dua

1. e−x − ln x = 0, a = 1, b = 2, epsilon = 0.1


Listing Program

clear;
clc;
%f(x)= exp(-x) - log(x)
a=1;
b=2;
epsilon=0.1;
iterasi=0;
disp('Iter a b T f(a) f(b) f(c) selang baru lebar')
while abs(b-a)> epsilon
T=(a+b)/2;
fT=exp(-T) - log(T);
fa=exp(-a) - log(a);
fb=exp(-b) - log(b);
fprintf('\n%3g %3.4f %5.4f %10.7f %10.7f',iterasi,a,b,T,fa,fb,fT)
if fa*fT<0
b=T;
else
a=T;
end;
fprintf(' %8s %10.7f\n',abs(b-a));
iterasi=iterasi+1;
end;
akar=T;
fprintf('\n\akarnya adalah = %8.7f\n',akar)
fprintf('jumlah iterasi = %g\n',iterasi);
2. x2 − ln x − 3 = 0, a = 1, b = 2, epsilon = 0.1
Listing Program
clear;
clc;
%f(x)= x^2 ? ln x ? 3 = 0
a=1;
b=2;
epsilon=0.1;
iterasi=0;
disp('Iter a b T f(a) f(b) f(c) selang baru lebar')
while abs(b-a)> epsilon
T=(a+b)/2;
fT=T^2 - log (T) - 3;
fa=a^2 - log (a) - 3;
fb=b^2 - log (b) - 3;
fprintf('\n%3g %3.4f %5.4f %10.7f %10.7f',iterasi,a,b,T,fa,fb,fT);
if fa*fT<0
b=T;
else
a=T;
end;
fprintf(' %8s %10.7f\n',abs(b-a));
iterasi=iterasi+1;
end;
akar=T;
fprintf('\n\akarnya adalah = %8.7f\n',akar)
fprintf('jumlah iterasi = %g\n',iterasi);
FLOWCHART
Start

Input
F(x),A,b,ε

Proses
F(a) dan F(b)

T If
F T = (a+b)/2,
dan
f(a) × f(b) > 0
F(t)

maka T = b, T If
F maka T = a ,
selang akar selang akar
f(a) × f(T) < 0
baru [a, T] baru [T, b]

F If
|b − a|≤ ε

T
Didapat
Akar = T

End

Judul Praktikum : Metode Posisi Palsu

1. e−x − ln x = 0, a = 1, b = 2, epsilon = 0.1


Listing Program
clc;
clear;
%f(x)=exp(-x) - log(x)
iterasi=1;
a=1;
aawal=a;
b=2;
bawal=b;
epsilon=0.1;
clama=2*b-a;
c=b-(f2(b)*(b-a))/(f2(b)-f2(a));
error=abs((c-clama)/c);
if error <= epsilon
disp('Nilai akar adalah :%2.5f',c);
else
disp('---------------------------------------------------------------
-----------------');
disp('iterasi a b c f(a)f(c) eror relatif selang baru(a,b)');
disp('---------------------------------------------------------------
-----------------');
while error > epsilon
cekselang=f2(a)*f2(c);
c=b-(f2(b)*(b-a))/(f2(b)-f2(a));
error=abs((c-clama)/c);
if cekselang < 0
bbaru=c;
abaru=a;
else
abaru=c;
bbaru=b;
end
fprintf('%2d %15.5f %14.5f %13.5f %13.5f %13.5f [%3.5f,
%3.5f]\n',iterasi,a,b,c,cekselang,error,abaru,bbaru);
clama=c;
a=abaru;
b=bbaru;
iterasi=iterasi+1;
end
end
disp('---------------------------------------------------------------
-------------------------');
fprintf('Hampiran akar pada selang [%1.5f,%1.5f] dengan epsilon= %f
adalah %.5f\n\n',aawal,bawal,epsilon,c);

function y=f2(x)
y=exp(-x) - log(x);
2. x2 − ln x − 3 = 0, a = 1, b = 2, epsilon = 0.1
Listing Program
clc;
clear;
%f(x)=x^2 ? ln x ? 3 = 0
iterasi=1;
a=1;
aawal=a;
b=2;
bawal=b;
epsilon=0.1;
clama=2*b-a;
c=b-(f22(b)*(b-a))/(f22(b)-f22(a));
error=abs((c-clama)/c);
if error <= epsilon
disp('Nilai akar adalah :%2.5f',c);
else
disp('--------------------------------------------------------------
------------------');
disp('iterasi a b c f(a)f(c) eror relatif selang baru(a,b)');
disp('--------------------------------------------------------------
------------------');
while error > epsilon
cekselang=f22(a)*f22(c);
c=b-(f22(b)*(b-a))/(f22(b)-f22(a));
error=abs((c-clama)/c);
if cekselang < 0
bbaru=c;
abaru=a;
else
abaru=c;
bbaru=b;
end
fprintf('%2d %15.5f %14.5f %13.5f %13.5f %13.5f [%3.5f,
%3.5f]\n',iterasi,a,b,c,cekselang,error,abaru,bbaru);
clama=c;
a=abaru;
b=bbaru;
iterasi=iterasi+1;
end
end
disp('--------------------------------------------------------------
--------------------------');
fprintf('Hampiran akar pada selang [%1.5f,%1.5f] dengan epsilon= %f
adalah %.5f\n\n',aawal,bawal,epsilon,c);

function y=f22(x)
y=x^2 - log (x) - 3;
FLOWCHART
Start

Input Proses
F(x),A,b,ε F(a) dan F(b)

Proses
c=b– Proses
(f(b)*(b-a)) / clama = 2b −a
(f(b) - f(a))

Hitung
F(c)

maka c = b , T F maka c= a,
If
selang akar selang akar
fa×fc<0
baru [a, c] baru [c, b]

If
|(c – clama) / c |

T
F
Hasil
Akar = c

End
Judul Praktikum : Metode Newton Rhapson

1. cos x + 1 − x = 0 , x0 = 0.8, x1 = 1.6, epsilon = 0.1


Listing Program

clear;
clc;
x1=input('Masukkan nilai x1:');
epsilon=input('Masukkan nilai epsilon :');
e=1;
iterasi=0;
fprintf('Masukkan nilai x1 : %5.3f\n', x1);
fprintf('-----------------------------------------------------\n');
fprintf('Iterasi x1 f1 f2 akar\n');
fprintf('-----------------------------------------------------\n');
while e>= epsilon
f1= cos(x1) + 1- x1;
f2= 2*x1;
iterasi=iterasi+1;
x2=x1-(f1/f2);
e=abs((x2-x1)/x1);
x1=x2;
end
fprintf('%3d %8.5f %8.5f %8.5f %8.5f\n',iterasi,x1,f1,f2,x2);
fprintf('------------------------------------------------------\n');
fprintf('Jadi, akar persamaan adalah %7.5f\n',x2);

2. e−x − ln x = 0, a = 1, b = 2, epsilon = 0.1


Listing Program
clear;
clc;
a=input('Masukkan nilai a:');
epsilon=input('Masukkan nilai epsilon :');
e=1;
iterasi=0;
fprintf('Masukkan nilai a : %5.3f\n', a);
fprintf('-----------------------------------------------------\n');
fprintf('Iterasi a f1 f2 akar\n');
fprintf('-----------------------------------------------------\n');
while e>= epsilon
f1= cos(a) + 1- a;
f2= 2*a;
iterasi=iterasi+1;
x2=a-(f1/f2);
e=abs((x2-a)/a);
a=x2;
end
fprintf('%3d %8.5f %8.5f %8.5f %8.5f\n',iterasi,a,f1,f2,x2);
fprintf('------------------------------------------------------\n');
fprintf('Jadi, akar persamaan adalah %7.5f\n',x2);

FLOWCHART
Start

Input
F(x) , f’(x) , x0,
ε

T F
If Hitung
f`(x0) = 0 f(x) dan f′(x0)

Hitung
If
X1 = x0 –
|(x1-x0) / x1| ≤ ε
(f(x0)/f’(x0))

Output
Akar = x1

End

Judul Praktikum : Metode Secant

1. cos x + 1 − x = 0 , x0 = 0.8, x1 = 1.6, epsilon = 0.1


Listing Program
disp('metode secant');
disp('===============================');
x0=input('masukkan x0=');
x1=input('masukkan x1=');
E=input('masukkan epsilon:');
i=0;
M=1;
while(E<M)
fx0=cos (x0) + 1 - x0;
fx1=cos (x1) + 1 -x1;
d=x1-(fx1*(x1-x0)/(fx1-fx0));
M=abs(x1-x0);
x0=x1;
x1=d;
i=i+1;
disp(['iterasi ke',num2str(i),',','akar:',num2str(x1)]);
end;
disp(['nilai akar:',num2str(x1)]);
disp(['jumlah iterasi:',num2str(i)]);
disp(['kesalahan:',num2str(M)]);

2. e−x − ln x = 0, a = 1, b = 2, epsilon = 0.1


Listing Program
disp('metode secant');
disp('===============================');
a=input('masukkan a=');
b=input('masukkan b=');
E=input('masukkan epsilon=');
i=0;
M=1;
while(E<M)
fa=exp(-a) - log(a);
fb=exp(-b) - log(b);
d=b-(fb*(b-a)/(fb-fa));
M=abs(b-a);
a=b;
b=d;
i=i+1;
disp(['iterasi ke',num2str(i),',','akar:',num2str(b)]);
end;
disp(['nilai akar:',num2str(b)]);
disp(['jumlah iterasi:',num2str(i)]);
disp(['kesalahan:',num2str(M)]);

FLOWCHART
Start

Input
f (x) , x0, x1, ε

Hitung
f(x0) dan f(x1)

Hitung
Xn+1 = Xn –
(f(Xn)*(Xn-Xn-
1) / (f(Xn)-
f(Xn-1))

F
If x0 = xn−1
|(Xn+1 – Xn) / (Xn+1) ≤ ε dan x1 = xn+1

T
Output
akar=Xn+1

End
LAPORAN PRAKTIKUM 3

Anda mungkin juga menyukai