Ejercicio: 2Eva_IIT2011_T4 Inscripción universitaria SNNA
Propuesta de solución en Python
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 2Eva_IIT2011_T4 Inscripción universitaria SNNA # propuesta: edelros@espol.edu.ec import numpy as np codprovincia = ['Guayas','Manabi'] opcion = '0' postulante = [] while not(opcion=='7'): print('1. Registrar Postulante') print('2. Grabar archivo de datos') print('3. Abrir archivo de datos') print('4. Consulta Día de prueba') print('5. Postulantes por provincia') print('6. Postulantes por carrera') print('7. Salir') opcion = input('opcion: ') if opcion=='1': print(' -- 1. Registrar Postulante') cedu = input('cédula: ') nomb = input('nombre: ') naci = int(input('año nacimiento: ')) while not(naci>1950): print('Su año de nacimiento debe ser >1950') naci = int(input('año nacimiento: ')) prov = input('provincia: ') carr = input('carrera: ') registro = {'cedula':cedu, 'nombre':nomb, 'nacimiento':naci, 'provincia':prov, 'carrera':carr} postulante.append(registro) print(postulante) if opcion=='2': print(' -- 2. Grabar archivo de datos') narchivo = input('nombre del archivo: ') narchivo = narchivo + '.txt' archivo = open(narchivo,'w') n = len(postulante) fila = 0 while not(fila>=n): cedu = postulante[fila]['cedula'] nomb = postulante[fila]['nombre'] naci = postulante[fila]['nacimiento'] prov = postulante[fila]['provincia'] carr = postulante[fila]['carrera'] linea = cedu+','+nomb+','+str(naci) linea = linea +','+prov+','+carr+'\n' archivo.write(linea) fila = fila +1 archivo.close() if opcion=='3': print(' -- 3. Abrir archivo de datos') narchivo = input('nombre del archivo: ') narchivo = narchivo + '.txt' postulante = [] archivo = open(narchivo,'r') linea = archivo.readline() while not(linea==''): linea = linea.strip('\n') partes = linea.split(',') cedu = partes[0] nomb = partes[1] naci = partes[2] prov = partes[3] carr = partes[4] registro = {'cedula':cedu, 'nombre':nomb, 'nacimiento':naci, 'provincia':prov, 'carrera':carr} postulante.append(registro) linea = archivo.readline() archivo.close() n = len(postulante) print('registros leidos: ',n) if opcion=='4': print(' -- 4. Consulta Día de prueba') cedu = input('cedula: ') diaprueba ='No hay dia para ese digito\n' n = len(cedu) digito = cedu[n-2] if (digito =='1' or digito=='2'): diaprueba = 'LUNES' if (digito =='3' or digito=='4'): diaprueba = 'MARTES' print('el dia de su prueba es: ') print(digito,diaprueba) if opcion == '5': print('cuenta postulantes por provincia') n = len(postulante) m = len(codprovincia) contadores = np.zeros(m,dtype=int) i = 0 while not(i>=n): origen = postulante[i]['provincia'] indice = codprovincia.index(origen) contadores[indice] = contadores[indice]+1 i = i+1 print(contadores) if opcion=='7': print('gracias, @espol.edu.ec')