Solution 7¶
Treść zadania¶
Napisz funkcję Fibonacci zgodną z poniższą specyfikacją.
Specification¶
Input¶
- \(n\) - liczba naturalna
Output¶
- Liczba Fibonacciego o indeksie \(n\).
Solution¶
Function Fibonacci(n As Integer) As Long
Dim a As Long
Dim b As Long
Dim temp As Long
a = 0
b = 1
For i = 1 To n
temp = a + b
a = b
b = temp
Next i
Fibonacci = a
End Function
Description rozwiązania¶
1. Definicja funkcji¶
Function Fibonaccirozpoczyna definicję funkcji o nazwieFibonacci.n As Integeroznacza, że funkcja przyjmuje jeden argument (wejście) o nazwien, który jest typuInteger.As Longna końcu mówi, że funkcja zwraca wartość typuLong(używany do przechowywania dużych liczb całkowitych).
2. Deklarowanie i inicjalizacja zmiennych¶
Dim a As Long,Dim b As LongiDim temp As Longdeklarują trzy zmienne typuLong.aibsą inicjalizowane wartościami początkowymi ciągu Fibonacciego: 0 i 1.
3. Pętla obliczeniowa¶
For i = 1 To nrozpoczyna pętlę, która będzie wykonywananrazy.
4. Obliczanie kolejnego wyrazu ciągu¶
temp = a + boblicza kolejny wyraz ciągu, dodając dwie ostatnie liczby.a = bprzypisuje wartośćbdoa. Terazajest drugim z ostatnich dwóch wyrazów ciągu.b = tempprzypisuje obliczoną sumę dob. Terazbjest najnowszym wyrazem ciągu.
5. Koniec pętli¶
Next ikończy bieżący cykl pętli i przechodzi do następnego, zwiększająci.
6. Zwracanie wyniku¶
Fibonacci = aprzypisuje ostateczną wartość zmiennejado samej funkcjiFibonacci, co oznacza, że funkcja zwróci tę wartość jako swój wynik.areprezentuje n-ty wyraz ciągu Fibonacciego.
7. Koniec funkcji¶
End Functionoznacza koniec definicji funkcji.