Ver Mensaje Individual
  #1
Antiguo 28 de noviembre de 2018, 03:36
dariodr
Forero
Última Actividad 03.10.2026 10:54
Posts Posts: 57
Likes enviados Enviados: 17
Likes recibidos Recibidos: 11
Linux Error en el código
0 Inactivo Inactivo

Hola, este es mi primer post espero me puedan ayudar. Tengo el siguiente codigo, estoy siguiendo el libro "Sam teach yourself COBOL" pero a la hora de compilar me aparecen errores. Estoy usando OpenCobol para Linux Mint.
Estoy retomando cobol despues de 25anios.
Salu2.

Código COBOL:
  1.        IDENTIFICATION DIVISION.
  2.        PROGRAM-ID. PHNADD01.
  3.  
  4.        ENVIRONMENT DIVISION.
  5.        INPUT-OUTPUT SECTION.
  6.        FILE-CONTROL.
  7.            SELECT PHONE-FILE
  8.                ASSIGN TO "PHONE.DAT"
  9.                ORGANIZATION IS SEQUENTIAL.
  10.  
  11.        DATA DIVISION.
  12.        FILE SECTION.
  13.        FD  PHONE-FILE
  14.               LABEL RECORDS ARE STANDARD.
  15.  
  16.        01  PHONE-RECORD.
  17.            05 PHONE-LAST-NAME      PIC X(20).
  18.            05 PHONE-FIRST-NAME     PIC X(20).
  19.            05 PHONE-NUMBER         PIC X(15).
  20.  
  21.        WORKING-STORAGE SECTION.
  22.        01  PROMPT-1          PIC X(9) VALUE "Last Name".
  23.        01  PROMPT-2          PIC X(10) VALUE "First Name".
  24.        01  PROMPT-3          PIC X(6) VALUE "Number".
  25.        01  YES-NO            PIC X.
  26.        01  ENTRY-OK          PIC X.
  27.  
  28.        PROCEDURE DIVISION.
  29.        PROGRAM-BEGIN.
  30.            PERFORM OPENING-PROCEDURE.
  31.            MOVE "Y" TO YES-NO.
  32.            PERFORM ADD-RECORD UNTIL YES-NO = "N".
  33.            PERFORM CLOSING-PROCEDURE.
  34.  
  35.        PROGRAM-DONE.
  36.            STOP RUN.
  37.  
  38.        OPENING-PROCEDURE.
  39.            OPEN EXTEND PHONE-FILE.
  40.  
  41.        CLOSING-PROCEDURE.
  42.            CLOSE PHONE-FILE.
  43.  
  44.        ADD-RECORD.
  45.            MOVE "N" TO ENTRY-OK.
  46.            PERFORM GET-FIELDS UNTIL ENTRY-OK = "Y".
  47.            PERFORM ADD-THIS-RECORD.
  48.            PERFORM GO-AGAIN.
  49.  
  50.        GET-FIELDS.
  51.            MOVE SPACE TO PHONE-RECORD.
  52.            DISPLAY PROMPT-1 " ? ".
  53.            ACCEPT PHONE-LAST-NAME.
  54.            DISPLAY PROMPT-2 " ? ".
  55.            ACCEPT PHONE-FIRST-NAME.
  56.            DISPLAY PROMPT-3 " ? ".
  57.            ACCEPT PHONE-NUMBER.
  58.            PERFORM VALIDATE-FIELDS.
  59.  
  60.        VALIDATE-FIELDS.
  61.            MOVE "Y" TO ENTRY-OK.
  62.            IF PHONE-LAST-NAME = SPACE
  63.                MOVE "N" TO ENTRY-OK
  64.            END-IF
  65.  
  66.        ADD-THIS-RECORD.
  67.            WRITE PHONE-RECORD.
  68.  
  69.        GO-AGAIN.
  70.            DISPLAY "GO AGAIN?".
  71.            ACCEPT YES-NO.
  72.            IF YES-NO = "y"
  73.                MOVE "Y" TO YES-NO
  74.            END-IF.
  75.            IF YES-NO NOT = "Y"
  76.                MOVE "N" TO YES-NO
  77.            END-IF.
dariodr is offline   Responder Con Cita