标签:数学
地址:点击打开链接
代码:
#include<cstdio>
using namespace std;
double abss(double x)
{
return x>0.0?x:-x;
}
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
double x;
scanf("%lf",&x);
if(x==0.0)
{
printf("0/1\n");
continue;
}
double z;
double det=111111;
int j;
int k;
for(int i=1;i<=1000;i++)
{
z=x*i;
int zz=(int)(z+1);
int zzz=(int)(z);
if(abss(zz*1.0/i-x)<det)
{
det=abss(zz*1.0/i-x);
j=i;
k=zz;
}
if(abss(zzz*1.0/i-x)<det)
{
det=abss(zzz*1.0/i-x);
j=i;
k=zzz;
}
}
printf("%d/%d\n",k,j);
}
return 0;
}
标签:数学
原文地址:http://blog.csdn.net/xky1306102chenhong/article/details/46492635