Padovan sequence: Difference between revisions
m
→{{header|Haskell}}
m (→{{header|Haskell}}: More consistent formatting, for visibility of parallels) |
|||
Line 923:
padovanFloor = unfoldr f 0
where
f = Just . (((,) . g) <*> succ)▼
p = 1.324717957244746025960908854
s = 1.0453567932525329623
g = floor . (0.5 +) . (/ s) . (p **) . fromInteger . pred
▲ f = Just . (((,) . g) <*> succ)
padovanLSystem :: [String]
padovanLSystem = unfoldr f "A"
where
f = Just . ((,) <*> concatMap rule)▼
rule 'A' = "B"
rule 'B' = "C"
rule 'C' = "AB"
▲ f = Just . ((,) <*> concatMap rule)
-------------------------- TESTS -------------------------
|