Resumen: Entrega nº 74 del curso Bases de la programación Nivel I.
Codificación aprenderaprogramar.com: CU00175A

 

 

FINAL DE ARCHIVO

La correcta extracción de datos desde archivos es uno de los retos a que nos enfrentamos en la práctica de la programación. Los archivos suelen contener gran cantidad de datos y se procede a su extracción, lógicamente, a través de bucles.

 

 

 

Para facilitar el cierre del bucle una vez se ha extraído el último dato del archivo (el último número, la última palabra, la última línea, etc.) se utiliza un parámetro booleano conocido por sus siglas en inglés, EOF (End Of File), al que llamaremos simplemente Final de archivo o Finarchivo.

Las propiedades y formas de uso de la señal “Fin de archivo” pueden diferir según el lenguaje que se use, y a su vez depender de distintas circunstancias como la forma de acceso al archivo. No entraremos aquí en ello, entendiendo que será más provechoso abordar estos aspectos cuando se profundice en un lenguaje específico. Sí veremos ahora las líneas generales para el uso de esta posibilidad para controlar bucles a la hora de diseñar algoritmos.

En primer lugar, haremos unas consideraciones al respecto de la naturaleza de la señal de Fin de Archivo. En líneas anteriores la hemos catalogado de parámetro booleano. La usaremos con la catalogación de parámetro o señal (en vez de variable) sobre la que no tenemos ninguna capacidad de actuación: es no manipulable, no borrable, no copiable, no insertable, no modificable, ..., etc.1 Su valor por defecto es Falso, como si de una variable booleana se tratara. Cuando se procede a la extracción de datos de un archivo, el parámetro Final de archivo vale Falso hasta que se produce la extracción del último elemento del archivo, momento en que pasa a ser Verdadero. Esto permite usar el parámetro para salir de un bucle de extracción. La forma general de uso será:

Mientras Finarchivo = Falso Hacer

i = i + 1

Leer Dato(i)

Repetir

 


Y el correspondiente diagrama:



El valor Finarchivo queda restablecido automáticamente a Falso una vez se sale del bucle.

Supongamos un archivo que contiene una cantidad de datos desconocidos en un array y queremos visualizarlos en la pantalla del ordenador. El algoritmo sería:

1. Inicio [Ejemplo aprenderaprogramar.com]

2. Mientras Finarchivo = Falso Hacer

i = i + 1

Leer Dato(i)

Mostrar Dato(i)

Repetir

3. Fin

 

 

 

 

 

 

Para acceder a la información general sobre este curso y al listado completo de entregas pulsa en este link:  Ver curso completo.

Para  hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.

 

Descargar archivo: