def printAccidentsByDateSeverity(analyzer, date): accidentsInDate = controller.getAccidentsByDate(analyzer, date) accidentsBySeverity = controller.getAccidentsBySeverity(analyzer, date) print("Total de accidentes ocurridos en la fecha:", accidentsInDate) print("\nAccidentes de severidad 1:", accidentsBySeverity[0]) print("Accidentes de severidad 2:", accidentsBySeverity[1]) print("Accidentes de severidad 3:", accidentsBySeverity[2])
str(controller.accidentsSize(cont))) print('La altura del árbol es: ' + str(controller.indexHeight(cont))) print('El total de elementos en el árbol es de: ' + str(controller.indexSize(cont))) print('\nLa menor fecha registrada es: ' + str(controller.minKey(cont))) print('La mayor fechar registrada es: ' + str(controller.maxKey(cont))) print('\nLa menor hora registrada es: ' + str(controller.minKeyHour(cont))) print('La mayor hora registrada es: ' + str(controller.maxKeyHour(cont))) elif int(inputs[0]) == 3: print("\nBuscando accidentes en una fecha en específico: ") date = input("Fecha (YYYY-MM-DD): ") lista = controller.getAccidentsByDate(cont, date) print("\nTotal de accidentes en la fecha: " + str(lt.size(lista))) elif int(inputs[0]) == 4: print("\nBuscando accidentes anteriores a una fecha en específico: ") date = input("Ingrese la fecha (YYYY-MM-DD): ") valores = controller.getAccidentsBeforeDate(cont, date) print( '\nEl total de accidentes ocurridos antes de la fecha indicada es de:', valores[0]) print('\nLa fecha en la que más accidentes se reportaron fue:', valores[1]) elif int(inputs[0]) == 5: fecha_inicio = input("\nIngrese la fecha de inicio (YYYY-MM-DD): ") fecha_final = input("\nIngrese la fecha final (YYYY-MM-DD): ")
inputs = input('Seleccione una opción para continuar\n>') if int(inputs[0]) == 1: print("\nInicializando....") # cont es el controlador que se usará de acá en adelante cont = controller.init() elif int(inputs[0]) == 2: print("\nCargando información de accidentes ...") controller.loadData(cont,accidentsFile) printData(cont) elif int(inputs[0]) == 3: print("\nRequerimiento No 1 del reto 3: ") search_date = input("\nIngrese la fecha a buscar (YYYY-MM-DD):") accidents_by_date = controller.getAccidentsByDate(cont,search_date) printAccidentsByDate(accidents_by_date,search_date) elif int(inputs[0]) == 4: print("\nRequerimiento No 2 del reto 3: ") search_date = input("\nIngrese la fecha desde donde se quieren buscar los accidentes anteriores (YYYY-MM-DD):") accidents_before = controller.getAccidentsBeforeDate(cont,search_date) printAccidentsBeforeDare(accidents_before,search_date) elif int(inputs[0]) == 5: print("\nRequerimiento No 3 del reto 3: ") initial_date = input("\nIngrese el límite inferior del rango de fechas (YYYY-MM-DD):") final_date = input("\nIngrese el límite superior del rango de fechas (YYYY-MM-DD):") return_tuple = controller.getAccidentsInRange(cont,initial_date,final_date) printAccidentsInRange(return_tuple,initial_date,final_date)
if int(inputs[0]) == 1: print("\nInicializando....") # cont es el controlador que se usará de acá en adelante cont = controller.init() print("Se creo el analizador con exito") elif int(inputs[0]) == 2: print("\nCargando información de accidentes ....") controller.loadData(cont, accidents_small) print('Accidentes cargados: ' + str(controller.totalAccidentSize(cont))) print('Altura del arbol: ' + str(controller.indexHeight(cont))) print('Cantidad de fechas: ' + str(controller.indexSize(cont))) print('Primera fecha registrada: ' + str(controller.minKey(cont))) print('Ultima fecha registrada: ' + str(controller.maxKey(cont))) elif int(inputs[0]) == 3: print("\nBuscando accidentes en una fecha: ") initialDate = input("Fecha (YYYY-MM-DD): ") num_accidents, sev1, sev2, sev3, sev4 = controller.getAccidentsByDate( cont, initialDate) print("\nEl total de accidentes en la fecha " + initialDate + " son: " + str(num_accidents)) print("\nHubo " + str(sev1) + " accidentes con severidad 1, " + str(sev2) + " con severidad 2, " + str(sev3) + " con severidad 3 y " + str(sev4) + " con severidad 4.") else: sys.exit(0) sys.exit(0)
elif int(inputs[0]) == 2: print("\nCargando información de crimenes ....") t1_start = process_time() controller.loadData(cont, accidentsfile) t1_stop = process_time() print("Tiempo de ejecución ", t1_stop - t1_start, " segundos") print("\nSe cargaron", controller.accidentsSize(cont), "elementos en el árbol\nCon una altura de:", controller.indexHeight(cont)) print("Mayor:", controller.maxKey(cont), "Menor:", controller.minKey(cont)) elif int(inputs[0]) == 3: in_fe = input( "Ingrese la fecha que desea conocer en el formato AAAA-MM-DD: ") print("\nBuscando crimenes en un rango de fechas: ") res = controller.getAccidentsByDate(cont, in_fe) if res != None: print("En la fecha", in_fe, "ocurrieron", res[0], "accidentes.\nSeveridad 1:", res[1], "\nSeveridad 2:", res[2], "\nSeveridad 3:", res[3], "\nSeveridad 4:", res[4]) else: print("Esta fecha no se encuentra en el registro") elif int(inputs[0]) == 4: #N in_fe1 = input("Ingrese una fecha en formato AAAA-MM-DD: ") print("\nBuscando crimenes antes de la fecha establecida: ") res = controller.getAccidentsBeforeDate(cont, in_fe1) if res != None: print( "Antes de la fecha", in_fe1, "ocurrieron", res[0], "accidentes.\nLa fecha en la que más accidentes se reportaron es:",
# cont es el controlador que se usará de acá en adelante cont = controller.init() elif int(inputs[0]) == 2: print("\nCargando información de accidentes aéreos ....") controller.loadData(cont, accidentsFile) print('Accidentes cargados: ' + str(controller.accidentsSize(cont))) print('Altura del arbol: ' + str(controller.indexHeight(cont))) print('Elementos en el arbol: ' + str(controller.indexSize(cont))) print('Menor Llave: ' + str(controller.minKey(cont))) print('Mayor Llave: ' + str(controller.maxKey(cont))) elif int(inputs[0]) == 3: print("\nBuscando accidentes en una fecha específica: ") date = input("Ingrese la fecha a buscar (YYYY-MM-DD): ") numAccidents = controller.getAccidentsByDate(cont,date) if numAccidents == 0: print("La fecha ingresada no tiene accidentes relacionados.") else: print('\nNúmero total de accidentes con severidad 1 en esa fecha: ' + str(numAccidents[0])) print('\nNúmero total de accidentes con severidad 2 en esa fecha: ' +str(numAccidents[1])) print('\nNúmero total de accidentes con severidad 3 en esa fecha: ' +str(numAccidents[2])) print('\nNúmero total de accidentes con severidad 4 en esa fecha: ' +str(numAccidents[3])) elif int(inputs[0]) == 4: print("\nBuscando accidentes anteriores a una fecha: ") #date = input("Ingrese la fecha a buscar (YYYY-MM-DD): ") elif int(inputs[0]) == 5: print("\nBuscando accidentes en un rango de fechas: ") #dateInit = input("Ingrese la fecha inicial (YYYY-MM-DD): ")
print("\nInicializando....") # cont es el controlador que se usará de acá en adelante cont = controller.init() elif int(inputs[0]) == 2: print("\nCargando información de accidentes ....") controller.loadData(cont, accidentsfile) print('Accidentes cargados: ' + str(controller.AccidentsSize(cont))) print('Altura del arbol: ' + str(controller.indexHeight(cont))) print('Elementos en el arbol: ' + str(controller.indexSize(cont))) print('Menor Llave: ' + str(controller.minKey(cont))) print('Mayor Llave: ' + str(controller.maxKey(cont))) elif int(inputs[0]) == 3: print("\nBuscando accidentes en una fecha: ") Date = input("Fecha (YYYY-MM-DD): ") dic = controller.getAccidentsByDate(cont, Date) total = dic[1] + dic[2] + dic[3] + dic[4] if dic[1] == 0 and dic[2] == 0 and dic[3] == 0 and dic[4] == 0: print("\nNo se encontraron accidentes en esa fecha") else: print("\nEn la fecha seleccionada hubo un total de " + str(total) + " accidentes ") print("Hubo " + str(dic[1]) + " accidentes de severidad 1") print("Hubo " + str(dic[2]) + " accidentes de severidad 2") print("Hubo " + str(dic[3]) + " accidentes de severidad 3") print("Hubo " + str(dic[4]) + " accidentes de severidad 4") else: sys.exit(0) sys.exit(0)