You are on page 1of 2

UNJu FI - Metodologa de la Programacin Programacin I

Gua de Trabajos Prcticos


TP06
Ficheros de texto
CEA En una planilla de clculo crear tres campos (columnas) Nombres, Notas y AoIn (ao de ingreso) cargado con por lo menos 10 registros. Debe guardar el archivo como texto delimitado
por tabulaciones en c:\mios\Nota1.txt y luego mediante un programa:
a. Mostrar los datos del fichero de texto
b. Mostrar el estudiante que tenga la nota mnima.
c. Transferir los datos a un arreglo de registros y mostrar los datos ordenados por Nombre
1. Mediante el block de notas o un procesador de textos, crear un fichero de texto denominado
espacios.txt, escribir una o varias frases y luego guardar el archivo en formato texto.
Analizar y ejecutar el programa cuentaEspacios en Lazarus que cuenta la cantidad de caracteres espacios y la cantidad de caracteres que no son espacios.
2. Analizar y ejecutar el programa f_texto1 que calcula la suma de los datos que tiene el archivo texto1.txt.
program cuentaEspacios;
uses
sysUtils;
var
f: textFile;
c: char;
cont1, cont2: integer;
archivo: string[80];

program f_texto1;
uses sysUtils, crt;
var
f: textFile;

begin
archivo := 'c:\mios\espacios.txt';
assignFile (f, archivo);
cont1 := 0;
cont2 := 0;
reset(f);
while not eof (f) do
begin
while not eoln (f) do
begin
read (f, c);
if c = ' ' then
cont1 := cont1 + 1
else
cont2 := cont2 + 1
end;
readln(f)
end;
writeln('Espacios
: ',cont1);
writeln('No espacios: ',cont2);
closeFile(f);
readln
end.

3. Disear un programa en Lazarus


Nombre (cadena de caracteres),
el ingreso de datos finaliza a
de clculo y sumar los sueldos

que d
Sueldo
pedido
de las

procedure CrearCargarF (var f: textFile);


var
i, n: longint;
begin
rewrite (f);
write ('ingrese cantidad de registros: ');
readln (n);
for i:=1 to n do
writeln(f, random(1000));
closeFile (f)
end; { fin CrearCargarF}
function sumaF(var f: textFile): real;
var
r, s :real;
begin
reset (f);
s:=0;
while not eof (f) do
begin
readln (f, r);
s:=s + r;
end;
closeFile (f);
sumaF := s
end; {fin sumaF}
begin
assignFile (f, 'c:\mios\texto1.txt');
CrearCargarF (f);
writeln ('suma :', sumaF(f):5:1);
readkey
end.
origen a un fichero de textos que tenga tres campos
(real) y Categoria (tipo carcter y puede ser A o B);
del operador. Luego abrir el fichero en una planilla
personas que tengan categora B nicamente.

4. Utilizando el fichero de textos del ejercicio anterior, transferirlo a un arreglo de regisFacultad de Ingeniera - Universidad Nacional de Jujuy - Gorriti 237 - Jujuy Argentina Tel: 54-88-221577
Metodologa de la Programacin
https://sites.google.com/site/mpfiunju/
-1-

UNJu FI - Metodologa de la Programacin Programacin I


Gua de Trabajos Prcticos
tros y realizar la misma actividad del ejercicio anterior.
5. Cargar los siguientes datos en una planilla de clculo, luego guardar el archivo como texto
delimitado por tabulaciones en c:\mios\Nota2.txt Disear un programa en Lazarus que lea el
fichero de textos anterior y calcular el promedio de cada una de las columnas de notas, tenga en cuenta que el fichero tiene un encabezado.
Nombre y Apellido

Nota 1 Nota 2

Robert, Zimmerman

9.5

5.6

Cherilyn, Sarkisian

7.8

8.2

Margarita, Cansino

4.7

9.3

Bernard, Schwartz

3.3

7.8

Jerome, Silberman

8.4

6.6

Raquel, Tejada

5.9

7.3

Greta, Gustafsson

6.8

5.7

Eugene, Orowitz

8.3

9.2

Demetria, Guynes

2.8

9.6

Camille, Java

7.9

6.1

Kris, Carson

6.9

9.2

6. Para los siguientes datos que son registros de empleados de un supermercado realizar un programa modular en Lazarus:
1. Crear un fichero de texto denominado empleados.txt que almacene los datos
2. Mostrar los datos del fichero de texto empleados.txt
3. Transferir los datos a un arreglo de registros
a. Mostrar los datos ordenados por Nombre para los empleados activos (Estado a)
b. Agregar un registro. Valide que no est repetido por el campo clave Legajo
c. Eliminar un registro para un legajo dado,
4. Actualizar el fichero empleados.txt con los cambios producidos en el arreglo de registros
Legajo
Nombre
Sector
Ingreso
Estado

100
Carus A.
C
1993
v

110
Solana E.
P
1982
a

120
Esper J.
L
1980
a

130
140
Abn A. Abud Y.
A
C
2000
1999
v
a

150
Zucco R.
L
1980
a

160
Huber F.
A
2001
b

170
Rosso R.
C
2000
a

180
190
Abn A. Salas C.
P
A
1982
1975
a
b

Facultad de Ingeniera - Universidad Nacional de Jujuy - Gorriti 237 - Jujuy Argentina Tel: 54-88-221577
Metodologa de la Programacin
https://sites.google.com/site/mpfiunju/
-2-