Program
Setengah interval
Semester tiga saya mendapatkan
pelajaran yang namanya metode numeric distu disuruh membuat program untuk menyelesaiakn sebuah soal yang
menggunakan metode setengah interval ada banyak pilihan untuk membuat program ini
tapi kali ini saya memilih bahasa pascala dalam membuat program ini :
Berikut algoritma utuk membuat
program setengah interval yang pada intinya sama meski menggunakan berbagai
bahasa pemrograman:
1. Masukan nilai a0 dan b0
2. Baca persamaan yang berisi f (x)
3. Interval atau taksiran awal atau
w0 dapat dihitung dengan rumus w0=a+b/2
4. Jika f(a).f(b) kurang dari (<)
0 maka b=w
5. Jika nilai f(a).f(b) lebih dari
(>) 0 maka a=w
6. Jika |b-a| <= 0 maka akarnya
adalah w
Jika nilai |b-a |>=0 maka
ulangi langkah kedua
Berikut sintaknya :
silahkan di run di
free pascal atau turbo pascal dengan ganti uses wincrt; pada turbo pascal,,,,
kalau salah
silahkan diperbaiki dan dishare ulang tapi kalau Insya'Allah dah bener silahkan
dimodifikasi,,
berikut program
setengah interval pada contoh soal,,,
uses
wincrt;
function f(x:real):real;
begin
f:=x*x*x+x*x-4*x-2; ==> fungsi silahkan diganti sesuai soal
end;
var w,f1,x0,x1,g,y,e:real;
i:integer;
begin
writeln(‘by lega chandra h’);
writeln(‘Universitas Teknologi
Yogyakarta’);
writeln('masukan nilai a');
readln(x0);
writeln('masukan nilai b');
readln(x1);
e:=0.005;
i:=0;
repeat
w :=(x0+x1)/2;
f1:=w*w*w+w*w-4*w-2; ==> fungsi silahkan diganti sesuai soal
g:=f(x0)*f1;
i:=i+1;
if g <0 then x1:=w else x0:=w;
y:=abs(x1-x0);
writeln('iterasi ke ',i);
writeln('nilai w ',' ',w:0:4);
writeln('nilai ' ,y:0:4);
writeln();
until y<e;
writeln ('jadi akarnya =
',w:0:9);
end.
////semoga bermanfaat kawan///heheheehhehe,,,salam
Metode-metode lainya akan saya
bagikan lagi don’t worry,,,hehehe
Comments
Post a Comment