martinlwolf / EstrD2023s2

Trabajos practicos de la materia Estructuras de Datos
0 stars 0 forks source link

Pr.3: hayTesoroEn no está hecha por recursión estructural #43

Closed nasrcristian closed 9 months ago

nasrcristian commented 1 year ago

Si la recursión no llama DIRECTAMENTE a las partes recursivas, entonces no es recursión estructural. Este tipo de práctica es fuente de muchísimos errores, por ejemplo en este caso la función se cuelga.

martinlwolf commented 1 year ago

Buenas, creo que aca la funcion esta bien, hago la recursion cuando todavia el numero no es 0, restandole 1 y sacandole el primer camino al camino total

nasrcristian commented 1 year ago

El problema de tu solución es que estás llamando a una subtarea que determina el siguiente paso en el camino y esto rompe con el esquema de recursión estructural. Vos lo que tenés en esta función es una recursión sobre el número, pero en la cual tenés que avanzar sobre el camino para llegar a la posición deseada, entonces lo correcto sería que abras el mismo para poder determinar cómo avanzar; a pesar de esto no sería del todo correcto que hagas doble PM en el caso base ya que no necesitás seguir avanzando.

martinlwolf commented 1 year ago

Solucionado

nasrcristian commented 1 year ago

En esta función todavía tenes problemas como que por ejemplo rompa si le paso hayTesoroEn 1 Fin. Te diría que la plantees de forma muy similar a la función cantTesorosHasta

nasrcristian commented 1 year ago

Te pido que atiendas hoy a este issue así ya se puede cerrar todo lo relacionado a la pr.3