新しいアカウントで始めました。

身の回りの出来事や写真が中心です。

再び、フィボナッチ数列。実行が停止したように見える原因は、スタックが関係していると思います。

2023-05-12 21:53:07 | C#、VBなど

 fib、fib2、fib3とありますが、データの型をDecimalに変更。フィボナッチ数列の128番目までは、大丈夫です。Bigintegerなる型もあるようですが、使い方が分かりません。どうやらfib2、fib3は末尾再帰で、スタックを消費しないようです。コップ本P169に、末尾再帰では、呼び出しのたびに新しいスタックフレームを作ったりしない、とあります。fib(50)でもエラーは起きませんが、実行が中断した感じになります。fib(128)でも同様です。実行が中断した感じに見えるのは、スタックのトラブルが起きているのかもしれません。


この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« フィボナッチ数列、雑感。cam... | トップ | Scalaでfib(128)をやって見ま... »
最新の画像もっと見る

C#、VBなど」カテゴリの最新記事