コード例 #1
0
def get_horario():
    """Metodo principal para obtener el resultado del ejercicio, el horario"""

    # Para obtener informacion de los maleantes, lo primero es atrapar un chivato y obtener su informacion.
    global info
    info = Chivato.localizar_chivatos(lista_total_chivatos, cazarecompensas)

    obtener_informacion_1()
    Logger.log('Informacion obtenida: ' + str(info))


    # Mientras no tengamos informacion, consultamos al siguiente chivato
    while ((ClassUtils.isEmpty(cazarecompensas.list_info) == True) and (ClassUtils.isEmpty(info) == False)):
        obtener_informacion_1()
        Logger.log('Informacion obtenida: ' + str(info))

    # Recorrer los maleantes con la informacion obtenida, mientras exista informacion y haya tiempo
    while (ClassUtils.isEmpty(cazarecompensas.list_info) == False and (getTime() > 0)):

        # Buscamos al Maleante mas cercano, de la lista de informacion
        villano = ClassUtils.getCercanoMaleante(cazarecompensas.list_info, cazarecompensas)
        Logger.log("Villano mas cercano: " + str(villano.nombre))

        # Si no se puede atrapar, salimos de la iteracion y obtenemos el informe final
        seguir = atrapar_maleante(villano)
        if (seguir == False):
            return

        # Si la lista con informacion del Cazarecompensas esta vacia, buscamos a otro chivato.
        if (ClassUtils.isEmpty(cazarecompensas.list_info) and
                (not ClassUtils.isEmpty(lista_total_maleantes))):
            obtener_informacion_1()

    Logger.log("Generar informe final")
    generarInforme()
コード例 #2
0
def obtener_informacion_1():
    """ Obtenemos la informacion necesaria de los chivatos, los cuales
    nos daran los datos de los maleantes que ellos conozcan."""

    if (ClassUtils.isEmpty(info)):
        return False
    else:
        # Obtenemos el Chivato mas cercano
        chivato_cercano = ClassUtils.getCercano(info)
        if (chivato_cercano == None):
            return False

        Logger.log("El chivato mas cercano es: " + str(chivato_cercano))
        # Eliminamos el chivato de la lista total de Chivatos.
        del info[chivato_cercano]

        boolean_info = obtener_informacion_2(chivato_cercano)
        if (boolean_info == False):
            obtener_informacion_1()
        else:
            return True