HOWTO · MATLAB

Secuencia de Fibonacci MATLAB

Uno puede generar los números de Fibonacci usando la función fibonacci() en MATLAB.

En esta página

Usa la función fibonacci() de MATLAB para calcular un único valor de Fibonacci o aplicarla a un vector de índices. Para obtener un resultado grande exacto, pasa a fibonacci() un índice simbólico creado con sym(). Estas funciones requieren Symbolic Math Toolbox.

Generar un número de Fibonacci en MATLAB

En la secuencia de Fibonacci, cada término después de los dos primeros es la suma de los dos anteriores. Este artículo usa la convención F₁ = 1 y F₂ = 1; por tanto, Fₙ = Fₙ₋₁ + Fₙ₋₂ para n ≥ 3. El índice n indica una posición de la secuencia; no es la cantidad de valores que se generarán.

Para calcular el décimo término, escribe fn = fibonacci(10). Con esta convención, el resultado es 55. La llamada de MATLAB se muestra en línea porque el entorno de ejecución configurado no ejecuta MATLAB; su resultado no se ha ejecutado aquí de forma independiente.

Generar una secuencia de Fibonacci con un vector

Pasa un vector de índices a fibonacci() para obtener los valores correspondientes en una sola llamada. Para los diez primeros términos, usa v = 1:10; fn = fibonacci(v). Esto produce el vector fila [1 1 2 3 5 8 13 21 34 55]. Los elementos de v son posiciones de la secuencia, y cada elemento del resultado corresponde al índice situado en la misma posición.

La expresión de MATLAB se muestra en línea, en lugar de dentro de un bloque de código ejecutable, porque MATLAB no está disponible entre los entornos de ejecución de este artículo. Los valores indicados se derivan de la recurrencia y de la convención F₁ = F₂ = 1 explicadas arriba.

Representar simbólicamente números de Fibonacci grandes

Un resultado numérico para un índice grande puede mostrarse en notación científica, que redondea los dígitos visibles. Para conservar el entero exacto, convierte el índice en simbólico antes de llamar a fibonacci(): fn = fibonacci(sym(300)). A modo de comparación, fibonacci(300) devuelve un valor numérico que se muestra aproximadamente como 2.2223e+62, mientras que la llamada simbólica representa el valor exacto del término 300 de Fibonacci: 222232244629420445529739893461909967206666939096499764990979600.

El resultado simbólico es útil cuando necesitas el entero completo en lugar de una aproximación de punto flotante. Consulta la documentación de fibonacci de MathWorks para obtener más información sobre la función. Los ejemplos de MATLAB de este artículo no se ejecutaron en el entorno configurado.