Exemple #1
0
def menu_principal():
    while True:
        printMenu()
        inputs = input('Seleccione una opción para continuar\n>')

        if int(inputs[0]) == 1:
            print("\nInicializando....")
            cont = controller.init()
        elif int(inputs[0]) == 2:
            print("\nCargando información de bicicletas ....")
            controller.loadServices(cont, servicefile)

        elif int(inputs[0]) == 3:
            id_station = input("coloque el id de la estacion de su interes: ")
            tiempo = int(input("Ponga el tiempo de resistencia: "))
            id_station = input("coloque el id de la estacion de su interes: ")
            y = controller.ruta_resistencia(cont, id_station, tiempo)
            print(y)
        elif int(inputs[0]) == 4:
            estaciones_de_llegada = controller.top3_estaciones_de_llegada(cont)
            estaciones_de_salida = controller.top3_estaciones_de_salida(cont)
            estaciones_menos_usadas = controller.las3_menos_usadas(cont)
            print("El top 3 de estaciones de llegada",
                  str(estaciones_de_llegada))
            print("El top 3 de estaciones de salida",
                  str(estaciones_de_salida))
            print("El top 3 de las menos usadas", str(estaciones_menos_usadas))

            tiempo = int(input("Ponga el tiempo de resistencia: "))
            id_station = input("coloque el id de la estacion de su interes: ")
            y = controller.ruta_resistencia(cont, id_station, tiempo)
            print(y)
        else:
            sys.exit(0)
Exemple #2
0
def thread_cycle():
    while True:
        printMenu()
        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:
            optionTwo(cont)

        elif int(inputs[0]) == 3:
            optionThree(cont)

        elif int(inputs[0]) == 4:
            msg = "Estación Base: BusStopCode-ServiceNo (Ej: 75009-10): "
            initialStation = input(msg)
            optionFour(cont, initialStation)

        elif int(inputs[0]) == 5:
            destStation = input("Estación destino (Ej: 15151-10): ")
            optionFive(cont, destStation)

        elif int(inputs[0]) == 6:
            destStation = input("Estación destino (Ej: 15151-10): ")
            optionSix(cont, destStation)

        elif int(inputs[0]) == 7:
            optionSeven(cont)

        else:
            sys.exit(0)
    sys.exit(0)
def solver(opt: int,):
    global num, filenames
    if opt == 1:
        globals().update({"analyzer": controller.init()})
    elif opt == 2:
        controller.load(filenames[num], analyzer)
    elif opt == 3:
        controller.reqA(analyzer)
    elif opt == 4:
        controller.reqB(analyzer)
    elif opt == 5:
        controller.reqC(analyzer)
    else:
        print("Hasta pronto!")
        return "finish"
def cargarAccidentes(cont, anio):
    t1_start = process_time()  #tiempo inicial
    anios = input(
        "\nEscriba el año de los accidentes que desea cargar (entre 2016 y 2019)\n* Digita 0 para cargar todos los archivos *\n-> "
    )
    if anios == '2016':
        cont['2016'] = [ctrl.init(), accidentes2016]
        anio['anio'] = '2016'
        anio['type'] = 0
    elif anios == '2017':
        cont['2017'] = [ctrl.init(), accidentes2017]
        anio['anio'] = '2017'
        anio['type'] = 0
    elif anios == '2018':
        cont['2018'] = [ctrl.init(), accidentes2018]
        anio['anio'] = '2018'
        anio['type'] = 0
    elif anios == '2019':
        cont['2019'] = [ctrl.init(), accidentes2019]
        anio['anio'] = '2019'
        anio['type'] = 0
    elif anios == '0':
        anio['anio'] = '0'
        anio['type'] = 1
        cont['2016'] = [ctrl.init(), accidentes2016]
        cont['2017'] = [ctrl.init(), accidentes2017]
        cont['2018'] = [ctrl.init(), accidentes2018]
        cont['2019'] = [ctrl.init(), accidentes2019]
    #try:
    cargarporanio(cont, '2016')
    cargarporanio(cont, '2017')
    cargarporanio(cont, '2018')
    cargarporanio(cont, '2019')
    #except:
    #    print('¡¡KELLY ASEGURESE DE DIGITAR EL AÑO BIEN!!')
    t1_stop = process_time()  #tiempo final
    print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")
    return cont
Exemple #5
0
def thread_cycle():
    while True:
        printMenu()
        print("Ingrese una opción para continuar:")
        inputs = input('~')

        if int(inputs) == 1:
            print("\nInicializando....")
            analyzer = controller.init()

        elif int(inputs) == 2:
            optionTwo(analyzer)

        elif int(inputs) == 3:
            optionThree(analyzer)

        elif int(inputs) == 4:
            optionFour(analyzer)

        elif int(inputs) == 5:
            optionFive(analyzer)

        elif int(inputs) == 6:
            optionSix(analyzer)

        elif int(inputs) == 7:
            optionSeven(analyzer)

        elif int(inputs) == 8:
            optionEight(analyzer)

        elif int(inputs) == 9:
            optionNine(analyzer)

        else:
            sys.exit(0)
    sys.exit(0)
Exemple #6
0
def thread_cycle():
    while True:
        printMenu()
        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:
            optionTwo(cont)
           
        elif int(inputs[0]) == 3:
            verta=input('Seleccione el vertice 1: ')
            vertb=input('Seleccione el vertice 2: ')
            optionThree(cont,verta,vertb)

        elif int(inputs[0]) == 4:
            optionFour(cont)

        elif int(inputs[0]) == 5:
            pais1=input('Seleccione el pais 1: ')
            pais2=input('Seleccione el pais 2: ')
            optionFive(cont,pais1,pais2)

        elif int(inputs[0]) == 6:
            optionSix(cont)

        elif int(inputs[0]) == 7:
            vert=input('Seleccione el vertice: ')
            optionSeven(cont,vert)

        else:
            sys.exit(0)
    sys.exit(0)
def thread_cycle():
    inputs = [1,2,4]
    while True:
        printMenu()
        #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()
            inputs.remove(inputs[0])
        elif int(inputs[0]) == 2:
            #------------------------------------------------
            tracemalloc.start()
            start_time = getTime()
            start_memory = getMemory()
            #***************************************
            optionTwo(cont)
            #**************************************
            stop_memory = getMemory()
            stop_time = getTime()
            tracemalloc.stop()
            delta_time = round(stop_time - start_time,2)
            delta_memory = round(deltaMemory(start_memory, stop_memory),2)
            print("Tiempo [ms]:",delta_time)
            print("Memoria [kB]:",delta_memory,)
            print('-'*80)
            inputs.remove(inputs[0])
        elif int(inputs[0]) == 3:
            optionThree(cont)

        elif int(inputs[0]) == 4:
            msg = 75009-10 #"Estación Base: BusStopCode-ServiceNo (Ej: 75009-10): "
            initialStation = input(msg)
            #------------------------------------------------
            tracemalloc.start()
            start_time = getTime()
            start_memory = getMemory()
            #***************************************
            optionFour(cont, initialStation)
            #**************************************
            stop_memory = getMemory()
            stop_time = getTime()
            tracemalloc.stop()
            delta_time = round(stop_time - start_time,2)
            delta_memory = round(deltaMemory(start_memory, stop_memory),2)
            print("Tiempo [ms]:",delta_time)
            print("Memoria [kB]:",delta_memory,)
            print('-'*80)
            inputs.remove(inputs[0])
        elif int(inputs[0]) == 5:
            destStation = input("Estación destino (Ej: 15151-10): ")
            optionFive(cont, destStation)

        elif int(inputs[0]) == 6:
            destStation = input("Estación destino (Ej: 15151-10): ")
            optionSix(cont, destStation)

        elif int(inputs[0]) == 7:
            optionSeven(cont)

        else:
            sys.exit(0)
    sys.exit(0)
Exemple #8
0
    print("3- Conocer los accidentes en una fecha")
    print("4- Conocer los accidentes anteriores a una fecha")
    print("5- Conocer los accidentes en un rango de fechas")
    print("6- Conocer el estado con más accidentes")
    print("7- Conocer los accidentes por rango de horas")
    print("8- Conocer la zona geográfica más accidentada")
    print("9- Usar el conjunto completo de datos")
    print("0- Salir")
    print("*******************************************")


"""
Menu principal.
"""

cont = controller.init()
while True:
    print_menu()
    inputs = input('Seleccione una opción para continuar\n> ')
    if int(inputs[0]) == 1:
        t1_start = process_time()
        print('\nInicializando...')
        cont = controller.init(
        )  # cont es el controlador que se usará de acá en adelante.
        print('Tiempo de ejecución ', process_time() - t1_start, ' segundos')
    elif int(inputs[0]) == 2:

        t1_start = process_time()
        print('\nCargando información de accidentes...')
        controller.load_data(cont, accidentsfile)
        print(f'Accidentes cargados: {controller.accidents_size(cont)}')
Exemple #9
0
def thread_cycle():
    while True:
        printMenu()
        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:
            optionTwo(cont)

        elif int(inputs[0]) == 3:
            optionThree(cont)

        elif int(inputs[0]) == 4:
            msg = "Estación Base: BusStopCode-ServiceNo (Ej: 75009-10): "

            delta_time = -1.0
            delta_memory = -1.0

            tracemalloc.start()
            start_time = controller.getTime()
            start_memory = controller.getMemory()

            initialStation = input(msg)

            delta_time = -1.0
            delta_memory = -1.0

            tracemalloc.start()
            start_time = controller.getTime()
            start_memory = controller.getMemory()
            #======================================
            optionFour(cont, initialStation)  #'75009-10')#initialStation)
            #======================================
            stop_memory = controller.getMemory()
            stop_time = controller.getTime()
            tracemalloc.stop()

            delta_time = stop_time - start_time
            delta_memory = controller.deltaMemory(start_memory, stop_memory)
            print('Tiempo[ms]: ', f"{delta_time:.3f}", "-", "Memoria [kB]: ",
                  f"{delta_memory:.3f}")

        elif int(inputs[0]) == 5:
            destStation = input("Estación destino (Ej: 15151-10): ")
            optionFive(cont, destStation)

        elif int(inputs[0]) == 6:
            destStation = input("Estación destino (Ej: 15151-10): ")

            delta_time = -1.0
            delta_memory = -1.0

            tracemalloc.start()
            start_time = controller.getTime()
            start_memory = controller.getMemory()

            #===================================
            optionSix(cont, destStation)  #'15151-10')#destStation)
            #==================================

            stop_memory = controller.getMemory()
            stop_time = controller.getTime()
            tracemalloc.stop()

            delta_time = stop_time - start_time
            delta_memory = controller.deltaMemory(start_memory, stop_memory)
            print('Tiempo[ms]: ', f"{delta_time:.3f}", "-", "Memoria [kB]: ",
                  f"{delta_memory:.3f}")

        elif int(inputs[0]) == 7:
            optionSeven(cont)

        else:
            sys.exit(0)
    sys.exit(0)
def main():
    cont = None
    while True:
        printMenu()
        inputs = int(input('Seleccione una opción para continuar\n-> '))

        if inputs == 1:  #Inicio y carga
            t1_start = process_time()  #tiempo inicial
            print("\nInicializando.....")
            tamaño = int(input("Digita el tamaño de las tablas de hash: "))
            carga = float(input("Digita el factor de carga: "))
            cont = controller.init(tamaño, carga)
            cargaDatos(cont)
            t1_stop = process_time()  #tiempo final
            print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")

        elif inputs == 2:  #Req. 1
            print("\nCantidad de Clusters de viajes")
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                t1_start = process_time()  #tiempo inicial
                cantidadClusters(cont)
                t1_stop = process_time()  #tiempo final
            print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")

        elif inputs == 3:  #Req. 2
            print("\nRuta turística Circular")
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                t1_start = process_time()  #tiempo inicial
                rutaTuristicaCircular(cont)
                t1_stop = process_time()  #tiempo final
            print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")

        elif inputs == 4:  #Req. 3
            print("\nEstaciones críticas")
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                t1_start = process_time()  #tiempo inicial
                optionFive(cont)
                t1_stop = process_time()  #tiempo final
            print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")

        elif inputs == 5:  #Req. 4
            print("\nRuta turística por resistencia")
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                rutaTuristicaResistencia(cont)

        elif inputs == 6:  #Req. 5
            print("\nRecomendador de rutas")
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                t1_start = process_time()  #tiempo inicial
                recomendadorRutas(cont)
                t1_stop = process_time()  #tiempo final
            print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")

        elif inputs == 7:  #Req. 6
            print("\nRuta de interés turístico")
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:

                optionSeven(cont)

        elif inputs == 8:  #Req. 7*
            print('\nIndentificación de estaciones para publicidad')
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                optionEight(cont)

        elif inputs == 9:  #Req. 8*
            print('\nIdentificacion de bicicletas para mantenimiento')
            if cont == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                print('lolalisimo xd')

        elif inputs == 0:  #Salir
            print('Cerrando el programa ...')
            sys.exit(0)
        else:
            print('Opción incorrecta .....')
    print("0- Salir")
    print("*******************************************")


"""
Menu principal
"""
while True:
    printMenu()
    inputs = input('Seleccione una opción para continuar\n>')

    if int(inputs[0]) == 1:
        print("\nInicializando....")
        # catalog es el controlador que se usará de acá en adelante
        catalog = controller.init()

    elif int(inputs[0]) == 2:

        size = input(
            "Elija el tamaño del archivo CSV que quiere cargar (small,medium,large): "
        )
        print("\nCargando información sistema de Taxis Chicago ...")
        controller.loadTrips(catalog, service_file, size)
        printOptionTwo(catalog)

    elif int(inputs[0]) == 3:
        print("\nRequerimiento No. 1 del Proyecto Final: ")
        criteria1 = int(
            input(
                '\nIngrese el número de compañías que quiere ver en el TOP más taxis inscritos: '
    Req 8
    """    
    pass

"""
Menu principal
"""

while True:
    printMenu()
    inputs = input('Seleccione una opción para continuar\n>')

    if int(inputs) == 1:
        print("\nInicializando....")
        # cont es el controlador que se usará de acá en adelante
        citibike = controller.init()

    elif int(inputs[0]) == 2:
        executiontime = timeit.timeit(optionTwo, number=1)
        print("\nTiempo de ejecución: " + str(executiontime))

    elif int(inputs[0]) == 3:
        executiontime = timeit.timeit(optionThree, number=1)
        print("\nTiempo de ejecución: " + str(executiontime))

    elif int(inputs[0]) == 4:
        executiontime = timeit.timeit(optionFour, number=1)
        print("\nTiempo de ejecución: " + str(executiontime))

    elif int(inputs[0]) == 5:
        executiontime = timeit.timeit(optionFive, number=1)
Exemple #13
0
    print("3- Requerimento 1")
    print("0- Salir\n")


"""
Menu principal
"""
while True:
    printMenu()
    inputs = input('Seleccione una opción para continuar\n>')

    if int(inputs[0]) == 1:
        print("\nCargando información de accidentes...")
        # analyzer es el controlador que se usará de acá en adelante
        t1 = time.process_time()
        analyzer = controller.init(accidents_file)
        t2 = time.process_time()
        print("Tiempo de ejecución:", t2 - t1, "segundos")

    elif int(inputs[0]) == 2:
        print("\nCargando información de accidentes ....")
        t1 = time.process_time()
        controller.fillDataTree(analyzer)
        t2 = time.process_time()
        print("Tiempo de ejecución:", t2 - t1, "segundos")

    elif int(inputs[0]) == 3:
        date = input(
            'Por favor ingrese la fecha de la cuál desea buscar los accidentes: (YYYY-MM-DD)\n'
        )
        try:
    if analyzer is None:
        return False
    else:
        return True
"""
Menu principal
"""
analyzer = None
datos=False
while True:
    printMenu()
    inputs = input('Seleccione una opción para continuar\n>')
    if int(inputs) == 1:
        print("\nInicializando....")
        # cont es el controlador que se usará de acá en adelante
        analyzer = controller.init()
        print("\nAnalizador iniciado con éxito")
    elif int(inputs[0]) == 2:
        if analizadorCargado():
            print("Escoja los archivos que quiere cargar: \n")
            print("1- Taxi-trips-small")
            print("2- Taxi-trips-medium")
            print("3- Taxi-trips-large")
            archivosCargar = input("Ingrese los archivos que quiere cargar(en caso de que sean más de uno, dilimitar con ,): ")
            executiontime = timeit.timeit(optionTwo, number=1)
            print("Tiempo de ejecución: " + str(executiontime))
            datos = True
        else:
            print("Se necesita tener el analizador inicializado antes de ejecutar esta opción")
    elif int(inputs[0]) == 3:
        if analizadorCargado() and datos:
    print("5- Horas entre fechas")
    print("0- Salir")
    print("*******************************************")


"""
Menu principal
"""
while True:
    printMenu()
    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
        accidentes = controller.init()

    elif int(inputs[0]) == 2:
        print("\nCargando información de crimenes ....")
        controller.loadData(accidentes, Archivo)
        print('Accidentes cargados: ' +
              str(controller.sizeAccidentes(accidentes)))
        print('Fechas cargadas: ' + str(controller.sizeArbol(accidentes)),
              "\n")

    elif int(inputs[0]) == 3:
        Fecha = input('Ingrese la fecha de busqueda (YYYY-MM-DD)\n>: ')
        print("\nBuscando accidentes en la fecha... ")
        tamaño, lista = controller.Dar_cantidad_por_fecha(accidentes, Fecha)
        print("\nSe encontraron", tamaño, "accidentes registrados en la fecha",
              Fecha)
Exemple #16
0
def inicializar():
    print("\nInicializando....")
    C1 = input("inserte 1 para BST y 2 para RBT")
    # cont es el controlador que se usará de acá en adelante
    cont_i = cnt.init(C1)
    return cont_i
Exemple #17
0
def main():
    analyzer = None
    while True:
        printMenu()
        inputs = int(input('Selecciona una opción para continuar\n-> '))
        if inputs == 1:  #Inicio y carga
            t1_start = process_time()  #tiempo inicial
            print("\nInicializando.....")
            tamaño = int(input("Digita el tamaño de las tablas de hash: "))
            carga = float(input("Digita el factor de carga: "))
            analyzer = ctrl.init(tamaño, carga)
            cargarDatos(analyzer)
            t1_stop = process_time()  #tiempo final
            print("Tiempo de ejecución ", t1_stop - t1_start, " segundos ")

        elif inputs == 2:  #Req. 1
            if analyzer == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                while True:
                    menu1()
                    opcion = int(
                        input('Selecciona una opción para continuar\n--> '))
                    if opcion == 1:
                        t1_start = process_time()  #tiempo inicial
                        totalTaxis(analyzer)
                        t1_stop = process_time()  #tiempo final
                        print("Esta función se ejecutó en ",
                              t1_stop - t1_start, " segundos ")
                    elif opcion == 2:
                        t1_start = process_time()  #tiempo inicial
                        totalCompañias(analyzer)
                        t1_stop = process_time()  #tiempo final
                        print("Esta función se ejecutó en ",
                              t1_stop - t1_start, " segundos ")
                    elif opcion == 3:
                        t1_start = process_time()  #tiempo inicial
                        top = int(input('Digita el top límite: '))
                        topM(analyzer, top)
                        t1_stop = process_time()  #tiempo final
                        print("Esta función se ejecutó en ",
                              t1_stop - t1_start, " segundos ")
                    elif opcion == 4:
                        t1_start = process_time()  #tiempo inicial
                        top = int(input('Digita el top límite: '))
                        topN(analyzer, top)
                        t1_stop = process_time()  #tiempo final
                        print("Esta función se ejecutó en ",
                              t1_stop - t1_start, " segundos ")
                    elif opcion == 5:
                        break
                    else:
                        print('Opción invalida .....')

        elif inputs == 3:  #Req. 2
            if analyzer == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                while True:
                    menu2()
                    opcion = int(
                        input('Selecciona una opción para continuar\n--> '))
                    if opcion == 1:
                        t1_start = process_time()  #tiempo inicial
                        year1 = input('Año: ')
                        month1 = input('Mes: ')
                        day1 = input('Dia: ')
                        date1 = year1 + '-' + month1 + '-' + day1
                        top = int(input('Digita el top límite: '))
                        puntosFecha(analyzer, top, date1)
                        t1_stop = process_time()  #tiempo final
                        print("Esta función se ejecutó en ",
                              t1_stop - t1_start, " segundos ")
                    elif opcion == 2:
                        t1_start = process_time()  #tiempo inicial
                        print(
                            'Digita la fecha inicial de busqueda con formato YYYY-MM-DD'
                        )
                        year1 = input('Año: ')
                        month1 = input('Mes: ')
                        day1 = input('Dia: ')
                        date1 = year1 + '-' + month1 + '-' + day1
                        print(
                            'Digita la fecha ifinal de busqueda con formato YYYY-MM-DD'
                        )
                        year2 = input('Año: ')
                        month2 = input('Mes: ')
                        day2 = input('Dia: ')
                        date2 = year2 + '-' + month2 + '-' + day2
                        top = int(input('Digita el top límite: '))
                        puntosRango(analyzer, date1, date2, top)
                        t1_stop = process_time()  #tiempo final
                        print("Esta función se ejecutó en ",
                              t1_stop - t1_start, " segundos ")
                    elif opcion == 3:
                        break
                    else:
                        print('Opcion invalida .....')

        elif inputs == 4:  # Req. 3
            if analyzer == None:
                print('¡KELLY CARGUE EL ARCHIVO PRIMERO!')
            else:
                t1_start = process_time()  #tiempo inicial
                mejorHorario(analyzer)
                t1_stop = process_time()  #tiempo final
                print("Esta función se ejecutó en ", t1_stop - t1_start,
                      " segundos ")

        elif inputs == 5:  #Salir
            print('Cerrando el programa ...')
            sys.exit(0)

        else:
            print('Opción incorrecta .....')
Exemple #18
0
def optionOne():
    global cont
    print("\nInicializando....")
    cont = controller.init()
    print("4- Puntos.")
    print("0- Salir")
    print("*******************************************")


"""
Menu principal
"""

while True:
    printMenu()
    inputs = input('Seleccione una opción para continuar\n>')

    if int(inputs[0]) == 1:
        print("\nInicializando....")
        rutas = controller.init()

    elif int(inputs[0]) == 2:
        print("\nCargando información de viajes ....")
        controller.loadData(rutas, Archivo)

    elif int(inputs[0]) == 3:
        M = int(input("Digite el numero de resultados(Top taxis): "))
        N = int(input("Digite el numero de resultados(Top servicios): "))
        total = controller.basic_info(rutas, M, N)
        print("Hay ", total["taxis"], " taxis registrados.")
        print("Hay", total["comps"], "compañias con taxi(s).")

        print("Las", M, "compañias con más taxis son: ")
        for res in total["top_tax"]:
            o, n = res
def optionSeven():
    maxvert, maxdeg = controller.servedRoutes(cont)
    print('Estación: ' + maxvert + '  Total rutas servidas: ' + str(maxdeg))


"""
Menu principal
"""
while True:
    printMenu()
    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:
        executiontime = timeit.timeit(optionTwo, number=1)
        print("Tiempo de ejecución: " + str(executiontime))

    elif int(inputs[0]) == 3:
        executiontime = timeit.timeit(optionThree, number=1)
        print("Tiempo de ejecución: " + str(executiontime))

    elif int(inputs[0]) == 4:
        msg = "Estación Base: BusStopCode-ServiceNo (Ej: 75009-10): "
        initialStation = input(msg)
        executiontime = timeit.timeit(optionFour, number=1)
        print("Tiempo de ejecución: " + str(executiontime))
    print("8- Zona geográfica más accidentada")  #Req 6
    print("0- Salir")
    print("*******************************************")


"""
Menu principal
"""
while True:
    printMenu()
    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()
        hours = controller.init()

    elif int(inputs[0]) == 2:
        print("\nCargando información de accidentes ....")
        controller.loadData(cont, accidentfile, 1)
        controller.loadData(hours, accidentfile, 2)
        print("si se necesita cargar mas archivos llame otra vez la funcion")
        print('Accidentes cargados: ' + str(controller.accidentSize(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: ")