Christian Vasquez Semana6 ProavzII
Christian Vasquez Semana6 ProavzII
Christian Vasquez Semana6 ProavzII
Programación Avanzada II
Instituto IACC
03 de octubre de 2021
Desarrollo
1.-
Imagine que usted ha sido seleccionado para diseñar lógicamente (puede usar elementos
gráficos como formas de Word, tipo un mapa conceptual) un sistema para el registro de
estudiantes de colegios privados de la Región Metropolitana de Santiago, este sistema debe
manejar las personas dentro del proceso como son: estudiantes con todos sus atributos
(nombre, apellido, rut, dirección) y apoderados también con sus atributos (nombre, apellido,
Rut, dirección), que año y asignaturas cursan cada uno de los estudiantes, si realizan
actividades extras, especificando cual actividad realizan.
Ahora bien, basándose en esa situación ponga en práctica sus conocimientos adquiridos de
Python y ejemplifique lo siguiente:
(3 puntos).
puntos).
Respuestas:
CLASS PERSONA
NOMBRE
APELLIDO
RUT
DIRECCION
privados de la Región Metropolitana de Santiago, este sistema debe manejar las personas dentro
del proceso como son: estudiantes con todos sus atributos (nombre, apellido, rut, dirección) y
apoderados también con sus atributos (nombre, apellido, Rut, dirección), que año y asignaturas
cursan cada uno de los estudiantes, si realizan actividades extras, especificando cual actividad
realizan.
El algoritmo aplicado es el siguiente:
class Persona(object):
"""Persona"""
def __init__(self, nombre, apellido, rut, direccion):
self.nombre = nombre
self.apellido = apellido
self.rut = rut
self.direccion = direccion
class Estudiante(Persona):
"""estudiante"""
def __init__(self, nombre, apellido, rut, direccion, anno):
Persona.__init__(self, nombre, apellido, rut, direccion)
self.anno = anno
self.tareas = ['taller','historia','Frances','Teoria Musical']
self.extras = ["Futbol","Judo"]
def __str__(self):
return "%s %s %s, cursa: %s,y sus asiganaturas son: %s,y realiza actividades co
mo:%s" % (
self.__doc__[0:11], self.nombre, self.apellido,
self.anno, self.consulta_tareas(),self.consulta_extras())
def consulta_tareas(self):
return ', '.join(self.tareas)
def consulta_extras(self):
return ",".join(self.extras)
class Apoderado (Estudiante):
"""El apoderado"""
def __init__(self,nombre, apellido, rut, direccion ,anno ,padre):
Estudiante.__init__(self, nombre, apellido, rut, direccion, anno)
self.padre=padre
self.estudiante= str(estudiante1)
def __str__(self):
return "%s %s %s que vive en %s%s,es apoderado del %s" % (
self.__doc__[0:12],self.nombre,self.apellido,
self.direccion,self.anno,self.estudiante)
def consulta_padre(self):
return ",".join(self.padre)
nombre_completo = lambda nombre,apellido: "nombre completo: {self.nombre()}
{self.apellido()}"
estudiante1 = Estudiante ("Steffan", "Vasquez", "16.434.432-1", "Juan Cariman 18
00", "el quinto año")
estudiante2 = Estudiante ("Christian", "Vásquez", "19.153.454-4", "Juan Cariman
1800", "el segundo año")
Apoderado = Apoderado ("Pablo","Vasquez","8.231.543-2","Peñalolen", estudiante1)
nombre_completo=(apoderado.nombre,apoderado.apellido)
print ("\n" + str(apoderado) + "\n")
print ("\n" + str(estudiante2)+"\n")
print (estudiante2.rut)
print (apoderado)
print (nombre_completo)
De acuerdo al método de salida nos aparecería que el apoderado “PABLO VASQUEZ” que
reside en la comuna de PEÑALOLEN, SANTIAGO, es apoderado directo del estudiante
“STEFFAN VASQUEZ” quien cursa el “QUINTO AÑO”, donde sus asignaturas son:
“TALLER”, HISTORIA, FRANCES, TEORIA MUSICAL además posee clases de FUTBOL y
JUDO como actividades extras. De la misma forma, podemos apreciar un segundo estudiante
llamado “CHRISTIAN VASQUEZ”, quien cursa el SEGUNDO AÑO escolar, presentando como
estudios académicos TALLER, HISTORIA, FRANCES, TEORIA MUSICAL indicando además
sus actividades extras siendo futbol y judo.
Bibliografía