teslariu

integrador func

Nov 11th, 2021
1,111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.90 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. # Ejercicio integrador
  4. """
  5. Una universidad desea crear un programa para contabilizar los cursos que
  6. tiene cada alumno. Para ello debemos realizar primero una aplicación de
  7. consola la cual debe solicitar el nombre de un alumno y la cantidad de
  8. cursos en la que se encuentra inscripto. Estos dos valores deben
  9. almacenarse como una lista de dos elementos (el nombre y la cantidad de
  10. cursos como un número entero) en una lista de alumnos.
  11.  
  12. Una vez hecho esto, debemos hacer que el programa, al iniciar, pregunte
  13. cuál de las siguientes dos operaciones se debe realizar:
  14. ingresar un alumno o ver la lista de alumnos ingresados.
  15.  
  16. Ingrese el número de la operación que desea ejecutar:
  17. 1 - Ver la lista de alumnos.
  18. 2 - Añadir un alumno a la lista.
  19. 3 - Salir.
  20. >>> 2
  21. Ingrese el nombre del alumno: Pablo
  22. Ingrese la cantidad de cursos: 3
  23. ¡El alumno fue añadido a la lista!
  24.  
  25. Ingrese el número de la operación que desea ejecutar:
  26. 1 - Ver la lista de alumnos.
  27. 2 - Añadir un alumno a la lista.
  28. 3 - Salir.
  29. >>> 1
  30. Lista de alumnos:
  31. Pablo - 3 cursos
  32.  
  33. Ingrese el número de la operación que desea ejecutar:
  34. 1 - Ver la lista de alumnos.
  35. 2 - Añadir un alumno a la lista.
  36. 3 - Salir.
  37. >>> 4
  38. La opción ingresada no es correcta, vuelva a intentarlo.
  39.  
  40. Ingrese el número de la operación que desea ejecutar:
  41. 1 - Ver la lista de alumnos.
  42. 2 - Añadir un alumno a la lista.
  43. 3 - Salir.
  44. >>> 3
  45. ¡Gracias por utilizar el programa!
  46. """
  47. ########### TO DO  ################################
  48. """
  49. La lista de alumnos que habíamos creado en el módulo
  50. anterior ahora debe ser un diccionario, en donde las claves
  51. serán nombres de alumnos y los valores sus respectivas
  52. cantidades de cursos.
  53. Para esto deberemos modificar el código de las opciones 1
  54. y 2 (agregar un nuevo alumno y ver la lista de alumnos).
  55. La tercera opción será “Ver la cantidad de cursos de un
  56. alumno”. Deberá solicitar el nombre de un alumno e
  57. imprimir en pantalla el número de cursos que tiene
  58. asociados como clave.
  59. La cuarta opción es la de salir, como en la versión anterior.
  60.  
  61. """
  62. ####################################################
  63.  
  64. # alumnos = {"Tito":3, "Ana":5, "Hugo":11}
  65.  
  66. alumnos = {}
  67.  
  68. def mostrar_menu():
  69.     print(
  70.     """
  71.         Menú de opciones
  72.     *-----------------------------------*
  73.         1. Ver la lista de alumnos
  74.         2. Añadir un alumno a la lista
  75.         3. Ver la cantidad de cursos de un alumno
  76.         4. Salir
  77.     *-----------------------------------*  
  78.     """)
  79.  
  80.  
  81. def imprimir_lista(alumnos):
  82.     if not alumnos:
  83.         print("No hay alumnos")
  84.     else:
  85.         print("Lista de alumnos:")
  86.         for k,v in alumnos.items():
  87.             print(f"{k} - {v} cursos")
  88.  
  89.            
  90. def ingresar_alumno(alumnos):
  91.     nombres = list(alumnos.keys())
  92.     while True:
  93.         nombre = input("Ingrese el nombre: ")
  94.         if nombre in nombres:
  95.             print(f"Ya existe el alumno {nombre}")
  96.         elif len(nombre) == 0:
  97.             print("No ha escrito nada...")
  98.         elif nombre.isspace():
  99.             print("El nombre solo contiene espacios en blanco")
  100.         else:
  101.             break
  102.    
  103.        
  104.     while True:
  105.         cursos = input("Ingrese la cantidad de cursos: ")
  106.         if cursos.isdigit():
  107.             cursos = int(cursos)
  108.             break
  109.         else:
  110.             print("Debe ingresar un nro entero")
  111.     alumnos[nombre] = cursos   
  112.     return alumnos
  113.    
  114.  
  115. def ver_cursos(alumnos):
  116.     nombre = input("Ingrese el nombre: ")
  117.     nombres = list(alumnos.keys())
  118.     if nombre in nombres:
  119.         print(f"El alumno {nombre} tiene {alumnos[nombre]} cursos")
  120.     else:
  121.         print(f"No existe el alumno {nombre}")
  122.    
  123.  
  124.  
  125. print("Administración de alumnos")
  126. print("-------------------------")
  127.  
  128. while True:
  129.    
  130.     mostrar_menu()
  131.     opcion = input("Seleccione una opción: ")
  132.    
  133.     if opcion == "1":
  134.         imprimir_lista(alumnos)
  135.        
  136.     elif opcion == "2":
  137.         alumnos = ingresar_alumno(alumnos)
  138.    
  139.    
  140.     elif opcion == "3":
  141.         ver_cursos(alumnos)
  142.        
  143.        
  144.     elif opcion == "4":
  145.         print("Gracias por usar este programa...")
  146.         break
  147.            
  148.     else:
  149.         print("Opción incorrecta...")
  150.  
Advertisement
Add Comment
Please, Sign In to add comment