Rabu, 27 Juni 2012

Materi Metode Numerik

"Menciptakan kebiasaan baru adalah salah satu dari kunci sukses. Jika anda ingin sukses Anda harus mulai menciptakan kebiasaan-kebiasaan yang akan membawa Anda kepada kesuksesan."



Di bawah ini adalah sebagai bagian dari materi Metode Numerik,yang sengaja di share.mungkin ada sahabat2 saya yg ingin  mempelajarinya.



MATERI METODE NUMERIK




1.                              1.Round Up Error

X = 1, X = x + 0,00001à lakukan sampai 10.000 kali
Tampilkan hasil dalam tipe data yang berbeda (float dan double) sehingga hasil yang diharapkan menjadi :X = 1,1
Algoritma :
1.      Deklarasikan x = 1 , tipe float
2.      Hitung x = x + 0,00001
3.      Lakukan perhitungannya sebanyak 10.000 kali
4.      Tampilkan nilai x terakhir

Flow Chart :

Coding;

#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
int main(){
float x = 1;
double z = 1;
int y = 1;
double l = 0.00001;
for (y = 1; y <= 10000; y++)  {
         x = x + l;
         z = z + l;
     }
cout<< " Nama        : Agustinus Adur"<<endl;
cout<< " NIM         : 2011-81-120"<<endl;
cout<< " Jurusan     : Teknik Informatika"<<endl;
cout<< " Mata Kuliah : Praktikum Metode Numerik"<<endl;
cout<< " Nilai float      : ";
cout<< x<< endl;
cout<< " Nilai Double: ";
cout<< z;
getch ();

}



1.                              2.  Error Absolut

A = cos 0.3
B = sin (k * 0.7)
K = bilangan 1 s/d 20
Y = A/B
W = Y*B
Z = A – W
Jika a dan b adalah  konstanta, buktikan bahwa Y = A, W = A dan Z = 0 atau bilangan bukan 0!

  

Algoritma :
1.      Deklarasikan a, b, y, w, dan z sebagai variable dengan tipe data float dan k sebagai variable dengan tipe data integer
2.      Tampilkan tabel
3.      Hitung :
A = cos 0.3
B = sin (k * 0.7)
K = bilangan 1 s/d 20
Y = A/B
W = Y*B
Z = A – W
4.      Lakukan perhitungannya selama k <= 20
5.      Tampilkan hasilnya



Coding;


#include <math.h>
#include <conio.h>
#include <iostream.h>
#include <stdlib.h>
#include <stdio.h>
int main(){
float a, b, w, y, z;
int k;

cout<< " Nama     : Agustinus Adur"<<endl;
cout<< " NIM      : 2011-81-120"<<endl;
cout<< " Jurusan  : Teknik Informatika"<<endl;
cout<< " Mata Kuliah : Praktikum Metode Numerik"<<endl;
cout<< " Selamat datang di Program Perhitungan Error " << endl;
cout<< "-------------------------------------" << endl;
cout<< "    k    " << "    a    " << "    b    " << "    y    " << "    w    " << "    z    " << endl;
cout<< "--------------------------------------" <<endl;
for(k = 1; k <= 20; k++){
        a = cos (0.3);
        b = sin (k * 0.7);
        y = a/b;
        w = y * b;
        z = a - w;
cout<< k << " | " << a << " | " << b << " | "<< y << " | "<< w << " | " << z << endl;}
getch();
}


Output;





3.Metode Bisection

  Algoritma Metode Bisection
  1. Tetapkan interval (xL, xR) sedemikian sehingga f(x) dan f(xR) berbeda tanda.
  2. Cari perpotongan garis yang menghubungkan (xL, f(xL))  dan (xR, f(xR)) dengan sumbu x sebutlah untuk perpotongan itu xT. Formula mencari xT adalah:
                        xT = xR – (f(xR).(xL-xR ))/(f(xL)- f(xR)).        
Bila f(xT) sama tandanya dengan f(xL), maka xT menggantikan xL.  Bila f(xT) sama tandanya dengan f(xR), maka xT menggantikan xR.
Algoritma dalam bentuk Tabel :
iterasi
XL
XR
FXL
FXR
XT
FXT
 |FXT|
|FXT|≤ ε
1
3
6
-1
8
4.5
1.25
1.25
Belum
2
3
4.5
-1
1.25
3.75
-0.4375
0.4375
Belum
3
3.75
4.5
-0.4375
1.25
4.125
0.265625
0.265625
Belum
4
3.75
4.125
-0.4375
0.265625
3.9375
-0.121094
0.121094
Belum
5
3.9375
4.125
-0.121094
0.265625
4.03125
0.0634766
0.0634766
Belum
6
3.9375
4.03125
-0.121094
0.0634766
3.98438
-0.0310059
0.0310059
Belum
7
3.98438
4.03125
-0.0310059
0.0634766
4.00781
0.015686
0.015686
Belum
8
3.98438
4.00781
-0.0310059
0.015686
3.99609
-0.00779724
0.00779724
Ya

Solusinya adalah 3.99609



Flowchart;




Output;