metode newton raphson & bisection dengan c++

Upload: agie-maya

Post on 12-Jul-2015

1.231 views

Category:

Documents


31 download

TRANSCRIPT

METODE NEWTON RAPHSON DENGAN C++1. Program menghitung nilai x dari persamaan f(x) : x2 + 3x 10 dengan menggunakan metode Newton Rapshon. Deksripsi : Metode Newton Rapshon menggunakan formula atau algoritma untuk mendapatkan nilai x maka :

x[n+1] = x[n] f(x)/f`(x) Parameter awal x diinput dan nilai e = 0.0005 f(x) = fungsi persamaan x2 + 3x 10 = 0, maka x = 2 atau x = -5, jadi kita menginputkan bilangan x awal apabila mendekati 2 maka hasil x akhir = 3, dan apabila mendekati = -5 maka hasil x akhir = 5

f`(x) = fungsi turunan pertama f(x) 2x + 3 nilai e = 0.0005 kondisi dimana perulangan berhenti nilai mutlak (Absolute) |x[n+1] x[n]|

a. Listing Program#include #include #include float Fungsi(float x); float FungsiTurunan(float x); main() { int n=0; float x[100]; float e = 0.0005; printf( Program Newton Rapshon \n); printf( ====================== \n\n); printf(Persamaan Fungsi f(x) : \n); printf( x*x + 3x 10 \n\n); printf(x(n+1) : \n); printf( x(n)-(f(xn)/f(xn)) \n\n); printf(Nilai e = 0.0005\n\n); printf(Masukkan nilai x Awal : ); scanf(%f,&x[0]); printf(==================================================================\n); printf(! n ! xn ! f(xn) ! f(xn) ! f(xn)/f(xn) ! x(n+1) !\n); printf(==================================================================\n); do { x[n+1] = x[n] (Fungsi(x[n])/FungsiTurunan(x[n])); printf(! %d ! %2.4f ! %2.4f ! %2.4f ! %2.4f ! %2.4f !\n, n, x[n],Fungsi(x[n]), FungsiTurunan(x[n]),Fungsi(x[n])/FungsiTurunan(x[n]),x[n+1]); n++; }while(abs(x[n-1]-x[n-2])>e); printf(! %d ! %2.4f ! %2.4f ! %2.4f ! %2.4f ! %2.4f !\n, n, x[n],Fungsi(x[n]), FungsiTurunan(x[n]),Fungsi(x[n])/FungsiTurunan(x[n]),x[n+1]); printf(==================================================================\n\n); printf(Jadi, Hasil yang memenuhi dari persamaan tersebut x = %2.4f, x[n]); getch(); } float Fungsi(float x) { return pow(x,2)+(3*x)-10; } float FungsiTurunan(float x) { return 2*x+3; }

AGUS SUSILO / 0971100824 / KELAS O

b. Output Program, Jika x awal dinput mendekati 2

Jika x awal diinput mendekati -5

AGUS SUSILO / 0971100824 / KELAS O

ALOGARITMA METODE BISEKSI1. 2. 3. 4. 5. 6. Definisikan fungsi f(x) yang akan di cari akarnya Tentukan nilai a dan b Tentukan iterasi maksimum N Hitung f(a) dan f(b) Jika f(a).f(b)> 0 maka proses dihentikan karena tidak ada akar, bila tidak dilanjutkan Hitung

7.Hitung f(x) 8.Bila f(x).f(a)