プログラムをやってみよー (C).part2

 何ヶ月ぶりかの更新。

 ちょこちょことやってはいたんだがねー。

 

 見てもらえれば判ると思うが、n=30までのフィボナッチ数列の表示プログラムです。

 滑稽者氏から渡されたサンプル見たらまんまで笑った(笑)

 でも一応自分で構築したんだぜっ。

 

 再帰呼び出しについてちょこっと。

 fibn関数内で定義しているint nは、main関数の中にあるint nと同一のものではないのです。(わかってる人は判ってるとは思うが)

 両者共にローカル変数だから、関数内が適用範囲(スコープとか言う)なので別の文字列でも問題なし。

 だから、

 でもおk。(fibn関数を抜き出しただけ、これだけじゃ動かないよ)

 実際に置き換えれば問題なく動きます。

 

 

 次回更新日はまた不明(笑)

 任意の数まで拡張しただけ。

 intの値から外れたら誤作動するので(その前に動作速度がアレな事になりますが)、そこは勝手に手直しして下さいな。

 

 ついでにもうひとつ。

 再帰呼び出し非利用のフィボナッチ数列の表示プログラム。

 unsigned使っても46が47に伸びただけと言う……。当然ですね、符号消すだけだもの、2倍にしかならないよ。それ以上伸ばすなら64bitにしなきゃいけないわけだが、64bitの変数って知らない。

 唯一のうまみは、再帰呼び出し使ってないから動作が速いと言うところか。

 

 

 以上、漸く再帰呼び出しを理解したふらっぐでした。

トラックバック(0)

このブログ記事を参照しているブログ一覧: プログラムをやってみよー (C).part2

このブログ記事に対するトラックバックURL: http://delta50.net/mt/mt-tb.cgi/320

コメントする

このブログ記事について

このページは、ふらっぐが2009年2月11日 21:29に書いたブログ記事です。

ひとつ前のブログ記事は「IPAの件に関してはメシウマとしか言い様が無い」です。

次のブログ記事は「ブログの炎上を引き起こす匿名性」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。