41 lines
553 B
Plaintext
41 lines
553 B
Plaintext
Function Main()
|
|
Local n
|
|
|
|
For n := 1 To 20
|
|
QOut( FibR( n ) )
|
|
QOut( FibI( n ) )
|
|
Next
|
|
|
|
Return( NIL )
|
|
|
|
Function FibR( n )
|
|
Local nFib
|
|
|
|
If n < 2
|
|
nFib := n
|
|
Else
|
|
nFib := FibR( n - 2 ) + FibR( n - 1 )
|
|
EndIf
|
|
|
|
Return( nFib )
|
|
|
|
Function FibI( n )
|
|
Local nFibMin1 := 1
|
|
Local nFibMinN1 := 0
|
|
Local i := 1
|
|
Local nFib
|
|
|
|
If n < 2
|
|
nFib := n
|
|
Else
|
|
Do While i < n
|
|
nFib := nFibMin1 + nFibMinN1
|
|
nFibMinN1 := nFibMin1
|
|
nFibMin1 := nFib
|
|
++i
|
|
EndDo
|
|
EndIf
|
|
|
|
Return( nFib )
|
|
|