Haskellのmy Fibobacciシーケンス実装の結果を、私が数値のoptputにいくつかの "奇妙な"形式を認識したのを見ていました。すべてのフィボナッチSeq。奇妙な出力形式(Haskell)
まず、これは私が作ってみたHaskellコードです:
fib :: Integer -> [Integer]
fib 0 = [0]
fib 1 = [0, 1]
fib a = (fib' 0 1 [0,1] 1 a)
fib' :: Integer -> Integer -> [Integer] -> Integer -> Integer -> [Integer]
fib' n1 n2 l cont n
| cont == n = l
| otherwise = (fib' n2 n3 (l++[n3]) (cont+1) n)
where n3 = n2 + n1
FIB 10のようなものの場合、出力は次のようになります。[0,1,1,2,3,5、 8,13,21,34,55] それから、フィックス1000のようなものを試したかったのですが、数値は非常に大きく、すべて...私が見たのは、 "、"によって形成された奇妙な楕円リストから、例えば各整数:だから私はしました
この奇妙なパターンがまだ繰り返してしまうかどうかを確認するために、出力ウィンドウのサイズを限界に達し、そして答えはイエスです:
そして、私の質問は次のとおりです。
」でこのパターンが現れる理由を誰もが知っています、 "リストの整数の間? それはもっと無作為でなくてはならないでしょうか?
[this reddit post](http://www.reddit.com/r/haskell/comments/xwfbm/iterate_2_1/)も参照してください。 –
これは[CodeGolf](http://codegolf.stackexchange.com/)ですばらしいことになります。 – crockeea