/**/ #include #include #include"frac.h" #define N 100 /*パイこね変換デモ*/ int main(int argc,char *argv[]){ int i,n; double f; FRAC c; if(argc>3){ fprintf(stderr,"usage:%s initValue timess",argv[0]); return 0; } n = atoi(argv[2]);/*回数*/ f = atof(argv[1]);/*初期値*/ if(f<= 0 || f>=1){/*初期値の確認*/ fprintf(stderr,"initValue is range is greater than 0 and less than 1."); return 0; } c = *double2Frac( f );/*分数に変換*/ showFrac(&c); printf("\t%f\n",frac2Double(&c)); for(i=0;i 0.5){ c = multiFrac( &c,int2Frac(2) ); c = difFrac( int2Frac(2),&c ); }else{ c = multiFrac( &c,int2Frac(2) ); } showFrac(&c); printf("\t%f\n",frac2Double(&c)); } return 0; }