La sucesión de Fibonacci es un conjunto de números ordenados que empieza con el $0$ y el $1$, y los siguientes números se construyen como la suma de los números anteriores en la sucesión, dando la siguiente secuencia infinita de números: $0$, $1$, $1$, $2$, $3$, $5$, $8$, $13$, $21$, $34$, $55$, $89$, $144$, $233$, $377$, $610$, $987$, $1597$, ...
Esta sucesión fue descrita por Leonardo de Pisa, matemático italiano del siglo XIII también conocido como Fibonacci. Podemos encontrar esta secuencia de números en diferentes lugares de la naturaleza como: en la forma en la que brotan las ramas de los árboles, como se acomodan las hojas en el tallo de una planta, así como en los pétalos de diversas flores, incluso en la disposición de las semillas de los girasoles, de igual forma se puede observa en la espiral que se forma en diversos caparazones de moluscos y animales acuáticos como el Nautilus.
En esta actividad realizarás un programa que calcule los número de Fibonacci.
Aquí puedes observar un ejemplo de un programa que calcula el número de Fibonacci correspondiente a un indice particular.
Ten cuidado con el número que le asignas a num
ya que entre más grandes sea, más veces debe ejecutarse la función fibonacci(n)
y dependiendo de las capacidades de la computadora se le puede terminar la memoria y bloquear la ejecución de la actividad. Te recomendamos que no utilices valores mayores a 30 para evitar que la actividad se bloquee y pierdas tu trabajo.
Para facilitar esta actividad, te conviene conocer:
Los números de la sucesión de Fibonacci se calculan de la siguiente manera: el elemento $0$ de la sucesión tiene el valor de 0
y el elemento $1$ de la sucesión tiene el valor de 1
, es decir, si lo pensamos como una función fibonacci(n)
, tenemos que fibonacci(0)
es 0
y fibonacci(1)
es 1
.
La definición recursiva para los siguientes números de la sucesión de Fibonacci es la siguiente: fibonacci(n) = fibonacci(n-1) + fibonacci(n-2)
, esto quiere decir, que para obtener los números de la sucesión debemos calcular los dos números de Fibonacci anteriores al que queremos y luego sumarlos.
Observando la definición anterior podemos notar que se especifica basándose en su propia definición, y reduce el problema a problemas más pequeños o simples, por lo tanto es una función recursiva. Así que deberias escribir una función fibonnacci(n)
que dentro de su código se vuelva a llamar con valores diferentes.
Recuerda que para regresar un valor dentro de la definición de una función debes utilizar la palabra clave REGRESAR
seguida del valor que quieres que la función regrese.
Si después de intentarlo no tienes idea de que hacer, puedes ver el código que se utilizó para hacer el ejemplo, presionando el siguiente botón:
Se dice que Fibonacci observó esta sucesión de números, mientras estudiaba la forma en la que parejas de conejos se reproducían durante un año. La idea es la siguiente: se comienza con una pareja de conejos recién nacidos, una vez que cumplen un mes de vida pueden tener hijos, en particular siempre tienen una pareja de hijos; luego el siguiente mes, la primera pareja de conejos tiene una nueva pareja de hijos y sus primeros hijos como ya cumplieron un mes de nacidos, entonces tienen su primera pareja de hijos. Esto se va repitiendo mes con mes, durante todo el año.
Al contar el número de parejas de conejos que hay en cada mes, se puede observar que la cantidad esta determinada por la sucesión de Fibonacci. Quizá la siguiente imagen te proporciones una ayuda visual para que comprendas mejor la idea.