Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fibonacciFy : String -> String -> String
- fibonacciFy origIndent input =
- input
- |> String.lines
- |> List.map (fibonacciFyLine origIndent)
- |> String.join "\n"
- fibonacciFyLine : String -> String -> String
- fibonacciFyLine origIndent input =
- let
- trimed =
- String.trimLeft input
- indentLevel =
- (String.length input - String.length trimed) // String.length origIndent
- in
- String.repeat (2*cumulativeFib indentLevel) " " ++ trimed
- cumulativeFib : Int -> Int
- cumulativeFib n =
- List.range 0 n
- |> List.map fibonacci
- |> List.sum
- fibonacci : Int -> Int
- fibonacci n =
- let
- fib a b n =
- if n <= 0 then
- a
- else
- fib b (a + b) (n - 1)
- in
- fib 0 1 n
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement