主题:来就送分!
wangyunchaoPIG
[专家分:130] 发布于 2007-05-01 16:49:00
求高精度加、减、乘、除、乘方、阶乘(附解释!)
做出来得20分,好,得30分(分6各帖子,每个20/30分)
回复列表 (共11个回复)
11 楼
wzc1996 [专家分:1680] 发布于 2007-05-01 18:15:00
乘法!
CLS
INPUT a$, b$
la = LEN(a$): lb = LEN(b$)
DIM a(la), b(lb), d(la, lb), k(la + lb)
FOR i = 1 TO la: a(i) = VAL(MID$(a$, i, 1)): NEXT
FOR i = 1 TO lb: b(i) = VAL(MID$(b$, i, 1)): NEXT
FOR i = 1 TO la
FOR j = 1 TO lb
d(i, j) = a(i) * a(j)
NEXT: NEXT
FOR i = 1 TO la
FOR j = 1 TO lb
k(i + j) = k(i + j) + d(i, j): NEXT: NEXT
FOR i = la + lb TO 2 STEP -1
IF k(i) >= 10 THEN k(i - 1) = k(i - 1) + k(i) \ 10: k(i) = k(i) MOD 10:
NEXT
PRINT a$; "*"; b$; "="; :
FOR i = 1 TO la + lb: IF k(1) = 0 THEN 10: PRINT k(i);
NEXT:
10 FOR i = 2 TO la + lb: PRINT k(i);
NEXT
说好给分!
[em9]
我来回复