Está en la página 1de 7

INGENIERÍA INDUSTRIAL

MODELAMIENTO y DISEÑO ORIENTADO A OBJETOS


20222
PRACTICA DIRIGIDA

Profesor: Franchesca Rodríguez

1.- POO (12 ptos)


Crear una clase llamada Persona que siga las siguientes condiciones:
 Sus atributos iniciales deberán ser: nombre, edad, sexo (H hombre, M mujer), peso en
kilogramos y altura en metros, utilizar el método constructor.
 Añadir 2 atributos más que sean representativos de la clase creada.
Los métodos que se implementarán para esta clase son:
1. mostrar(): devuelve toda la información del objeto.
2. calcularIMC (): de acuerdo con las siguiente fórmula (peso en kg/(altura^2 en m)) y
tomando como referencia la tabla que a continuación se muestra establezca el nivel de
peso de las personas.

3. evaluarEdad(): indicar si la persona es mayor o menor de edad


4. comprobarSexo(): comprueba que el sexo introducido es correcto. Si no es correcto, se
enviará un mensaje indicando error en el ingreso del sexo de la persona, recuerde que solo
es válido: H para hombre y M para mujer.

Desarrollo del código Python

#Creamos la clase Persona


class Persona:

#Creamos el constructor con sus atributos respectivos


def _init_(self, nombre, edad, sexo, peso, altura, dni, celular):
self.nombre = nombre
self.edad = edad
self.sexo = sexo
self.peso = peso
self.altura = altura
self.dni = dni
self.celular = celular

#Creamos un método para mostrar la información


def mostrar(self):
print("Nombre :", self.nombre)
print("Edad :", self.edad)
print("Sexo :", self.sexo)
print("Peso :", self.peso)
print("Altura :", self.altura)
print("Dni :", self.dni)
print("Celular :", self.celular)

#Creamos un método para calcular el IMC


def calcularIMC(self):

#Fórmula para calcular el IMC


IMC=self.peso/pow(self.altura,2)

#Creamos variables locales y asignamos los niveles de peso


bp = "Bajo peso"
n = "Normal"
sp = "Sobrepeso"
o = "Obeso"

#Condicional Anidado que depende del IMC para mostrar el Nivel de


Peso
if IMC < 18.5:
print("Nivel de peso :",bp)
elif IMC >= 18.5 and IMC <= 24.9:
print("Nivel de peso :",n)
elif IMC >= 25.0 and IMC <= 29.9:
print("Nivel de peso :",sp)
elif IMC >= 30.0:
print("Nivel de peso :",o)
else:
print("Nivel de peso : Es incorrecto! Intentelo de nuevo")

#Creamos un método para evaluar su edad


def evaluarEdad(self):

#Creamos variables locales asignando su evaluación


mayor = "mayor de edad"
menor = "menor de edad"

#Creamos un condicional anidado para evaluar la edad


if self.edad <= 17:
print("Evaluar edad :",menor)
elif self.edad >=18:
print("Evaluar edad :",mayor)
else:
print("Evaluar edad : Error! Intentelo de nuevo")

#Creamos un método para comprobar el sexo ingresado


def comprobarSexo(self):

#Creamos variables locales para indicar los mensajes


correcto = "El sexo introducido es correcto :D"
error = "El sexo introducido es inválido (Recuerde que solo es vál
ido H:Hombres M:Mujer)"

#Creamos un condicional anidado para comprobar el sexo


if self.sexo=="H":
print("Comprobar sexo :", correcto)
elif self.sexo=="M":
print("Comprobar sexo :", correcto)
else:
print("Comprobar sexo :", error)

#Creamos una instancia de clase u objeto persona 1 para mostrar los re


sultados
persona1=Persona()
persona1._init_("Mario Ruiz", 19, "M", 64, 1.76, 76932971, 913087413)
persona1.mostrar()
persona1.calcularIMC()
persona1.evaluarEdad()
persona1.comprobarSexo()

Ejecución del código Python


2. Crear dos ejemplos de cada tipo de relación considerando atributos y métodos (herencia,
agregación, composición y asociación)- 8 ptos.

Diagramas UML Herencia


Diagramas UML Agregación
Diagramas UML Composición
Diagramas UML Asociación

San Isidro, 17 de agosto de 2022

También podría gustarte