Ver Mensaje Individual
  #2
Antiguo 8 de mayo de 2024, 23:08
JCantero
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros 
Última Actividad 02.09.2026 00:15
Posts Posts: 442
Likes enviados Enviados: 167
Likes recibidos Recibidos: 269

@dariodr, Es que pides el nombre con cada read.

Pide el nombre y después comprueba si está.

Así

Código COBOL:
  1.        IDENTIFICATION DIVISION.
  2.        PROGRAM-ID. prg002.
  3.  
  4.        ENVIRONMENT DIVISION.
  5.        INPUT-OUTPUT section.
  6.        FILE-CONTROL.
  7.            SELECT agenda ASSIGN to "agenda.txt"
  8.            ORGANIZATION LINE SEQUENTIAL.
  9.  
  10.        DATA DIVISION.
  11.        FILE SECTION.
  12.        FD  agenda.
  13.        01  agenda-rec.
  14.            03 codigo   PIC 9(5).
  15.            03 nombre   PIC x(10).
  16.            03 salario  pic 9(5)V99.
  17.        WORKING-STORAGE SECTION.
  18.        77  FIN-ARCHIVO   PIC x.
  19.        77  N-NOMBRE    PIC X(10).
  20.  
  21.        PROCEDURE DIVISION.
  22.        MAIN-PROCEDURE.
  23.  
  24.            perform aceptar-nombre.
  25.  
  26.  
  27.            OPEN INPUT agenda.
  28.  
  29.            PERFORM proceso UNTIL FIN-ARCHIVO = 'S'.
  30.            CLOSE agenda.
  31.            STOP RUN.
  32.  
  33.        proceso.
  34.            READ agenda
  35.               AT END MOVE 'S' TO FIN-ARCHIVO
  36.               NOT AT END PERFORM BUSCA-REGISTRO
  37.            END-READ.
  38.  
  39.        Aceptar-nombre.
  40.            DISPLAY 'NOMBRE A BUSCAR: ' NO ADVANCING.
  41.            ACCEPT N-NOMBRE.
  42.  
  43.  
  44.  
  45.       *Rutina para buscar un registro      
  46.        BUSCA-REGISTRO.
  47.          
  48.            IF N-NOMBRE = nombre
  49.                DISPLAY codigo
  50.                DISPLAY salario
  51.            END-IF.
  52.  
  53.  
  54.  
  55.        END PROGRAM prg002.
JCantero is offline   Responder Con Cita