#include #include #include int a1,a2,a3; int x,y,z; calcini() { a1=10*(*x)+10*(*y)+10*(*z); a2=2*(*x)+3*(*y)+4*(*z); a3=*x+10*(*y)+20*(*z); } float calc_iter(float *x,float *y,float *z) { *x=(a1-(10*(*y))-(10*(*z)))/10; *y=(a2-(2*(*x))-(4*(*z)))/3; *z=(a3-(*x+(10*(*y))))/20; } float largest(float ex,float ey, float ez) { if(ex==ey==ez) return(ex); else { if((ex==ey)&&(ez>ex)) return(ez); else return(ex); if((ey==ez)&&(ex>ey)) return(ex); else return(ey); if((ex==ez)&&(ey>ex)) return(ey); else return(ex); if(ex!=ey&&ey!=ez&&ez!=ex) { if((ex>ey)&&(ex>ez)) return(ex); if((ey>ex)&&(ey>ez)) return(ey); if((ez>ex)&&(ez>ey)) return(ez); } } } void main() { float calcini(float *, float *, float *); float calc_iter(float *, float *, float *); int i; float x,y,z; float xo,yo,zo,ex,ey,ez,large; clrscr(); printf("\nEnter initializer values for x,y,z: "); scanf("%f %f %f",&x,&y,&z); calcini(&x,&y,&z); for(i=0;i<1000;i++) { xo=x; yo=y; zo=z; calc_iter(&x,&y,&z); ex=fabs(xo-x); ey=fabs(yo-y); ez=fabs(zo-z); large=largest(ex,ey,ez); if(large<0.01) break; } printf("\nx=%f, y=%f, z=%f",x,y,z); }