Sabtu, 08 Oktober 2011

Algoritma bisection

langkah-langka program dalam komputer

clear all;
clc;
f= input('f(x)=');
E= input('Toleransi error =');
x1=input('x1 =');
x2=input('x2 =');
disp(['f(x1) = ' , num2str(f(x1)), 'dan f(x2) = ' ,num2str(f(x2))]);
if f(x1)*f(x2)>0;
disp(' maaf pilihan yang anda tekan salah, silahkan pilih yang laen')
x1=input('x1 =');
x2=input('x2 =');
disp(['f(x1) = ' ,num2str(f(x1)),'dan f(x2) = ' ,num2str(f(x2))]);
end
c=0;
x=0.5*(x1+x2);
while abs(f(x))>E;
c=c+1;
disp(['iterasi ke- ',num2str(c)])
x=0.5*(x1+x2);
disp(['x=',num2str(x),'dengan f(x)=',num2str(f(x))])
if f(x)*f(x1)<0;
    x2=x;
    disp(['f(x)f(x1) =',num2str(f(x)*f(x1))]);
    disp(['x1_baru =',num2str(x1),'dan x2_baru =',num2str(x2)])
elseif f(x)*f(x1)>0;
    x1=x;
     disp(['f(x)f(x1) =',num2str(f(x)*f(x1))]);
    disp(['x1_baru =',num2str(x1),'dan x2_baru =',num2str(x2)])
end
end
disp(['jadi x =',num2str(x), 'dengan f(x)=',num2str(f(x))])

COMMAND WINDOW   
A.
f(x)=inline('x.*exp(-x)+cos(x.*pi./180)','x')
Toleransi error =0.0001
x1 =-1
x2 =0
f(x1) = -1.7184dan f(x2) = 1
iterasi ke- 1
x=-0.5dengan f(x)=0.1756
f(x)f(x1) =-0.30176
x1_baru =-1dan x2_baru =-0.5
iterasi ke- 2
x=-0.75dengan f(x)=-0.58784
f(x)f(x1) =0.34555
x1_baru =-0.75dan x2_baru =-0.5
iterasi ke- 3
x=-0.625dengan f(x)=-0.16771
f(x)f(x1) =0.028128
x1_baru =-0.625dan x2_baru =-0.5
iterasi ke- 4
x=-0.5625dengan f(x)=0.012734
f(x)f(x1) =-0.0021356
x1_baru =-0.625dan x2_baru =-0.5625
iterasi ke- 5
x=-0.59375dengan f(x)=-0.075196
f(x)f(x1) =0.0056544
x1_baru =-0.59375dan x2_baru =-0.5625
iterasi ke- 6
x=-0.57813dengan f(x)=-0.03067
f(x)f(x1) =0.00094066
x1_baru =-0.57813dan x2_baru =-0.5625
iterasi ke- 7
x=-0.57031dengan f(x)=-0.0088295
f(x)f(x1) =7.7961e-005
x1_baru =-0.57031dan x2_baru =-0.5625
iterasi ke- 8
x=-0.56641dengan f(x)=0.0019865
f(x)f(x1) =-1.754e-005
x1_baru =-0.57031dan x2_baru =-0.56641
iterasi ke- 9
x=-0.56836dengan f(x)=-0.0034129
f(x)f(x1) =1.1648e-005
x1_baru =-0.56836dan x2_baru =-0.56641
iterasi ke- 10
x=-0.56738dengan f(x)=-0.00071101
f(x)f(x1) =5.0554e-007
x1_baru =-0.56738dan x2_baru =-0.56641
iterasi ke- 11
x=-0.56689dengan f(x)=0.00063829
f(x)f(x1) =-4.5383e-007
x1_baru =-0.56738dan x2_baru =-0.56689
iterasi ke- 12
x=-0.56714dengan f(x)=-3.6227e-005
f(x)f(x1) =1.3124e-009
x1_baru =-0.56714dan x2_baru =-0.56689
jadi x =-0.56714dengan f(x)=-3.6227e-005
B.
f(x)=inline('x.*exp(-x)+sin(x.*pi./180)','x')
Toleransi error =0.0001
x1 =-1
x2 =0
f(x1) = -2.7357dan f(x2) = 0
iterasi ke- 1
x=-0.5dengan f(x)=-0.83309
f(x)f(x1) =0.69403
x1_baru =-0.5dan x2_baru =0
iterasi ke- 2
x=-0.25dengan f(x)=-0.32537
f(x)f(x1) =0.10587
x1_baru =-0.25dan x2_baru =0
iterasi ke- 3
x=-0.125dengan f(x)=-0.14383
f(x)f(x1) =0.020686
x1_baru =-0.125dan x2_baru =0
iterasi ke- 4
x=-0.0625dengan f(x)=-0.067622
f(x)f(x1) =0.0045727
x1_baru =-0.0625dan x2_baru =0
iterasi ke- 5
x=-0.03125dengan f(x)=-0.032787
f(x)f(x1) =0.001075
x1_baru =-0.03125dan x2_baru =0
iterasi ke- 6
x=-0.015625dengan f(x)=-0.016144
f(x)f(x1) =0.00026062
x1_baru =-0.015625dan x2_baru =0
iterasi ke- 7
x=-0.0078125dengan f(x)=-0.0080101
f(x)f(x1) =6.4162e-005
x1_baru =-0.0078125dan x2_baru =0
iterasi ke- 8
x=-0.0039063dengan f(x)=-0.0039897
f(x)f(x1) =1.5918e-005
x1_baru =-0.0039063dan x2_baru =0
iterasi ke- 9
x=-0.0019531dengan f(x)=-0.001991
f(x)f(x1) =3.9642e-006
x1_baru =-0.0019531dan x2_baru =0
iterasi ke- 10
x=-0.00097656dengan f(x)=-0.00099456
f(x)f(x1) =9.8915e-007
x1_baru =-0.00097656dan x2_baru =0
iterasi ke- 11
x=-0.00048828dengan f(x)=-0.00049704
f(x)f(x1) =2.4705e-007
x1_baru =-0.00048828dan x2_baru =0
iterasi ke- 12
x=-0.00024414dengan f(x)=-0.00024846
f(x)f(x1) =6.1733e-008
x1_baru =-0.00024414dan x2_baru =0
iterasi ke- 13
x=-0.00012207dengan f(x)=-0.00012422
f(x)f(x1) =1.543e-008
x1_baru =-0.00012207dan x2_baru =0
iterasi ke- 14
x=-6.1035e-005dengan f(x)=-6.2104e-005
f(x)f(x1) =3.8569e-009
x1_baru =-6.1035e-005dan x2_baru =0
jadi x =-6.1035e-005dengan f(x)=-6.2104e-005
C
f(x)=inline('x.*exp(x)-cos(2.*x.*pi./180)','x')
Toleransi error =0.0001
x1 =-1
x2 =1
f(x1) = -1.3673dan f(x2) = 1.7189
iterasi ke- 1
x=0dengan f(x)=-1
f(x)f(x1) =1
x1_baru =0dan x2_baru =1
iterasi ke- 2
x=0.5dengan f(x)=-0.17549
f(x)f(x1) =0.030796
x1_baru =0.5dan x2_baru =1
iterasi ke- 3
x=0.75dengan f(x)=0.58809
f(x)f(x1) =-0.1032
x1_baru =0.5dan x2_baru =0.75
iterasi ke- 4
x=0.625dengan f(x)=0.16789
f(x)f(x1) =-0.029463
x1_baru =0.5dan x2_baru =0.625
iterasi ke- 5
x=0.5625dengan f(x)=-0.012589
f(x)f(x1) =0.00015848
x1_baru =0.5625dan x2_baru =0.625
iterasi ke- 6
x=0.59375dengan f(x)=0.075357
f(x)f(x1) =-0.00094867
x1_baru =0.5625dan x2_baru =0.59375
iterasi ke- 7
x=0.57813dengan f(x)=0.030823
f(x)f(x1) =-0.00038803
x1_baru =0.5625dan x2_baru =0.57813
iterasi ke- 8
x=0.57031dengan f(x)=0.0089781
f(x)f(x1) =-0.00011303
x1_baru =0.5625dan x2_baru =0.57031
iterasi ke- 9
x=0.56641dengan f(x)=-0.0018399
f(x)f(x1) =3.3853e-006
x1_baru =0.56641dan x2_baru =0.57031
iterasi ke- 10
x=0.56836dengan f(x)=0.0035605
f(x)f(x1) =-6.551e-006
x1_baru =0.56641dan x2_baru =0.56836
iterasi ke- 11
x=0.56738dengan f(x)=0.0008581
f(x)f(x1) =-1.5789e-006
x1_baru =0.56641dan x2_baru =0.56738
iterasi ke- 12
x=0.56689dengan f(x)=-0.00049145
f(x)f(x1) =2.4153e-007
x1_baru =0.56689dan x2_baru =0.56738
iterasi ke- 13
x=0.56714dengan f(x)=0.00018319
f(x)f(x1) =-9.0029e-008
x1_baru =0.56689dan x2_baru =0.56714
iterasi ke- 14
x=0.56702dengan f(x)=-0.00015417
f(x)f(x1) =2.3767e-008
x1_baru =0.56702dan x2_baru =0.56714
iterasi ke- 15
x=0.56708dengan f(x)=1.4504e-005
f(x)f(x1) =-2.2359e-009
x1_baru =0.56702dan x2_baru =0.56708
jadi x =0.56708dengan f(x)=1.4504e-005
D
f(x)=inline('sin(2.*x.*pi./180)-x.*exp(-2.*x)','x')
Toleransi error =0.0001
x1 =-1
x2 =0
f(x1) = 7.3542dan f(x2) = 0
iterasi ke- 1
x=-0.5dengan f(x)=1.3417
f(x)f(x1) =1.8001
x1_baru =-0.5dan x2_baru =0
iterasi ke- 2
x=-0.25dengan f(x)=0.40345
f(x)f(x1) =0.16277
x1_baru =-0.25dan x2_baru =0
iterasi ke- 3
x=-0.125dengan f(x)=0.15614
f(x)f(x1) =0.02438
x1_baru =-0.125dan x2_baru =0
iterasi ke- 4
x=-0.0625dengan f(x)=0.06864
f(x)f(x1) =0.0047115
x1_baru =-0.0625dan x2_baru =0
iterasi ke- 5
x=-0.03125dengan f(x)=0.032175
f(x)f(x1) =0.0010352
x1_baru =-0.03125dan x2_baru =0
iterasi ke- 6
x=-0.015625dengan f(x)=0.015576
f(x)f(x1) =0.0002426
x1_baru =-0.015625dan x2_baru =0
iterasi ke- 7
x=-0.0078125dengan f(x)=0.0076628
f(x)f(x1) =5.8719e-005
x1_baru =-0.0078125dan x2_baru =0
iterasi ke- 8
x=-0.0039063dengan f(x)=0.0038005
f(x)f(x1) =1.4444e-005
x1_baru =-0.0039063dan x2_baru =0
iterasi ke- 9
x=-0.0019531dengan f(x)=0.0018926
f(x)f(x1) =3.5819e-006
x1_baru =-0.0019531dan x2_baru =0
iterasi ke- 10
x=-0.00097656dengan f(x)=0.00094438
f(x)f(x1) =8.9186e-007
x1_baru =-0.00097656dan x2_baru =0
iterasi ke- 11
x=-0.00048828dengan f(x)=0.00047171
f(x)f(x1) =2.2251e-007
x1_baru =-0.00048828dan x2_baru =0
iterasi ke- 12
x=-0.00024414dengan f(x)=0.00023574
f(x)f(x1) =5.5572e-008
x1_baru =-0.00024414dan x2_baru =0
iterasi ke- 13
x=-0.00012207dengan f(x)=0.00011784
f(x)f(x1) =1.3886e-008
x1_baru =-0.00012207dan x2_baru =0
iterasi ke- 14
x=-6.1035e-005dengan f(x)=5.8912e-005
f(x)f(x1) =3.4706e-009
x1_baru =-6.1035e-005dan x2_baru =0
jadi x =-6.1035e-005dengan f(x)=5.8912e-005


Tidak ada komentar:

Posting Komentar