Hace algún tiempo publiqué como conseguir un listado de números primos (ver post).
Hoy veremos otro clásico atemporal: La Sucesión de Fibonacci.
Puedes leer algo más en Wikipedia.
Básicamente es una secuencia creciente de números enteros naturales donde cada valor es la suma de los dos anteriores, siendo los dos primeros elementos de la Sucesión el 0 y el 1, así:
0, 1, 1, 2, 3, 5, 8, 13, 21, etc...
Emplearemos una macro, basándonos en el algoritmo de la Sucesión y nuevamente empleando Arrays para componer nuestro procedimiento.
Insertaremos el siguiente procedimiento en un módulo estándar de nuestro proyecto de VB:
Si lanzamos la macro veremos:
Obviamente podríamos haber obtenido nuestra Sucesión de Fibonacci con una sencilla fórmula en nuestra hoja de cálculo.
Disponemos en A1 el valor 0
en A2 el valor 1
y en A3 la fórmula =A1+A2
para luego arrastrar hacía abajo..
En ambas formas habrá que tener precaución con el límite de precisión de Excel (15 dígitos), ya que a partir del elemento 75, la precisión de Excel nos devolverá valores incompletos o no válidos.
Hoy veremos otro clásico atemporal: La Sucesión de Fibonacci.
Puedes leer algo más en Wikipedia.
Básicamente es una secuencia creciente de números enteros naturales donde cada valor es la suma de los dos anteriores, siendo los dos primeros elementos de la Sucesión el 0 y el 1, así:
0, 1, 1, 2, 3, 5, 8, 13, 21, etc...
Emplearemos una macro, basándonos en el algoritmo de la Sucesión y nuevamente empleando Arrays para componer nuestro procedimiento.
Insertaremos el siguiente procedimiento en un módulo estándar de nuestro proyecto de VB:
Sub SucesionFibonacci() Dim f0 As Long, f1 As Long, elementos As Integer f0 = 0: f1 = 1 elementos = 25 'dimensionamos nuestra Array al número de elementos deseados ReDim Fib(1 To elementos) As Long 'Rellenamos la matriz con los elementos de la Serie de Fibonacci Fib(1) = f0 'asignamos dato al primer valor Fib(2) = f1 'asignamos dato al segundo valor For i = 3 To UBound(Fib) Fib(i) = f0 + f1 'Calcula el dato como suma de un elemento más el anterior 'hacemos la recurrencia para los siguientes elementos f0 = f1 f1 = Fib(i) Next i 'Generamos un MsgBox para ver la secuencia de Fibonacci txt = "" For elto = 1 To UBound(Fib) txt = txt & elto & vbTab & Fib(elto) & vbTab & vbCrLf Next elto 'Mostramos el sucesión generada... mensaje = MsgBox(txt, , "Sucesión Fibonacci") End Sub
Si lanzamos la macro veremos:
Obviamente podríamos haber obtenido nuestra Sucesión de Fibonacci con una sencilla fórmula en nuestra hoja de cálculo.
Disponemos en A1 el valor 0
en A2 el valor 1
y en A3 la fórmula =A1+A2
para luego arrastrar hacía abajo..
En ambas formas habrá que tener precaución con el límite de precisión de Excel (15 dígitos), ya que a partir del elemento 75, la precisión de Excel nos devolverá valores incompletos o no válidos.
no hay descargables?
ResponderEliminarHola que tal William,
Eliminarno parece necesario.. simplemente copia y pega
Saludos
Te paso enlace de una foto donde intentanto descubrir quer eran o que representaban, me salió la Sucesión de Fibonacci
ResponderEliminarhttps://www.flickr.com/photos/23795009@N04/22106339673/in/dateposted-ff/