主题:一个“!”的运算
huiyu789
[专家分:0] 发布于 2005-10-02 21:41:00
朋友,请问 1!+2!+……100!=????????
如何调试这个程序???
谢谢··
回复列表 (共17个回复)
沙发
smoon [专家分:30] 发布于 2005-10-02 22:54:00
在TP中写下:
program jiecheng;
var
i,x:longint;
begin
x:=1
for i:=2 to 100 do
x:=i*x;
writeln(x);
end.
再按下CTRL+F9
结果是
......
9.3326215443944152681699238856267e+157!!!
板凳
阿Ben [专家分:2200] 发布于 2005-10-03 12:33:00
To 1 楼
这程序是出错的。
因为 x:longint;
所以不可能有
x=9.3326215443944152681699238856267e+157
3 楼
LZR2005 [专家分:110] 发布于 2005-10-03 15:55:00
var
i:integer;
a:array[1..100]of extended;
begin
a[1]:=1;
for i:=2 to 100 do
a[i]:=a[i]*i;
writeln(a[100]);
end.
4 楼
口口and枕头 [专家分:1550] 发布于 2005-10-03 19:09:00
高精`~
5 楼
huiyu789 [专家分:0] 发布于 2005-10-03 20:02:00
到底是谁的对啊???
6 楼
口口and枕头 [专家分:1550] 发布于 2005-10-03 21:03:00
反正1楼的不对
3楼的我没看懂~
7 楼
阿Ben [专家分:2200] 发布于 2005-10-03 21:05:00
我相信我对,但程序可能会超时或溢出。
{$N+}
var
i:integer;
a:array[1..100]of extended;
x:extended;
begin
a[1]:=1;
for i:=2 to 100 do
a[i]:=a[i]*i;
x:=0;
for i:=1 to 100 do
x:=x+a[i];
writeln(x);
end.
8 楼
口口and枕头 [专家分:1550] 发布于 2005-10-03 21:24:00
说个屁呀~~
9 楼
阿Ben [专家分:2200] 发布于 2005-10-04 17:16:00
8楼的话我看不懂啊。
10 楼
口口and枕头 [专家分:1550] 发布于 2005-10-05 13:09:00
"我相信我对,但程序可能会超时或溢出。"
费话
我来回复