Rozwiązanie 7¶
Treść zadania¶
Napisz funkcję Fibonacci
zgodną z poniższą specyfikacją.
Specyfikacja¶
Dane¶
- \(n\) - liczba naturalna
Wynik¶
- Liczba Fibonacciego o indeksie \(n\).
Rozwiązanie¶
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
Opis rozwiązania¶
1. Definicja funkcji¶
Function Fibonacci
rozpoczyna definicję funkcji o nazwieFibonacci
.n As Integer
oznacza, że funkcja przyjmuje jeden argument (wejście) o nazwien
, który jest typuInteger
.As Long
na 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 Long
iDim temp As Long
deklarują trzy zmienne typuLong
.a
ib
są inicjalizowane wartościami początkowymi ciągu Fibonacciego: 0 i 1.
3. Pętla obliczeniowa¶
For i = 1 To n
rozpoczyna pętlę, która będzie wykonywanan
razy.
4. Obliczanie kolejnego wyrazu ciągu¶
temp = a + b
oblicza kolejny wyraz ciągu, dodając dwie ostatnie liczby.a = b
przypisuje wartośćb
doa
. Teraza
jest drugim z ostatnich dwóch wyrazów ciągu.b = temp
przypisuje obliczoną sumę dob
. Terazb
jest najnowszym wyrazem ciągu.
5. Koniec pętli¶
Next i
kończy bieżący cykl pętli i przechodzi do następnego, zwiększająci
.
6. Zwracanie wyniku¶
Fibonacci = a
przypisuje ostateczną wartość zmienneja
do samej funkcjiFibonacci
, co oznacza, że funkcja zwróci tę wartość jako swój wynik.a
reprezentuje n-ty wyraz ciągu Fibonacciego.
7. Koniec funkcji¶
End Function
oznacza koniec definicji funkcji.