Compucolor.org – Virtual Media

Listing of file='CRYPTO.BAS;01' on disk='vmedia/chip_125-sector.ccvf'

1 REM      *********************************************
2 REM
3 REM            A PROGRAM THAT CREATES CRYPTOGRAMS
4 REM
5 REM      *********************************************
6 REM
7 PLOT 12:PLOT 3,10,10:PRINT "THIS PROGRAM WILL CREATE A CRYPTOGRAM UP TO 1OOO"
8 PRINT TAB( 10);"CHARACTERS LONG. MAKE SURE YOUR PRINTER IS POWERED"
9 PRINT TAB( 10);"UP AND ON-LINE."
10 CLEAR 1000:DIM L(25)
20 PLOT 3,20,15:PRINT "NOW GENERATING THE CODE!"
30 FOR I= 0TO 25:GOSUB 1000
40 L(I)= INT (26* RND (1)+ 65):IF L(I)= I+ 65THEN 40
50 FOR J= 0TO I
60 IF J= ITHEN 90
70 IF L(I)= L(J)THEN 40
80 NEXT J
90 NEXT I
110 PLOT 12
120 PRINT "WHAT IS THE TITLE OF YOUR CRYPTOGRAM?"
125 PRINT :PRINT
130 INPUT "TITLE: ";TT$
140 PRINT
210 INPUT "HOW MANY LINES IN YOUR CRYPTOGRAM? ";NL
215 PRINT
220 FOR I= 1TO NL:PRINT "LINE #";I;:INPUT "? ";C$(I):PRINT
230 NEXT I
235 PLOT 27,18,6,27,13:POKE 33289,80:T$= TT$:GOSUB 2000:PRINT :PRINT
250 FOR I= 1TO NL:T$= C$(I):GOSUB 2000:PRINT :PRINT
260 NEXT I:PLOT 12
263 PRINT TAB( 39);"KEY":PRINT :PRINT
264 PRINT TAB( 15);
265 FOR I= 65TO 90:PRINT CHR$ (I);" ";:NEXT :PRINT :PRINT
266 PRINT TAB( 15);
267 FOR I= 0TO 25:PRINT CHR$ (L(I));" ";:NEXT :PRINT :PRINT :PRINT
270 PRINT TAB( 36);"SOLUTION":PRINT :PRINT
275 L= LEN (TT$):T= 40- L/ 2:PRINT TAB( T);TT$:PRINT
280 FOR I= 1TO NL:L= LEN (C$(I)):T= 40- L/ 2
290 PRINT TAB( T);C$(I)
300 NEXT :PLOT 12:POKE 33265,0
310 END
1000 FOR K= 1TO PEEK (33209):X= RND (1):NEXT :RETURN
2000 L= LEN (T$):T= 40- L/ 2
2010 A= ASC (LEFT$ (T$,1)):PRINT TAB( T);CHR$ (L(A- 65));
2020 FOR K= 2TO L:L$= MID$ (T$,K,1)
2030 IF ASC (L$)< 65OR ASC (L$)> 90THEN PRINT L$;:GOTO 2045
2040 A= ASC (L$):PRINT CHR$ (L(A- 65));
2045 NEXT K
2050 RETURN