Módulo COBOL para obter HORA do sistema através do comando ACCEPT.


      ******************************************************************
      * PROGRAMADOR: JOSE ROBERTO - COBOLDICAS
      * DATA: 31/01/2025
      * OBJETIVO: OBTER HORA E PERIODO DO SISTEMA
      ******************************************************************
       IDENTIFICATION DIVISION.
       PROGRAM-ID. PROGTIME.
      *================================================================*
       DATA DIVISION.
       FILE SECTION.
       WORKING-STORAGE SECTION.

       LINKAGE SECTION.
       COPY COD001A.

      *================================================================*
       PROCEDURE DIVISION USING COD001A-REGISTRO.
      *================================================================*

      *----------------------------------------------------------------*
      *    PROCESSAMENTO PRINCIPAL
      *----------------------------------------------------------------*
      *> cobol-lint CL002 0000-processar
       0000-PROCESSAR                  SECTION.
      *----------------------------------------------------------------*
      *     DISPLAY 'INICIO DO PROGRAMA PROGTIME'
            PERFORM 0001-OBTER-TIME
            PERFORM 0002-OBTER-PERIODO
            PERFORM 9999-FINALIZAR
            .
      *----------------------------------------------------------------*
      *> cobol-lint CL002 0000-end
       0000-END.                       EXIT.
      *----------------------------------------------------------------*
      
      *----------------------------------------------------------------*
      *    OBTER HORA DO SISTEMA
      *----------------------------------------------------------------*
       0001-OBTER-TIME                 SECTION.
      *----------------------------------------------------------------*
           ACCEPT COD001A-TIME        FROM TIME
           .
      *----------------------------------------------------------------*
      *> cobol-lint CL002 0001-end
       0001-END.                       EXIT.
      *----------------------------------------------------------------*

      *----------------------------------------------------------------*
      *    OBTER PERIODO DO DIA
      *----------------------------------------------------------------*
       0002-OBTER-PERIODO              SECTION.
      *----------------------------------------------------------------*

            IF COD001A-HORA >= 6 AND 
               COD001A-HORA <=12
               MOVE 'BOM DIA! '        TO COD001A-PERIODO
            ELSE 
               IF COD001A-HORA >= 13 AND
                  COD001A-HORA <=18
                  MOVE 'BOA TARDE! '   TO COD001A-PERIODO
               ELSE
                  IF COD001A-HORA >= 19 AND
                     COD001A-HORA <=00
                     MOVE 'BOA NOITE! ' TO COD001A-PERIODO
                  ELSE 
                     MOVE 'MADRUGADA! ' TO COD001A-PERIODO
                  END-IF
               END-IF
            END-IF
           .
      *----------------------------------------------------------------*
      *> cobol-lint CL002 0002-end
       0002-END.                       EXIT.
      *----------------------------------------------------------------*

      *----------------------------------------------------------------*
      *    FINALIZAR PROGRAMA
      *----------------------------------------------------------------*
       9999-FINALIZAR                  SECTION.
      *----------------------------------------------------------------*

            GOBACK 
            .
      *----------------------------------------------------------------*
      *> cobol-lint CL002 9999-end
       9999-END.                       EXIT.
      *----------------------------------------------------------------*