home *** CD-ROM | disk | FTP | other *** search
/ Generous Efforts of Many / gemcd.zip / GEM.CD.B.po / GAMES:BASIC.4 / LOTTO.PICK.bas next >
BASIC Source File  |  2010-05-14  |  3KB  |  76 lines

  1. 10  REM     ************************************************
  2. 20  REM     *** RANDOM LOTTO 6/40 - 6/44 REVISED 2/19/86 ***
  3. 30  REM     *********** FOR THE APPLE // COMPUTER **********
  4. 40  REM     **** BY JIM DENIKE   LSJ- ACCESS  482-8144 *****
  5. 50  REM     ************************************************
  6. 60  REM 
  7. 70  CLEAR : DIM C(50):D$ =  CHR$(4)
  8. 80  POKE  -16368,0:X1 =  PEEK( -16384):R1 =  PEEK(78):R2 =  PEEK(79): POKE 204,R1: POKE 205,R2
  9. 85 DD$ = "": HOME : VTAB 4: HTAB 4: PRINT "LOTTO 6/44  ( Y or N ) ";
  10. 86  GET DD$: IF DD$ < >"N"  OR DD$ < >"n"  THEN OP = 44
  11. 87  IF DD$ = "N"  OR DD$ = "n"  THEN OP = 40
  12. 88  IF OP = 40  THEN FL$ = "LOTTO 6/40"
  13. 89  IF OP = 44  THEN FL$ = "LOTTO 6/44"
  14. 90  HOME : VTAB 4: PRINT "DO YOU WANT A PRINTOUT ? ": GET PR$: IF PR$ = "Y"  OR PR$ = "y"  THEN PR = 1
  15. 95  IF PR = 1  THEN  PRINT D$;"PR#1": PRINT : PRINT FL$: PRINT : PRINT D$;"PR#3"
  16. 100  HOME 
  17. 105  PRINT : HTAB 22: PRINT FL$
  18. 110  FOR X = 1 TO 6: FOR T = 1 TO 6
  19. 120 C(T) =  INT( RND(X) *(OP +1))
  20. 130  IF C(T) > = 1  THEN 150
  21. 140 T = T -1: GOTO 190
  22. 150  IF C(T) < = OP  THEN 180
  23. 160 T = T -1: GOTO 190
  24. 180  GOSUB 210
  25. 190  NEXT 
  26. 200  PRINT : NEXT : GOTO 530
  27. 210  IF T = 1  THEN  RETURN 
  28. 220  IF T = 2  THEN 380
  29. 230  IF T = 3  THEN 410
  30. 240  IF T = 4  THEN 440
  31. 250  IF T = 5  THEN 470
  32. 260  IF T = 6  THEN 500
  33. 270  IF X = 1  THEN  RETURN 
  34. 280  IF PR = 1  THEN  PRINT D$;"PR#1"
  35. 290  PRINT  CHR$(X +63);" :";
  36. 300 R = 5
  37. 310  FOR XC = 1 TO 6
  38. 320  HTAB R
  39. 330  PRINT C(XC);: IF XC = 6  THEN  PRINT 
  40. 340 R = R +5
  41. 350  NEXT 
  42. 360  IF PR = 1  THEN  PRINT D$;"PR#3"
  43. 370  RETURN 
  44. 380  IF C(2) = C(1)  THEN T = T -1
  45. 390  IF C(2) = C(1)  THEN  RETURN 
  46. 400  RETURN 
  47. 410  IF C(3) = C(2)  OR C(3) = C(1)  THEN T = T -1
  48. 420  IF C(3) = C(2)  OR C(3) = C(1)  THEN  RETURN 
  49. 430  RETURN 
  50. 440  IF C(4) = C(3)  OR C(4) = C(2)  OR C(4) = C(1)  THEN T = T -1
  51. 450  IF C(4) = C(3)  OR C(4) = C(2)  OR C(4) = C(1)  THEN  RETURN 
  52. 460  RETURN 
  53. 470  IF C(5) = C(4)  OR C(5) = C(3)  OR C(5) = C(2)  OR C(5) = C(1)  THEN T = T -1
  54. 480  IF C(5) = C(4)  OR C(5) = C(3)  OR C(5) = C(2)  OR C(5) = C(1)  THEN  RETURN 
  55. 490  RETURN 
  56. 500  IF C(6) = C(5)  OR C(6) = C(4)  OR C(6) = C(3)  OR C(6) = C(2)  OR C(6) = C(1)  THEN T = T -1
  57. 510  IF C(6) = C(5)  OR C(6) = C(4)  OR C(6) = C(3)  OR C(6) = C(2)  OR C(6) = C(1)  THEN  RETURN 
  58. 520  GOTO 570
  59. 530  VTAB 22: HTAB 9
  60. 537  VTAB 22: HTAB 9
  61. 540  INVERSE : PRINT " RUN RND.LOTTO AGAIN? ";: NORMAL 
  62. 550  GET Q$: IF Q$ = "Y"  OR Q$ = "y"  THEN  RUN 
  63. 560  PRINT : GOTO 680
  64. 570  REM ****** SORT ******
  65. 580  FOR I = 1 TO T -1
  66. 590  FOR J = I +1 TO 6
  67. 600  IF C(I) < = C(J)  THEN 640
  68. 610 ST = C(I)
  69. 620 C(I) = C(J)
  70. 630 C(J) = ST
  71. 640  NEXT J
  72. 650  NEXT I
  73. 660  REM ****** END OF SORT ******
  74. 670  GOTO 270
  75. 680  VTAB 22: HTAB 9: PRINT "                       "
  76. 690  END