Para el ejercicio se podría convertir el Ciclo For en una función recursiva (función que se llama a sí misma) y luego a través de otro ciclo generar una sumatoria de los primeros N número de Fibonacci. Aquí el ejemplo
Lo comenté para facilitar el entendimiento, pero para este momento con el curso de la profesora Annie seguro que ni necesitaban que lo comente porque son super geniales
.
El código es:
Public Function Fibonacci(x As Integer) As Integer
'Función recursiva basado en f(x) = f(x-1) + f(x-2)
'Con valores para detenerse en f(2) = 1 y f(1) = 1, que son los iniciales de Fibonacci
If x = 2 Or x = 1 Then
Fibonacci = 1
Else
Fibonacci = Fibonacci(x - 1) + Fibonacci(x - 2)
End If
End Function
Public Sub Suma_Fibonacci()
'Definición de variables, nótese que se pueden definir varias con un mismo tipo
Dim n, suma_fibo As Integer
Dim m As String
'Solicitud de dato al usuario y set inicial de la suma en 0
n = InputBox("Coloca la cantidad de números de Fibonacci que quieres acumular (mayor que 0)", "Acumulador Fibonacci")
suma_fibo = 0
'Ciclo For
For i = 1 To n
suma_fibo = suma_fibo + Fibonacci(Int(i))
Next
m = MsgBox("El resultado es: " & suma_fibo)
End Sub
.
El ciclo For sirve bastante para acumular resultados. Aunque más allá de eso te puede servir para cosas super interesantes como scrapping a las webs. Yo uso los objetos XML.HTTP y HTMLDocument, luego alimento excel con un listado de datos y uso del ciclo FOR para recorrer cada dato y las demás mecánicas extraen la información que necesito de páginas
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?