Baru

Bahasa Pemrograman C++ - Metode Regula Falsi #1



#include <stdio.h>
#include <conio.h>
#include <math.h>
#define max 100
main()
{
float fa, fb, fc, xa, xb, xc, e, error;
int kondisi=1,i;
mulai:
puts ("Mencari akar persamaan Dengan Metode Regula Falsi");
puts ("\nPersamaan yang akan diselesaikan adalah 3x - cos x + 3x");
printf ("\nMasukkan batas bawah : ");scanf ("%f",&xb);
printf ("\nMasukkan batas atas : ");scanf ("%f",&xa);
printf ("\nMasukkan error : ");scanf ("%f",&e);
puts ("============================================================================");
fb=3*xb-cos(xb)+3*xb;
fa=3*xa-cos(xa)+3*xa;
printf ("\nnilai fungsi pada batas bawah f(%f) = %.4f", xb, fb);
printf ("\nnilai fungsi pada batas atas f(%f) = %.4f", xa, fa);
if (fb*fa>0)
{
printf ("fb * fa = %f ",fa*fb);
puts ("\nTidak ada akar pada selang tersebut!!!");
puts ("\nMasukkan batas atas (xa) dan batas bawah (xb) baru");
goto mulai;
}
else {
puts("\nPemilihan batas atas (xa) dan Batas bawah (xb) tepat");
puts ("Akar diantara xa dan xb");
kondisi = 0;
}
kondisi = 1;
i=1;
puts ("============================================================================");
puts (" i xb xc xa f(xb) f(xc) f(xa) abs(xa-xb) ");
while (kondisi)
{
fb=3*xb-cos(xb)+3*xb;
fa=3*xa-cos(xa)+3*xa;
fc=3*xc-cos(xc)+3*xc;
xc=xa-((fa*(xa-xb))/(fa-fb));
error=fabs(fc);
printf("%3i %5.4f %9.4f %9.4f %9.4f %9.4f %9.4f %9.4f\n", i, xb,xc,xa, fb,fc, fa,error);
if (fb*fc>0)
xb=xc;
else if (fb*fc<0)
xa=xc;
else{
puts ("\nAkar ditemukan");
kondisi=0;
}
if (error<e)
kondisi=0;
i++;
}
puts ("============================================================================");
printf ("\nHasil Akar = %.4f", xc) ;
getche();
}

Semoga bermanfaat.
Diberdayakan oleh Blogger.