数学大好き宣言!

勉強メモ。おもしろいことを探していきたい。

フィボナッチ数列計算機

フィボナッチ数列の計算機です。環境にもよると思いますが、5000番目くらいまでは普通に計算できます。


番目のフィボナッチ数

(ここに結果を表示)
↓コード↓

<script>
    function A(N){
        if(N>0){
            let a=1n;
            let b=1n;
            let c=0n;
            let n=0;
            while(n<N){
                result.innerHTML=a
                a=a+c
                c=b
                b=a
                n=n+1
            }
        }
        else{result.innerHTML="正の整数を入力してください"}
    }
</script>
<form onsubmit="return false;">
    <input type="number" id="N" />番目のフィボナッチ数
    <button type="button" onclick="A(N.value)">計算</button>
</form>
<div id="result">(ここに結果を表示)</div>

メモ
・「1n」「0n」などのnはbigintと言うそうで、大きな整数まで浮動小数点数にせずに計算できる。
・onsubmit="return false;"は、入力したことをどこかに送信するわけではないときに使い、入力フォームでEnterを押してもページが更新されないようにできるらしい。
・3項間漸化式を扱うには、このように中継地点となる三つ目の変数が必要だと思う。