主题:[讨论]有什么好方法吗?一道小学奥赛题
tujunqiang
[专家分:150] 发布于 2007-11-07 23:34:00
将键盘输入的字符串中所有的十进制数找出来,并求它们的和。
输入: APPLE 25, PEAR 125。
屏幕输出:25+125=150
输入: THIS IS A BOOK。
屏幕输出:0
回复列表 (共1个回复)
沙发
tujunqiang [专家分:150] 发布于 2007-11-08 00:21:00
CLS
INPUT "n$="; n$
l = LEN(n$)
DIM a(100)
DO
x$ = n$
GOSUB 200
y$ = n$
GOSUB 300
i = i + 1: a(i) = x: s = s + x
LOOP UNTIL LEN(n$) = 0
IF s <> 0 THEN
PRINT a(1);
FOR k = 2 TO i
PRINT "+"; a(k);
NEXT k
PRINT "="; s
ELSE
PRINT "0"
END IF
END
200
DO WHILE (LEFT$(x$, 1) < "0" OR LEFT$(x$, 1) > "9") AND l >= 1
x$ = RIGHT$(x$, l - 1)
l = l - 1
LOOP
n$ = x$
RETURN
300 s$ = ""
DO WHILE LEFT$(y$, 1) >= "0" AND LEFT$(y$, 1) <= "9"
s$ = s$ + LEFT$(y$, 1)
y$ = RIGHT$(y$, l - 1)
l = l - 1
LOOP
x = VAL(s$)
n$ = y$
RETURN
我来回复