31 lines
777 B
Plaintext
31 lines
777 B
Plaintext
MaxDigs%=8
|
|
DIM Humble%(MaxDigs% - 1)
|
|
I%=1
|
|
@%=4
|
|
|
|
PRINT "The first 50 humble numbers:"
|
|
WHILE TRUE
|
|
IF FNIsHumble(I%) THEN
|
|
IF C% < 50 PRINT ;I% " ";
|
|
C%+=1
|
|
S%=LENSTR$I%
|
|
IF S% > MaxDigs% EXIT WHILE
|
|
Humble%(S%-1)+=1
|
|
ENDIF
|
|
I%+=1
|
|
ENDWHILE
|
|
|
|
PRINT ''"Of the first ";C% " humble numbers:"
|
|
FOR I%=0 TO MaxDigs% - 1
|
|
PRINT Humble%(I%) " have ";I% + 1 LEFT$(" digits", I% + 6)
|
|
NEXT
|
|
END
|
|
|
|
DEF FNIsHumble(i%)
|
|
IF i% <= 1 THEN =TRUE
|
|
IF i% MOD 2 == 0 THEN =FNIsHumble(i% / 2)
|
|
IF i% MOD 3 == 0 THEN =FNIsHumble(i% / 3)
|
|
IF i% MOD 5 == 0 THEN =FNIsHumble(i% / 5)
|
|
IF i% MOD 7 == 0 THEN =FNIsHumble(i% / 7)
|
|
=FALSE
|