Skip to content

Problema de retornos en funciones recursivas #231

@ShinMugenNoKabe

Description

@ShinMugenNoKabe

Reportando bug

no escribir en esta área y marcarlo al completar el issue.

  • Error global, no me deja correr Latino.
  • El error ocurre en una palabra reservada. Por ejemplo: si osi sino (escribir la palabra reservada en detalles).
  • Es un error en una función específica (escribir la función en detalles).
  • Es una falla de memoria (memory leak).
  • El error solo ocurre en el REPL (al ejecutar latino sin parámetros).

no escribir en esta área y marcarlo al completar el issue.

Más detalles:
En las funciones recursivas, parece que no se está retornando el valor correcto en cada llamada. Se puede apreciar en el ejemplo típico de la secuencia de fibonacci, en el que se empiezan a mostrar números negativos.

Código en donde ocurre:

funcion fibonacci(n)
    escribir(n)
    
    si (n <= 1)
        retornar n
    fin
    
    retornar fibonacci(n - 1) + fibonacci(n - 2)
fin

escribir(fibonacci(20)) // Debería devolver 6765, el valor retornado es -360

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions