回 帖 发 新 帖 刷新版面

主题:求N!(答对30分)

求N!(N!=1*2*3*4*……*(N-2)*(N-1)*N)
例如:输入:N=11
     输出:11!= 39916800

回复列表 (共53个回复)

沙发

INPUT "n="; n
mul = 1
FOR i = 1 TO n
  mul = mul * i
NEXT i
PRINT n; CHR$(29); "! ="; mul       'chr$(29) is backspace
END

板凳

#include<stdio.h>
    void main()
{
    int num,sum=1,i;
    printf("请输入整数:");
    scanf("%d",&num);
    for(i=num;i>0;i--) sum*=i;
    printf("%d\n",sum);
}
    /*递归可以,怕你看不懂,就不写了*/

3 楼

俺是新手

4 楼


cls
let x=1
input "n=";n
for y=1 to n
let x=x*y
next y
print x
end

5 楼

CLS
INPUT N
T = 1
FOR I = 1 TO N
T = T * I
NEXT I
PRINT T
END

6 楼

可以口算吗?

7 楼

input n
 s=1
for i= 1 to n 
   s=s*n
next i 
print "n!=";s
end

8 楼

各位大哥哥,是[size=4][color=FF0000]高精度[/color][/size]

9 楼

[quote]input&nbsp;n
&nbsp;s=1
'for&nbsp;i=&nbsp;1&nbsp;to&nbsp;n&nbsp;'[em20]
&nbsp;&nbsp;&nbsp;s=s*n
next&nbsp;i&nbsp;
print&nbsp;"n!=";s
end[/quote]
  
可以用 for i=2 to n

10 楼

我记得我做过有用字符串做运算的例子的.
那可以扩展到很长很长.
但速度会比较慢.

如果实在需要这些数的话,
建议使用EXCEL去计算,
很简单的
61的阶乘是507580213877225后面有75个0

我来回复

您尚未登录,请登录后再回复。点此登录或注册