mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-08-20 21:41:41 +02:00
add fib_seq
This commit is contained in:
17
src/util/fibonacci_sequence.scad
Normal file
17
src/util/fibonacci_sequence.scad
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
include <__comm__/__fast_fibonacci.scad>;
|
||||||
|
|
||||||
|
function _fibonacci_sequence(seq, n, i = 2) =
|
||||||
|
i > n ? seq :
|
||||||
|
_fibonacci_sequence(
|
||||||
|
concat(seq, [seq[i - 1] + seq[i - 2]]),
|
||||||
|
n,
|
||||||
|
i + 1
|
||||||
|
);
|
||||||
|
|
||||||
|
function fibonacci_sequence(from, to) =
|
||||||
|
let(f = __fast_fibonacci(from))
|
||||||
|
from == to ? [f] :
|
||||||
|
_fibonacci_sequence(
|
||||||
|
[f, __fast_fibonacci(from - 1) + f],
|
||||||
|
to - from
|
||||||
|
);
|
Reference in New Issue
Block a user