Anda di halaman 1dari 5

#include "stdio.

h"
#include "math.h"
#include "stdlib.h"

float lab06_pers01(float C);


void lab06_biseksi(float XL,float XU,float *C);

void main()
{
float xl,xu,c;
float fxl,fxu;

//Set nilai bawah(l) xl dan nilai atas (u) xu


xl=12;
xu=16;

//Hitung nilai fxl dan fxu


fxl=lab06_pers01(xl);
fxu=lab06_pers01(xu);

//Cetak nilai fxl dan fxu


printf("xl = %f\t fxl = %f\n",xl,fxl);
printf("xu = %f\t fxu = %f\n",xu,fxu);

//Test sub program biseksi


printf("\n\n");
lab06_biseksi(xl,xu,&c);

//Cetak nilai akar C dengan menggunakan metode biseksi


printf("Hasil perhitungan akar: \n");
printf("c = %f\n",c);

}
void lab06_biseksi(float XL,float XU,float *C)
{
float EA,ES,XR;
float FXL,FXR,XR_BARU;
int I,MAX_I;

//Set maksimum iterasi


MAX_I=50;

//Set batas minumun error


ES=0.0001;

//Hitung nilai tengah XR


XR=(XL+XU)/2;

//Untuk menghindari error, set EA ke suatu nilai besar


EA=10;

//Start loop while


I=1;
while((EA>ES)&&(I<MAX_I))
{
printf("I = %d\t XR = %f\t EA = %f\n",I,XR,EA);
FXL=lab06_pers01(XL);
FXR=lab06_pers01(XR);

//Set nilai Xl dan Xu yang baru dengan menggunakan aturan Biseksi


if(FXL*FXR>0)
{
XL=XR;
}
else
{
XU=XR;
}

//Hitung nilai tengah yang baru


XR_BARU=(XL+XU)/2;

//Hitung nilai EA yang baru


EA=fabs((XR_BARU-XR)/XR_BARU);

//Set nilai XR_BARU ke nilai XR


XR=XR_BARU;

//Update counter
I=I+1;

}
//Set output
*C=XR;
}

float lab06_pers01(float C)
{
float G,M,T,V;
float FC;
//Set parameter
G=9.8;
M=68.1;
V=40;
T=10;

//Hitung persamaan
FC=G*M/C*(1-exp(-C/M*T))-V;
return(FC);
}

history

vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
./wildan01
cp lab06_versi01.c lab06_versi02.c
ls
vi lab06_versi01.c
vi lab06_versi02.c
emacs
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
emacs
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
./wildan01
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
gcc lab06_versi02.c -o wildan02 -lm
./wildan02
vi lab06_versi02.c
vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
vi lab06_versi01.c
gcc lab06_versi01.c -o wildan01 -lm
./wildan01
clear
./wildan01
./wildan02
clear
./wildan02
emacs

Anda mungkin juga menyukai