二次方程式 ax² + bx + c = 0 の係数 a・b・c を入力してください。下の数式は入力欄と連動していて、係数の部分を直接書き換えても計算できます。解の公式で解を求め、判別式の値・解の種類・途中式も表示します。
このページでできること
- 係数 \(a, b, c\) を入れるだけで、二次方程式 \(ax^2 + bx + c = 0\) の解が解の公式でその場で求められます
- 判別式 \(D = b^2 - 4ac\) の値と、解の種類(異なる2つの実数解・重解・2つの虚数解)も同時に表示します
- 解が実数にならない場合も、\(-0.5 \pm 0.866i\) のような2つの虚数解(虚部の符号だけが違う共役な複素数のペア)まで求めます
- 係数には小数・負の数のほか、3/4 のような分数も入力できます
- 式のやさしい解説・Excel/Googleスプレッドシート/Python用のコピペ数式・計算ドリル(演習問題)もこのページにまとまっています
この計算は何の役に立つ?
ボールを初速20m/sで真上に投げると、t 秒後の高さはおよそ 20t − 5t²(m)になります(重力加速度をおよそ10m/s²と単純化した場合)。「高さ15mになるのはいつ?」は二次方程式 −5t² + 20t − 15 = 0 を解くことになり、解の公式で t = 1秒と3秒(上りに1回・下りに1回)と求められます。
打ち上げ花火の開く高さの設計やバスケットボールのシュートの軌道など、「投げたもの」の運動はすべて二次方程式とつながっています。
「縦が横より3m長い長方形の花壇を、面積ちょうど28m²で作りたい」——横を x とすると x(x + 3) = 28、整理して x² + 3x − 28 = 0 です。解の公式で x = 4 と x = −7 が出ますが、長さにマイナスはないので横4m・縦7mが答えです。
このように「出てきた2つの解から、意味のあるほうを選ぶ(解の吟味)」までが、実生活で二次方程式を使うときのセットになります。
100万円を2年で121万円に増やすには年利何%が必要か——年利を r とすると 100(1 + r)² = 121、整理して r² + 2r − 0.21 = 0 です。解の公式で r = 0.1 と r = −2.1 が出て、利率として意味のある r = 0.1(年利10%)が答えになります。
複利のように「同じ倍率を2回掛ける」お金の計算は二次方程式になり、目標額から必要な利回りを逆算できます。
アーチ橋や吊り橋のケーブルの形は、放物線 y = ax² + bx + c を使って設計されるのが基本です。「地面からの高さが◯mになるのは中心から何mの位置か」を求める計算は、まさに二次方程式を解くことにあたります。
設計士や土木エンジニアが構造物の形を数式で決めるとき、解の公式はその基礎になっています。
「値上げすると1個あたりの利益は増えるが、売れる個数は減る」——このような関係を単純なモデルにすると、利益は価格の二次関数になります。「利益がちょうど0になる価格」はその二次方程式の解として求められ、値付けの上限・下限の目安になります。
実際の市場はもっと複雑ですが、「利益の山がどこで終わるか」をまず二次方程式で概算するのは、経営分析の入り口としてよく使われる考え方です。
式とグラフ
用語・記号の解説
記号
| \(a, b, c\) | エー・ビー・シー | 二次方程式の係数。\(a\) は二次の係数(\(x^2\) の前の数)、\(b\) は一次の係数(\(x\) の前の数)、\(c\) は定数項(数字だけの項)です。 |
| \(x\) | エックス | 方程式の解として求めたい未知の数。二次方程式の解は最大で2つあります。 |
| \(D\) | ディー(判別式) | 判別式 \(D = b^2 - 4ac\) を表します。英語 Discriminant の頭文字です。ギリシャ文字の \(\Delta\)(デルタ)で書く流儀もあります。 |
| \(\sqrt{\phantom{9}}\) | ルート(平方根) | 「2乗するとその数になる、0以上の数」を表す記号。\(\sqrt{25} = 5\)、\(\sqrt{2} \fallingdotseq 1.414\) です。 |
| \(\pm\) | プラスマイナス | 「+の場合と−の場合の両方」をまとめて書く記号。解の公式では「足した値と引いた値の両方が解になる」ことを表します。 |
| \(i\) | アイ(虚数単位) | 2乗すると \(-1\) になる数(\(i^2 = -1\))。√ の中がマイナスになるときの解を表すのに使います。 |
| \(x_1, x_2\) | エックスいち・エックスに | 2つある解の呼び分け。このページでは ± の+側を \(x_1\)、−側を \(x_2\) としています。 |
用語
| 二次方程式 | にじほうていしき | \(x^2\)(2乗)の項を含む方程式。整理すると \(ax^2 + bx + c = 0\)(\(a \neq 0\))の形になります。中学3年で学びます。 |
| 係数 | けいすう | 文字の前に付いている数のこと。\(3x\) の 3 が係数です。係数を読み取るときは、\(x^2 - x = 0\) を「a = 1, b = −1, c = 0」と読むように、省略された 1 や符号に注意します。 |
| 解 | かい | 方程式を成り立たせる文字の値。方程式を「解く」とは、解をすべて求めることです。 |
| 解の公式 | かいのこうしき | 二次方程式の解を、係数 a・b・c から直接計算できる公式。因数分解が思いつかない方程式でも必ず解けるのが強みです。 |
| 判別式 | はんべつしき | 解の公式の √ の中身 \(b^2 - 4ac\) のこと。この符号だけで解の種類(実数解2つ・重解・虚数解2つ)が判別できます。高校の数学Iで学びます。 |
| 重解 | じゅうかい | 2つの解が重なってただ1つになった解。判別式が0のときに起こり、グラフでは放物線が x 軸に接します。 |
| 実数解 | じっすうかい | 実数(普通の数直線上にある数)の範囲にある解。判別式が0以上なら実数解があります。 |
| 虚数解 | きょすうかい | 実数の範囲には存在せず、虚数単位 \(i\) を使って表される解。判別式が負のとき、\(-0.5 \pm 0.866i\) のような「実部 ± 虚部 \(i\)」のペア(共役な複素数)になります。高校の数学IIで学びます。 |
| 平方完成 | へいほうかんせい | 式を「\((x + p)^2 = q\)(2乗の形=数)」に変形すること。この変形を係数 a・b・c の文字のまま最後までやり切ると、解の公式が導けます。 |
| 因数分解 | いんすうぶんかい | 式を掛け算の形に分解すること。\(x^2 + 3x - 4 = (x - 1)(x + 4)\) と分解できれば、解の公式を使わなくても解 x = 1, −4 がわかります。 |
| 放物線 | ほうぶつせん | \(y = ax^2 + bx + c\) のグラフの形。二次方程式の実数解は、この放物線と x 軸の交点の x 座標にあたります。 |
前提として理解しておくといいこと
このページの計算を「意味がわかって」使えるようになるために、前提として理解しておくといいことをまとめました。
つまずいたら、この表の内容に戻って復習するのが近道です。
| 正負の数の計算(中学1年) |
|
| 平方根(中学3年) |
|
| 二次方程式(中学3年) |
|
| 二次関数のグラフ(中学3年〜高校 数学I) |
|
Excelで計算する方法
| 二次の係数 a | 1 |
| 一次の係数 b | 3 |
| 定数項 c | -4 |
| 判別式 D = b² − 4ac | =B2^2-4*B1*B3 |
| 解1 x₁ | =(-B2+SQRT(B4))/(2*B1) |
| 解2 x₂ | =(-B2-SQRT(B4))/(2*B1) |
| 二次の係数 a | 1 |
| 一次の係数 b | 1 |
| 定数項 c | 1 |
| 判別式 D = b² − 4ac | =B2^2-4*B1*B3 |
| 解の種類 | =IF(B4>0,"異なる2つの実数解",IF(B4=0,"重解","2つの虚数解")) |
| 二次の係数 a | 1 |
| 一次の係数 b | 2 |
| 定数項 c | 1 |
| 重解 x | =-B2/(2*B1) |
| 二次の係数 a | 1 |
| 一次の係数 b | 1 |
| 定数項 c | 1 |
| 実部(−b ÷ 2a) | =-B2/(2*B1) |
| 虚部(±が付く側) | =SQRT(4*B1*B3-B2^2)/ABS(2*B1) |
| 一次の係数 b | 2 |
| 定数項 c | 4 |
| 解 x | =-B2/B1 |
「^2」は2乗、「SQRT( )」は平方根(ルート)を求める関数です。
例えば1つ目の表なら、判別式が25、解1が1、解2が−4と表示されます。
1つ目の表の SQRT は D > 0 のときだけ使えます(D < 0 だと #NUM! エラーになるので、そのときは4つ目の虚数解用の表を使ってください)。
Googleスプレッドシートで計算する方法
| 二次の係数 a | 1 |
| 一次の係数 b | 3 |
| 定数項 c | -4 |
| 判別式 D = b² − 4ac | =B2^2-4*B1*B3 |
| 解1 x₁ | =(-B2+SQRT(B4))/(2*B1) |
| 解2 x₂ | =(-B2-SQRT(B4))/(2*B1) |
| 二次の係数 a | 1 |
| 一次の係数 b | 1 |
| 定数項 c | 1 |
| 判別式 D = b² − 4ac | =B2^2-4*B1*B3 |
| 解の種類 | =IF(B4>0,"異なる2つの実数解",IF(B4=0,"重解","2つの虚数解")) |
| 二次の係数 a | 1 |
| 一次の係数 b | 2 |
| 定数項 c | 1 |
| 重解 x | =-B2/(2*B1) |
| 二次の係数 a | 1 |
| 一次の係数 b | 1 |
| 定数項 c | 1 |
| 実部(−b ÷ 2a) | =-B2/(2*B1) |
| 虚部(±が付く側) | =SQRT(4*B1*B3-B2^2)/ABS(2*B1) |
| 一次の係数 b | 2 |
| 定数項 c | 4 |
| 解 x | =-B2/B1 |
Pythonで計算する方法
import math
a = 1.0 # 二次の係数
b = 3.0 # 一次の係数
c = -4.0 # 定数項
if a == 0 and b == 0:
print("a と b の両方が 0 だと方程式になりません")
elif a == 0:
# a = 0 のときは一次方程式 bx + c = 0 になる
print(f"一次方程式の解: x = {-c / b}")
else:
discriminant = b**2 - 4*a*c # 判別式 D
print(f"判別式 D = {discriminant}")
if discriminant > 0:
root = math.sqrt(discriminant)
print(f"異なる2つの実数解: x1 = {(-b + root) / (2*a)}, x2 = {(-b - root) / (2*a)}")
elif discriminant == 0:
print(f"重解: x = {-b / (2*a)}")
else:
real_part = -b / (2*a)
imaginary_part = math.sqrt(-discriminant) / (2*abs(a))
print(f"2つの虚数解: x = {real_part} ± {imaginary_part}i")
数式記述言語(LaTeX等)での書き方(コピペ可)
x = (−b ± √(b² − 4ac)) ÷ (2a)
x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>x</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>−</mo><mi>b</mi>
<mo>±</mo>
<msqrt>
<mrow>
<msup><mi>b</mi><mn>2</mn></msup>
<mo>−</mo>
<mn>4</mn><mi>a</mi><mi>c</mi>
</mrow>
</msqrt>
</mrow>
<mrow><mn>2</mn><mi>a</mi></mrow>
</mfrac>
</mrow>
</math>
x = (-b +- sqrt(b^2 - 4ac)) / (2a)
Solve[a*x^2 + b*x + c == 0, x]
solve(a*x^2 + b*x + c = 0, x);
x = roots([a b c]);
x = (-b ± √(b^2 - 4ac))/(2a)
D = b² − 4ac
D = b^{2} - 4ac
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>D</mi>
<mo>=</mo>
<msup><mi>b</mi><mn>2</mn></msup>
<mo>−</mo>
<mn>4</mn><mi>a</mi><mi>c</mi>
</mrow>
</math>
D = b^2 - 4ac
b^2 - 4*a*c
d := b^2 - 4*a*c;
d = b^2 - 4*a*c;
D = b^2 - 4ac
x = −b ÷ (2a)
x = -\frac{b}{2a}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>x</mi>
<mo>=</mo>
<mo>−</mo>
<mfrac><mi>b</mi><mrow><mn>2</mn><mi>a</mi></mrow></mfrac>
</mrow>
</math>
x = -b / (2a)
-b/(2*a)
x := -b/(2*a);
x = -b/(2*a);
x = -b/(2a)
x = (−b ± √(4ac − b²) i) ÷ (2a)
x = \frac{-b \pm \sqrt{4ac - b^2}\,i}{2a}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>x</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mo>−</mo><mi>b</mi>
<mo>±</mo>
<msqrt>
<mrow>
<mn>4</mn><mi>a</mi><mi>c</mi>
<mo>−</mo>
<msup><mi>b</mi><mn>2</mn></msup>
</mrow>
</msqrt>
<mi>i</mi>
</mrow>
<mrow><mn>2</mn><mi>a</mi></mrow>
</mfrac>
</mrow>
</math>
x = (-b +- sqrt(4ac - b^2) i) / (2a)
{(-b + Sqrt[4*a*c - b^2]*I)/(2*a), (-b - Sqrt[4*a*c - b^2]*I)/(2*a)}
x := [(-b + sqrt(4*a*c - b^2)*I)/(2*a), (-b - sqrt(4*a*c - b^2)*I)/(2*a)];
x = [(-b + sqrt(4*a*c - b^2)*1i)/(2*a), (-b - sqrt(4*a*c - b^2)*1i)/(2*a)];
x = (-b ± √(4ac - b^2) i)/(2a)
x = −c ÷ b
x = -\frac{c}{b}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>x</mi>
<mo>=</mo>
<mo>−</mo>
<mfrac><mi>c</mi><mi>b</mi></mfrac>
</mrow>
</math>
x = -c/b
-c/b
x := -c/b;
x = -c/b;
x = -c/b
ChatGPT に聞いて計算してもらう方法
あなたは数学の計算アシスタントです。次の計算を、必ずPythonコードを実際に実行して行い、実行結果の数値だけを根拠に回答してください(暗算や推測で答えないでください)。 二次方程式 x² + 3x − 4 = 0 を解の公式で解いてください。 次の内容をそれぞれ示してください。 1. 判別式 D = b² − 4ac の値と、そこからわかる解の種類(異なる2つの実数解・重解・2つの虚数解のどれか) 2. 解 x の値(虚数解になる場合は「実部 ± 虚部i」の形で) 3. 解の公式にどう代入したかの途中式 計算に使った式と、実行結果の数値を示してください。
計算ドリル(演習問題)
このページの式を、自分の手で計算できるようになるための演習問題です。
答えと解説は解答ページにあります。
使い方
-
1数値を入力計算したい数値を入力欄に入力します
-
2計算「計算する」ボタンを押します
-
3結果を確認計算結果がその場に表示されます。計算の考え方や式の解説も同じページで確認できます
DataChefの特徴
専門知識不要、直感的で簡単な操作
個人情報を登録することなく使用できます
「ダウンロード」押下でファイルを自動削除
クレジット表記不要
商用利用許諾の連絡も不要です
