berikut adalah Source Code regulasi falsi menggunakan CPP
#include
#include
float b_ats, c, b_bwh, f_a, f_c, f_b,tol_error;
int iterasi_max;
char back;
float f(float x)
{
return (1-0.61*x)/x;
}
void main()
{
int i;
float e;
printf(" METODE REGULAFALSI\n");
do
{
printf("\n Input Nilai Batas bawah : ");
scanf("%f",&b_bwh);
printf(" Input Nilai Batas atas : ");
scanf("%f",&b_ats);
printf(" Input Nilai Toleransi : ");
scanf("%f",&tol_error);
printf(" Jumlah Iterasi Maksimum : ");
scanf("%d",&iterasi_max);
i=0;
f_a=f(b_ats);
f_b=f(b_bwh);
if(f_a*f_b>0)printf(" f(a) x f(b)>0\n");
else
{
printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
printf(" i a b f(a) f(b) c f(c) epsilon\n");
printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
do
{
for(i=0;i<=iterasi_max;i++) { c=b_ats-((f_a/(f_b-f_a))*(b_bwh-b_ats)); f_c=f(c); e=fabs(b_ats-b_bwh); printf("%3d %8.5f %8.5f %8.5f %8.5f %8.5f %8.5f %8.5f\n", i,b_ats,b_bwh,f_a,f_b,c,f_c,e); if(f_a*f_c <=0) {b_bwh=c; f_b=f_c;} else {b_ats=c; f_a=f_c; } } } while(i<=iterasi_max && e>tol_error);
printf(" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if(i<=iterasi_max)
{
printf("\n Nilai Toleransi terpenuhi\n");
printf(" Maka, Hasil Akhir=%g\n",c);
}
else printf(" Nilai Toleransi tidak terpenuhi\n");
}
printf(" -Azizul Hakim Prabowo-");
printf("\n*******************************************
printf(" Ingin Melakukan Perhitungan kembali (Y/T) ? ");
fflush(stdin);
scanf("%s",&back);
printf("********************************************
}
while(back=='Y'||back=='y');
}
Tidak ada komentar:
Posting Komentar