RSS

Metode Numerik

PENDAHULUAN

Beberapa definisi metode numerik dikemukakan ahli matematika, misalnya metode numerik adalah teknik dimana masalah matematika diformulasikan sedemikian rupa sehingga dapat diselesaikan oleh pengoperasian aritmatika (Chapra dan Chanale, 1991); metode numerik adalah teknik  – teknik yang digunakan untuk merumuskan masalah matematika agar dapat diselesaikan hanya dengan operasi hitungan, yang terdiri dari operasi tambah, kurang, dan bagi (Susila, 1994; Ibraheem dan Hisyam, 2003). Terdapat banyak jenis metode numerik, namun pada dasarnya, masing – masing metode tersebut memiliki karakteristik umum, yaitu selalu mencakup sejumlah kalkulasi aritmatika. Jadi metode numerik adalah suatu teknik untuk memformulasikan masalah matematika sehingga dapat diselesaikan dengan operasi aritmatika yang terdiri dari operasi tambah, kurang, kali, kurang, dan bagi.

Materi mata kuliah metode numerik berkaitan dengan galat dan komputasi, akar persamaan tak linier meliputi akar, metode bagi dua, metode posisi palsu, iterasi titik tetap, metode Newton-Raphson, metode secant (talibusur); interpolasi meliputi interpolasi linear, interpolasi dan kuadrat, interpolasi beda terbagi Newton, interpolasi pada titik-titik berjarak sama, interpolasi lagrange, interpolasi invers, dan interpolasi Spline, Diferensial dan integral numeric meliputi hampiran turunan, integral numeric, dan aturan komposisi, serta penggunaan metode numeric untuk memecahkan masalah sehari-hari.

Dosen Metode Numerik : Pak Sugiartawan, lanjutan materi pendahuluan diatas bisa di download disini

==============================================================

METODE BISEKSI

Flowchart Biseksi

 

 

 

 

 

 

 

Koding Program (Tugas I)

Program metnum_biseksi;
uses crt;
label ulang;
var
x1,x2,x3,y1,y2,y3 : real;
i : integer;
pas : char;

begin
ulang :
clrscr;
writeln(‘Penyelesaian Persamaan f(x)=x^3+x^2-3x-3 dengan Metode Biseksi’);
write( ‘Nilai x1 = ‘ );
readln( x1 );
y1 := x1 * x1 * x1 + x1 * x1 – 3 * x1 -3;
writeln(‘ Nilai f(x1)= ‘,y1:0:7);
repeat
begin
write( ‘Nilai x2 = ‘);
readln(x2);
y2 := x2 * x2 * x2 + x2 * x2 – 3 * x2 – 3;
writeln(‘ Nilai f(x2)= ‘,y2:0:7);
end;

if (y1*y2)<0 then
Writeln(‘ Syarat Nilai Ok’)
else
Writeln(‘ Nilai X2 Belum Sesuai’);
until ( y1 * y2 ) < 0;

i :=2;
Writeln;
writeln(‘Penyelesaian dengan Metode Biseksi, Nilai x1= ‘,x1:0:2,’ & x2= ‘,x2:0:2);
writeln(‘————————————————————————–’);
writeln(‘n      x          f(x)            error ‘);
writeln(‘————————————————————————–’);

repeat
begin
i :=i + 1 ; x3 := ( x1 + x2) / 2;
y3 := x3 * x3 * x3 + x3 * x3 – 3 * x3 -3;
if (i mod 10)=0 then readln;
if i<10 then
writeln(‘ ‘,i,’ :: ‘,x3:0:8,’ :: ‘,y3:0:8,’ :: ‘,abs( y3 ):0:8)
else writeln(i,’ :: ‘,x3:0:8,’ :: ‘,y3:0:8,’ :: ‘,abs( y3 ):0:8);
if ( y1* y3) <0 then
begin
x2 :=x3;
end else
begin
x1 := x3;
end;
end;
until abs( y3 )<1E-07;

writeln(‘————————————————————————-’);
writeln(‘akar persamaannya = ‘,x3:0:8);
writeln(‘errornya =’,abs( y3 ):0:9);
writeln(‘————————————————————————-’);
write(‘Ulangi lagi (y/t): ‘);
readln(pas);
if (pas=’y’) or (pas=’Y’) then
begin
goto ulang;
end
else
write (‘exit’);
end.

Tampilan Program Biseksi

==============================================================

Program Metode Regula-Falsi

Flowchart Regula-Falsi

 

 

 

 

 

 

 

Koding Program Regula-Falsi (Tugas II)

uses crt;
var
tanda:string[1];
pangkat, i,j,l:integer;
koefisien:array [0..1000] of integer;
fx,a,b,c,galat,x,y,akar,fa,fb:real;

procedure input_fungsi;
begin
clrscr;
write(‘masukkan derajat polinom: ‘);
readln(pangkat);
for i:=0 to pangkat do
begin
write(‘koefisien ke-’,i,’: ‘);
readln(koefisien[i]);
end;
writeln;
write(‘bentuk fungsinya: f(x)= ‘);
for i:=0 to pangkat do
begin
if(i=0) then tanda:=” else
if(koefisien[i]>0) then tanda:=’+’ else
if(koefisien[i]<0) then tanda:=’-’;
if(koefisien[i]=1) then
begin
if(pangkat-i>1) then
write(tanda,’x^’,pangkat-i)
else if  (pangkat-i=1) then
write(tanda,’x’) else
write(tanda,koefisien[i]);
end
else if (koefisien[i]>1) then
begin
if(pangkat-i>1) then
write(tanda,koefisien[i],’x^’,pangkat-i)
else if  (pangkat-i=1) then
write(tanda,koefisien[i],’x’) else
write(tanda,koefisien[i]);
end
else if (koefisien[i]=-1) then
begin
if(pangkat-i>1) then
write(tanda,’x^’,pangkat-i)
else if  (pangkat-i=1) then
write(tanda,’x’) else
write(koefisien[i]);
end
else if (koefisien[i]<-1) then
begin
if(pangkat-i>1) then
write(koefisien[i],’x^’,pangkat-i)
else if  (pangkat-i=1) then
write(koefisien[i],’x’) else
write(koefisien[i]);
end;
end;
readln;
end;

function hitung_nilai_fx(x:real):real;
var
temp,pangkatx:real;
begin
temp:=0;
for i:=0 to pangkat do
begin
pangkatx:=1;
for j:=(pangkat-i) downto 1 do
begin
pangkatx:=pangkatx*x;
end;
temp:=temp+koefisien[i]*pangkatx;
end;
hitung_nilai_fx:=temp;
end;

procedure proses;
begin
writeln;
repeat
write(‘masukkan nilai a:’);
readln(a);
write(‘masukkan nilai b:’);
readln(b);
fa:=hitung_nilai_fx(a);
fb:=hitung_nilai_fx(b);
until (fa*fb<0);
write(‘masukkan toleransi tol: ‘);
readln(galat);

l:=1;
writeln(‘tabel perhitungan metode regula falsi’);
writeln(‘================================================================’);
writeln(‘: iter :    a    :   f(a)   :    b    :   f(b)   :   c   :   f(c)   :’);
writeln(‘================================================================’);

repeat
fa:=hitung_nilai_fx(a);
fb:=hitung_nilai_fx(b);
c:=a-((fa*(b-a))/(fb-fa));
fx:=hitung_nilai_fx(c);
writeln(l:6,a:10:5,fa:10:5,b:10:5,fb:10:5,c:10:5,fx:15:10);
l:=l+1;
if abs(fx)>galat then a:=c;
until (abs(fx)<=galat);
writeln(‘================================================================’);
writeln;
writeln(‘akar    c       = ‘,c:13:10);
writeln(‘nilai f(c)      = ‘,fx:13:10);
writeln(‘iterasi         = ‘,l-1,’ kali’);
readln;
end;
begin
input_fungsi;
proses;
end.

Tampilan Program Regula-Falsi

(from hendromania.co.cc) corected by materikuliah11

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
Follow

Get every new post delivered to your Inbox.

%d bloggers like this: