Setelah mempelajari pemrograman menggunakan bahasa Pascal maka pada
latihan terakhir ini akan dipelajari tentang aplikasi pemrograman untuk memecahkan
permasalahan dengan metode numerik. Metode numerik adalah teknik yang digunakan
untuk memformulasikan masalah matematis sehingga dapat dipecahkan dengan
operasi perhitungan. Metode numerik banyak berguna dalam memecahkan masalahmasalah
teknik rekayasa yang tidak mungkin dipecahkan secara analitis.
Dalam latihan ini hanya dibahas dua masalah dasar dalam metode numerik, yaitu
penentuan akar-akar persamaan dan menyelesaikan sistem persamaan. Selain itu,
pembahasan akan lebih ditekankan pada materi pemrogramannya daripada teori
numeriknya. Lebih lanjut tentang teori-teori metode numerik dapat dipelajari dalam
mata pelajaran Matematika.
Menentukan Akar-Akar Persamaan
Suatu persamaan matematika dapat ditentukan akar persamaannya dengan
beberapa metode. Secara garis besar, ada dua metode yaitu metode pengurung dan
metode terbuka. Salah satu metode pengurung adalah metode grafik, metode ini sudah
dijelaskan pada latihan keempat tentang aplikasi grafik. Metode ini mengamati secara
langsung posisi akar pada grafik persamaannya. Selain metode grafik, ada beberapa
macam lagi metode pengurung seperti metode inkremental, metode bagi dua dan
metode posisi palsu. Berikut ini adalah program untuk menentukan akar-akar
persamaan dengan metode inkremental :
program Akar_Persamaan;
uses CRT;
var
MaxGalat, AkarPers,
BatasAtas, BatasBawah : real;
MaxIterasi : integer;
function F(X : real) : real;
begin
F := X*X*X - 6*X - 7;
end;
procedure Awal;
begin
Writeln('Latihan 5 : Analisa Numerik');
Writeln('---------------------------');
Writeln;
Writeln('Nama : ____________________');
Writeln('NIM : __________');
Writeln;
Writeln('Program Untuk Menghitung Akar Persamaan');
Writeln;
end;
procedure BacaData;
begin
Write('Masukkan galat maksimum : ');
Readln(MaxGalat);
Write('Masukkan maksimum iterasi : ');
Readln(MaxIterasi);
Write('Masukkan perkiraan awal : ');
Readln(BatasBawah);
Writeln;
end;
procedure Inkremental;
var
Iterasi : integer;
Kenaikan,
Galat, Uji : real;
begin
Iterasi := 0;
Kenaikan := 1;
Writeln(' Iterasi Batas Bawah Akar Persamaan Galat');
Writeln('-------------------------------------------------');
repeat
Iterasi := Iterasi + 1;
BatasAtas := BatasBawah + Kenaikan;
AkarPers := BatasAtas;
Uji := F(BatasAtas) * F(BatasBawah);
Galat := abs((AkarPers - BatasBawah)/AkarPers);
if Uji > 0 then BatasBawah := BatasAtas
else Kenaikan := Kenaikan/2;
Writeln(Iterasi:5, BatasBawah:17:5, AkarPers:15:5, Galat:13:5);
until (Kenaikan <= MaxGalat) or (Iterasi >= MaxIterasi);
Writeln('-------------------------------------------------');
Writeln;
end;
procedure TampilHasil;
begin
Writeln('Akar persamaan dari fungsi adalah ',AkarPers:8:5);
end;
begin
ClrScr;
Awal;
BacaData;
Inkremental;
TampilHasil;
Writeln;
Write('Tekan Enter...');
Readln;
end.
latihan terakhir ini akan dipelajari tentang aplikasi pemrograman untuk memecahkan
permasalahan dengan metode numerik. Metode numerik adalah teknik yang digunakan
untuk memformulasikan masalah matematis sehingga dapat dipecahkan dengan
operasi perhitungan. Metode numerik banyak berguna dalam memecahkan masalahmasalah
teknik rekayasa yang tidak mungkin dipecahkan secara analitis.
Dalam latihan ini hanya dibahas dua masalah dasar dalam metode numerik, yaitu
penentuan akar-akar persamaan dan menyelesaikan sistem persamaan. Selain itu,
pembahasan akan lebih ditekankan pada materi pemrogramannya daripada teori
numeriknya. Lebih lanjut tentang teori-teori metode numerik dapat dipelajari dalam
mata pelajaran Matematika.
Menentukan Akar-Akar Persamaan
Suatu persamaan matematika dapat ditentukan akar persamaannya dengan
beberapa metode. Secara garis besar, ada dua metode yaitu metode pengurung dan
metode terbuka. Salah satu metode pengurung adalah metode grafik, metode ini sudah
dijelaskan pada latihan keempat tentang aplikasi grafik. Metode ini mengamati secara
langsung posisi akar pada grafik persamaannya. Selain metode grafik, ada beberapa
macam lagi metode pengurung seperti metode inkremental, metode bagi dua dan
metode posisi palsu. Berikut ini adalah program untuk menentukan akar-akar
persamaan dengan metode inkremental :
program Akar_Persamaan;
uses CRT;
var
MaxGalat, AkarPers,
BatasAtas, BatasBawah : real;
MaxIterasi : integer;
function F(X : real) : real;
begin
F := X*X*X - 6*X - 7;
end;
procedure Awal;
begin
Writeln('Latihan 5 : Analisa Numerik');
Writeln('---------------------------');
Writeln;
Writeln('Nama : ____________________');
Writeln('NIM : __________');
Writeln;
Writeln('Program Untuk Menghitung Akar Persamaan');
Writeln;
end;
procedure BacaData;
begin
Write('Masukkan galat maksimum : ');
Readln(MaxGalat);
Write('Masukkan maksimum iterasi : ');
Readln(MaxIterasi);
Write('Masukkan perkiraan awal : ');
Readln(BatasBawah);
Writeln;
end;
procedure Inkremental;
var
Iterasi : integer;
Kenaikan,
Galat, Uji : real;
begin
Iterasi := 0;
Kenaikan := 1;
Writeln(' Iterasi Batas Bawah Akar Persamaan Galat');
Writeln('-------------------------------------------------');
repeat
Iterasi := Iterasi + 1;
BatasAtas := BatasBawah + Kenaikan;
AkarPers := BatasAtas;
Uji := F(BatasAtas) * F(BatasBawah);
Galat := abs((AkarPers - BatasBawah)/AkarPers);
if Uji > 0 then BatasBawah := BatasAtas
else Kenaikan := Kenaikan/2;
Writeln(Iterasi:5, BatasBawah:17:5, AkarPers:15:5, Galat:13:5);
until (Kenaikan <= MaxGalat) or (Iterasi >= MaxIterasi);
Writeln('-------------------------------------------------');
Writeln;
end;
procedure TampilHasil;
begin
Writeln('Akar persamaan dari fungsi adalah ',AkarPers:8:5);
end;
begin
ClrScr;
Awal;
BacaData;
Inkremental;
TampilHasil;
Writeln;
Write('Tekan Enter...');
Readln;
end.
Tidak ada komentar:
Posting Komentar