I'm reading some random numbers from the SYSIN and I wanna get:
The greatest odd number;
The greatest even number;
The number of odd numbers;
The number of even numbers;
These are the declared variables:
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01 WS-NUMERO PIC 9(3).
01 WS-TOTAL-PAR PIC 9(3) VALUE ZERO.
01 WS-TOTAL-IMPAR PIC 9(3) VALUE ZERO.
01 WS-REMAINDER PIC 9.
01 WS-PAR-MAIOR PIC 9(3) VALUE ZERO.
01 WS-PAR-MENOR PIC 9(3) VALUE 999.
01 WS-IMPAR-MAIOR PIC 9(3) VALUE ZERO.
01 WS-IMPAR-MENOR PIC 9(3) VALUE 999.
01 WS-RESULT PIC 9(3).
WORKING-STORAGE SECTION.
*
01 WS-NUMERO PIC 9(3).
01 WS-TOTAL-PAR PIC 9(3) VALUE ZERO.
01 WS-TOTAL-IMPAR PIC 9(3) VALUE ZERO.
01 WS-REMAINDER PIC 9.
01 WS-PAR-MAIOR PIC 9(3) VALUE ZERO.
01 WS-PAR-MENOR PIC 9(3) VALUE 999.
01 WS-IMPAR-MAIOR PIC 9(3) VALUE ZERO.
01 WS-IMPAR-MENOR PIC 9(3) VALUE 999.
01 WS-RESULT PIC 9(3).
And this is the procedure to find the things I want:
*----------------------------------------------------------------
ACHAR-NUMEROS.
ACCEPT WS-NUMERO FROM SYSIN.
DIVIDE WS-NUMERO BY 2
GIVING WS-RESULT
REMAINDER WS-REMAINDER.
IF WS-REMAINDER EQUAL ZERO
AND WS-NUMERO GREATER WS-PAR-MAIOR
ADD 1 TO WS-TOTAL-PAR
MOVE WS-NUMERO TO WS-PAR-MAIOR
IF WS-NUMERO LESS WS-PAR-MENOR
MOVE WS-NUMERO TO WS-PAR-MENOR
END-IF
ELSE
ADD 1 TO WS-TOTAL-IMPAR
IF WS-NUMERO GREATER WS-IMPAR-MAIOR
MOVE WS-NUMERO TO WS-IMPAR-MAIOR
END-IF
IF WS-NUMERO LESS WS-IMPAR-MENOR
MOVE WS-NUMERO TO WS-IMPAR-MENOR
END-IF.
*-----------------------------------------------------------------
ACHAR-NUMEROS.
ACCEPT WS-NUMERO FROM SYSIN.
DIVIDE WS-NUMERO BY 2
GIVING WS-RESULT
REMAINDER WS-REMAINDER.
IF WS-REMAINDER EQUAL ZERO
AND WS-NUMERO GREATER WS-PAR-MAIOR
ADD 1 TO WS-TOTAL-PAR
MOVE WS-NUMERO TO WS-PAR-MAIOR
IF WS-NUMERO LESS WS-PAR-MENOR
MOVE WS-NUMERO TO WS-PAR-MENOR
END-IF
ELSE
ADD 1 TO WS-TOTAL-IMPAR
IF WS-NUMERO GREATER WS-IMPAR-MAIOR
MOVE WS-NUMERO TO WS-IMPAR-MAIOR
END-IF
IF WS-NUMERO LESS WS-IMPAR-MENOR
MOVE WS-NUMERO TO WS-IMPAR-MENOR
END-IF.
*-----------------------------------------------------------------
Also, if it isn't too much to ask, I wanna do something like, insert on the display the DATE and TIME when the program was run... Any idea of how I should do that and then format the date and time exit to show as this: HH:MM:SS and YYYY/MM/DD?
Thanks for the attention and help!
