Senin, 29 April 2013

Laporan Metode Bisection Praktikum Metode Numerik Jurusan Informatika Universitas Syiah Kuala Banda Aceh



FORM LAPORAN AKHIR

Judul Percobaan : Metode Bisection
Algoritma Metode Bisection :

1. Definisikan fungsi f(x) yang akan dicari akarnya
2. Tentukan nilai a dan b
3. Tentukan toleransi e dan iterasi maksimum N
4. Hitung f(a) dan f(b)
5. Jika f(a).f(b)>0 maka proses dihentikan karena tidak ada akar, bila tidak dilanjutkan
6. Hitung  
7. Hitung f(xr)
8. Bila f(xr).f(a)<0 maka b=xr dan f(b)=f(xr), bila tidak a=xr dan f(a)=f(xr)
9. Jika |b-a| < e atau iterasi > iterasi maksimum maka proses dihentikan dan
    didapatkan akar = xr, dan bila tidak, ulangi langkah 6.
Listing program :
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
       float bisection();
       float input();
       float f(float x);
       float a,b, galat, akar;
       int iterasi;


float f(float x) {
   return x*x-1; }
  int input(){
    printf("\n batas bawah a : ");       scanf("%f",&a);
    printf("\n batas atas b : ");        scanf("%f",&b);
    printf("\n Besar galat  : ");        scanf("%f",&c);
    printf("\n Banyak iterasi : ");      scanf("%f",&iterasi);
 return 1;
  }
float bisection()  {
    float c;
    int i = 1;
       do {
          c= (a+b)/2;
              if((f(c) * f(a)) < 0)
                b = c;
                else if((f(c)*f(a)) > 0)
                  a = c;
                    else
          return c;
            i++; }
    while(abs(b-a) > galat && i<iterasi) {
    return c; }
    int main() {
       input();
       if((f(a) * f(b)) > 0) {
    printf("\n Tidak ada akar dalam persaamaan ini :( ");
    return 0; }
     else {
       akar = bisection();
        printf("\n Akar persamaan ada pada X = %.5f\n ",akar);
   return 1; } }
Pengamatan Awal :
1.      Gambar kurva fungsi dengan GNU Plot
1.      Pengamatan terhadap parameter
a.      Toleransi error(e) terhadap jumlah iterasi (N)

Toleransi Eror (e)
Jumlah Iterasi
0,1
7
0,01
8
0,001
9
0,0001
10




b.      Pengubah nilai awal batas atas (a) dan batas bawah (b) terhadap 20 iterasi (N)
Batas Bawah (a)
Batas Atas (b)
Nilai Error
0
1
0,1
0,25
0,75
0,1
0,5
0,75
0,1
0,5
0,6
0,1

2.     kesimpulan
Dari praktikum ini dapat diambil beberapa point penting, seperti metode bisection ini mengambil nilai tengah dari nilai a dan b yang diketahui. Iterasi adalah satu bentuk pengulangan untuk menemukan nilai yang dekat dengan standar eror yang diinginkan. Iterasi ini menentukan seberapa benar program yang telah di buat. Semakin banyak iterasi juga semakin kecil kesalahan yang mungkin terjadi.

Tidak ada komentar:

Posting Komentar