plaintext$ = "Pack my box with five dozen liquor jugs" PRINT plaintext$ key% = RND(25) cyphertext$ = FNcaesar(plaintext$, key%) PRINT cyphertext$ decyphered$ = FNcaesar(cyphertext$, 26-key%) PRINT decyphered$ END DEF FNcaesar(text$, key%) LOCAL I%, C% FOR I% = 1 TO LEN(text$) C% = ASC(MID$(text$,I%)) IF (C% AND &1F) >= 1 AND (C% AND &1F) <= 26 THEN C% = (C% AND &E0) OR (((C% AND &1F) + key% - 1) MOD 26 + 1) MID$(text$, I%, 1) = CHR$(C%) ENDIF NEXT = text$