●フィボナッチ数列

「●フィボナッチ数列」の編集履歴(バックアップ)一覧に戻る

●フィボナッチ数列 - (2008/09/14 (日) 00:01:35) のソース

*情報
作者名:はっぱ
引用元:[[なでしこプログラム掲示板「はっぱのサンプル集57」>http://www.himanavi.net/cgi/nade-bbs/cbbs.cgi?mode=al2&namber=734&rev=&no=0]]

*概要
[[http://ja.wikipedia.org/wiki/フィボナッチ数>http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A3%E3%83%9C%E3%83%8A%E3%83%83%E3%83%81%E6%95%B0]]


*解説
***引数
n:数列のn

***返り値
フィボナッチ数列(配列)

*サンプルプログラム
 //ここから
 母艦を最大化
 表示メモとはメモ
 そのレイアウトは『全体』
 
 表示データは空//別変数に文字列作成
 10のフィボナッチ数列を言う。
 10のフィボナッチ数列で反復
  対象を言う。
  表示データは表示データ&改行&(回数を3で文字列右寄せ)&『:』&(対象を105で文字列右寄せ)
 表示メモは表示データ//一気に代入

*本体
 //少し大きい整数(MAX29桁)に対応
 //負の数は未対応
 ●整数加算する(αとβを)
  仮αとは文字列。仮αはαを29で文字列右寄せ
  α上桁とは文字列。α上桁は(仮αの15バイト左部分)の『 』を空に置換
  α下桁とは文字列。α下桁は(仮αの14バイト右部分)の『 』を空に置換
  仮βとは文字列。仮βはβを29で文字列右寄せ
  β上桁とは文字列。β上桁は(仮βの15バイト左部分)の『 』を空に置換
  β下桁とは文字列。β下桁は(仮βの14バイト右部分)の『 』を空に置換
  下桁合計とは文字列。下桁合計は(α下桁+β下桁)を29で文字列右寄せ
  繰上とは整数。繰上は(下桁合計の15バイト左部分)の『 』を空に置換
  上桁合計とは整数。上桁合計はα上桁+β上桁+繰上
  下桁合計は下桁合計の14バイト右部分
  もし上桁合計が0ならば
   INT(下桁合計の『 』を空に置換)で戻る
  (上桁合計&(下桁合計の『 』を『0』に置換))で戻る
 
 //さらに大きい整数(MAX57桁)に対応
 //負の数は未対応
 ●超加算する(αとβを)
  仮αとは文字列。仮αはαを57で文字列右寄せ
  α上桁とは文字列。α上桁は(仮αの29バイト左部分)の『 』を空に置換
  α下桁とは文字列。α下桁は(仮αの28バイト右部分)の『 』を空に置換
  仮βとは文字列。仮βはβを57で文字列右寄せ
  β上桁とは文字列。β上桁は(仮βの29バイト左部分)の『 』を空に置換
  β下桁とは文字列。β下桁は(仮βの28バイト右部分)の『 』を空に置換
  下桁合計とは文字列。下桁合計は(α下桁とβ下桁を整数加算)を57で文字列右寄せ
  繰上とは文字列。繰上は(下桁合計の29バイト左部分)の『 』を空に置換
  上桁合計とは文字列。上桁合計は(α上桁とβ上桁を整数加算)と繰上を整数加算
  下桁合計は下桁合計の28バイト右部分
  もし上桁合計が『0』ならば、
   (下桁合計の『 』を空に置換)で戻る
  (上桁合計&(下桁合計の『 』を『0』に置換))で戻る
 
 //さらに大きい整数(MAX113桁)に対応
 //負の数は未対応
 ●超超加算する(αとβを)
  仮αとは文字列。仮αはαを113で文字列右寄せ
  α上桁とは文字列。α上桁は(仮αの57バイト左部分)の『 』を空に置換
  α下桁とは文字列。α下桁は(仮αの56バイト右部分)の『 』を空に置換
  仮βとは文字列。仮βはβを113で文字列右寄せ
  β上桁とは文字列。β上桁は(仮βの57バイト左部分)の『 』を空に置換
  β下桁とは文字列。β下桁は(仮βの56バイト右部分)の『 』を空に置換
  下桁合計とは文字列。下桁合計は(α下桁とβ下桁を超加算)を113で文字列右寄せ
  繰上とは文字列。繰上は(下桁合計の57バイト左部分)の『 』を空に置換
  上桁合計とは文字列。上桁合計は(α上桁とβ上桁を超加算)と繰上を超加算
  下桁合計は下桁合計の56バイト右部分
  もし上桁合計が『0』ならば、
   (下桁合計の『 』を空に置換)で戻る
  (上桁合計&(下桁合計の『 』を『0』に置換))で戻る
 
 ●フィボナッチ数列(nの)
  もしn≦0ならば、空で戻る
  もしn=1ならば、1で戻る
  もしn=2ならば、「1{~}1」で戻る
  数列は(n-1)のフィボナッチ数列
  数列に(数列[(数列の配列要素数)-2]と数列[(数列の配列要素数)-1]を超超加算)を配列追加
  数列で戻る
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。