PROGRAM CAESAR !$INCLUDE="PC.LIB" PROCEDURE CAESAR(TEXT$,KY%->CY$) LOCAL I%,C% FOR I%=1 TO LEN(TEXT$) DO C%=ASC(MID$(TEXT$,I%)) IF (C% AND $1F)>=1 AND (C% AND $1F)<=26 THEN C%=(C% AND $E0) OR (((C% AND $1F)+KY%-1) MOD 26+1) CHANGE(TEXT$,I%,CHR$(C%)->TEXT$) END IF END FOR CY$=TEXT$ END PROCEDURE BEGIN RANDOMIZE(TIMER) PLAINTEXT$="Pack my box with five dozen liquor jugs" PRINT(PLAINTEXT$) KY%=1+INT(25*RND(1)) ! generates random between 1 and 25 CAESAR(PLAINTEXT$,KY%->CYPHERTEXT$) PRINT(CYPHERTEXT$) CAESAR(CYPHERTEXT$,26-KY%->DECYPHERED$) PRINT(DECYPHERED$) END PROGRAM