Ejercicio 10 (Fibonacci) - Módulo para testear

Ejercicio 10 (Fibonacci) - Módulo para testear

de Leandro Jair Machado Da Silva -
Número de respuestas: 2

Buenas tardes,

Implementé las funciones para este ejercicio pero tengo diferencias con lo que se puede observar en el archivo todo.out del módulo de testeo, en concreto, en las partes b y c del ejercicio.

Parte b: entiendo que al ingresar "secAditiva 6 1 1" se espera el resultado "13", sin embargo, yo obtengo "8", y no entiendo por qué no sería correcto. Según entiendo, la sucesión aditiva en este caso sería {1, 1, 2, 3, 5, 8, 13,...}, por lo que el sexto valor de la misma es 8. ¿Estoy considerando algo mal?

Parte c: ¿estamos considerando que la sucesión comienza en 0 ( {0, 1, 1, 2, 3, 5, 8, 13, 21,...} ) o en 1 ( {1, 1, 2, 3, 5, 8, 13, 21, 34,...} )? Suponiendo que consideramos el segundo caso, tampoco obtengo el "5 8" esperado al ingresar "fibAnterior 5", sino que obtengo "3 5", y entiendo que es por exactamente la misma razón que lo que comento de la parte b.

¿Estoy haciendo o interpretando algo mal? Desde ya, muchas gracias.

Saludos,

Leandro

En respuesta a Leandro Jair Machado Da Silva

Re: Ejercicio 10 (Fibonacci) - Módulo para testear

de Carlos Luna -

Hola

Entiendo que es como la función vista en el teórico. Luego, los valores son 1, 1, 2, 3, 5, 8, 13, ....

Para input 0 da el primer valor de la secuencia (1). Para el input 1 da el segundo (1). Para el input 2, el resultado es 2, para el input 3, el resultado es el 3 y asi... Esto es, las posiciones (inputs) comienza en 0 y no en 1.

Debe ser eso (no tengo los materiales a mano ahora). Sino, volvé a escribir, por favor.

Saludos Carlos

En respuesta a Leandro Jair Machado Da Silva

Re: Ejercicio 10 (Fibonacci) - Módulo para testear

de Fernando Fernandez -
Hola Leandro.

Tenés razón, había un error. Ahora quedó corregido.

El error provenía, efectivamente, de empezar a contar las posiciones en 0 (o sea, como si hubiera un cero-ésimo elemento) lo cual era inconsistente con la letra.

Quedó también corregida en la letra de la parte (c) la precondición de la función. Debe ser n>1, y no n > 0, que es lo que estaba (porque tal como estaba cuando n = 1 habría que devolver también el cero-ésimo).

Gracias por advertirlo.