Skip to content

Instantly share code, notes, and snippets.

@pdemby
Last active August 29, 2015 14:03
Show Gist options
  • Save pdemby/d8b9703d691dadfe89ed to your computer and use it in GitHub Desktop.
Save pdemby/d8b9703d691dadfe89ed to your computer and use it in GitHub Desktop.
IDENTIFICATION DIVISION.
PROGRAM-ID. CALCULATOR.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM1 PIC 9(3) VALUE 0.
01 NUM1-TXT PIC X(3) VALUE SPACES.
01 NUM2 PIC 9(3) VALUE 0.
01 NUM2-TXT PIC X(3) VALUE SPACES.
01 RESULT PIC S9(6)V9(2) VALUE 0.
01 RESULT-EDIT PIC -ZZZ,ZZ9.99.
01 OPERATOR PIC X VALUE SPACES.
PROCEDURE DIVISION.
CALCULATOR-ROUTINE.
DISPLAY "COBOL CALCULATOR" LINE 4 POSITION 10 ERASE SCREEN.
DISPLAY "Enter First Number : " LINE 6 POSITION 10.
ACCEPT NUM1-TXT LINE 6 POSITION 31 PROMPT ECHO.
MOVE NUM1-TXT TO NUM1 WITH CONVERSION.
DISPLAY "Enter Operator (+,-,*,/): " LINE 8 POSITION 10.
ACCEPT OPERATOR LINE 8 POSITION 36 PROMPT ECHO.
DISPLAY "Enter Second Number: " LINE 10 POSITION 10.
ACCEPT NUM2-TXT LINE 10 POSITION 31 PROMPT ECHO.
MOVE NUM2-TXT TO NUM2 WITH CONVERSION.
IF OPERATOR = "+"
ADD NUM1, NUM2 GIVING RESULT.
IF OPERATOR = "-"
SUBTRACT NUM2 FROM NUM1 GIVING RESULT.
IF OPERATOR = "*"
MULTIPLY NUM1 BY NUM2 GIVING RESULT.
IF OPERATOR = "/"
DIVIDE NUM1 BY NUM2 GIVING RESULT.
MOVE RESULT TO RESULT-EDIT.
DISPLAY NUM1-TXT LINE 12 POSITION 10.
DISPLAY OPERATOR LINE 12 POSITION 14.
DISPLAY NUM2-TXT LINE 12 POSITION 16.
DISPLAY "=" LINE 12 POSITION 20.
DISPLAY RESULT-EDIT LINE 12 POSITION 22.
STOP RUN.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment