Está en la página 1de 4

ESCUELA SUPERIOR POLITCNICA DEL LITORAL

FACULTAD DE INGENIERA EN ELECTRICIDAD Y COMPUTACIN

FUNDAMENTOS DE PROGRAMACIN
PRCTICA AUTNOMA UNIDAD 5 ARREGLOS N-DIMENSIONALES

IMPORTANTE: Leer detenidamente antes de comenzar el taller.

ndice de masa corporal de los jugadores de los Yankees

Se desea calcular el ndice de masa corporal (IMC) de los jugadores de baseball del equipo de
los Yankees. Los datos proporcionados corresponden a las listas altura y peso, tal como se
muestra a continuacin:
altura = [180, 215, 210, 210, 188, 176, 209, 200, 210, 188, 176, 209, 200]
peso = [69, 74, 72, 75, 68, 70, 71, 73, 69, 74, 72, 75, 68, 70, 71, 73]

Para crear el arreglo np_altura y np_peso, se tomar nicamente los 10 primeros elementos de
las listas altura y peso respectivamente.

El valor de IMC por cada jugador resulta de aplicar la frmula:

imc = peso(kg)/altura(m)**2.

Nota: Los valores de altura estn dados en centmetros por lo que deber hacer la conversin a
metros previo a la aplicacin de la frmula.

Adicionalmente, una vez obtenido el IMC se solicita:

a) Presentar el icm para cada jugador.


b) Verificar que jugadores tienen un imc menor a 16 para con base en el resultado, derivarlo
a una consulta mdica. (Utilice indexacin booleana)
c) Indicar en qu posicin se encuentra el icm ms alto y a qu jugador le pertenece.
d) Calcular el promedio de los icm resultantes.

Desarrollo:

Con base en los datos establecidos en el problema, tenemos la lista de alturas y pesos.

Luego se procede a importar la librera de numpy, utilizando as np como una convencin para
acortar el nombre de la librera.
Una vez importada la librera, se puede hacer uso de las funciones implementadas. En este caso
se invoc a la funcin array, que permite crear un arreglo a partir de una lista de elementos. Se
consideran nicamente los 10 primeros elementos de cada lista.

l1 = []
np_altura = np.array(altura[:10])
np_peso = np.array(peso[:10])

Adicionalmente, con base en la frmula es necesario transformar el arreglo de alturas que est
dado en centmetros y llevarlo a metros.

np_altura_m = np_altura/100

Se presenta las alturas y pesos de los jugadores, como se muestra a continuacin:

print("Las alturas en [m] ingresadas son: ",np_altura_m)


print("Los pesos en [kg] ingresados son: ",np_peso)
print("\n")

A continuacin, se calcula el ndice de masa corporal para cada jugador. El resultado de la


operacin anterior, se almacenar en la variable imc.

imc = np_peso/(np_altura_m**2)

En el literal a, se pide mostrar por pantalla el arreglo de imc, tal como sigue:
print("El arreglo de IMC es:",imc)
print("\n")

El literal b requiere presentar nicamente los jugadores que tengan un icm menor a 16, en cuyo
caso se debe imprimir un mensaje El jugador x con IMC y, debe asistir a consulta mdica.

As, primero se determina cul es el valor del arreglo que cumple con la condicin.

for i in range(len(imc)):
print("El jugador ",i+1," tiene un IMC de %6.2f" % imc[i])

a = imc[imc<18]
print("Los valores de IMC que cumplen con la condicin son:", a)
print("\n")

Luego se determina a qu jugador le corresponde el IMC ms bajo.


print("Determinar a que jugador le corresponde el IMC mas bajo")
for i in range(len(imc)):
if imc[i]<18:
l1.append(i+1)

for i in range(len(a)):
print("El jugador",l1[i],"con IMC de %6.2f" % a[i], ", debe acercarse a
consulta medica")
print("\n")

En el literal c, se solicita determinar la posicin en la que se encuentra el IMC ms alto y a qu


jugador corresponde.

print("El IMC mas alto se encuentra en la posicin:",np.argmax(imc),"y lo


tiene el jugador",np.argmax(imc)+1)
print("\n")

Finalmente, en el literal d se requiere calcular el promedio de todos los IMC. Para solventar este
tem se utiliz la funcin mean, la misma que fue aplicada sobre el arreglo IMC.
promedio = np.sum(imc)/len(imc)
print("El promedio del IMC de los jugadores es:%6.2f" % promedio)
print("\n")

La solucin completa del ejercicio se detalla a continuacin:


altura = [180,215,210,210,188,176,209,200,210,188,176,209,200]
peso = [69,74,72,75,68,70,71,73,69,74,72,75,68,70,71,73]

import numpy as np

l1 = []
np_altura = np.array(altura[:10])
np_peso = np.array(peso[:10])

np_altura_m = np_altura/100

print("Las alturas en [m] ingresadas son: ",np_altura_m)


print("Los pesos en [kg] ingresados son: ",np_peso)
print("\n")

#literal a
imc = np_peso/(np_altura_m**2)

print("El arreglo de IMC es:",imc)


print("\n")

#literal b
for i in range(len(imc)):
print("El jugador ",i+1," tiene un IMC de %6.2f" % imc[i])

a = imc[imc<18]
print("Los valores de IMC que cumplen con la condicin son:", a)
print("\n")

print("Determinar a que jugador le corresponde el IMC mas bajo")


for i in range(len(imc)):
if imc[i]<18:
l1.append(i+1)

for i in range(len(a)):
print("El jugador",l1[i],"con IMC de %6.2f" % a[i], ", debe acercarse a
consulta medica")
print("\n")

#literal c
print("El IMC mas alto se encuentra en la posicin:",np.argmax(imc),"y lo
tiene el jugador",np.argmax(imc)+1)
print("\n")

#literal d
promedio = np.sum(imc)/len(imc)
print("El promedio del IMC de los jugadores es:%6.2f" % promedio)
print("\n")

También podría gustarte