三角形の3辺の長さを入力してください。高さがわからなくても、ヘロンの公式で面積を計算できます。途中計算の半周長 s も表示します。
目次
このページでできること
- 三角形の3辺の長さを入れるだけで、面積がその場でわかります(高さを測る必要はありません)
- 計算にはヘロンの公式 \(S = \sqrt{s(s-a)(s-b)(s-c)}\) を使い、途中計算の半周長 \(s\) もあわせて表示します
- 小学校で習う「底辺 × 高さ ÷ 2」や、正三角形の面積の求め方 \(S = \frac{\sqrt{3}}{4}a^2\) も、やさしい解説つきで紹介しています
- 式のやさしい解説・Excel/Googleスプレッドシート/Python用のコピペ数式・計算ドリル(演習問題)もこのページにまとまっています
この計算は何の役に立つ?
土地を三角形に分割して面積を求める方法(三斜法)は、測量図の面積計算に古くから使われてきました。三斜法では各三角形の底辺と高さを使いますが、高さを直接測りにくい現場では、3辺の距離を測ってヘロンの公式で面積を出す方法も使われています。
例えば3辺が 30m・45m・50m の三角形の土地なら、面積は約666.6m²。不動産の広告や登記の面積が妥当かを自分の感覚で確かめられるのは、土地という人生で最も大きな買い物の場面で心強い知識です。
切妻屋根の妻側の壁(三角形の部分)や、勾配のある屋根の端など、建物には三角形の面がたくさんあります。底辺8m・高さ3mの三角形の壁なら \(8 \times 3 \div 2 = 12\)(m²)。
塗料の缶には「1缶で何m²塗れるか」が書かれているので、面積さえ出せれば必要な缶数と費用を自分で見積もれます。
三角形の旗(ペナント)やパッチワークのピースなど、手芸では三角形のパーツをよく使います。底辺20cm・高さ30cmの三角旗1枚の面積は \(20 \times 30 \div 2 = 300\)(cm²)。
必要な枚数分の面積を合計すれば、買う生地の量を無駄なく決められます。
ゲームや映画の3DCGモデルは、膨大な数の小さな三角形(ポリゴン)を組み合わせて作られています。曲面に見えるキャラクターの顔も、拡大すれば三角形の集まりです。
コンピュータにとって、3つの頂点の間の距離(=3辺の長さ)から面積を出せるヘロンの公式は扱いやすく、図形処理プログラムの基礎として現役で使われています。ゲームプログラマーやCGデザイナーを支えている数学の一つです。
式と図
用語・記号の解説
記号
| \(a\)、\(b\)、\(c\) | エー、ビー、シー | 三角形の3辺の長さ。3つとも同じ単位(cmならすべてcm)で揃えて使います。 |
| \(s\) | エス(小文字) | 半周長。3辺の合計(周の長さ)の半分で、\(s = (a+b+c) \div 2\) で求めます。ヘロンの公式の途中計算に使います。 |
| \(S\) | エス(大文字) | 求めたい三角形の面積。日本の教科書では面積を表す記号としてよく使われます。小文字の \(s\)(半周長)とは別物なので注意してください。 |
| \(\sqrt{\phantom{a}}\) | ルート(根号) | 「2乗するとその数になる数」(平方根)を表す記号。例:\(\sqrt{36} = 6\)(6を2乗すると36に戻ります)。 |
| \(b\)、\(h\)(式2で使用) | ビー、エイチ | 「底辺 × 高さ ÷ 2」の式では、\(b\) は底辺(base)、\(h\) は高さ(height)を表します。ヘロンの公式の辺 \(b\) とは別の意味で使っているので注意してください。 |
用語
| ヘロンの公式 | へろんのこうしき | 3辺の長さだけから三角形の面積を求める公式。1世紀ごろのアレクサンドリアの数学者ヘロンにちなむ名前です(英語で Heron または Hero と書くため「Hero's formula」とも呼ばれます)。日本では高校の数学I(三角比の応用)で学びます。 |
| 半周長 | はんしゅうちょう | 周の長さ(3辺の合計)の半分。ヘロンの公式の途中計算で使う量で、記号は小文字の \(s\) です。 |
| 三角形の成立条件 | さんかくけいのせいりつじょうけん | 3つの辺の長さから三角形が作れるための条件で、「どの2辺の長さの和も、残りの1辺より大きい」こと。2辺の和が残りの1辺と等しい場合は、一直線につぶれてしまうので三角形になりません。 |
| 底辺 | ていへん | 面積を求めるときに基準として選んだ辺。どの辺を選んでもよく、選んだ底辺に応じて高さが決まります。 |
| 高さ | たかさ | 底辺に向かい合う頂点から底辺(またはその延長線)に垂直におろした線分の長さ。どの辺を底辺に選ぶかで変わります。 |
| 正三角形 | せいさんかくけい | 3つの辺の長さがすべて等しい三角形。1辺の長さ \(a\) だけで面積が決まり、\(S = \frac{\sqrt{3}}{4}a^2\) で求められます。 |
| 平方根 | へいほうこん | 2乗するとその数になる数。記号は \(\sqrt{\phantom{a}}\)(根号・ルート)。例:\(\sqrt{144} = 12\) です。中学3年で学びます。 |
前提として理解しておくといいこと
このページの計算を「意味がわかって」使えるようになるために、前提として理解しておくといいことをまとめました。
つまずいたら、この表の内容に戻って復習するのが近道です。
| 三角形の面積(小学5年) |
|
| 三角形の成立条件(中学1年) |
|
| 文字式と代入(中学1〜2年) |
|
| 平方根(中学3年) |
|
Excelで計算する方法
| 辺aの長さ | 3 |
| 辺bの長さ | 4 |
| 辺cの長さ | 5 |
| 半周長 s | =(B1+B2+B3)/2 |
| 三角形の面積 S | =SQRT(B4*(B4-B1)*(B4-B2)*(B4-B3)) |
| 底辺の長さ | 6 |
| 高さ | 4 |
| 三角形の面積 S | =B1*B2/2 |
| 1辺の長さ a | 10 |
| 正三角形の面積 S | =SQRT(3)/4*B1^2 |
例えば1つ目の表なら、B4に6、B5に6と表示されます(3辺 3・4・5 の三角形の面積は6)。2つ目の表はB3に12、3つ目の表はB2に約43.3と表示されます。入力欄の数値を自分の三角形の値に書き換えるだけで使えます。
Googleスプレッドシートで計算する方法
| 辺aの長さ | 3 |
| 辺bの長さ | 4 |
| 辺cの長さ | 5 |
| 半周長 s | =(B1+B2+B3)/2 |
| 三角形の面積 S | =SQRT(B4*(B4-B1)*(B4-B2)*(B4-B3)) |
| 底辺の長さ | 6 |
| 高さ | 4 |
| 三角形の面積 S | =B1*B2/2 |
| 1辺の長さ a | 10 |
| 正三角形の面積 S | =SQRT(3)/4*B1^2 |
Pythonで計算する方法
import math
edge_a = 3.0 # 辺aの長さ
edge_b = 4.0 # 辺bの長さ
edge_c = 5.0 # 辺cの長さ
# 三角形の成立条件(どの2辺の和も残りの1辺より大きい)を先に確認する
if edge_a + edge_b > edge_c and edge_b + edge_c > edge_a and edge_c + edge_a > edge_b:
half_perimeter = (edge_a + edge_b + edge_c) / 2 # 半周長 s
area = math.sqrt(half_perimeter * (half_perimeter - edge_a)
* (half_perimeter - edge_b) * (half_perimeter - edge_c))
print(f"半周長 s: {half_perimeter}")
print(f"三角形の面積 S: {area}")
else:
print("この3辺では三角形を作れません")
数式記述言語(LaTeX等)での書き方(コピペ可)
S = √(s(s − a)(s − b)(s − c)), s = (a + b + c) / 2
S = \sqrt{s(s-a)(s-b)(s-c)}, \quad s = \dfrac{a+b+c}{2}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>S</mi>
<mo>=</mo>
<msqrt>
<mrow>
<mi>s</mi>
<mo>(</mo><mi>s</mi><mo>−</mo><mi>a</mi><mo>)</mo>
<mo>(</mo><mi>s</mi><mo>−</mo><mi>b</mi><mo>)</mo>
<mo>(</mo><mi>s</mi><mo>−</mo><mi>c</mi><mo>)</mo>
</mrow>
</msqrt>
<mo>,</mo>
<mspace width="1em"/>
<mi>s</mi>
<mo>=</mo>
<mfrac>
<mrow><mi>a</mi><mo>+</mo><mi>b</mi><mo>+</mo><mi>c</mi></mrow>
<mn>2</mn>
</mfrac>
</mrow>
</math>
S = sqrt(s(s-a)(s-b)(s-c)), s = (a+b+c)/2
s = (a + b + c)/2; Sqrt[s (s - a) (s - b) (s - c)]
s := (a + b + c)/2; S := sqrt(s*(s - a)*(s - b)*(s - c));
s = (a + b + c)/2; S = sqrt(s*(s - a)*(s - b)*(s - c));
S = √(s(s − a)(s − b)(s − c)), s = (a + b + c)/2
S = b × h ÷ 2
S = \dfrac{1}{2} b h
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>S</mi>
<mo>=</mo>
<mfrac><mn>1</mn><mn>2</mn></mfrac>
<mi>b</mi>
<mi>h</mi>
</mrow>
</math>
S = 1/2 b h
b*h/2
S := b*h/2;
S = b*h/2;
S = bh/2
S = (√3 / 4) × a²
S = \dfrac{\sqrt{3}}{4} a^{2}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>S</mi>
<mo>=</mo>
<mfrac>
<msqrt><mn>3</mn></msqrt>
<mn>4</mn>
</mfrac>
<msup><mi>a</mi><mn>2</mn></msup>
</mrow>
</math>
S = (sqrt(3)/4) a^2
Sqrt[3]/4*a^2
S := sqrt(3)/4*a^2;
S = sqrt(3)/4*a^2;
S = (√3/4)a^2
a + b > c, b + c > a, c + a > b
a + b > c, \quad b + c > a, \quad c + a > b
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>a</mi><mo>+</mo><mi>b</mi><mo>></mo><mi>c</mi>
<mo>,</mo>
<mspace width="1em"/>
<mi>b</mi><mo>+</mo><mi>c</mi><mo>></mo><mi>a</mi>
<mo>,</mo>
<mspace width="1em"/>
<mi>c</mi><mo>+</mo><mi>a</mi><mo>></mo><mi>b</mi>
</mrow>
</math>
a + b > c, b + c > a, c + a > b
a + b > c && b + c > a && c + a > b
is(a + b > c and b + c > a and c + a > b);
(a + b > c) && (b + c > a) && (c + a > b)
a + b > c, b + c > a, c + a > b
ChatGPT に聞いて計算してもらう方法
あなたは図形の計算アシスタントです。次の計算を、必ずPythonコードを実際に実行して行い、実行結果の数値だけを根拠に回答してください(暗算や推測で答えないでください)。 三角形の3辺の長さは 7.5、10.2、12.3 です(単位はm)。 1. この3辺で三角形が作れるか(三角形の成立条件)を確認してください。 2. 半周長 s = (a + b + c) ÷ 2 を求めてください。 3. ヘロンの公式 S = √(s(s−a)(s−b)(s−c)) で三角形の面積を求めてください。 計算に使った式と、実行結果の数値を示してください。
計算ドリル(演習問題)
このページの式を、自分の手で計算できるようになるための演習問題です。
答えと解説は解答ページにあります。
使い方
-
1数値を入力計算したい数値を入力欄に入力します
-
2計算「計算する」ボタンを押します
-
3結果を確認計算結果がその場に表示されます。計算の考え方や式の解説も同じページで確認できます
DataChefの特徴
専門知識不要、直感的で簡単な操作
個人情報を登録することなく使用できます
「ダウンロード」押下でファイルを自動削除
クレジット表記不要
商用利用許諾の連絡も不要です
