#include <stdio.h> #define EPS 0.0000001 void main(int argc, char *argv[]) { float a,b,what,num,den,ratio; int c,d,e,f,mult; if (argc ==1) { printf("SPECIFY INPUT!\n"); exit(1); } sscanf(argv[1],"%f",&what); if (what<0.0) { printf("SPECIFY POSITIVE INPUT!\n"); exit(1); } a=what; b=1.0; c=1; d=0; e=0; f=1; for(;;) { mult=a/b; a-=mult*b; c-=mult*d; e-=mult*f; num=-e; den=c; ratio=num/den; printf("%d/%d=%f\n",-e, c, ratio); if(what-ratio<EPS) break; mult=b/a; b-=mult*a; d-=mult*c; f-=mult*e; num=f; den=-d; ratio=num/den; printf("%d/%d=%f\n",f, -d, ratio); if(ratio-what<EPS) break; } }