RosettaCodeData/Task/Self-describing-numbers/BBC-BASIC/self-describing-numbers.basic
2023-07-01 13:44:08 -04:00

16 lines
316 B
Text

FOR N = 1 TO 5E7
IF FNselfdescribing(N) PRINT N
NEXT
END
DEF FNselfdescribing(N%)
LOCAL D%(), I%, L%, O%
DIM D%(9)
O% = N%
L% = LOG(N%)
WHILE N%
I% = N% MOD 10
D%(I%) += 10^(L%-I%)
N% DIV=10
ENDWHILE
= O% = SUM(D%())