永发信息网

PHP高手来啊

答案:6  悬赏:0  手机版
解决时间 2021-05-15 09:37
<?php
$sum = 1;
for ($i = 1;$i <=100;$i++){
$sum *= $i;
}
echo "100! = ".$sum;
?>
结果是:
100! = 9.33262154439E+157

没搞不清这个结果是怎么出来地,为什么是这个数
最佳答案
<?php
$sum = 1;
for ($i = 1;$i <=100;$i++){
$sum *= $i;
}
echo "100! = ".$sum;
?>

$sum *= $i注意这个 *=
a *= b是把a*b的值再存到a里边
所以对于$sum也就是
1*1 = 1 = 1!
1*2 = 2 = 2!
2*3 = 6 = 3!
6*4 = 24 = 4!
24*5 = 120 = 5!
....
$sum = 100!

!是阶乘,4! = 4*3*2*1
n! = (n-1) * (n-2) *...* 2 * 1
知道了吧,就是求100的阶乘的计算,只不过这个数字最后很大,所以存为浮点类型了
9.33262154439E+157 ≈ 9.33 * 10^157
全部回答

数值过大,导致溢出。整形值最大好像是20亿。php里面没有long类型的数值,

所有会自动转换为float类型的。而flat类型也不足以支持你那么大的数据。

浮点数而已

没错啊,数字大到一定成都 php自动用科学计数法显示出来 怎么了?

没错啊,结果就是这么多啊,只不过是采用了科学计数法。就是9.33262154439乘以10的157次方。
<?php $sum = 1;           $sum开始=1

for ($i = 1;$i <=100;$i++)这里是设置$i=1开始,每次加1,一直加到100的循环

{$sum *= $i;}    循环100次里,每次都让$sum=$sum乘以$i  就是说第1次是1*1,第2次,1*2,第3次2*3

echo "100! = ".$sum;  

?>

说白了就是求100的阶乘

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎么隐藏非消费的那些图标??
我不是黄钻啊,什么时候才能玩牧场啊?
当你生病的时候,心爱的人不在你身边,你是什
鬼是否就是灵魂?
一个好听又好看的CF名字
求2坐标中心点坐标
DNF44级是大家死亡塔能闯到多少层(外挂流就
怎样才令人重视自己
在你失意时,有个异性朋友在你身边劝解你,他
三夹水利股市的涨跌
问道的会员升级怎样计算的
第一届超女亚军“王缇”到那里去了,怎么像人
炫舞发型草莓布丁配什么YY好看
谁能帮我打火女技巧达到百分这70
音量图标不能显示在桌面上?
推荐资讯
QQ空间发表日志怎样让别人不能评论?
为什么QQ餐厅的金币不和QQ农场的金币和在一起
在一幅比例尺是1:4000000的地图上,量得甲、
梦幻西游89全力PS
穆棱市牡丹江华康老年超市地址是什么,有没有
脸被撞了怎么消肿,急!!!
FO,是什么?
五常市哈尔滨香想响涮肚王(五常总店)这个地址
请问我这是不是甲流症状。急!
厨房是否需要安装插座、灯?
团队共同进步的诗句,形容两人要共同进步的诗
如果安以轩演仙3中的唐雪见,效果会怎样
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?