#menubar{ width:900px; margin-top:5px; float:center; background:#de360f; height:35px; border:1px solid #de360f; } #menubar-left{ float:left; width:900px; padding-top:1px; } #menubar ul{ position:relative; overflow:hidden; padding:0; margin:0; font-weight:none; font-size:12px; } #menubar li{ cursor:pointer; float:left; margin:0 padding:0; height:32px; } #menubar ul li{ float:left; list-style:none } #menubar ul li a{ border-right:1px solid #F0512D; float:left; padding: 9px 12px; text-decoration:none; color: #ffffff; font-weight:bold; font-size:14px; font-family: Calibri; } #menubar ul li a:hover{ background:transparent; color: #ffa500; } #menubar ul li a.current, #menubar ul li a.current:visited, #menubar ul li a.current:hover{ color:#ffa500; }

Selasa, 05 Februari 2013

Program Penyelesaian Fungsi menggunakan Metode Biseksi dengan Software Matlab

clc;
disp('---------------------------')
disp('program : Metode Biseksi   ')
disp('Oleh    : Mahfud Jiono     ')
disp('nb: penulisan fungsi harus di kasih kata inline terlebih dahulu     ')
disp('contoh: f(x)=x^3+2x+1 ')
disp('maka penulisanya: f(x)= inline ('x.^3+x.*2+1','x')  ')
disp('---------------------------')
f=input('f(x)=  ');
a=input('Batas bawah =  ');
b=input('Batas atas  =  ');
while f(a).*f(b)>0
    disp('interval yang dimasukan tidak mengurung penyelesaian, Silahkan diulangi!')
    disp('  ')
    a=input('Batas bawah =  ');
    b=input('Batas atas  =  ');
end
X=a:0.001:b;
awal=cputime;
if f(a).*f(b)~=0
    f_a=f(a); f_b=f(b);
    e=input('Toleransi kesalahan=  ');
    E=1; c=0;
    disp('--------------------------------------------------------------------------------')
    disp('   Iterasi      a         b         x        f(a)      f(b)      f(x)      error')
    disp('--------------------------------------------------------------------------------')
    while E>e
        c=c+1;x1=a;x2=b;
        x=(a+b)./2;
        if f(x).*f_a<0
            b=x; f_b=f(x);
        else
            a=x; f_a=f(x);
        end
        E=abs(b-a);
        disp([c x1 x2 x f_a f_b f(x) E])
    end
    disp('------------------------------------------------------------')
    akhir=cputime;
 disp(['Diperoleh x= ' num2str(x) ' dan f(' num2str(x) ')=' num2str(f(x)) ' dengan error=  ' num2str(E)])
 disp(['Waktu komputasi = ' num2str(akhir-awal) 'detik'])
else
    if f(a)==0;
        disp(['x= ' num2str(a)])
    else
        disp(['x= ' num2str(b)])
    end
end
plot(X,f(X))
title('Grafik fungsi f(x)')
xlabel('Domain fungsi')
ylabel('Range fungsi')
grid on;
   

12 komentar:

Unknown mengatakan...

software mattlab R2010a

Okky Bagus Saputro mengatakan...

suwon pol yo bro.. mbantu beud

Unknown mengatakan...

mohon bantuanya bro untuk persamaan
f (x) = x3 + x2 – 3x – 3 = 0.

Unknown mengatakan...

Langsung input F(x)nya aja mas bro.
inline -3-x+x.^3

Unknown mengatakan...

tanks bro

Unknown mengatakan...

sama-sama mas bro.
trimakasih uda di kunjungi. :)

Unknown mengatakan...

kalo persamaannya juga inputan kek gmna kk,

maksudnya persamaannya di inputkan sendiri oleh user, jadi kayak kalkulator gitu

Unknown mengatakan...

gak jalan programnya

line 9
f=input('f(x)= '); ada yg slah

Unknown mengatakan...
Komentar ini telah dihapus oleh pengarang.
Unknown mengatakan...

saya error di line 12
while f(a).*f(b)>0
bagaimana penyelesaiannya?

Unknown mengatakan...

Mohon maaf mas Deny dan mas Andhika baru liat messages nya.
mungkin error ini terjadi pas input persamaanya, aku coba lagi tetap jalan kok programnya.
jadi misal kita ada persamaan f(X)=x^3+2x+1, coba masukan nilai input seperti ini,
f(x)= inline ('1+x.*2+x.^3','x')
karena kita akan membandingkan nilai x, jadi keduanya harus di inputkan.

Unknown mengatakan...

Atau bisa juga waktu nginputkan seperti ini:
f(x)= inline ('x.^3+x.*2+1','x')
batas bawah misal=-1
batas atas misal=0
toleransi kesalahan= 0.006
kemudian tunggu sebentar, dan resultnya akan muncul

Posting Komentar