.......................Author:-SUDIPTA KUMAR PAIK......................
.......................NUMERICAL METHOD.................*/
#include < iostream.h >
#include < math.h >
#include < stdio.h >
#include < conio.h >
main()
{ int i,N;
float fxlr,xu,xl,xr,fxl,fxr,fxu,eq[21][2];
clrscr();
fxl=0.0;
fxu=0.0;
fxr=0.0;
printf("\n Enter [0] to terminate input\n\n");
for(i=0; i<21; i++)
{
printf("\n Enter Co-efficient=");
scanf("%f",&eq[i][0]);
if(eq[i][0]==0)
break;
printf("\n Enter Power=");
scanf("%f",&eq[i][1]);
}
N=i;
printf("\n\n\nf(X)=");
for(i=0; i
printf("+%.2fX%.0f",eq[i][0],eq[i][1]);
ss:
printf("\n\n\n Enter Lower value xl=");
scanf("%f",&xl);
printf("\n Enter Upper value xu=");
scanf("%f",&xu);
for(i=0; i
{ fxl=fxl+eq[i][0]*pow(xl,eq[i][1]);
fxu=fxu+eq[i][0]*pow(xu,eq[i][1]);
}
// fxlr=fxl*fxu;
/*if(fxlr>0)
{ printf("\n Upper Limit & Lower Limit is Not Correct");
goto ss;
} */
if(fxl==0)
goto endxl;
else if(fxu==0)
goto endxu;
xrl:
xr=(xl+xu)/2;
for(i=0; i
{ fxl=fxl+eq[i][0]*pow(xl,eq[i][1]);
fxr=fxr+eq[i][0]*pow(xr,eq[i][1]);
}
fxlr=fxl*fxr;
if(fxlr<0)
{ xu=xr;
fxl=0.0;
fxu=0.0;
fxr=0.0;
goto xrl;
}
else if(fxlr>0)
{ xl=xr;
fxl=0.0;
fxu=0.0;
fxr=0.0;
goto xrl;
}
else if (fxlr<0.0005 && fxlr>-0.0005 )
printf("\n\n\n ROOT=%.2f",xr);
goto end;
endxl:
xr=xl;
printf("\n\n\n ROOT=%.2f",xl);
goto end;
endxu:
xr=xu;
printf("\n\n\n ROOT=%.2f",xu);
/* printf("\n\n\nf(%.2f)=%.2f",xl,fxl);
printf("\n\n\nf(%.2f)=%.2f",xr,fxr); */
end:
for(i=0; i
fxr=fxr+eq[i][0]*pow(xr,eq[i][1]);
printf("\n\nf(%.2f)=%.2f",xr,fxr);
getch();
}
No comments:
Post a Comment