IDENTIFICATION DIVISION.
PROGRAM-ID. IndexFileExample.
DATA DIVISION.
FILE SECTION.
FD MyRelativeFile
LABEL RECORDS STANDARD
VALUE OF FILE-ID IS "MYFILE"
DATA RECORD IS MyRecord.
01 MyRecord.
02 StudentID PIC 9(5).
02 Name PIC X(30).
02 Score PIC 9(3).
WORKING-STORAGE SECTION.
01 StudentCount PIC 9(5) VALUE 0.
PROCEDURE DIVISION.
OPEN OUTPUT MyRelativeFile.
PERFORM VARYING StudentID FROM 1 BY 1 UNTIL StudentID > 5
MOVE StudentID TO MyRecord-StudentID
MOVE "Student " & StudentID TO MyRecord-Name
COMPUTE MyRecord-Score = 90 + StudentID
WRITE MyRecord
ADD 1 TO StudentCount
END-PERFORM.
CLOSE MyRelativeFile.
DISPLAY "Total Students Written: " StudentCount.
OPEN INPUT MyRelativeFile.
DISPLAY "Listado de Estudiantes:"
PERFORM UNTIL EOF
READ MyRelativeFile
AT END
EXIT PERFORM
NOT AT END
DISPLAY "Student ID: " MyRecord-StudentID
DISPLAY "Name: " MyRecord-Name
DISPLAY "Score: " MyRecord-Score
END-READ
END-PERFORM.
CLOSE MyRelativeFile.
STOP RUN.