割られる式 P(x) と割る式 D(x) の次数・係数を入力してください。下の数式は入力欄と連動していて、係数の部分を直接書き換えても計算できます。
このページでできること
- 多項式 \(P(x)\)(1次〜5次)を多項式 \(D(x)\)(1次〜3次)で割った商 \(Q(x)\) と余り \(R(x)\) を、係数を入れるだけでその場で計算できます
- ノートに書くのと同じ形の割り算の筆算を1段ずつ表示します。どの項を商に立てて、何を掛けて、何を引いたのかが一目で追えます
- \(1\) 次式で割ったときは、剰余の定理 \(R = P(\alpha)\) による確認も一緒に表示します。さらにその \(1\) 次式が \(x - \alpha\)(\(x\) の係数が \(1\))の形なら、組立除法の筆算も表示します
- 「余りだけを求める」を選ぶと、筆算を通らずに剰余の定理だけで余りを計算します(\(1\) 次式で割るとき)
- 係数には小数・負の数のほか、3/4 のような分数も入力できます。答えは約分済みの厳密な分数のまま表示します
この計算は何の役に立つ?
インターネットの通信、USBメモリやハードディスクへの保存、QRコードの読み取りでは、データが途中で化けていないかを確かめるためにCRC(巡回冗長検査)という仕組みが使われています。これは、データの \(0\) と \(1\) の並びを「係数が \(0\) か \(1\) だけの多項式」とみなし、あらかじめ決めておいた多項式で割った余りを、データの末尾に付けて送る方法です。
受け取った側が同じ割り算をして余りが合わなければ、どこかが壊れたと判断できます。QRコードが少し汚れても読めるのは、同じく多項式の割り算を土台にしたリード・ソロモン符号で、壊れた部分を復元しているからです。
\(\dfrac{x^{2}}{x - 1}\) のように分子の次数が分母以上の分数式は、そのままでは積分の公式が使えません。そこで最初に多項式の割り算をして、\(x + 1 + \dfrac{1}{x - 1}\) のように「多項式の部分」と「分子の次数が小さい分数の部分」に分けます。ここまで直せば、それぞれ積分の公式が使えるようになります。
電気回路の応答や物体の運動を式で解くときには分数式の積分が頻繁に現れるので、この下ごしらえは理系の計算の定番手順になっています。
体積や強度が寸法の3次式・4次式で決まる場面では、「この体積になる寸法は何cmか」を求めるのに高次方程式を解くことになります。その基本の解き方が、因数定理で解を1つ見つけ、その因数で割って次数を下げ、残りを二次方程式として解く、という流れです。
割り算は「見つけた解を取り除いて、残りの問題を小さくする」役割を果たしています。
エアコンの温度制御やロボットの姿勢制御などの制御工学では、システムの性質を多項式の分数(伝達関数)で表します。この分数を扱うときも、まず割り算で「多項式の部分」と「残りの分数の部分」に分け、さらに部分分数分解をしてから、応答の速さや振動しやすさを読み取ります。
設計者が「この装置は行きすぎて振動しないか」を計算で確かめる場面で、多項式の割り算が下ごしらえとして使われています。
スマートフォンの通信やWebの暗号化で使われるAESという暗号は、\(0\) から \(255\) までの値どうしの「掛け算」を、多項式の掛け算をしてから決められた多項式で割った余りを取る、という形で定義しています。有限個の値の中だけで四則演算が閉じるようにする工夫で、有限体と呼ばれます。
割り算の余りを取ることで「はみ出した分を折り返す」ため、値がいくら計算しても決まった範囲に収まります。暗号や誤り訂正符号の土台には、この多項式の余りの計算があります。
式と図
用語・記号の解説
記号
| \(P(x)\) | ピーエックス | 割られる式(多項式)を表す記号。\(P\) は polynomial(多項式)の頭文字です。\(P(2)\) と書けば「\(x\) に \(2\) を代入した値」を表します。 |
| \(D(x)\) | ディーエックス | 割る式を表す記号。\(D\) は divisor(割る数・除数)の頭文字です。整数の割り算で「\(17 \div 5\) の \(5\)」にあたる役割をします。 |
| \(Q(x)\) | キューエックス | 商(割った答え)の式を表す記号。\(Q\) は quotient(商)の頭文字です。割られる式の次数が割る式の次数以上のときは、その差が商の次数になります(割られる式のほうが低いときは商は \(0\) です)。 |
| \(R(x)\) | アールエックス | 余りの式を表す記号。\(R\) は remainder(余り)の頭文字です。次数は必ず割る式より小さくなり、\(1\) 次式で割ったときは定数なので \(R\) とだけ書きます。 |
| \(\alpha\) | アルファ | \(1\) 次式を \(x - \alpha\) と書いたときの、割る式が \(0\) になる値。ギリシャ文字のアルファベットの最初の文字で、「決まった1つの値」を表すのによく使われます。 |
| \(x\) | エックス | 多項式の文字(変数)。決まった値ではなく、どんな値も取りうる文字です。未知の数や変数をアルファベットの終わりの方の文字 \(x,\ y,\ z\) で表す慣例は、17世紀の数学者デカルトに由来するといわれます。 |
| \(\div\) | わる(除算記号) | 割り算を表す記号。多項式の割り算では \(P(x) \div D(x)\) のように書きますが、答えは1つの数ではなく「商と余りの組」になります。 |
| \(\Longleftrightarrow\) | 同値(どうち)/ならば、かつ、逆もまた | 左と右が「同じことを言っている」ことを表す記号。片方が成り立てばもう片方も必ず成り立ち、その逆も成り立つ、という意味です。因数定理はこの関係で書かれます。 |
| \(q\,x^{m-n}\) | キュー・エックスのエムひくエヌ乗 | 筆算の1段で商に立てる項。指数が \(m - n\) になるのは、\(x^{m} \div x^{n} = x^{m-n}\)(同じ文字の割り算では指数を引く)という指数法則によります。 |
用語
| 多項式 | たこうしき | \(2x^{3} - x + 5\) のように、\(x\) のべき乗に数(係数)を掛けた項を足し合わせた式。日本の高校では整式とも呼びます。 |
| 整式 | せいしき | 多項式の別名。分母に文字が入る式(分数式)や根号の中に文字が入る式と区別するときに使う呼び方で、教科書では「整式の除法」という単元名で出てきます。 |
| 項 | こう | 式を足し算・引き算の区切りで分けた、1つ1つのかたまり。\(x^{3} - 2x + 3\) の項は \(x^{3}\)・\(-2x\)・\(3\) の3つです。 |
| 係数 | けいすう | 文字の前に付いている数。\(3x^{2}\) の \(3\) が係数です。\(x^{2}\) のように数が書かれていない項の係数は \(1\) と考えます。 |
| 次数 | じすう | 式に出てくる \(x\) のべき乗のうち、最も高い指数のこと。\(x^{3} - 2x + 3\) は \(3\) 次式です。割り算では、この次数の大小が「まだ割れるか・もう割れないか」の判断基準になります。 |
| 定数項 | ていすうこう | \(x^{2} + 3x + 5\) の \(5\) のように、\(x\) を含まない「数字だけの項」。\(x\) がどんな値でも変わらない(一定=定数)ことからこう呼ばれます。 |
| 降べきの順 | こうべきのじゅん | 式の項を、次数の高いものから順に並べる書き方。「べき」は掛け合わせる回数(指数)のことで、それが降りていく順という意味です。割り算の筆算は、この順に並べてから始めます。 |
| 割られる式 | わられるしき | 割り算で「÷」の左側にくる式。整数の割り算の被除数にあたり、このページでは \(P(x)\) と書きます。 |
| 割る式 | わるしき | 割り算で「÷」の右側にくる式。整数の割り算の除数にあたり、このページでは \(D(x)\) と書きます。 |
| 商 | しょう | 割り算の答えにあたる式。\(P(x)\) の次数が \(D(x)\) の次数以上のとき、商 \(Q(x)\) の次数は \(P(x)\) の次数から \(D(x)\) の次数を引いた値になります。\(P(x)\) のほうが次数が低いときは一度も割れないので、商は \(0\) です。 |
| 余り | あまり | 割り切れずに残った式。多項式の割り算では、その次数が割る式の次数より小さくなるまで割り進めた結果が余りです。 |
| 割り切れる | わりきれる | 余りが \(0\) になること。\(P(x) = D(x)Q(x)\) と掛け算だけで書ける状態で、このとき \(D(x)\) は \(P(x)\) の因数です。 |
| 筆算 (長除法) |
ひっさん(ちょうじょほう) | 割り算を段階的に書き下していく計算方法。整数の割り算の筆算とやり方は同じで、位の代わりに次数をそろえて並べます。英語では long division といいます。 |
| 組立除法 | くみたてじょほう | 割る式が \(x - \alpha\)(\(x\) の係数が \(1\) の \(1\) 次式)のときに使える、係数の数字だけを並べて商と余りを求める筆算の方法。書く量が少なくて済み、計算も速くなります。\(2x - 1\) のように \(x\) の係数が \(1\) でないときは、\(x - \dfrac{1}{2}\) で組立除法をしてから商を \(2\) で割ります。高校の教科書では発展・参考として載っていることが多く、学校によっては扱わないこともあります。 |
| 剰余の定理 | じょうよのていり | 「\(P(x)\) を \(x - \alpha\) で割った余りは \(P(\alpha)\) に等しい」という定理。筆算をしなくても、代入するだけで余りが求められます。 |
| 因数定理 | いんすうていり | 「\(P(\alpha) = 0\) であることと、\(P(x)\) が \((x - \alpha)\) で割り切れることは同じ」という定理。剰余の定理の余りが \(0\) の場合にあたります。 |
| 因数 | いんすう | 掛け算の部品のこと。\((x - 1)\left(x^{2} - 5x + 6\right)\) の \((x - 1)\) と \(\left(x^{2} - 5x + 6\right)\) が、それぞれ因数です。 |
| 有理数 | ゆうりすう | 整数と分数で表せる数。\(3\)・\(-\dfrac{2}{5}\)・\(0.25\ \left(= \dfrac{1}{4}\right)\) はどれも有理数で、\(\sqrt{2}\) や \(\pi\) のように分数では表せない数(無理数)と区別します。因数定理を使うとき、代入する \(\alpha\) の候補を「\(\pm\)(定数項の約数)\(\div\)(最高次の係数の約数)」に絞れるのは、探しているのが有理数の解のときです。 |
| 恒等式 | こうとうしき | \(x\) にどんな値を入れても成り立つ等式。\(P(x) = D(x)Q(x) + R(x)\) は恒等式なので、\(x = \alpha\) を代入しても成り立ちます。剰余の定理はこの性質を使って導かれます。 |
| 代入 | だいにゅう | 式の文字を具体的な数に置きかえて、値を計算すること。\(P(x) = x^{2} + 1\) に \(x = 3\) を代入すると \(P(3) = 10\) です。 |
| 指数法則 | しすうほうそく | \(x^{m} \times x^{n} = x^{m+n}\)、\(x^{m} \div x^{n} = x^{m-n}\) のような、べき乗の計算の決まり。筆算で商の項の次数を決めるときに使っています。 |
前提として理解しておくといいこと
このページの計算を「意味がわかって」使えるようになるために、前提として理解しておくといいことをまとめました。
つまずいたら、この表の内容に戻って復習するのが近道です。
| 整数の割り算と余り(小学3〜5年) |
|
| 多項式と次数・係数(中学2年〜高校 数学I) |
|
| 式の展開と同類項(中学2〜3年) |
|
| 指数法則(中学3年〜高校 数学I) |
|
| 式に値を代入する(中学1年) |
|
| 因数分解(中学3年〜高校 数学I) |
|
Excelで計算する方法
| x³の係数 | 1 |
| x²の係数 | -2 |
| xの係数 | 3 |
| 定数項 | -5 |
| 割る値 α(x − α の α) | 2 |
| 商のx²の係数 | =B1 |
| 商のxの係数 | =B2+B5*B6 |
| 商の定数項 | =B3+B5*B7 |
| 余り | =B4+B5*B8 |
| x³の係数 | 1 |
| x²の係数 | -2 |
| xの係数 | 3 |
| 定数項 | -5 |
| 代入する値 α | 2 |
| 余り P(α) | =B1*B5^3+B2*B5^2+B3*B5+B4 |
| x³の係数 | 1 |
| x²の係数 | -6 |
| xの係数 | 11 |
| 定数項 | -6 |
| 調べる値 α | 1 |
| P(α) の値(0なら割り切れる) | =B1*B5^3+B2*B5^2+B3*B5+B4 |
| 確かめる x の値 | 3 |
| 割られる式 P(x) = 2x⁴+3x³−x+5 | =2*B1^4+3*B1^3-B1+5 |
| 割る式 D(x) = x²+1 | =B1^2+1 |
| 商 Q(x) = 2x²+3x−2 | =2*B1^2+3*B1-2 |
| 余り R(x) = −4x+7 | =-4*B1+7 |
| D(x)×Q(x)+R(x)(P(x) と一致する) | =B3*B4+B5 |
1つ目の表は組立除法そのもので、「上の段の係数 + 割る値 × 1つ前の結果」を上から順に計算しています。例(x³ − 2x² + 3x − 5 を x − 2 で割る)では、商の係数が 1, 0, 3(= x² + 3)、余りが 1 になります。x + 2 で割りたいときは α に −2 を入れてください。この表が使えるのは x − α の形(x の係数が1の1次式)で割るときだけです。2x − 1 で割りたいときは α に 1/2 を入れて計算し、出てきた商の係数を 2 で割ってください(余りはそのままです)。
2つ目の表は剰余の定理で、割られる式に α を代入した値を計算しています。1つ目の表の余りと同じ 1 になり、2つのやり方が一致することが確かめられます。
3つ目の表は因数定理の判定用です。例(x³ − 6x² + 11x − 6 に α = 1)では 0 になるので、(x − 1) で割り切れるとわかります。α を ±2, ±3, ±6 に書き換えて探してください。
4つ目の表は、2次式で割った例(2x⁴ + 3x³ − x + 5 ÷ (x² + 1))の検算です。x にどんな値を入れても、一番下の行が P(x) の値と一致します(x = 3 ならどちらも 245)。
Googleスプレッドシートで計算する方法
| x³の係数 | 1 |
| x²の係数 | -2 |
| xの係数 | 3 |
| 定数項 | -5 |
| 割る値 α(x − α の α) | 2 |
| 商のx²の係数 | =B1 |
| 商のxの係数 | =B2+B5*B6 |
| 商の定数項 | =B3+B5*B7 |
| 余り | =B4+B5*B8 |
| x³の係数 | 1 |
| x²の係数 | -2 |
| xの係数 | 3 |
| 定数項 | -5 |
| 代入する値 α | 2 |
| 余り P(α) | =B1*B5^3+B2*B5^2+B3*B5+B4 |
| x³の係数 | 1 |
| x²の係数 | -6 |
| xの係数 | 11 |
| 定数項 | -6 |
| 調べる値 α | 1 |
| P(α) の値(0なら割り切れる) | =B1*B5^3+B2*B5^2+B3*B5+B4 |
| 確かめる x の値 | 3 |
| 割られる式 P(x) = 2x⁴+3x³−x+5 | =2*B1^4+3*B1^3-B1+5 |
| 割る式 D(x) = x²+1 | =B1^2+1 |
| 商 Q(x) = 2x²+3x−2 | =2*B1^2+3*B1-2 |
| 余り R(x) = −4x+7 | =-4*B1+7 |
| D(x)×Q(x)+R(x)(P(x) と一致する) | =B3*B4+B5 |
Pythonで計算する方法
from fractions import Fraction
# 係数は低い次数から並べる [定数項, xの係数, x²の係数, ...]
# 例:割られる式 P(x) = x³ − 2x² + 3x − 5、割る式 D(x) = x − 2
dividend = [Fraction(-5), Fraction(3), Fraction(-2), Fraction(1)]
divisor = [Fraction(-2), Fraction(1)]
def polynomial_division(p, d):
# 筆算と同じ手順:最高次の項どうしを割って商の項を立て、掛けて引く
deg_p = len(p) - 1
deg_d = len(d) - 1
if deg_p < deg_d:
return [Fraction(0)], list(p)
quotient = [Fraction(0)] * (deg_p - deg_d + 1)
rest = list(p)
for i in range(deg_p - deg_d, -1, -1):
coefficient = rest[i + deg_d] / d[deg_d]
quotient[i] = coefficient
for k in range(deg_d + 1):
rest[i + k] -= coefficient * d[k]
return quotient, rest[:deg_d] if deg_d > 0 else [Fraction(0)]
def to_text(coefficients):
# 係数のリストを降べきの順の文字列にする(係数1のxの項は 1 を書かない)
text = ""
for k in range(len(coefficients) - 1, -1, -1):
c = coefficients[k]
if c == 0:
continue
power = "" if k == 0 else ("x" if k == 1 else f"x^{k}")
body = power if (k > 0 and abs(c) == 1) else f"{abs(c)}{power}"
if text:
text += " + " if c > 0 else " - "
elif c < 0:
text += "-"
text += body
return text if text else "0"
quotient, remainder = polynomial_division(dividend, divisor)
print(f"商 Q(x) = {to_text(quotient)}")
print(f"余り R(x) = {to_text(remainder)}")
# 剰余の定理での確認(1次式 d1*x + d0 で割るとき、割る式が0になる値を代入する)
alpha = -divisor[0] / divisor[1]
value = sum(c * alpha ** k for k, c in enumerate(dividend))
print(f"P({alpha}) = {value} ← 余りと一致する")
数式記述言語(LaTeX等)での書き方(コピペ可)
P(x) = D(x)Q(x) + R(x)
P(x) = D(x)Q(x) + R(x)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>P</mi><mo>(</mo><mi>x</mi><mo>)</mo>
<mo>=</mo>
<mi>D</mi><mo>(</mo><mi>x</mi><mo>)</mo>
<mi>Q</mi><mo>(</mo><mi>x</mi><mo>)</mo>
<mo>+</mo>
<mi>R</mi><mo>(</mo><mi>x</mi><mo>)</mo>
</mrow>
</math>
P(x) = D(x) Q(x) + R(x)
PolynomialQuotientRemainder[x^3 - 2 x^2 + 3 x - 5, x - 2, x]
q := quo(x^3 - 2*x^2 + 3*x - 5, x - 2, x, 'r');
[q, r] = deconv([1 -2 3 -5], [1 -2])
P(x) = D(x)Q(x) + R(x)
qxᵐ⁻ⁿ = axᵐ ÷ bxⁿ
q\,x^{m-n} = \frac{a\,x^{m}}{b\,x^{n}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>q</mi><msup><mi>x</mi><mrow><mi>m</mi><mo>−</mo><mi>n</mi></mrow></msup>
<mo>=</mo>
<mfrac>
<mrow><mi>a</mi><msup><mi>x</mi><mi>m</mi></msup></mrow>
<mrow><mi>b</mi><msup><mi>x</mi><mi>n</mi></msup></mrow>
</mfrac>
</mrow>
</math>
q x^(m-n) = (a x^m)/(b x^n)
PolynomialQuotient[x^3 - 2 x^2 + 3 x - 5, x - 2, x]
quo(x^3 - 2*x^2 + 3*x - 5, x - 2, x);
q = deconv([1 -2 3 -5], [1 -2])
q x^(m-n) = (a x^m)/(b x^n)
R = P(α)
R = P(\alpha)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>R</mi>
<mo>=</mo>
<mi>P</mi><mo>(</mo><mi>α</mi><mo>)</mo>
</mrow>
</math>
R = P(alpha)
PolynomialRemainder[x^3 - 2 x^2 + 3 x - 5, x - 2, x]
rem(x^3 - 2*x^2 + 3*x - 5, x - 2, x);
r = polyval([1 -2 3 -5], 2)
R = P(α)
P(α) = 0 ⇔ P(x) = (x − α)Q(x)
P(\alpha) = 0 \Longleftrightarrow P(x) = (x - \alpha)Q(x)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>P</mi><mo>(</mo><mi>α</mi><mo>)</mo>
<mo>=</mo><mn>0</mn>
<mo>⇔</mo>
<mi>P</mi><mo>(</mo><mi>x</mi><mo>)</mo>
<mo>=</mo>
<mo>(</mo><mi>x</mi><mo>−</mo><mi>α</mi><mo>)</mo>
<mi>Q</mi><mo>(</mo><mi>x</mi><mo>)</mo>
</mrow>
</math>
P(alpha) = 0 iff P(x) = (x - alpha) Q(x)
Factor[x^3 - 6 x^2 + 11 x - 6]
factor(x^3 - 6*x^2 + 11*x - 6);
factor(sym('x^3 - 6*x^2 + 11*x - 6'))
P(α) = 0 ⇔ P(x) = (x − α)Q(x)
ChatGPT に聞いて計算してもらう方法
あなたは数学(高校数学II・整式の除法)の計算アシスタントです。次の計算を、必ずPythonコードを実際に実行して行い、実行結果の数値だけを根拠に回答してください(暗算や推測で答えないでください)。 多項式 x³ − 2x² + 3x − 5 を x − 2 で割った商と余りを求めてください。 次の内容をそれぞれ示してください。 1. 商 Q(x) と余り R(x) 2. 割り算の筆算の各段(商に立てた項・掛けて引いた式・引いた結果) 3. P(x) = D(x)Q(x) + R(x) の形に書いた検算の式 4. 剰余の定理による余りの確認(割る式が0になる x の値を代入した結果) Pythonでは標準ライブラリの fractions モジュールを使って厳密に計算し、計算に使った式と実行結果の数値を示してください。
計算ドリル(演習問題)
このページの計算(割り算の筆算・剰余の定理・因数定理)を、自分の手でできるようになるための演習問題です。
答えと解説は解答ページにあります。
使い方
-
1数値を入力計算したい数値を入力欄に入力します
-
2計算「計算する」ボタンを押します
-
3結果を確認計算結果がその場に表示されます。計算の考え方や式の解説も同じページで確認できます
DataChefの特徴
専門知識不要、直感的で簡単な操作
個人情報を登録することなく使用できます
「ダウンロード」押下でファイルを自動削除
クレジット表記不要
商用利用許諾の連絡も不要です
