10 DEFINT A-Z 20 DIM F(32) 30 FOR I=2 TO 9999 40 F=0: N=I 50 IF N>0 AND (N AND 1)=0 THEN N=N\2: F(F)=2: F=F+1: GOTO 50 60 P=3 70 GOTO 100 80 IF N MOD P=0 THEN N=N\P: F(F)=P: F=F+1: GOTO 80 90 P=P+2 100 IF P<=N GOTO 80 110 IF F<=1 GOTO 190 120 N=I: S=0 130 IF N>0 THEN S=S+N MOD 10: N=N\10: GOTO 130 140 FOR J=0 TO F-1 150 N=F(J) 160 IF N>0 THEN S=S-N MOD 10: N=N\10: GOTO 160 170 NEXT 180 IF S=0 THEN PRINT USING " ####";I;: C=C+1 190 NEXT 200 PRINT 210 PRINT "Found";C;"Smith numbers."