数学の中でも数列は Excel の操作感覚にぴたりと合う分野といってよいでしょう。相対参照で同じ演算を作用させ続けるオートフィル機能とは、まさに数列そのものです。まず簡単に等差数列について復習し、そのあと実際に Excel に数列を計算させてみましょう。
初項 $a_1$ に同じ数 $d$ を順に足していった数列
\[a_1,\quad a_1+d,\quad a_1+2d,\quad a_1+3d,\:\cdots\:\]
のことを等差数列とよびます。このとき、$d$ は公差とよばれます。 その規則性から明らかに、$n$ 番目の項、すなわち一般項は
\[a_n=a_1+(n-1)\,d\tag{1}\]
と表せます。また $m$ 番目の項は $a_m=a_1+(m-1)\,d$ と表せるので、$a_n$ から $a_m$ を差し引くと、
\[a_n-a_m=(n-m)\,d \tag{2}\]
というように、任意の二項間の関係が得られます。たとえば、初項 1 に順次 3 を加える数列
\[1,\ 7,\ 10,\ 13,\ 20,\ \cdots\]
の一般項は、
\[a_n=1+(n-1)\;3=3n-2\]
と表すことができます。またその項数は
\[3n-2=88\]
より、$n=30$ となります。
等差数列の各項の総和
\[S_n=a_1+a_2+a_3+\:\cdots\:+a_n\]
を等差級数 とよび、末項を $l$ として次式で表すことができます。
\[\begin{align*}S_n&=\frac{n(a_1+l)}{2}\tag{3}\\[6pt]S_n&=\frac{n}{2}\{2a_1+(n-1)\,d\}\tag{4}\end{align*}\]
【(3)(4)の証明】等差数列の和を書き下すと
\[S_n=a_1+(a_1+d)+(a_1+2d)+\:\cdots\:+(l-2s)+(l-d)+l\]
と表せます。これを逆順にして
\[S_n=l+(l-d)+(l-2d)+\:\cdots\:+(a_1+2d)+(a_1+d)+a_1\]
と書いて両式を足し合わせてみると、
\[2S_n=(a_1+l)+(a_1+l)+(a_1+l)+ \:\cdots\:+(a_1+l)\]
と同じ形の項が \(n\) 個揃うので、
\[S_n=\frac{n(a_1+l)}{2}\]
という表式が得られます。ここで末項 $l$ は
\[l=a_1+(n-1)\,d\]
なので、
\[S_n=\frac{n}{2}\{2a_1+(n-1)\,d\}\]
と表すこともできます。たとえば、自然数を $1$ から $n$ まで順に足し合わせると
\[1+2+3+\:\cdots\:+n=\frac{n(n+1)}{2}\]
となります。また奇数を $1$ から $2n-1$ まで足し合わせると
\[1+3+5+\:\cdots\:+2n-1=\frac{n}{2}(1+2n-1)=n^2\]
となります。偶数を $1$ から $2n$ まで足し合わせると
\[2+4+6+\:\cdots\:+2n=\frac{n}{2}(2+2n)=n(n+1)\]
のようになります。
【Excel】等差数列の作成
基本的に Excel で数列を計算する場合は初項 $a_1$ と公差 $d$ さえ分かっていればよく、一般項は必要ありません。また、第 $n$ 項までの等差数列の和は公式 (4) を使って計算できますが、Excel では各セルごとに順次和を求めていくので、
\[S_n=S_{n-1}+a_n\]
という関係式を使います。たとえば第 4 項までの和 $S_4$ は次のように求めることができます:
それでは新しいシートを用意してください。初項 $1$, 公差 $2$ の等差数列を計算させてみます。下図を参照に数列番号 n と一般項 $a_n$、そして数列の和 $S_n$ を表す見出しを作っておきます。n の下(セル A2 以降)には 1 から 10 までの番号を用意しておきましょう。また、初項 $a_1$ および公差 $d$ を入力する項目も用意しておきます。セル B2 にはセル F2 を絶対参照する
=$F$2
と入力しておきます。数列が 1 項しかなければ和は $a_1$ に等しいので、セル C2 には
=B2
と入力します。
さて、セル B3 には「1 つ前のセルに公差 d を加えた」データを入れます。「1 つ前のセル」は相対参照で、公差 $d$ は絶対参照にしなければならないので、
=B2+$F$3
と入れておきます。そして右下隅をダブルクリックすると、末項までこの関係が保持されたデータが入り、一般項 $a_{n}$ のデータが一瞬で完成します。
次はこの数列の和を計算するために、さきほどの公式 (4)
\[S_n=S_{n-1}+a_n\]
を用います。「1 つ前のセルに左隣のセルを加える」というデータを作ります。相対参照で
=C2+B3
と入力します。右下隅をダブルクリックして数列の和のデータが入ります。
ちゃんと合っているのかどうか不安な人は検算しておきましょう。
\[1+3+5+7+9+11+13+15+17+19=20\times 5=100\]
合ってますね! 次は初項を 2、公差を 4 に変えてみます。
一般項と和が一瞬で計算され直しました。
Excel は自由度の高い計算ソフトですから、同じ数列計算シートでも人によって仕様が異なる可能性があります。たとえば初項と公差の入力項目を用意せずに セル B2 に「1」を入れて、B3 には
=B2+2
としても計算上は問題ありません。しかしこれでは何がパラメータなのか分かり難いうえに、公差を変えようとしたときに、セル B3 の式を書き直さなければならなくなってしまいます。色々な数列を調べたいと思ったときに、これではストレスが溜まるばかりですね。Excel でシートを作るさいには可能な限り「データの1部を変えて対応するデータを全て変化させる」という仕様にすることが大切です。これは数学に限らず会社で作成する見積書などでも同じことです。また、VBA と連動させるような複雑なシートならいっそう重要になってきます。「どの部分がパラメータで、対応する可変データはどこなのか」を分かりやすく構成する、ということを常に意識してください。
「連続データの作成」機能による等差数列の生成
Excel の「連続データの作成」機能を使って、等差数列を生成することもできます。例として、初項 5、等差 3 の等差数列を生成してみましょう。下図のように、A 列に項数を適当に用意して、セル B2 に初項 5 を入力しておきます。
次に「ホーム」タブの右隅にある「フィル」アイコン (↓ のようなマーク) をクリックして、「連続データの作成」を選択します。
「範囲」の「列」と「種類」の「加算」にチェックを入れて、「増分値」に 3 を入力します。設定した値以下でデータを止めるのが「停止値」です。大きめに適当な値を入れておきましょう。ここでは 99 に設定しておきます。
「OK」ボタンをクリックするか、[Enter] キーを押すと、下図のように等差数列が完成します。
エクセルや数学に関するコメントをお寄せください