28 lines
606 B
Text
28 lines
606 B
Text
ct = 0
|
|
n = 0
|
|
DO
|
|
n = n + 1
|
|
IF HappyN(n, sqrInt$) = 1 THEN
|
|
ct = ct + 1
|
|
PRINT ct, n
|
|
END IF
|
|
LOOP UNTIL ct = 8
|
|
END
|
|
|
|
FUNCTION HappyN(n, sqrInts$)
|
|
n$ = Str$(n)
|
|
sqrInts = 0
|
|
FOR i = 1 TO Len(n$)
|
|
sqrInts = sqrInts + Val(Mid$(n$, i, 1)) ^ 2
|
|
NEXT i
|
|
IF sqrInts = 1 THEN
|
|
HappyN = 1
|
|
EXIT FUNCTION
|
|
END IF
|
|
IF Instr(sqrInts$, ":";Str$(sqrInts);":") > 0 THEN
|
|
HappyN = 0
|
|
EXIT FUNCTION
|
|
END IF
|
|
sqrInts$ = sqrInts$ + Str$(sqrInts) + ":"
|
|
HappyN = HappyN(sqrInts, sqrInts$)
|
|
END FUNCTION
|