You are on page 1of 10

Ficha Nro.

18
Registros

JTP: Mg. Ing. Marina E. Cardenas


AUX: Ing. Adriana Párraga (1K10) – Ing. Jorge Harach (1K12)
Recordatorio durante la clase:

Mg. Marina E. Cardenas


Registros
 Estructura de datos: se define como una variable
capaz de contener varios valores al mismo tiempo.
Algunos ejemplos ya estudiados: tuplas, cadenas de
caracteres y rangos.
 Un registro es un conjunto mutable de valores que
pueden ser de distintos tipos.
 Cada componente de un registro se denomina campo
(o también atributo).

Mg. Marina E. Cardenas


Registros
 Ejemplo de Registros:

Mg. Marina E. Cardenas


Registros
# declaración de un tipo registro vacío
class Empleado:
pass

# una función para inicializar un registro de tipo # Empleado


def init(empleado, leg, nom, direc, suel, ant):
empleado.legajo = leg
empleado.nombre = nom
empleado.direccion = direc
empleado.sueldo = suel
empleado.antiguedad = ant

# una función para mostrar un registro de tipo Empleado


def write(empleado):
print("\nLegajo:", empleado.legajo, end=' ')
print("- Nombre:", empleado.nombre, end=' ')
print("- Direccion:", empleado.direccion, end=' ')
print("- Sueldo:", empleado.sueldo, end=' ')
print("- Antiguedad:", empleado.antiguedad, end=' ')

Mg. Marina E. Cardenas


Registros
# una función para mostrar un registro de tipo Empleado
def write(empleado):
print("\nLegajo:", empleado.legajo, end=' ')
print("- Nombre:", empleado.nombre, end=' ')
print("- Direccion:", empleado.direccion, end=' ')
print("- Sueldo:", empleado.sueldo, end=' ')
print("- Antiguedad:", empleado.antiguedad, end=' ')

# una función de prueba


def test():
# creación de variables vacías de tipo Empleado...
e1 = Empleado()
e2 = Empleado()
e3 = Empleado()
# inicialización de campos de las tres variables...
init(e1, 1, 'Juan', 'Calle 1', 10000, 10)
init(e2, 2, 'Luis', 'Calle 2', 20000, 15)
init(e3, 3, 'Pedro', 'Calle 3', 25000, 20)
# visualización de los valores de los tres registros...
write(e1)
write(e2)
write(e3)
# script principal...
if __name__ == '__main__':
test()
Mg. Marina E. Cardenas
Registros
class Empleado:
def __init__(self, leg, nom, direc, suel, ant):
self.legajo = leg
self.nombre = nom
self.direccion = direc
self.sueldo = suel
self.antiguedad = ant

def test():
e1 = Empleado(1, 'Juan', 'Calle 1', 10000, 10)
e2 = Empleado(2, 'Luis', 'Calle 2', 20000, 15)
e3 = Empleado(3, 'Pedro', 'Calle 3', 25000,20)
write(e1)
write(e2)
write(e3)

Mg. Marina E. Cardenas


Registros: Guía de Ejercicios
Prácticos 18
1. Triatlon
El Comité Argentino de Atletismo llevo a cabo una prueba atlética
de Triatlón, nos solicito un programa que valide lo anotado por
los jueces del evento, para dicho propósito se deben cargar los
datos de los tres atletas con mejor promedio. De cada atleta se
conocen Nombre, Tiempo Natación, Tiempo Ciclismo, Tiempo
Corriendo (todo en minutos para simplificar los cálculos).

Usted debe:

1. Informar tiempo promedio de cada competidor


2. Determinar el podio, indicando el nombre del primer, segundo y
tercer mejor promedio

Mg. Marina E. Cardenas


Registros: Guía de Ejercicios
Prácticos 18
2. Analizando Temperaturas
El Servicio Metereológico Nacional solicitó un programa que
mediante un menú de opciones, permita analizar las amplitudes
térmicas desde diferentes puntos de vista, para ello las
opciones a las que el programa debe responder son:

1. Cargar n análisis térmicos (n ingresado por el usuario), cuyos


datos son: región, mes (numero del 1 al 12), temperatura máxima,
temperatura mínima.
2. Permitir informar la temperatura máxima promedio en el primer
semestre
3. Permitir informar la región y el mes en que se registró la menor
mínima del año
4. Salir

Mg. Marina E. Cardenas


Registros: Guía de Ejercicios
Prácticos 18
3. Trafico de Red
Un cyber nos solicitó un programa que permita realizar un análisis
del tráfico de la red, para ello debemos procesar n registros
que contengan la dirección ip de la máquina que envía, dirección
ip de la máquina que recibe la info y el tamaño en bytes
enviados.

En base a esto usted debe, mediante un menú de opciones, darle la


oportunidad al usuario de:

1. Saber la cantidad total de bytes enviados por una dirección ip


ingresada por el usuario
2. Mostrar los datos del registro que tengan la menor información
enviada
3. Saber para una ip destino, la cantidad el porcentaje de veces
que recibió información sobre el total del trafico de la red

Mg. Marina E. Cardenas

You might also like