RosettaCodeData/Task/Caesar-cipher/COBOL/caesar-cipher-1.cobol

37 lines
1.1 KiB
Text
Raw Permalink Normal View History

2023-09-01 09:35:06 -07:00
IDENTIFICATION DIVISION.
PROGRAM-ID. CAESAR.
2023-07-01 11:58:00 -04:00
2023-09-01 09:35:06 -07:00
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MSG PIC X(50)
VALUE "The quick brown fox jumped over the lazy dog.".
01 OFFSET PIC 9(4) VALUE 7 USAGE BINARY.
01 FROM-CHARS PIC X(52).
01 TO-CHARS PIC X(52).
01 TABL.
02 PIC X(26) VALUE "abcdefghijklmnopqrstuvwxyz".
02 PIC X(26) VALUE "ABCDEFGHIJKLMNOPQRSTUVWXYZ".
02 PIC X(26) VALUE "abcdefghijklmnopqrstuvwxyz".
02 PIC X(26) VALUE "ABCDEFGHIJKLMNOPQRSTUVWXYZ".
2023-07-01 11:58:00 -04:00
2023-09-01 09:35:06 -07:00
PROCEDURE DIVISION.
BEGIN.
DISPLAY MSG
PERFORM ENCRYPT
DISPLAY MSG
PERFORM DECRYPT
DISPLAY MSG
STOP RUN.
ENCRYPT.
MOVE TABL (1:52) TO FROM-CHARS
MOVE TABL (1 + OFFSET:52) TO TO-CHARS
INSPECT MSG CONVERTING FROM-CHARS TO TO-CHARS.
DECRYPT.
MOVE TABL (1 + OFFSET:52) TO FROM-CHARS
MOVE TABL (1:52) TO TO-CHARS
INSPECT MSG CONVERTING FROM-CHARS TO TO-CHARS.
END PROGRAM CAESAR.