23 lines
795 B
QBasic
23 lines
795 B
QBasic
10 PRINT CHR$(147):PRINT " CIPHER WHEEL":PRINT
|
|
20 PRINT "ENCODE OR DECODE A SECRET MESSAGE"
|
|
30 PRINT "WITH A CLASSIC CAESAR SHIFT.":PRINT
|
|
40 PRINT "PRESS ANY KEY"
|
|
50 GET A$:IF A$="" THEN 50
|
|
60 PRINT CHR$(147):PRINT "E=ENCODE D=DECODE Q=QUIT"
|
|
70 GET M$:IF M$="" THEN 70
|
|
80 IF M$="Q" THEN 230
|
|
90 IF M$<>"E" AND M$<>"D" THEN 70
|
|
100 INPUT "SHIFT (1-25)";S:IF S<1 OR S>25 THEN 100
|
|
110 IF M$="D" THEN S=-S
|
|
120 INPUT "MESSAGE";A$:B$=""
|
|
130 FOR I=1 TO LEN(A$):C=ASC(MID$(A$,I,1))
|
|
140 IF C<65 OR C>90 THEN B$=B$+CHR$(C):GOTO 170
|
|
150 C=C+S:IF C>90 THEN C=C-26
|
|
160 IF C<65 THEN C=C+26
|
|
165 B$=B$+CHR$(C)
|
|
170 NEXT:PRINT:PRINT "RESULT:":PRINT B$:PRINT
|
|
180 PRINT "N=NEW MESSAGE R=RESTART Q=QUIT"
|
|
190 GET A$:IF A$="N" THEN 120
|
|
200 IF A$="R" THEN RUN
|
|
210 IF A$<>"Q" THEN 190
|
|
230 PRINT CHR$(147):END
|