0 RANDOMIZE VAL(RIGHT$(TIME$,2)):IF RAN=1 THEN RETURN
1 REM SEQUENCE 7/82
2 REM
3 REM A NUMBER SEQUENCE GAME OF DEDUCTION
4 REM
5 REM IBM BASIC
6 REM
7 REM BY MARGE COLE (ADAPTED WITH PERMISION FROM AN ARTICLE
8 REM BY BOB ALBRECHT IN INTERFACE AGE
9 REM TRANSLATED FROM THE APPLE SOFTSWAP BY PHIL SMITH
10 REM
11 REM ***********************
12 REM * *
13 REM * SAN MATEO COUNTY *
14 REM * OFFICE OF EDUCATION*
15 REM * AND *
16 REM * COMPUTER USING *
17 REM * EDUCATORS *
18 REM * *
19 REM * SOFTSWAP *
20 REM * *
21 REM * 333 MAIN STREET *
22 REM * REDWOOD CITY *
23 REM * CA 94063 *
24 REM * (415) 363-5472 *
25 REM * *
26 REM * *
27 REM ***********************
28 REM *PROGRAM MAY BE COPIED*
29 REM *FOR EDUCATIONAL USE $*
30 REM *MAY NOT BE SOLD.COPY-*
31 REM *RIGHT 1983 CUE,INC. *
32 REM ***********************
100 SCREEN 0,1: WIDTH 40: KEY OFF: CLS
105 COLOR 14,0,14
110 A$="THIS IS THE GAME OF SEQUENCES"
120 LOCATE 12,26:PRINT A$
130 PRINT:PRINT
140 B$="FROM AN ARTICLE BY BOB ALBRECHT"
150 C$="IN INTERFACE AGE, DECEMBER, 1979"
160 LOCATE 14,26:PRINT B$
170 LOCATE 16,26:PRINT C$
180 GOSUB 720
190 CLS
200 PRINT :PRINT
210 PRINT"YOU WILL CHOOSE TWO NUMBERS WHICH THE COMPUTER WILL USE TO";
220 PRINT "GENERATE A SEQUENCE."
230 PRINT :PRINT :PRINT"YOU WILL SEE THE FIRST FIVE NUMBERS OF THE SEQUENCE"
240 REM
250 PRINT :PRINT :PRINT "STUDY THE PATTERN."
260 PRINT :PRINT :PRINT :PRINT "WHEN THE COMPUTER ASKS YOU FOR THE NEXT NUMBER, TYPE IN YOUR ANSWER"
270 REM
280 GOSUB 720
290 CLS:PRINT :PRINT :PRINT "CHOOSE THE LEVEL OF DIFFICULTY BY TYPINGTHE APPROPRIATE NUMBER."
300 REM
310 PRINT:PRINT TAB(10);"1)NUMBERS FROM 1 TO 10"
320 PRINT:PRINT TAB(10);"2)NUMBERS FROM 1 TO 50"
330 PRINT:PRINT TAB(10);"3)NUMBERS FROM 1 TO 100"
340 A$="WHICH NUMBER ?":LOCATE 18,20-(LEN(A$)/2):PRINT A$:IN$=INKEY$:IF IN$="" THEN GOTO 340
350 Z=VAL(IN$):IF Z>3 OR Z<1 THEN 340
360 L=(10*(-(Z=1)))+(50*(-(Z=2 )))+(100*(-(Z=3)))
370 REM
380 REM
390 CLS
400 PRINT:PRINT :PRINT :PRINT "CHOOSE TWO NUMBERS BETWEEN 1 AND";L;"AND TYPE THE LARGER ONE FIRST."
410 N$="":I$=""
420 LOCATE 6,1 :PRINT "LARGER NUMBER"; : INPUT N$ : IF N$= "" THEN 420
430 N=VAL(N$):IF N<2 OR N>L THEN 420
440 LOCATE 7,1:PRINT"SMALLER NUMBER";:INPUT I$:IF I$="" THEN 440
450 I=VAL(I$):IF I>=N OR I<1 THEN 440
460 CLS
470 C=0:PRINT
480 X=INT(RND(0)*4)+1:IF X=4 THEN GOSUB 700:IF FLAG=1 THEN RAN=1:GOSUB 0:RAN=0:GOTO 480
490 PRINT;N;", ";
500 IF X=1 THEN N=N+I:GOTO 540
510 IF X=2 THEN N=N*I:GOTO 540
520 IF X=3 THEN N=N-I:GOTO 540
530 N=N/I
540 C=C+1
550 IF C=5 THEN PRINT : GOTO 570
560 GOTO 490
570 M=0
580 LOCATE 11,1:PRINT STRING$(255,32):LOCATE 15,1:PRINT STRING$(255,32):LOCATE 10,2 : PRINT "ENTER NEXT NUMBER IN SERIES" :INPUT IN$ : IF IN$ = "" THEN 580
590 A=VAL(IN$)
600 M=M+1
610 IF A=N THEN LOCATE 20,13:PRINT CHR$(1);CHR$(1);"CORRECT!!!!"CHR$(1);CHR$(1):GOTO 640
620 LOCATE 15,1:PRINT "SORRY, NOT IT. Try again.":FOR Z=1 TO 1000: NEXT: IF M<3 THEN GOTO 580
630 CLS:PRINT"O.K. THE NUMBER IS";N
640 LOCATE 23,1:PRINT "TRY ANOTHER ONE? (Y OR N)":Z$=INKEY$:IF Z$="" THEN 640
650 IF Z$="Y" OR Z$="y" THEN 290
660 CLS
670 Z$="* * * * * THE END * * * * *"
680 LOCATE 12,20-(LEN(Z$)/2):PRINT Z$
690 CHAIN "MENU",170: RUN
700 FLAG=0:N1=1:FOR J=0 TO 5:IF N1/I<>INT(N1/I)THEN FLAG=1
710 N1=N1/I:NEXT J:RETURN
720 REM PAUSE ROUTINE
730 LOCATE 21,3:PRINT STRING$(79,32):LOCATE 23,13:PRINT"PRESS <ENTER> TO CONTINUE":