5748096 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$ cat -n begin.bas
   1: $compile exe "BEGIN.EXE"
   2: $OPTIMIZE SPEED
   3: color 15,1:cls
   4: s$ = command$
   5: IF s$ = "aLPHa.oMeGa" THEN TeachrMde
   6: INPUT "Filename"; f$
   7: OPEN f$ FOR INPUT AS #1
   8: 13 DO
   9: LINE INPUT #1, d$
  10: s$ = DES$(d$)
  11: IF s$ = "-*-*-*-*-" THEN GOTO 134
  12: PRINT s$
  13: 134 LOOP UNTIL s$ = "-*-*-*-*-"
  14: line INPUT ">"; ff$
  15: LINE INPUT #1, ans$
  16: answ$ = DES$(ans$)
  17: IF MID$(answ$, 1, 1) = "!" THEN  ELSE ff$ = UCASE$(ff$): answ$ = UCASE$(answ$)
  18: IF RTRIM$(LTRIM$(ff$)) = RTRIM$(LTRIM$(answ$)) THEN cc = cc + 1
  19: tat = tat + 1
  20: IF EOF(1) THEN CLOSE #1: GOTO 213
  21: GOTO 13
  22: 213 CLS : PRINT "You got"; cc; "correct out of"; tat; "questions"
  23: PRINT "Your score is"; (cc / tat) * 100
  24: END
  25: 
  26: FUNCTION DES$ (ln$)
  27: q = ASC(RIGHT$(ln$, 1))
  28: ln$ = LEFT$(ln$, LEN(ln$) - 1)
  29: FOR m = 1 TO LEN(ln$)
  30: tt$ = tt$ + CHR$(ASC(MID$(ln$, m, 1)) - q)
  31: NEXT m
  32: DES$ = tt$
  33: END FUNCTION
  34: 
  35: FUNCTION SCRMBL$ (ln$)
  36: FOR o = 1 TO LEN(ln$)
  37: c = ASC(MID$(ln$, o, 1))
  38: IF c = 255 THEN c = 32: MID$(ln$, o, 1) = " "
  39: IF c > mx THEN mx = c
  40: 'PRINT c; b; mx
  41: b = c
  42: NEXT o
  43: RANDOMIZE TIMER
  44: q = INT(RND * (254 - mx)) + 1
  45: FOR m = 1 TO LEN(ln$)
  46: tt$ = tt$ + CHR$(ASC(MID$(ln$, m, 1)) + q)
  47: NEXT m
  48: SCRMBL$ = tt$ + CHR$(q)
  49: END FUNCTION
  50: 
  51: SUB TeachrMde
  52: INPUT "Enter filename"; f$
  53: OPEN f$ FOR OUTPUT AS #1
  54: 10 PRINT "Type your question and press enter on a blank line when finished with your "
  55: print "question or type 'DONE' on a blank line when your finished"
  56: DO
  57: LINE INPUT a$
  58: IF RTRIM$(LTRIM$(UCASE$(a$))) = "DONE" THEN CLOSE 1: END
  59: IF RTRIM$(LTRIM$(UCASE$(a$))) = "" THEN GOTO 32
  60: PRINT #1, SCRMBL$(a$)
  61: 32 LOOP UNTIL a$ = ""
  62: PRINT "Type the answer"
  63: LINE INPUT f$
  64: PRINT #1, SCRMBL$("-*-*-*-*-")
  65: PRINT "Does case matter (y/n)?";
  66: 2 d$ = INPUT$(1)
  67: IF UCASE$(d$) = UCASE$("y") THEN PRINT "Y": f$ = "$" + f$
  68: IF UCASE$(d$) = "N" OR UCASE$(d$) = "Y" THEN  ELSE GOTO 2
  69: PRINT #1, SCRMBL$(f$)
  70: GOTO 10
  71: END SUB
  72: 
5748097 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$

Click here to go back to the directory listing.
Click here to download this file.
last modified: 2000-05-09 21:00:06