PDA

Ver la Versión Completa : [Compilador] Errores al compilar


dariodr
3 de mayo de 2022, 05:18
Hola, tengo este codigo pero al compilar me aparecen estos errores:
En rmcobol compila bien.

IBM COBOL for Linux 1.1.0 compile started
0LineID Message code Message text
IGYSC0090-W 5 sequence errors were found in this program.
52 IGYPS0009-E "IF" should not begin in area "A". It was processed as if found in ar
ea "B".
55 IGYPS0009-E "ADD" should not begin in area "A". It was processed as if found in a
rea "B".
58 IGYPS0009-E "DISPLAY" should not begin in area "A". It was processed as if found
in area "B".
Same message on line: 59
-Messages Total Informational Warning Error Severe Terminating
0Printed: 5 1 4
End of compilation 1, program COMUNI, highest severity: Error.
Return code 8

IDENTIFICATION DIVISION.
PROGRAM-ID. COMUNI.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM-PERSONAS PIC 9(3) VALUE 1.
01 COMUNIDAD.
03 TABLA-PERSONAS OCCURS 100 TIMES
DEPENDING ON NUM-PERSONAS.
05 GENERO PIC X VALUE SPACES.
05 TALLA-POLO PIC XX VALUE SPACES.
05 USA-LENTES PIC X VALUE SPACES.
05 TIENE-CELULAR PIC X VALUE SPACES.
05 EDAD PIC 99 VALUE 0.
01 MAS-DATOS PIC X VALUE SPACES.
01 CONTA PIC 9(3) VALUE 1.
01 VARIABLES.
03 MUJER-TALLAM PIC 99 VALUE 0.
03 HOMBRE-TALLAXL PIC 99 VALUE 0.
*
PROCEDURE DIVISION.
PRINCIPAL.
PERFORM INGRESO-DATOS UNTIL MAS-DATOS = 'N'.
PERFORM PUNTO-A UNTIL CONTA > NUM-PERSONAS.
PERFORM RESULTADOS.
STOP RUN.
*
INGRESO-DATOS.
DISPLAY "Genero (M o F): " NO ADVANCING.
ACCEPT GENERO(NUM-PERSONAS).
DISPLAY "Talla de polo (S,M,L,XL): " NO ADVANCING.
ACCEPT TALLA-POLO(NUM-PERSONAS).
DISPLAY "Usa lentes (S/N): " NO ADVANCING.
ACCEPT USA-LENTES(NUM-PERSONAS).
DISPLAY "Tiene celular (S/N): " NO ADVANCING.
ACCEPT TIENE-CELULAR(NUM-PERSONAS).
DISPLAY "Edad de la persona: " NO ADVANCING.
ACCEPT EDAD(NUM-PERSONAS).
DISPLAY "Registrar mas personas S/N: " NO ADVANCING.
ACCEPT MAS-DATOS.
IF MAS-DATOS = "S"
ADD 1 TO NUM-PERSONAS
END-IF.
*
PUNTO-A.
MOVE 1 TO CONTA.
IF GENERO(CONTA) = "F" AND TALLA-POLO(CONTA) = "M"
ADD 1 TO MUJER-TALLAM
END-IF.
IF GENERO(CONTA) = "M" AND TALLA-POLO(CONTA) = "XL"
ADD 1 TO HOMBRE-TALLAXL
END-IF.
ADD 1 TO CONTA.
*
RESULTADOS.
DISPLAY "Mujeres con talla M: " MUJER-TALLAM.
DISPLAY "Hombres con talla XL: " HOMBRE-TALLAXL.

Josber
3 de mayo de 2022, 12:26
Te está diciendo que, esos "IF", "ADD" y "DISPLAY", los has escrito antes de la columna 12, (lo que antiguamente, se conocía como "Área A", que eran las columnas 8 a 11, y las columnas 12 a 72, eran el "Área B").

Eso suele ocurrir cuando, en vez de la barra espaciadora, usas el tabulador para desplazar el cursor y empezar a escribir, que, aunque parezca que tienes el cursor bien colocado, (en la columna 12), dependiendo del procesador de textos que uses, los tabuladores los trata de una manera u otra. Borra los espacios en blanco que haya delante de esas instrucciones, e insértalos otra vez pero con la barra espaciadora.

Un salu2.-