Professional Documents
Culture Documents
Komnum Neh
Komnum Neh
else
fprintf("Iterasi dihentikan karena eror ea lebih kecil dari 0.01.\n");
endif
fprintf("Nilai x yang didapat adalah %f\n\n\n", xakhir);
disp("~~~~~~~~~~~~~~~~*~~~~~~~~~~~~~~~~");
disp("~~~Dengan Metode False Positio~~~");
disp("~~~~~~~~~~~~~~~~*~~~~~~~~~~~~~~~~");
fprintf("\n");
xl=0.500000; xu=1.500000; xr1=0; i=1; ea=100;
while i<=10 && ea>=0.01
fprintf("percobaan ke-%i\n", i);
fl=fungsi(7,xl);
fu=fungsi(7,xu);
xr=(xl*(fu-18)-xu*(fl-18))/(fu-fl);
ea=abs((xr-xr1)/xr*100);
fr=fungsi(7,xr);
fprintf("x1=%f\n", xl);
fprintf("xu=%f\n", xu);
fprintf("xr=%f\n", xr);
fprintf("fl=%f\n", fl);
fprintf("fu=%f\n", fu);
fprintf("fr=%f\n", fr);
fprintf("ea=%f\n\n", ea);
xr1=xr;
if abs(fr-fl)<abs(fu-fr)
xl=xr;
else
xu=xr;
endif
i++;
endwhile
el=abs(y-fl);
eu=abs(y-fu);
er=abs(y-fr);
if el<eu && el<er
xakhir=xl;
elseif eu<el && eu<er
xakhir=xu;
else
xakhir=xr;
endif
if i==10
fprintf("Iterasi dihentikan karena telah diulang sebanyak 10 kali.\n");
else
fprintf("Iterasi dihentikan karena eror ea lebih kecil dari 0.01.\n");
endif
fprintf("Nilai x yang didapat adalah %f\n\n\n", xakhir);
disp("~~~~~~~~~~~~~~~~*~~~~~~~~~~~~~~~~");
disp("~~~~~~~Dengan Metode Secant~~~~~~");
disp("~~~~~~~~~~~~~~~~*~~~~~~~~~~~~~~~~");
fprintf("\n");
xl=0.500000; xu=1.500000,; xr1=0; i=1; ea=100;
while i<=10 && ea>=0.001
fprintf("percobaan ke-%i\n", i);
fl=fungsi(7,xl);
fu=fungsi(7,xu);
xr=(xl*(fu-18)-xu*(fl-18))/(fu-fl);
ea=abs((xr-xr1)/xr*100);
fr=fungsi(7,xr);
fprintf("x%i=%f\n", i-1, xl);
fprintf("x%i=%f\n", i, xu);
fprintf("x%i=%f\n", i+1, xr);
fprintf("f%i=%f\n", i-1, fl);
fprintf("f%i=%f\n", i, fu);
fprintf("f%i=%f\n", i+1, fr);
fprintf("ea=%f\n\n", ea);
xr1=xr;
xl=xu; xu=xr;
i++;
endwhile
el=abs(y-fl);
eu=abs(y-fu);
er=abs(y-fr);
if el<eu && el<er
xakhir=xl;
elseif eu<el && eu<er
xakhir=xu;
else
xakhir=xr;
endif
if i==10
xakhir=x1;
elseif e2<e1 && e2<e3
xakhir=x2;
else
xakhir=x3;
endif
if i==10
fprintf("Iterasi dihentikan karena telah diulang sebanyak 10 kali.\n");
else
fprintf("Iterasi dihentikan karena eror ea lebih kecil dari 0.01.\n");
endif
fprintf("Nilai x yang didapat adalah %f\n\n\n", xakhir);