这是C语言编程题:

来源:百度知道 编辑:UC知道 时间:2024/07/04 02:10:23
祖冲之所给出的密率 是最优美的 的近似分数, 分子分母如此简单的近似分数却精确到了小数点后第6位. 比密率更精确的近似分数, 分子分母都至少有5位数字. 现在, 你的任务是编写一个程序找出比密率更精确的, 分母最小的 的近似分数.
祖冲之所给出的密率355/113是最优美的 (数学里的派)数, 分子分母如此简单的近似分数却精确到了小数点后第6位. 比密率更精确的近似分数, 分子分母都至少有5位数字. 现在, 你的任务是编写一个程序找出比密率更精确的, 分母最小的 (数学里的派)近似分数 .

Pai=3.14159265=3+0.14159265=3+1/(10.4159265)
=3+1/(7.06251348)=3+1/(7+0.6251348)
=3+1/(7+1/(1/0.62151348)
就这样循环下去,通分得到了要求的分子分母.

伪码
float x,y,flPI=3.14159265;
for (INT i=10000;TRUE;i++)
{
x=flPI*(float)i;
y=x-(INT)x;
if (y==0)
{
x就是最小的分母,i就是最小的分子
break;
}
}

祖冲之所给出的密率 是最优美的 的近似分数, 分子分母如此简单的近似分数却精确到了小数点后第6位. 比密率更精确的近似分数, 分子分母都至少有5位数字. 现在, 你的任务是编写一个程序找出比密率更精确的, 分母最小的 的近似分数.

你连这都不会