CLS
INPUT a$, b$
DO: INPUT p: LOOP UNTIL p > 0 AND p < 11
la = LEN(a$): lb = LEN(b$)
IF la < lb THEN SWAP la, lb: SWAP a$, b$
n = la + 1
DIM a(n), b(n)
FOR i = 1 TO la
  a(i) = VAL(MID$(a$, n - i, 1))
  IF a(i) > p - 1 THEN PRINT "error!": END
NEXT i
FOR i = 1 TO lb
  b(i) = VAL(MID$(b$, lb + 1 - i, 1))
  IF b(i) > p - 1 THEN PRINT "error!": END
NEXT i
FOR i = 1 TO la
  x = a(i) + b(i)
  a(i) = x MOD p
  a(i + 1) = a(i + 1) + x \ p
NEXT i
WHILE a(n) = 0: n = n - 1: WEND
FOR i = n TO 1 STEP -1
  PRINT LTRIM$(STR$(a(i)));
NEXT i
END

变量说明:
a$:第一个加数。
b$:第二个加数。
p:进制。
输入的加数中的数字只能含有0~p-1,否则输出错误信息。比如p=2(2进制),这时只能有0和1。