Friday, April 26, 2013

Algoritma Source Code Metode Tabel

Metode Tabel adalah salah satu metode dalam metode numerik yang digunakan untuk mencari akar dari suatu persamaan. Prinsip dari Metode Tabel ini adalah memasukan nilai x antara batas tertentu (batas atas dan batas bawah) kedalah suatu fungsi, 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 adalah algoritma dan Source Code metode Tabel.

Algoritma :

  1. Definisikan fungsi fx (misal y=x^2 -27);
  2. Tentukan batas bawah, batas bawah nilai x dan jumlah iterasi;
  3. Hitung penambahan nilai x dengan rumus inc = (batas atas - batas bawah ) / jumlah iterasi;
  4. Apakah batas bawah < dari batas atas? ya: langkah 5-9, tidak : langkah 11;
  5. hitung nilai f(batas bawah);
  6. hitung nilai f(atas atas ditambah inc);
  7. Cetak nilai batas bawah dan nilai f(batas bawah);
  8. Apakah nilai f(b.bawah) dikali f(b.bawah + inc) kurang dari 0? Ya : simpan nilai b.bawah dan b.bawah +inc;
  9. Tambah nilai batas bawah dengan inc;
  10. kembali ke langakh 4;
  11. Cetak nilai batas bawah yang disimpan dan batas bawas + inc;
Source code :
#include <stdio.h>
#include <math.h>
#include <stdlib.h>

double fungsi (double);

main(){
double x1, x2, fx1, fx2, a, temp, indeks;
int n, i=1;

puts(">>>> METODE TABEL <<<<");
puts("     f(x)=x^2 - 27 ");
printf("Masukan batas bawah : ");
scanf("%lf", &x1);
printf("Masukan batas atas  : ");
scanf("%lf", &x2);
printf("Masukan banyak iterasi : ");
scanf("%d", &n);

a = (x2-x1) / n;
fx1 = fungsi(x1);
fx2 = fungsi(x2);
if (fx1*fx2>=0){
printf("batas atas dan bats bawah Anda salah\n");
}
temp = x1;
puts("     x\t\tfx");
do{
fx1 = fungsi(temp);
fx2 = fungsi(temp+a);
printf("%9lf  %9lf\n",temp, fx1);
if (fx1*fx2<=0)
indeks = temp;

fx1 = fx2;
temp = temp + a;
i++;
}while(i<=n);

printf("\nHasil berada diantara %lf dan %lf\n",indeks, indeks+a );
}
double fungsi (double a){
double hasil;
hasil =a*a - 27;

return hasil;
}
Warna merah merupakan fungsi yang bisa dirubah sesuai keinginan.
Maka output yang dihasilkan akan seperti berikut : 
Algoritma source code metode tabel
Semoga bermanfaat, jangan lupa untuk dibagikan ke teman-temannya. Karena berbagi itu menyenangkan.
"Jika kamu sudah bisa menciptakan kebahagian didalam dirimu, kamu akan bisa menemukan kebahagiaan itu di tempat mana pun:~Galaiola Montana

Artikel Terkait metode numerik ,source code ,tutorial

2 comments: