sábado, 22 de febrero de 2025

Determinar el biotipo de una persona en Python

Continuando con esta serie sobe el cálculo de biotipos en C y Java ahora veremos cómo se hace en Python.

Siguiendo la misma lógica de la entrega anterior tenemos:

biotipo.py

peso_dict = {
    "85.54": 3.0, "83.79": 2.75, "82.04": 2.5, "80.29": 2.25,
    "78.54": 2.0, "76.79": 1.75, "75.04": 1.5, "73.29": 1.25,
    "71.54": 1.0, "69.79": 0.75, "68.04": 0.50, "66.29": 0.25,
    "64.54": 0.0, "62.79": -0.25, "61.04": -0.50, "59.29": -0.75,
    "57.54": -1.0, "55.79": -1.25, "54.04": -1.50, "52.29": -1.75,
    "50.54": -2.0, "45.79": -2.25, "47.04": -2.5, "45.29": -2.75,
    "43.54": -3.0
}

estatura_dict = {
    "1.87": 3.0, "1.86": 2.75, "1.85": 2.50, "1.83": 2.23,
    "1.82": 2.0, "1.81": 1.75, "1.79": 1.50, "1.78": 2.25,
    "1.77": 1.0, "1.75": 0.75, "1.74": 0.50, "1.73": 0.25,
    "1.71": 0.0, "1.7": -0.25, "1.69": -0.50, "1.67": -0.75,
    "1.66": -1.0, "1.65": -1.25, "1.63": -1.50, "1.62": -1.75,
    "1.61": -2.0, "1.59": -2.25, "1.58": -2.50, "1.57": -2.75,
    "1.55": -3.0
}

def obtener_valor(diccionario, clave):
    return diccionario.get(clave, -999.0)

def main():
    peso = input("Tu peso es de (ejemplo: 56.00): ").strip()
    estatura = input("Tu estatura es de (ejemplo: 1.55): ").strip()

    valor_peso = obtener_valor(peso_dict, peso)
    valor_estatura = obtener_valor(estatura_dict, estatura)

    #print(f"valor peso: {valor_peso:.1f}")
    #print(f"valor estatura: {valor_estatura:.1f}")
    
    if valor_peso == -999.0 or valor_estatura == -999.0:
        print("Error: Peso o estatura no válidos. Asegúrate de ingresar valores dentro del rango permitido.")
        return

    desviacion = valor_peso - valor_estatura

    if desviacion < 0:
        print("Tu biotipo es: longitipo. Largo. Delgado. De apariencia frágil.")
    elif desviacion > 0:
        print("Tu biotipo es: braquitipo. Sobrepeso. Acumula grasas. Puede ganar musculatura si realiza ejercicio.")
    else:
        print("Tu biotipo es: normotipo. Fuerte. Atlético. Musculoso.")

if __name__ == "__main__":
    main()

Ejecutando:

Tu peso es de (ejemplo: 56.00): 75.04
Tu estatura es de (ejemplo: 1.55): 1.66
Tu biotipo es: braquitipo. Sobrepeso. Acumula grasas. Puede ganar musculatura si realiza ejercicio.

Como hemos mencionado, el código qrequiere ciertos ajustes para abarcar más pesos y tallas.

Enlaces:

https://ucsc.cl/medios-ucsc/blogs-academicos/biotipo-y-el-factor-mental/

No hay comentarios:

Publicar un comentario