PROGRAM-ID.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 DATE1.
02 YEAR PIC 9(4).
02 MONTH PIC 9(2).
02 DAY1 PIC 9(2).
77 ANS PIC 9(4).
77 REM PIC 9.
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY "Enter date (yyyymmdd : ".
ACCEPT DATE1.
IF (DAY1<1 OR >31) OR (MONTH<1 OR >12) OR (YEAR<0)
PERFORM INVALID-PARA.
IF MONTH=2
DIVIDE YEAR BY 4 GIVING ANS REMAINDER REM
IF ((REM NOT =0) AND (DAY1>28)) OR
((REM = 0) AND (DAY1 > 29))
PERFORM INVALID-PARA.
PERFORM VARIFY-PARA.
VARIFY-PARA.
IF (MONTH=4 OR 6 OR 9 OR 11) AND (DAY1>30)
PERFORM INVALID-PARA
ELSE
DISPLAY "Given date is a valid date."
PERFORM STOP-PARA.
INVALID-PARA.
DISPLAY "Given date is a invalid.".
PERFORM STOP-PARA.
STOP-PARA.
STOP RUN.
nice
ReplyDelete