【図でスッキリ理解】三角数列ってなに?なぜ三角?意外な使い道までやさしく解説!

「三角数列って、なんで“三角”なの?」

ふとそんな疑問がわいたんです。
学校で習った記憶はあるけど、詳しくは覚えてない…なんて人、多いですよね。

でも、これがけっこう奥が深くて、数学的にも、プログラム的にも、見た目にも面白い数列なんです。

三角数列ってなに?

まずはこの数字の並びを見てください。

1, 3, 6, 10, 15, 21, 28, 36, …

これ、すべて「1から順に足した合計」なんです。

  • 1 = 1
  • 3 = 1 + 2
  • 6 = 1 + 2 + 3
  • 10 = 1 + 2 + 3 + 4
  • 15 = 1 + 2 + 3 + 4 + 5

つまり、「n番目までの合計」を並べた数列。
これが「三角数列」です。

なぜ“三角”なの?

ここがこの数列の最大のポイント。
言葉じゃわかりにくいので、図っぽく並べてみましょう。

●

● ●

● ● ●

● ● ● ●

● ● ● ● ●

ね? 点を並べると正三角形みたいな形になるんです。

これが「三角数列」と呼ばれる理由。
英語でも Triangular Number(トライアングラー・ナンバー)といいます。

数学って、こういう「形」に意味があることが多いんですよね。
数字がただの記号じゃなくて、見た目としても法則を持ってるって、ちょっとワクワクしませんか?

三角数列の公式

三角数にはちゃんとした計算式もあります。

n番目の三角数 = n(n+1)/2

たとえば「5番目の三角数」は、

5 × (5+1) ÷ 2 = 15

これはつまり、「1〜nまでの合計」を求める公式でもあるんです。

この式は、昔ガウス少年が小学生のときに、先生から「1~100まで足して」と言われて一瞬で答えを出した話で有名ですよね。

普通なら1から100まで一個ずつ足していくところを、
彼はこう考えました。

1 + 100 = 101
2 + 99 = 101
3 + 98 = 101

これを50組作れば、
→ 101 × 50 = 5050

この考え方、まさに三角数の公式と同じなんです。

この数が三角数かどうか、判定できる?

「この数、三角数かな?」というときは、次の式でチェックできます。

n(n+1)/2 = x を満たすnが整数かどうか

逆に解いてみると、

n = [-1 ± √(1 + 8x)] / 2

√の中がきれいな整数になれば、xは三角数ということ。

ちょっとした数学クイズにもなりそうですね。

三角数列はプログラムでも使える

じつはこの数列、コンピュータの中でもちゃんと使われてるんです。

✅ 上三角行列のインデックス変換

たとえば、2次元のデータ(行列)で、上半分だけを保存したいとき。
三角数の考え方を使えば、1次元配列にうまく変換できます。

ある行i・列j(ただしi ≥ j)にある要素は、こうやって1次元化できます:

index = i × (i + 1) / 2 + j

これにより、余計なメモリを使わずにデータを格納できます。
昔のゲームや計算プログラムでも使われていました。

✅ 計算を高速化(O(n) → O(1))

繰り返し処理(ループ)で「1~nの合計」を求めるとき、
ループを回すとO(n)の処理時間がかかります。

でも、三角数の公式 n(n+1)/2 を使えば一発!
時間はO(1)。桁違いに速いです。

だから、三角数は計算の高速化にも役立ちます。

身近なところでも使われてる?

実は、三角数はゲームやスコア計算、パズルの世界でも活躍してます。

  • パズルの「1→2→3→…」を並べるゲーム
  • RPGの経験値の計算式
  • ポイント制度や等差成長型の設計

「1→3→6→10…」みたいに、だんだん増え方が増える設計にぴったりなんです。

まとめ

三角数列は「形が三角に見える」からそう呼ばれてるだけじゃなくて、
数学的にも、プログラム的にも、いろんな使い道がある数列です。

見た目がキレイで、式もシンプル。
そして、ちょっと知ってるだけで役立つ。

ただの数字の並びと思わず、ちょっとした知的おもちゃとして楽しんでみてください。

------------<広告>------------