Anda di halaman 1dari 8

1.

Problema 2

1.1. Análisis del problema

Este problema consistía en generar un programa que registrara las lecturas de los niveles de glucosa
para algunos pacientes del centro de salud Sentirse Bien. En este programa se hacen lecturas de
glucosa antes y después de cada comida, todos los días para un determinado paciente. Lo que
representa un total de seis lecturas por día.

Para el caso de n – días se debía generar un informe de seguimiento médico que muestre:

 El mayor nivel de glucosa obtenido de todas las mediciones. Para ello hacemos uso de la
función máx.
 El menor nivel de glucosa obtenido de todas las mediciones. De forma análoga al ítem
anterior pero ahora hacemos uso de la función min.
 Cantidad de mediciones que se encuentran en un nivel alto. Acá se utilizan los condicionales
para poder obtener de la lista de datos las mediciones que sean mayores a 140.
 Cantidad de veces que la glucosa después de cenar estaba en nivel normal. En este caso se
deben cumplir dos condiciones: la primera consiste en la lista de mediciones de glucosa
corresponda a las después de cenar (usamos un arreglo de datos en lista) y segunda que
estos valores se encuentren entre 70 y 140.
 Nivel de glucosa promedio que el paciente tuvo antes del desayuno. Primero seleccionamos
las mediciones correspondientes al nivel de glucosa antes de desayuno, las sumamos y por
ultimo las dividimos por el total de dichas mediciones.

1.2. Algoritmo en pseudocódigo

Para dar solución al registro de niveles de glucosa de un único paciente, se plantea el siguiente
pseudocódigo en Python 3.7.2., en el cual se pueden ver algunos comentarios ayuda para su
interpretación:

print("Registro diario de niveles de glucosa")

med_glucosa = []
n = int(input("Ingrese numero de dias "))

if n > 0:
for x in range(n):
mg1=int(input("Ingrese el nivel de glucosa antes del desayuno:"))
mg2=int(input("Ingrese el nivel de glucosa despues del desayuno:"))
mg3=int(input("Ingrese el nivel de glucosa antes del almuerzo:"))
mg4=int(input("Ingrese el nivel de glucosa despues del almuerzo:"))
mg5=int(input("Ingrese el nivel de glucosa antes de la cena:"))
mg6=int(input("Ingrese el nivel de glucosa despues de la cena:"))
med_glucosa.extend([mg1, mg2, mg3, mg4, mg5, mg6])

print(med_glucosa)
#print(med_glucosa[5::6]) #Mediciones de glucosa despues de la cena

antes_desayuno =med_glucosa[0::6] #Mediciones de glucosa antes del


desayuno
#print(antes_desayuno)

def suma_lista(antes_desayuno):
la_suma = 0
for i in antes_desayuno:
la_suma = la_suma + i
return la_suma

#print(float(suma_lista(antes_desayuno)))
#print(len(antes_desayuno))
#print(float(suma_lista(antes_desayuno))/len(antes_desayuno))

gdc = med_glucosa[5::6] #Mediciones de glucosa despues de la cena


#print(gdc)

gad = med_glucosa[0::6] #Mediciones de glucosa antes del desayuno


#print(gad)

print(max(med_glucosa), ": Corresponde al mayor nivel de glucosa


obtenido en las mediciones")
print(min(med_glucosa), ": Corresponde al menor nivel de glucosa
obtenido en las mediciones")
print("Corresponde al numero de mediciones de glucosa alta: ")
for elem in med_glucosa:
if elem > 140:
print(elem)
print("Corresponde al numero de mediciones de glucosa con nivel normal
despues de la cena: ")
gdc = med_glucosa[5::6] #Mediciones de glucosa despues de la cena
#print(gdc)
for val in gdc:
if val >= 70 and val <= 140:
print(val)
print(float(suma_lista(antes_desayuno))/len(antes_desayuno), ":
Corresponde al nivel de glucosa promedio que el paciente tuvo antes del
desayuno")
if n == 0:
print("A ingresado un valor no válido")
print("Intentenlo de nuevo con un valor mayor a 0")

1.3. Evidencias de ejecución del programa

Ilustración 1. Prueba de escritorio con el pseudocódigo en Python 3.7.2 listo para la ejecución.
Ilustración 2. Evidencias de ejecución del programa en Python 3.7.2. Los resultados que se observan son los mismos
obtenidos en el ejemplo dados en la guía de laboratorio.

2. Ejercicio 1

2.1. Análisis del problema

En este ejercicio se pide registrar la identificación de cada postulante con su nombre y promedio de
notas de pregrado. Se requiere un programa para n – postulantes en donde se registre el número
de personas que aplicaron, el numero de promedios mayores e inferiores a 4.0 y el nombre del
candidato con el promedio más alto junto con el valor de dicho promedio.

Para el número de personas que aplican se crea una variable que registre y cuente el número de
candidatos registrados, teniendo en cuenta el condicional While True para preguntar al usuario si
desea continuar con el registro de datos o desea finalizar el proceso. El numero personas con
promedio mayor o igual a 4.0 se hace creando una variable que registre y cuente el número de
personas indexadas. Se aclara que teniendo en cuenta el número total de personal y el número total
de personas con promedio mayor a 4.0 puedo obtener el número de personas con persona menor
a cuatro con la diferencia de dichos valores.

Por último, el nombre del candidato con su promedio se determina con la función máx. teniendo en
cuenta que el primer término del vector a guardar sea el promedio y por último la identificación de
la persona, permitiendo así una sintaxis más corta.

2.2. Algoritmo en pseudocódigo

El código desarrollado en Python 3.7.2 es el siguiente:

print("Postulación becas posgrado")

registro = []
pro = []

while True:
print("Ingrese nombre del solicitante")
nombre = input()
print("ingrese promedio de notas del pregrado con una solo cifra
decimal. Por ejemplo 4.2")
promedio = float(input())
registro.append([promedio, nombre])
pro.extend([promedio])
resp =int(input("Presiones 1 si desea ingresar otro solicitante, caso
contrario 0: "))
if resp == 0:
print("A finalizado el proceso")
break

print(registro)
print(pro)
print([pro.count(4.1), pro.count(4.2), pro.count(4.3),
pro.count(4.4), pro.count(4.5), pro.count(4.6), pro.count(4.7),
pro.count(4.8), pro.count(4.9), pro.count(5.0)])

print("El número de personas que aplicaron a la beca es: ")


print(len(registro))
print("El número de personas con promedio mayor a 4.0 es: ")
print(sum([pro.count(4.1), pro.count(4.2), pro.count(4.3),
pro.count(4.4), pro.count(4.5), pro.count(4.6), pro.count(4.7),
pro.count(4.8), pro.count(4.9), pro.count(5.0)]))
print("El número de personas con promedio menor a 4.0 es: ")
print(len(registro) - (sum([pro.count(4.1), pro.count(4.2), pro.count(4.3),
pro.count(4.4), pro.count(4.5), pro.count(4.6), pro.count(4.7),
pro.count(4.8), pro.count(4.9), pro.count(5.0)])))
print("El nombre del candidato con el promedio mas alto y su promedio es: ")
print(max(registro))

2.3. Evidencias de ejecución del programa


Ilustración 3. Prueba de escritorio con el pseudocódigo en Python 3.7.2 listo para la ejecución.
Ilustración 4. . Evidencias de ejecución del programa en Python 3.7.2.

Anda mungkin juga menyukai