Ver Mensaje Individual
  #3
Antiguo 24 de febrero de 2023, 06:34
Marengo97
Forero Junior
Última Actividad 22.11.2023 00:42
Posts Posts: 26
Likes enviados Enviados: 5
Likes recibidos Recibidos: 0

Un codigo muy interesante, lo estoy estudiando para aprender nuevas cosas, hasta ahora luego de varias horas pude entenderlo en una grande medida pero no me queda claro para nada que sucede acá, podrias explicarmelo?
Especificamente no se que funcion cumple Aux-line y los diferentes procesos con J, JJ, AA
Gracias de antemano
Código COBOL:
  1.            IF    AUX-LINE > 21
  2.                  DISPLAY
  3.                  "Presiones Enter para Continuar/F2 para Retroceder"
  4.                  at line 23 col 2 with reverse-video
  5.                  accept sn line 23 col 1 with prompt
  6.                                   UNDERLINE UPDATE end-accept
  7.  
  8.                  MOVE 11 TO AUX-LINE
  9.                  PERFORM VARYING J FROM 11 BY 1 UNTIL J > 21
  10.                          display TEXTO-LIMPIO at line J col 1
  11.                  END-PERFORM
  12.                  IF F2
  13.                     IF JJ = 12
  14.                        go to consulta
  15.                     ELSE
  16.                        COMPUTE JJ = JJ - 11
  17.                        MOVE 11 TO AUX-LINE
  18.                        go to consulta-display
  19.                    END-IF
  20.                 END-IF
  21.            END-IF.
  22.  
  23.            GO TO consulta-display.
  24.        consulta-pregunta.
  25.            DISPLAY
  26.            "Presiones Enter para Continuar/F2 para Retroceder"
  27.                        at line 23 col 2 with reverse-video
  28.            accept sn line 23 col 1 with prompt
  29.                    UNDERLINE UPDATE end-accept .
  30.            IF F2
  31.              IF JJ < 12
  32.                 GO TO CONSULTA
  33.              ELSE
  34.               COMPUTE AA = (AUX-LINE - 11) + 1
  35.               COMPUTE JJ =
  36.               (JJ + (11 - AA) - 22 ) + 1
  37.               MOVE 11 TO AUX-LINE
  38.               PERFORM VARYING J FROM 11 BY 1 UNTIL J > 21
  39.                       display TEXTO-LIMPIO at line J col 1
  40.               END-PERFORM
  41.               GO TO consulta-display
  42.             END-IF
  43.            END-IF.
  44.        fin-consulta.
  45.            exit.
Marengo97 is offline   Responder Con Cita