METNUM_Modul 4 - Metode Secant
-
Upload
aldo-pondaag -
Category
Documents
-
view
160 -
download
14
description
Transcript of METNUM_Modul 4 - Metode Secant
Modul Praktikum Metode Numerik ver 3.01 oleh Ir. STG Kaunang, MT., Stanley Karouw, ST., MTI., Kartika Tanudjaja, ST., MT
MODUL 4 Metode SECANT
BAB I
TUJUAN DAN DASAR TEORI
I.1 Tujuan
1. Menguasai metode Secant yang digunakan dalam komputasi numerik.
2. Memahami algoritma pemrograman untuk merancang program metode Secant yang
ada dalam komputasi numerik.
3. Menerapkan algoritma untuk perancangan dan pembuatan program metode Secant.
4. Melakukan pengujian algoritma dan kode program
5. Membuat Dokumentasi
I. 2 Dasar Teori
Akar fungsi pada metode Secant untuk i=1 dan 2 bisa dihitung dengan metode yang lain
atau ditebak. Mulai i=3, akar fungsi dihitung dengan rumus (umum):
I. 3 Langkah – langkah Metode Secant:
1) Menentukan nilai awal P0 dan P1.
2) Mencari nilai P berikutnya, dengan
3) Menguji P, apakah f(x) ≈ 0.
4) Mencari nilai P berikutnya sampai f(x) ≈ 0.
Modul Praktikum Metode Numerik ver 3.01 oleh Ir. STG Kaunang, MT., Stanley Karouw, ST., MTI., Kartika Tanudjaja, ST., MT
I.4 Contoh Pseudocode fungsi Secant
procedure Secant( f, x, nmax, ε, δ)
integer n, nmax; real x, fx, fp, ε, δ
external function f
fx ← f (x)
output 0, x, fx
for n = 1 to nmax do
fp ← f _(x)
if | f p| < δ then
output “small derivative”
return
end if
d ← fx/fp
x ← x − d
fx ← f (x)
output n, x, fx
if |d| < ε then
output “convergence”
return
end if
end for
end procedure Secant
Modul Praktikum Metode Numerik ver 3.01 oleh Ir. STG Kaunang, MT., Stanley Karouw, ST., MTI., Kartika Tanudjaja, ST., MT
BAB II
ALAT DAN BAHAN
II.1 Alat dan Bahan yang perlu dipersiapkan:
1) Buku Teks
2) Unit Pemroses
3) Aplikasi Pembuatan Program
a. Notepad / Notepad++
b. Aplikasi IDE C++ (Bloodsheed Dev C++)
c. Mathematica
d. Matlab
e. IDE Visual Studio 2010
f. Netbeans atau Eclipse
BAB III
PROSEDUR PERCOBAAN
III.1 Prosedur Umum
1) Memahami formulasi matematis Metode Secant
2) Menulis Algoritma penyelesaian masalah (dengan menggunakan teks dan/atau flow chart)
3) Menulis pseudocode algoritma
4) Menguji pseducode algoritma penyelesaian masalah (misalnya dengan menggunakan
prosedur Desk Check)
5) Melakukan kodifikasi
6) Menguji Program (misalnya dengan menggunakan prosedur Joel Test dan/atau tools seperti
NUnit, NCover, NCoverExplorer dan TestDriven.NET, atau menggunakan prosedur
pengujian langsung)
7) Membuat dokumentasi Praktikum
Modul Praktikum Metode Numerik ver 3.01 oleh Ir. STG Kaunang, MT., Stanley Karouw, ST., MTI., Kartika Tanudjaja, ST., MT
III.2 Prosedur Khusus
III.2.1 Contoh Menulis Program menggunakan IDE C++
1) Untuk menulis program baru caranya tekan CTRL+N atau pilih NEW lalu klik Source
File terlebih dahulu sebelum mengetik program.
2) Ketikkan program anda.
3) Simpan program dengan menekan tombol CTRL+F12, pilih Save kemudian pada
kotak dialog yang muncul ketikkan nama program pada tempat yang tersedia
misalnya Contoh1.cpp, kemudian klik Save atau tekan <ENTER>
4) Jalankan program dengan terlebih dahulu melakukan kompilasi. Hal ini dapat
dilakukan sekaligus dengan mengklik Compile & Run (F9) pada menu bar
ataulangsung menekan F9 pada keyboard.
5) Bila kompilasi tidak berhasil dan memunculkan pesan error, periksa kembali kode
program yang ada kemudian perbaiki kesalahan dan lakukan kembali langkah 3 dan
4.
6) Untuk membuka arsip yang ada, gunakan OPEN atau tekan CTRL+O pada keyboard.
III.2.2 Percobaan
Perhatikan penggalan program di Gambar dibawah
Lakukan langkah-langkah berikut:
1. Terdapat fungsi Diberikan fungsi f(x) = x3 – x - 3; P0=1.7; P1=1.67
2. Pahami algoritma penyelesaian masalah pada program diatas!
3. Tuliskan program berdasarkan langkah-langkah algoritma penyelesaian masalah!
4. Jalankan program
5. Temukan kesalahan program
6. Membuat dokumentasi
7. Lakukan kembali langkah 4 hingga langkah 6
8. Tuliskan program yang sudah benar
9. Membuat dokumentasi laporan lengkap
Modul Praktikum Metode Numerik ver 3.01 oleh Ir. STG Kaunang, MT., Stanley Karouw, ST., MTI., Kartika Tanudjaja, ST., MT
#include <iostream>
#include <math.h>
using namespace std;
//Metode Secant
int main(){
float a,b,c,p[100],e;
char pil;
int d;
cout<<"Masukkan persamaan f(x) dengan format Ax^d + Bx +
C"<<endl;
a=1;
b=-1;
c=-3;
d=3;
p[0]=1.7;
p[1]=1.67;
int i=1;
do{
p[i+1]=p[i]-((a*pow(p[i],d)+b*p[i]+c)*(p[i]-p[i-1]))/
((a*pow(p[i],d)+b*p[i]+c)-(a*pow(p[i-1],d)+b*p[i-1]+c));
e=(a*pow(p[i+1],d)+b*p[i+1]+c);
cout<<"p"<<i-1<<":"<<p[i-1]<<"\np"<<i<<":"<<p[i]<<
"\np"<<i+1<<":"<<p[i+i]<<"\nerror:"<<e<<endl;
i++;
}
(e>0.000001||e<-0.000001);
cout<<endl;
system("pause");
return 0;
}