rosquillaconchocolate@gmail.com
turyasd
python
3 years ago
3.4 kB
5
Indexable
'''Programa que pregunte de cuántas notas es el lapso a evaluar, que luego pida las notas de dicha cantidad y que luego muestre el promedio y si éste es menor a 3.5 que muestre la nota o las notas más bajas y que diga cuánto debería subirla para tener un promedio de 3.5''' print("Bienvenido al programa para calcular promedios colegiales!") listaNotas=[] promedioUser=0 while True: eleccion=int(input("Introduce el máximo de notas a evaluar: ")) if eleccion > 1: break else: print("Debes introducir mínimo 2 notas") #Establecemos las notas dentro de una lista, dependiendo del número de lapso escogido por el usuario for i in range(eleccion): num = float(input("Introduce la nota número {}: ".format(i+1))) if num <= 5: listaNotas.append(num) else: print("No puedes agregar una nota mayor a 5") num = float(input("Introduce la nota número {}: ".format(i+1))) if num <= 5: listaNotas.append(num) else: print("¿Es en serio?") #Definimos la nota menor y la devolvemos mediante un método para su posterior utilización def notaMenor(notasList): conteoMin = 5 for nota in notasList: if nota < conteoMin: conteoMin = nota return conteoMin notaMin = notaMenor(listaNotas) notaMinPrint = notaMin #Definimos la segunda nota menor, para su posterior uso def segundaNotaMenor(notasList): global notaMin conteoMin = 5 for nota in notasList: if nota < conteoMin: if nota > notaMin: conteoMin = nota return conteoMin #Establecemos el promedio base basePromedio = 3.5 * eleccion #Establecemos el promedio usando las notas del usuario for nota in listaNotas: promedioUser = promedioUser + nota #Establecemos promedio del usuario para elaborar la condicional promedioUserTotal = promedioUser / eleccion #Mostramos el promedio del usuario print("Tu promedio es de ", promedioUserTotal) if promedioUserTotal < 3.5: print("Dicho promedio no es suficiente para aprobar la asignatura") else: print("Felicidades! Con dicho promedio puedes aprobar la asignatura") exit() #Procedemos a comparar ambos promedios para saber cuánta nota nos falta residuoNotas = basePromedio - promedioUser #Comprobamos si es posible subir la nota mínima, si no es posible llamamos la segunda nota minima, si es posible seguimos sin entrar en el if if residuoNotas > (5 - notaMin): segundaNotaMin = segundaNotaMenor(listaNotas) segundaNotaMinPrint = segundaNotaMin #Dividimos los residuos de cada una de las dos notas residuoNota1 = 5 - notaMin residuoNotas = residuoNotas - residuoNota1 #Le sumamos el residuo a nuestra nota 1 notaMin = notaMin + residuoNota1 #Le sumamos el residuo a nuestra nota 2 segundaNotaMin = segundaNotaMin + residuoNotas #Imprimimos en consola ambas notas y su necesario para pasar asignatura print("Debes mejorar dos notas para poder aprobar la asignatura") print("La primera nota a mejorar es ", notaMinPrint, " debes aumentarla a ", notaMin) print("Tu segunda nota a mejorar es ", segundaNotaMinPrint, " debes aumentarla a ", segundaNotaMin) print("Con eso obtendrías un promedio de 3.5") exit() #Le sumamos el residuo a nuestra nota mínima e imprimimos la nota notaMin = notaMin + residuoNotas print("Tu nota más baja fue ", notaMinPrint, " debes aumentarla a ", notaMin, " para poder tener un promedio de 3.5")
Editor is loading...