% パスカルの三角形

\documentclass{jsarticle}
\pagestyle{myheadings}
\markright{tmt's math page}
\def\baselinestretch{1.33}

\begin{document}

\noindent\textbf{パスカルの三角形}

あまり関連がなさそうに見えても、実際は深いつながりをもつものは多い。パスカルの三角形と二項展開も---いや、もっと踏み込んでパスカルの三角形とフィボナッチ数列も---そんな関係にある。二項展開とは$(a+b)^n$を展開することで、基本的に
\begin{quote}
$(a+b)^n = a^n+(係数)a^{n-1}b+(係数)a^{n-2}b^2+\dots+(係数)ab^{n-1}+b^n$
\end{quote}
のように展開される。

一方、パスカルの三角形とは
\begin{quote}
\begin{tabular}{ccccccccccccc}
& & & & & & 1\put(-3, 3){\circle{12}} \\
& & & & & 1 && 1\put(-3, 3){\circle{12}} \\
& & & & 1\put(-3, 3){\circle{12}} & & 2 && 1\put(-3, 3){\circle{12}} \\
& & & 1 & & \underline{3} & & 3 & & 1\put(-3, 3){\circle{12}} \\
& & 1\put(-3, 3){\circle{12}} & & 4 & & \underline{6} & & 4 & & 1\put(-3, 3){\circle{12}} \\
& 1 & & \underline{5} & & 10 & & 10 & & 5 & & 1\put(-3, 3){\circle{12}} \\
$\dots$\put(-3, 3){\circle{12}} & & $\dots$ & & $\dots$ & & $\dots$ & & $\dots$ & & $\dots$ & & $\dots$\put(-3, 3){\circle{12}}
\end{tabular}
\end{quote}
のように構成されるピラミッド型の数の列である。$\dots$以下に数が続くが、規則は、一つ上段の左右の数の和である。○で囲んだ$1$や下線を引いた数についてはあとで言及する。

まず、三角形に現れる数は二項展開と密接に関係している。端的に言って、$n$段目の数列が$(a+b)^n$を展開したときの係数である。たとえば$5$段目の数列は$(a+b)^4$に対応していて
\begin{quote}
$(a+b)^4 = 1a^4+4a^3b+6a^2b^2+4ab^3+1b^4$
\end{quote}
の展開に現れる係数の列である。

次数が高いとき$(a+b)^n$の展開は容易ではないが、パスカルの三角形があれば比較的楽に求めることができるのだ。二項式の展開と単純な規則でできる数の固まりが、関連しているというのは興味深い。

さらに、興味深いことがパスカルの三角形にはある。先ほど、○で囲んだ1と下線を引いた数についてだ。頂点の$1$は単独で置いておくとして、それ以下は、左の$1$は一つおきに、右の$1$は一つずつ選び、それぞれペアにして直線で結んでみよう。

はじめは$1$と$1$が線で結ばれるだけだが、次の$1$と$1$を線で結ぶと、途中の$3$が串刺しにされることが分かるだろう。その次は$5$と$6$が串刺しにされる。こうやって、次々に同じ直線上に並ぶ数の合計を求めてみると
\begin{quote}
$1$, $2$, $5$, $13$, $34$, $\dots$
\end{quote}
となるはずだ。一方、直線と直線の間には、串刺しにされなかった数が残っているだろう。これら線と線の間の数の合計を求めてみると
\begin{quote}
$1$, $3$, $8$, $21$, $\dots$
\end{quote}
となるはずだ。

これらを交互に並べると
\begin{quote}
$1$, $1$, $2$, $3$, $5$, $8$, $13$, $21$, $34$, $\dots$
\end{quote}
である。なんと、これはフィボナッチ数列じゃないか。どうしてこんなとこに隠れてたんだ?

こんな風に、パスカルの三角形には漠然とながめただけでは分からないものが含まれている。では、漠然とながめただけでは分からない別のものをあぶり出してみよう。

パスカルの三角形に現れる数を、剰余によって色を施すと、どことなくクリスマスツリーと思えるような模様が浮かぶ。そこで、模様の浮かぶ様子を調べるマクロを\verb|Excel VBA|で描いてみた。除数や余りの値を変えてマクロを実行してもらいたい。

マクロについて少し注意をしておこう。マクロは「\verb|Initialization|」「\verb|MakeTree|」「\verb|PaintTree|」の三つがある。順に、シートの初期化マクロ、ツリーを作るマクロ、色を施すマクロであるが、まず初めに「\verb|Initialization|」を実行してもらいたい。本来なら、シートを整えてファイルを提供すべきことと思うが、ファイルサイズを小さくするために初期化をあなた任せにしている。セルの結合は思いのほか容量を食うのだ。初期化が済んだら、「\verb|MakeTree|」でもとになるパスカルの三角形を作り「\verb|PaintTree|」で彩色するだけだ。

彩色されたツリーを見て、ツリーの形が気に入らなければ、列の幅を変えてもらいたい。これはメニューからできることなので、好みの幅にしておくとよいだろう。

「\verb|MakeTree|」で作られるツリーは、正確にはパスカルの三角形ではない。正直に順次和を求めていくと、とてつもなく大きな数になってしまい、オーバーフローの心配が生じる。彩色には余りの値さえ分かればよいので、和が大きくなる前に$27720$で割った剰余で代用している。$27720$は$2$から$11$までの数の最小公倍数である。というのは、リストにある除数が$2$から$11$までだからである。

マクロは修正余地が十分ある。細かいことは任せよう。

\end{document}