求一个简单的问题,在php中,用for循环求下列问题

初始值是1/2。然后求1/2+2/3+3/4+4/5+……的算法。到10就可以了。主要是想明白这个算法是怎么写的。另外问一句,最后输出的时候怎么让它输出为分数。谢谢。... 初始值是1/2。然后求1/2+2/3+3/4+4/5+……的算法。到10就可以了。主要是想明白这个算法是怎么写的。另外问一句,最后输出的时候怎么让它输出为分数。谢谢。 展开
 我来答
不二进制
2012-12-26 · TA获得超过749个赞
知道小有建树答主
回答量:441
采纳率:50%
帮助的人:321万
展开全部
<?php
//php是不能直接输出分数的,直接输出的话就如下
$sum=0;
for($i=1;$i<=10;$i++){
$sum+=($i/($i+1));
}
echo $sum;
echo "<br>";

//如果需求分子输出,则自己模拟整个运算过程
$son=0;//分子
$mum=1;//分母
//求分子
for($i=2;$i<=11;$i++){
$mum*=$i;
}
//求分母
for($i=1;$i<=10;$i++){
$son+=$i*$mum/($i+1);
}
//辗转求余发求分子分母的最大公约数
if($son>$mum){
$b=$son;
$r=$mum;
}else{
$b=$mum;
$r=$son;
}
while($r){
$a=$b;
$b=$r;
$r=$a%$b;
}//$b就是最大公约数
echo $son/$b."/".$mum/$b;
?>
更多追问追答
追问
$sum+=($i/($i+1));。请问这个中间的“=”如何解释,不太明白这个等号起到的作用呢。
追答
$a+=$b;
相当于
$a=$a+$b;
是累加的意思。

类似的还有 -= *= /= %= 等等
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式