Escribe un programa en python que permita guardar las notas de un alumno conseguidas en un cuatrimestre. Guarda la información en un diccionario cuyas claves sean las asignaturas y los valores las notas de cada asignatura. El programa pedirá la asignatura y la nota para esa asignatura. Si se recibe un número negativo en la nota, el programa termina y muestra las asignaturas suspensas.
Ejemplo
ssh
Introduce una asignatura: matemáticas
Introduce la nota: 4
Introduce una asignatura: economía
Introduce la nota: 8
Introduce una asignatura: programación
Introduce la nota: 10
Introduce una asignatura: ninguna
Introduce la nota: -2
Las asignaturas suspensas son:
matemáticas
In [1]:
# Creamos un diccionario vacío para guardar las notas.
notas = {}
# Bucle para preguntar por la asignaturas y la notas.
while True:
# Pregruntamos pora la asignatura y la nota
asignatura = input('Introduce una asignatura: ')
nota = float(input('Introduce la nota: '))
# Condicional para ver si la nota es menor que 0.
if nota < 0:
# Si la nota es menor que 0 interrumpimos el bucle.
break
else:
# Si la nota es mayor que 0 añadimos el par formado por la asignatura y su nota al diccionario.
notas[asignatura] = nota
# Mostrar por pantalla las asignaturas suspensas.
print('Las asignaturas suspensas son: ')
# Bucle para recorrer el diccionario de asignaturas y notas.
for asignatura, nota in notas.items():
# Condicional para ver si la nota es menor que 5.
if nota < 5:
# Si la nota es menor que 5 mostramos por pantalla la asignatura.
print(asignatura)
In [4]:
# Creamos un diccionario vacío para guardar las notas.
notas = {}
# Bucle para preguntar por la asignaturas y la notas.
while True:
# Pregruntamos pora la asignatura y la nota
asignatura = input('Introduce una asignatura: ')
nota = float(input('Introduce la nota: '))
# Condicional para ver si la nota es menor que 0.
if nota < 0:
# Si la nota es menor que 0 interrumpimos el bucle.
break
else:
# Si la nota es mayor que 0 añadimos el par formado por la asignatura y su nota al diccionario.
notas[asignatura] = nota
# Mostrar por pantalla las asignaturas suspensas.
print('Las asignaturas suspensas son: ')
# Comprensión de lista para obtener la lista de asinaturas suspensas.
suspensas = [asignatura for asignatura, nota in notas.items() if nota < 5]
# Contatenamos las asignaturas de la lista de asignaturas suspensas y las mostramos por pantalla.
print('\n'.join(suspensas))