50本目 トリボナッチ数列を作ろう!

VBA100本ノック

VBA100本ノック 50本目を動画で解説しています。Excelの神髄さんの模範解答はコチラ


問題

#VBA100本ノック50本目
記念すべき50本目は数学です。
直前の三項の和として各項が定まるトリボナッチ数列を出力してください。
0,0,1,1,2,4,7,13,24,44,81,149,274,…
最初の0,0,1は固定です。
※エクセルの限界まで出力してみましょう。
※出力先は任意
50本記念なので、密かな裏お題を2つほど小さい声でぼそっと、、、
・再帰の練習にやってみるのもよいかも。
・VBAの整数の桁数の限界に挑戦、どこまでいけるのかな。

解答

Sub トリボナッチ数列()

    Dim 数値1, 数値2, 数値3, 合計
    数値1 = 0
    数値2 = 0
    数値3 = 1
    合計 = 数値1 + 数値2 + 数値3
    Cells(1, 1) = 数値1
    Cells(2, 1) = 数値2
    Cells(3, 1) = 数値3
    
    Dim i
    i = 4
    On Error GoTo ErrExit
    Do
        Cells(i, 1) = 合計
        i = i + 1
        数値1 = 数値2
        数値2 = 数値3
        数値3 = 合計
        合計 = 数値1 + 数値2 + 数値3
    Loop
ErrExit:
    
End Sub
新人君
新人君

記念すべき50本目ですね!

ブチョ
ブチョ

あと…20…!
いや30本ぐらいで
100本終わりなのかな?

新人君
新人君

小学校からやり直して…

コメント

タイトルとURLをコピーしました