RosettaCodeData/Task/Hofstadter-Q-sequence/FreeBASIC/hofstadter-q-sequence.basic

22 lines
359 B
Plaintext

Const limite = 100000
Dim As Long Q(limite), i, cont = 0
Q(1) = 1
Q(2) = 1
For i = 3 To limite
Q(i) = Q(i-Q(i-1)) + Q(i-Q(i-2))
If Q(i) < Q(i-1) Then cont += 1
Next i
Print "Primeros 10 terminos: ";
For i = 1 To 10
Print Q(i) &" ";
Next i
Print
Print "Termino numero 1000: "; Q(1000)
Print "Terminos menores que los anteriores: " &cont
End