Sei sulla pagina 1di 9

Programación Estructurada Capítulo 5

Capítulo V

73 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

5.- Archivos de acceso secuencial.

En diferentes escenarios, es conveniente guardar datos generados por nuestros


programas en archivos o bien, obtener datos que están guardados en archivos para
procesarlos con algún programa.

Los archivos podrían estar en un disco duro, en un chip de memoria USB o algún otro
medio de almacenamiento; el programa deberá poder acceder a estos dispositivos
especificando la ruta completa del archivo, esto es: unidad-ruta de directorios-archivo.
Por ejemplo, un archivo en disco duro podría ser este:

C:\dir1\dir2\archivo.txt, donde c: es la unidad de disco duro, dir1\dir2\ la ruta de


directorios, comenzando desde el directorio raíz y finalmente, archivo.txt es el
nombre del archivo.

Con lenguaje C hay diferentes maneras de usar archivos de datos. En esta sección se
trabaja con las funciones que permiten abrir, cerrar, escribir a, y leer desde
archivos de tipo secuencial.

5.1.- Archivos para escritura.


Se requiere la función fopen (file open – abrir archivo), especificando el nombre del
archivo y además, que se va abrir para escribir en él, mediante la opción “w” (write –
escribir).

Para escribir datos al archivo se tiene que usar la función fprintf, indicando el
archivo de salida, el especificador de conversión adecuado y el dato. El archivo se
debe de cerrar antes de terminar la ejecución del programa usando la función fclose.

74 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

Ejercicio 13.-

El programa que se muestra abajo hace lo siguiente:


1. pide al usuario el nombre completo del archivo que se va a crear.
2. crea el archivo para escritura en la unidad, ruta y nombre de archivo que se le
indique.
3. pide al usuario que indique cuántos datos se van a guardar en el archivo.
4. usa un ciclo do-while para iterar pidiendo cada dato y escribirlo al archivo.
5. cierra el archivo usando la función fclose.

2.- Análisis de entrada / salida.

En este planteamiento se tendrán como entrada nombre de archivo (datos)


proporcionados por el usuario; la salida serán los datos guardados.

Nombre de archivo, datos Programa datos

3.- Solución en lenguaje cotidiano.

 El programa pide al usuario el nombre completo del archivo que se va a crear.


 Crea el archivo para escritura en la unidad, ruta y nombre de archivo que se le
indique.
 Pide al usuario que indique cuantos datos se van a guardar en el archivo.
 Usa un ciclo do-while para iterar pidiendo cada dato y escribirlo en el archivo.
 Cierra el archivo usando la función fclose.

75 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

INICIO
4.- Diagrama de flujo:
Declarar variables

“este programa….”

s_salida[k]  F
getchar()≠<enter>

k ++

s_salida[k] null

fopen (salida)

¿Cuantos datos?

i ++

Introduce dato i

dato

archivo  dato

i<n

F
fclose (salida)

FIN

76 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

5.- Código fuente en lenguaje C:

77 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

5.2.- Archivos para lectura


Se requiere la función fopen, especificando el nombre del archivo y además, que se
va abrir para leer desde éste, mediante la opción “r”. Para leer datos del archivo se
tiene que usar la función fscanf, indicando el archivo de entrada, el especificador
de conversión adecuado, y la variable a la cual se va a asignar el dato, precedida por
el operador de dirección &.

El archivo se debe cerrar antes de terminar la ejecución del programa usando la


función fclose.

Ejercicio 14.-

El programa que se muestra abajo hace lo siguiente:


1. Pide al usuario el nombre completo del archivo que se va a leer.
2. Intenta abrir el archivo para lectura en la unidad, ruta y nombre de archivo que se
le indique.
3. En caso de no poder abrir el archivo, despliega un mensaje de error y termina.
4. Usa un ciclo while para iterar leyendo cada dato y desplegarlo en pantalla. Durante
la iteración, se va acumulando la suma de los datos y guardando el mayor y el
menor de los datos.
5. Cierra el archivo usando la función fclose.
6. Previo a terminar, despliega el promedio, la cantidad de datos en el archivo, el
mayor y el menor de los datos.

2.- Análisis de entrada / salida.

En este planteamiento se tendrán como entrada los datos a leer de un archivo cuyo
nombre es proporcionado por el usuario; en caso de no poder abrir el archivo, se
marca error en la pantalla; la salida despliega el promedio, cantidad de datos en el
archivo, así como el mayor y menor de los datos.

datos, promedio, número de


Nombre de archivo datos Programa datos, mayor y menor

78 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

INICIO
3.- Diagrama de flujo:
Declarar variables

“este programa….”

Nombre_archivo

V fopen(archivo) = F
null

éxito
error

F
leerdato
=1

numdatos ++

dato

V
numdatos
=1
max  min  dato
F

suma + = dato

V
dato>max

max dato
1 2 F 4

79 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

2 3 4
1

V
dato<min

min dato
F

fclose (entrada)

numdatos, promedio, max, min

FIN

4.- Solución en lenguaje cotidiano.

 El programa pide al usuario el nombre completo del archivo que se va a abrir.


 El programa intenta abrir el archivo.
 En caso de no poder abrir el archivo, despliega un mensaje de error y termina.
 Usa un ciclo while para leer un dato del archivo, lo agrega a la suma y lo
registra si es el mayor o el menor de todos los datos.
 Cuando ya no hay más datos que leer, cierra el archivo y despliega cuántos
datos se leyeron, así como el promedio, el mayor y el menor de todos los datos.

80 Facultad de Ingeniería / Veracruz


Programación Estructurada Capítulo 5

5.- Código fuente en lenguaje C:

81 Facultad de Ingeniería / Veracruz

Potrebbero piacerti anche