Advertisement
Guest User

Untitled

a guest
Oct 10th, 2019
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.14 KB | None | 0 0
  1. def promedio(lista):
  2.     # sacamos de la lista la nota de cada solemne
  3.     ns1 = lista[0]
  4.     ns2 = lista[1]
  5.     ns3 = lista[2]
  6.  
  7.     # calculamos la nota final con las ponderaciones que nos dan en el enunciado
  8.     nota_final = ns1 * 0.3 + ns2 * 0.3 + ns3 * 0.4
  9.  
  10.     # entregamos la nota final
  11.     return nota_final
  12.  
  13.  
  14. def estadoEstudiante(diccionario, nombre):
  15.     # revisamos si el alumno esta en la lista, una choreza, no te lo piden y en este caso nunca va a pasar.. porsiaca
  16.     if nombre not in diccionario.keys():
  17.         return "Estudiante no se encuentra en la lista, reprobado por weon"
  18.  
  19.     # sacamos todos los datos de el alumno
  20.     estudiante = diccionario[nombre]
  21.     # separamos las notas de la asistencia
  22.     notas = estudiante[0]
  23.     asistencia = estudiante[1]
  24.  
  25.     # segun el enunciado, esas dos condiciones se deben cumplir para aprobar
  26.     if promedio(notas) > 3.95 and asistencia >= 75:
  27.         return True
  28.     else:
  29.         return False
  30.  
  31.  
  32. def aprobadosReprobados(diccionario):
  33.     # para cada nombre en el diccionario
  34.     for alumno in diccionario:
  35.         # obtenemos el estado del estudiante (usando la funcion de arriba)
  36.         estado = estadoEstudiante(diccionario, alumno)
  37.  
  38.         # si el alumno aprovo, se anota en la lista de aprovados, si no, en la lista de reprobados
  39.         if estado == True:
  40.             f = open("aprobados.txt", "a")
  41.             f.write(alumno + "\n")
  42.             f.close()
  43.         elif estado == False:
  44.             f = open("reprobados.txt", "a")
  45.             f.write(alumno + "\n")
  46.             f.close()
  47.  
  48.  
  49. """ EL PROGRAMA EMPIEZA A CORRER DESDE ACA """
  50. # Solo para asegurar que el archivo exista
  51. h = open("aprovados.txt", "w")
  52. g = open("reprobados.txt", "w")
  53. h.close()
  54. g.close()
  55.  
  56. # Lista de estudiantes del enunciado
  57. estudiantes = {
  58.     # Primer dato: array con notas de solemne, segundo dato: asistencia
  59.     "Carlos": [[35, 37, 46], 82],
  60.     "Manuel": [[55, 51, 52], 62],
  61.     "Diego": [[62, 10, 10], 99],
  62.     "Juan": [[23, 15, 15], 82],
  63.     "Leslie": [[43, 20, 20], 73],
  64.     "David": [[62, 69, 70], 65]
  65. }
  66.  
  67. # llamamos a nuestra super funcion
  68. aprobadosReprobados(estudiantes)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement