Publicado el Deja un comentario

51 Python. Funciones recursivas

Una funcion se dice que es recursiva cuando dentro de la funcion se vuelve a llamar a si misma, segun las condiciones indicadas en el codigo.
Una funcion recursiva debe siempre tener una condicion de parada o salida para que la llamada a si misma no genere un bucle infinito, tiene que llegar un momento donde dicha funcion deje de llamarse y pare su ejecucion obteniendo el resultado esperado.
Normalmente el ejemplo tipico para mostrar esto es el factorial de un numero, pero puede generar mas confusion, por lo que el ejemplo que pongo aqui es una cuenta atras.
Creamos la funcion cuentaAtras donde se ira comprobando si hemos llegado a 0, en caso negativo se vuelve a llamar a la funcion cuentaAtras pero con el parametro anterior – 1, se vuelve a comprobar la condicion, en caso de que el numero ya sea inferior a 1 pararemos su llamada.

Observa el codigo:

#cuenta atras, funcion recursiva

def cuentaAtras(num):   

    if num>0:       

        print(num)       

        num-=1       

        cuentaAtras(num)   

    else:       

        print(“Se acabo la cuenta atras “)

cuentaAtras(10)

Please follow and like us:
Publicado el Deja un comentario

39 Python. Depurar errores

Y para terminar el dia un ejemplo de codigo #python depurando codigo para solventar errores al introducir datos no validos, celebrando el #DiaDelProgramador #programando #programming

#depuraciondef comprueba(mensaje):    while True:        try:            dato=float(input(“Dame el “+mensaje))            return dato        except ValueError:            print(“Dato entero o decimal”)numero1=comprueba(“primer numero “)numero2=comprueba(“segundo numero “)resultado=numero1+numero2print(“El resultado es “+str(resultado))

Please follow and like us: