Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,47 @@
|
|||
% Find the Nth element of a given n-step sequence
|
||||
n_step = proc (seq: sequence[int], n: int) returns (int)
|
||||
a: array[int] := sequence[int]$s2a(seq)
|
||||
for i: int in int$from_to(1,n) do
|
||||
sum: int := 0
|
||||
for x: int in array[int]$elements(a) do
|
||||
sum := sum + x
|
||||
end
|
||||
array[int]$reml(a)
|
||||
array[int]$addh(a,sum)
|
||||
end
|
||||
return(array[int]$bottom(a))
|
||||
end n_step
|
||||
|
||||
% Generate the initial sequence for the Fibonacci n-step sequence of length N
|
||||
anynacci = proc (n: int) returns (sequence[int])
|
||||
a: array[int] := array[int]$[1]
|
||||
for i: int in int$from_to(0,n-2) do
|
||||
array[int]$addh(a, 2**i)
|
||||
end
|
||||
return(sequence[int]$a2s(a))
|
||||
end anynacci
|
||||
|
||||
% Given an initial sequence, print the first N elements
|
||||
print_n = proc (seq: sequence[int], n: int)
|
||||
po: stream := stream$primary_output()
|
||||
for i: int in int$from_to(0, n-1) do
|
||||
stream$putright(po, int$unparse(n_step(seq, i)), 4)
|
||||
end
|
||||
stream$putl(po, "")
|
||||
end print_n
|
||||
|
||||
start_up = proc ()
|
||||
s = struct[name: string, seq: sequence[int]]
|
||||
po: stream := stream$primary_output()
|
||||
seqs: array[s] := array[s]$[
|
||||
s${name: "Fibonacci", seq: anynacci(2)},
|
||||
s${name: "Tribonacci", seq: anynacci(3)},
|
||||
s${name: "Tetranacci", seq: anynacci(4)},
|
||||
s${name: "Lucas", seq: sequence[int]$[2,1]}
|
||||
]
|
||||
|
||||
for seq: s in array[s]$elements(seqs) do
|
||||
stream$putleft(po, seq.name, 12)
|
||||
print_n(seq.seq, 10)
|
||||
end
|
||||
end start_up
|
||||
Loading…
Add table
Add a link
Reference in a new issue