主题:求100的阶层
zjcxzhw
[专家分:0] 发布于 2005-10-26 18:59:00
用最简单的方法
回复列表 (共11个回复)
沙发
zqnhlm [专家分:780] 发布于 2005-10-29 17:28:00
CLS
DIM n AS INTEGER
DIM i AS INTEGER
DIM j AS INTEGER
DIM p AS INTEGER
DIM q AS INTEGER
DIM m AS INTEGER
DIM a(1 TO 20000) AS INTEGER
o: INPUT n
a(1) = 1: m = 1
FOR i = 1 TO n
p = 0
FOR j = 1 TO m
a(j) = a(j) * i + p
p = a(j) \ 10
a(j) = a(j) MOD 10
NEXT j
DO WHILE p <> 0
m = m + 1
a(m) = p MOD 10
p = p \ 10
LOOP
NEXT i
FOR i = m TO 1 STEP -1
PRINT LTRIM$(RTRIM$(STR$(a(i))));
NEXT i
END
忘光了
板凳
moz [专家分:37620] 发布于 2005-10-30 12:21:00
s#=1:for i=1 to 100:s#=s#*i:next:?s#
3 楼
星月神ming [专家分:180] 发布于 2007-01-20 22:09:00
t=1
for i=1 to 100
t=t*i
next i
?t
4 楼
cyj04 [专家分:0] 发布于 2007-01-24 08:27:00
我用循环语句编的,见笑了
i=3
s=1
do
s=s*i
i=i+1
loop until i>100
print s
end
5 楼
强强 [专家分:4740] 发布于 2007-01-31 20:20:00
100的阶乘很大吧,直接算能表示出来吗
6 楼
qiujie1142 [专家分:0] 发布于 2007-03-25 01:46:00
s= 1
for i =1 to 100
s=s*i
next i
print s
这个简单吧
包你正确
7 楼
Lovely哆啦 [专家分:1360] 发布于 2007-03-26 11:07:00
1000的阶乘应该用高精度才对,看我的
CLS
B$="1"
DIM A(10000):B(10000)
FOR I=1 TO 1000
A$=LTRIM$(STR$(I))
LA=LEN(A$):LB=LEN(B$):LC=LA+LB
FOR A=1 TO LA:A(A)=VAL(MID$(A$,LA+1-A,1)):NEXT A
FOR A=1 TO LB:B(A)=VAL(MID$(A$,LB+1-A,1)):NEXT A
B$=""
FOR A=1 TO LA:FOR B=1 TO LB
X=A(A)*B(B):W=A+B-1
C(W)=C(W)+X MO 10
C(W+1)=C(W+1)+X\10
NEXT J,I
WHILE C(LC)=0:LC=LC-1:WEND
FOR A=LC TO 1 STEP -1:B$=B$+LTRIM$(STR$(B(A))):C(A)=0:NEXT A
NEXT I
? B$
END
8 楼
蓝莎菲莹 [专家分:370] 发布于 2007-03-29 18:59:00
CLS
DIM n AS INTEGER
DIM i AS INTEGER
DIM j AS INTEGER
DIM p AS INTEGER
DIM q AS INTEGER
DIM m AS INTEGER
DIM a(1 TO 20000) AS INTEGER
o: INPUT n
a(1) = 1: m = 1
FOR i = 1 TO n
p = 0
FOR j = 1 TO m
a(j) = a(j) * i + p
p = a(j) \ 10
a(j) = a(j) MOD 10
NEXT j
DO WHILE p <> 0
m = m + 1
a(m) = p MOD 10
p = p \ 10
LOOP
NEXT i
FOR i = m TO 1 STEP -1
PRINT LTRIM$(RTRIM$(STR$(a(i))));
NEXT i
END
9 楼
蓝莎菲莹 [专家分:370] 发布于 2007-04-01 16:27:00
CLS
B$="1"
DIM A(10000):B(10000)
FOR I=1 TO 1000
A$=LTRIM$(STR$(I))
LA=LEN(A$):LB=LEN(B$):LC=LA+LB
FOR A=1 TO LA:A(A)=VAL(MID$(A$,LA+1-A,1)):NEXT A
FOR A=1 TO LB:B(A)=VAL(MID$(A$,LB+1-A,1)):NEXT A
B$=""
FOR A=1 TO LA:FOR B=1 TO LB
X=A(A)*B(B):W=A+B-1
C(W)=C(W)+X MO 10
C(W+1)=C(W+1)+X\10
NEXT J,I
WHILE C(LC)=0:LC=LC-1:WEND
FOR A=LC TO 1 STEP -1:B$=B$+LTRIM$(STR$(B(A))):C(A)=0:NEXT A
NEXT I
? B$
END
10 楼
蓝莎菲莹 [专家分:370] 发布于 2007-04-01 16:28:00
CLS
B$="1"
DIM A(10000):B(10000)
FOR I=1 TO 1000
A$=LTRIM$(STR$(I))
LA=LEN(A$):LB=LEN(B$):LC=LA+LB
FOR A=1 TO LA:A(A)=VAL(MID$(A$,LA+1-A,1)):NEXT A
FOR A=1 TO LB:B(A)=VAL(MID$(A$,LB+1-A,1)):NEXT A
B$=""
FOR A=1 TO LA:FOR B=1 TO LB
X=A(A)*B(B):W=A+B-1
C(W)=C(W)+X MO 10
C(W+1)=C(W+1)+X\10
NEXT J,I
WHILE C(LC)=0:LC=LC-1:WEND
FOR A=LC TO 1 STEP -1:B$=B$+LTRIM$(STR$(B(A))):C(A)=0:NEXT A
NEXT I
? B$
END
我来回复