07-29-2003, 03:01 AM
How's this for cramming the codes into as little memory as possible? No arrays (this outta be good for a laugh, at least!)
*peace*
Meg.
Code:
DECLARE FUNCTION GetCode& ()
CLS
SCREEN 11
OPEN "VALID.TXT" FOR INPUT AS #1
FOR i% = 1 TO 20000
INPUT #1, n&
PSET (n& MOD 640, n& \ 640), 15
NEXT i%
CLOSE #1
DO
UserCode& = GetCode&
PRINT UserCode&; "is ";
IF POINT(UserCode& MOD 640, UserCode& \ 640) THEN
PRINT "Valid. "
ELSE
PRINT "Invalid. "
END IF
LOOP
FUNCTION GetCode&
LOCATE 12, 1: PRINT SPC(79);
LOCATE 12, 1: PRINT "Enter Code: ";
Code& = 0
DO
LOCATE 12, 13: PRINT Code&; " "
DO
c$ = INKEY$
LOOP UNTIL c$ <> ""
IF c$ = CHR$(27) THEN SYSTEM
IF c$ = CHR$(13) THEN EXIT DO
IF c$ = CHR$(8) THEN Code& = Code& \ 10
IF c$ >= "0" AND c$ <= "9" THEN
IF Code& <= 9999 THEN Code& = Code& * 10 + VAL(c$)
END IF
LOOP
GetCode& = Code&
END FUNCTION
*peace*
Meg.