# Rosetta Code problem: https://www.rosettacode.org/wiki/Fibonacci_n-step_number_sequences # by Jjuanhdez, 06/2022 arraybase 1 print " fibonacci =>"; dim a = {1,1} call fib (a) print " tribonacci =>"; dim a = {1,1,2} call fib (a) print " tetranacci =>"; dim a = {1,1,2,4} call fib (a) print " pentanacci =>"; dim a = {1,1,2,4,8} call fib (a) print " hexanacci =>"; dim a = {1,1,2,4,8,16} call fib (a) print " heptanacci =>"; dim a = {1,1,2,4,8,16,32} call fib (a) print " octonacci =>"; dim a = {1,1,2,4,8,16,32,64} call fib (a) print " nonanacci =>"; dim a = {1,1,2,4,8,16,32,64,128} call fib (a) print " decanacci =>"; dim a = {1,1,2,4,8,16,32,64,128,256} call fib (a) print " lucas =>"; dim a = {2,1} call fib (a) end subroutine fib (a) dim f(24) fill 0 b = 0 for x = 1 to a[?] b += 1 f[x] = a[x] next x for i = b to 13 + b print rjust(f[i-b+1], 5); if i <> 13 + b then print ","; else print ", ..." for j = (i-b+1) to i f[i+1] = f[i+1] + f[j] next j next i end subroutine