Skip to content Skip to sidebar Skip to footer

Algoritma dan Pemrograman Penentuan Akar Menggunakan Metode Tabel

Perkuliahan metode numerik didahului oleh pengenalan metode-metode untuk pencarian akar dari suatu persamaan, salah satunya adalah metode tabel. Prinsip dari Metode Tabel ini adalah memasukan nilai x antara batas atas (a) dan batas bawah (b) kedalam suatu fungsi f(x), jika nilai fungsi (fx) mendekati nilai nol maka nilai x itulah yang dianggap sebagai akar persamaan. Metode ini sangat lemah, artinya metode ini memiki keakuratan yang sangat kurang dan sangat sulit untuk mendapatkan nilai eror yang kecil. Penggunaan metode ini biasanya untuk mencari nilai pendekatan awal pada metode metode lain seperti newton rapson atau pun metode secant. 

Berikut saya cantumkan flowchart untuk mengoperasikan metode tabel :

Flowchart metode tabel
untuk melengkapi penjelasan tentang metode tabel, saya lampirkan juga source code yang dapat teman-teman manfaatkan untuk implementasi metode tabel dalam pencarian akar dari suatu persamaan menggunakan pemrograman java. 



package table;
/**
 *
 * @author CHARIS
 */
public class Tabel {

    int iterasi;
    double Fungsi ; 
    private double F(double x) {
        Fungsi = x * Math.exp(-x)+1;
        return Fungsi;
    }

    private boolean metodeTabel(double a, double b, int n) {

        iterasi = n + 1;
        double h = 0;
        double x[] = new double[iterasi];
        double Fx[] = new double[iterasi];
        double Fxk = 0, Fxk1 = 1;
        double root = 0;
        boolean hasilRoot = false;
        
        System.out.println("a = " + a + "\nb = " + b + "\nn = " + n);
        System.out.println("h = (b - a) / n");
        System.out.println("F[x] = x*exp(-x)+1");
        System.out.println("hasil :");
        for (int i = 0; i < iterasi; i++) {
            x[i] = a + h;
            Fx[i] = F(x[i]);
            h += (b - a) / n;
            System.out.println("x[" + i + "] = " + x[i] + " \t\t F[" + i + "] = " + Fx[i]);
        }

        for (int i = 0; i < iterasi; i++) {
            if ((Fx[i] * Fx[i + 1]) < 0) {
                hasilRoot = true;
                Fxk = Fx[i];
                Fxk1 = Fx[i + 1];

                if (Math.abs(Fxk) < Math.abs(Fxk1)) {
                    root = x[i];
                } else {
                    root = x[i + 1];
                }
                break;
            }
        }

        System.out.println("\nroot = " + root);

        return (hasilRoot);
    }

    public static void main(String[] args) {
        Tabel tbl = new Tabel();
        tbl.metodeTabel(-1, 0, 10);
    }
}

keluaran yang dihasilkan dari source code metode tabel diatas adalah penemuan akar pada iterasi tertentu. Masukan yang diberikan pada metode tabel adalah batas bawah sebesar -1 dan batas atas sebesar 0 serta iterasi sebanyak n, yaitu 10. 

program menghasilkan akar pada iterasi ke 4, yaitu -0.6


Post a Comment for "Algoritma dan Pemrograman Penentuan Akar Menggunakan Metode Tabel "