完全平方式チェッカー
x² + 6x + 9 は完全平方式で、(x + 3)² になります。6² が 4 × 1 × 9 と等しいためです。3つの係数を入力すると、ax² + bx + c が二項式の2乗かどうかと、そうであれば因数分解した形が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- A
- 1
- B
- 6
- C
- 9
- 多項式
- x^2 + 6x + 9
- 判別式
- 0
- 電力(W)
- 1
- Q
- 3
二次の三項式 ax の二乗プラス bx プラス c は、一次の二項のちょうど二乗であるときに完全平方になります。(px プラス q) の二乗を展開すると、p の二乗かける x の二乗、プラス p q の二倍かける x、プラス q の二乗となり、三つの係数は結びつきます。中項は外側の平方根の積の二倍です。学習者はこの型を、x の二乗プラス六 x プラス九が (x プラス三) の二乗、あるいは四 x の二乗プラス十二 x プラス九が (二 x プラス三) の二乗として学び、一般の二次因数分解ではなく完全平方式の判定を探します。この能力は三係数を受け取り、先頭係数が正であるときに b の二乗が四 a c に等しいかを調べ、成り立つ場合は二項係数 p と q および短い因数分解形を返します。成り立たない場合も因数を捏造せず、是非の答えだけを返します。
完全平方式とは何か、判定はどう動くか
学校代数における完全平方式とは、二項の二乗になっている三項の二次式です。教科書の二系統は、x の二乗プラス二 x y プラス y の二乗すなわち (x プラス y) の二乗と、x の二乗マイナス二 x y プラス y の二乗すなわち (x マイナス y) の二乗です。
先頭係数が 1 でない場合も同じ考え方で、(p x プラス q) の二乗は p の二乗 x の二乗プラス二 p q x プラス q の二乗です。係数を a、b、c と対応させると、a は p の二乗、c は q の二乗、b は二 p q という三条件になります。これらは因数を当て推量せずに済む一つの算術判定に縮約されます。
先頭係数は厳密に正でなければ実の平方根 p が存在せず、判別式 b の二乗マイナス四 a c はゼロでなければなりません。これは b がプラスマイナス二倍の平方根 a かける平方根 c であるという主張そのものです。
両方が成り立つとき、この端点は p を a の非負平方根とし、q を b を二 p で割った値として、中項の符号を q に吸収し、一意の標準対を残します。典型例は一・六・九で (x プラス三) の二乗、四・十二・九で (二 x プラス三) の二乗、九・マイナス十二・四で (三 x マイナス二) の二乗です。
先頭係数が負でも重根を持ち得ますが、それは平方の符号反転であって平方ではないため、実数上の完全平方式ではありません。判別式がゼロでなければ、存在する一次因数は互いに異なり、この型は当てはまりません。判定は通常の教科書整数では厳密で、ゼロであるべき近傍の浮動小数が判定をひっくり返さないための相対許容だけを用います。
完全平方式チェッカーが役立つ場面
教室や個別指導の基盤は、学習者が中項の恒等式を、一般の AC 法による因数分解や、剰余定数が残る平方完成と混同せずに確認できるよう、完全平方式の計算機を使います。試験問題の生成器は、x の二乗プラス五 x プラス六のような非平方を偽と印し、有限でない係数を NaN ではなく拒否する決定的な基準を必要とします。
欠陥のある採点器が NaN を成功と扱う事故を避けるためです。学習者に (p x プラス q) の二乗の p と q を答えさせるワークシートや LMS の拡張は、先にこの端点を呼び、因数欄を隠してから提出された二項を返却係数と比較できます。重根の特性多項式や完全平方残差を扱う工学ノートが、数式処理系を引き込まずに同じ三係数判定を必要とすることもあります。
検証失敗は残高を消費しません。三係数を有限に保ち、関心のある教科書恒等式で p と q を試験に固定すれば、宿題、LMS 拡張、エッジワーカー向けに再現可能な是非と二項係数が得られます。
活用例
教室と宿題の確認
学習者に a、b、c を送らせ、ax²+bx+c が完全平方式かを確かめ、返された p と q を手書きの二項と比較させます。
試験と LMS の自動採点
異なる因数には偽を返し、有限でない係数は因数を捏造せず拒否する決定的な基準で、完全平方式の設問を採点します。
問題生成とノート
(px+q)² を軸にした演習を組む、または重根の二次残差を分類する際に、本格的な数式処理ライブラリを取り込みません。
よくある質問
ax² + bx + c が完全平方式かどうかはどう判断しますか?
有限数 a(非ゼロ)、b、c を送ってください。a が正かつ b² = 4ac のとき完全平方です。
なぜ a は非ゼロで、平方であるには正でなければなりませんか?
a がゼロなら二次の三項式ではなく、要求は拒否されます。a が負なら実の二項の二乗にはなり得ず、判別式がゼロでも平方の符号反転です。
二次の因数分解や平方完成とは何が違いますか?
一般の因数分解は (x+2)(x+3) のような異なる二項に分けます。平方完成は k がゼロでなくても常に a(x−h)²+k と書きます。この判定器は完全平方式の問いだけに答え、余りがゼロのとき p と q を返します。
完全平方式でない場合は何が表示されますか?
その場合もはっきり「いいえ」と答え、b² − 4ac の値を表示します。この値は0ではありません。因数分解を無理に作ることはないので、存在しない平方が表示されることはありません。
真ん中の項が負でも使えますか?
使えます。符号は二項式の2つ目の項に入り、9x² − 12x + 4 は (3x − 2)² になります。条件は、最高次の係数が正で、b² が 4ac と等しいことだけです。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/perfect-square-trinomial \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":1,"b":6,"c":9}'const res = await fetch("https://api.kit.forhosting.com/math/perfect-square-trinomial", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 1,
"b": 6,
"c": 9
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/perfect-square-trinomial",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 1,
"b": 6,
"c": 9
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/perfect-square-trinomial", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":1,"b":6,"c":9}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":1,"b":6,"c":9}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/perfect-square-trinomial", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": 1,
"b": 6,
"c": 9
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.perfect_square_trinomial",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
有限でない係数は invalid_input で拒否されます。
入力契約、応答の形、誤りの扱い
a は x の二乗の非ゼロ先頭係数、b は一次係数、c は定数項です。a がゼロなら、一次式や定数は二次の三項式ではなく、x に関する一次二項の二乗にもならないため、処理系は要求を拒否します。これらの失敗は課金されません。偽のときは、それら三つの因数欄は null として送らず省略します。null を値として扱うクライアントが特別扱いしなくて済むためです。軸にちょうど接する放物線のスケッチが必要なら、ご自身の作図コードと組み合わせてください。この端点が行うのは三項式の分類と、平方であるときの二項係数の返却だけです。POST で、必須の有限数を三つ含む JSON 本体を送ってください。各欄は JSON の数、数値文字列、または三スラッシュ四のような簡単な分数でも構いません。別名 A または leading、B または linear、C または constant も受け付け、既存のペイロードを再利用できます。欠けた欄、空文字、NaN、正負の Infinity は、欄名を付けた invalid_input で失敗します。成功時の本体は、常に整えた係数 a、b、c、x ハット二プラス六 x プラス九のような多項式文字列、判別式 b の二乗マイナス四 a c、真偽値 is_perfect_square、および恒等式を述べる formula 文字列を返します。真偽値が真のときは、(p x プラス q) の二乗の因数形係数 p と q、および (x プラス三) ハット二のような factored_form 文字列も含まれます。例として、a が四、b が十二、c が九なら判別式ゼロ、is_perfect_square は true、p は二、q は三、factored_form は (2x + 3)^2 です。失敗例として、a が一、b が五、c が六なら判別式は一で、is_perfect_square は false、p も q もありません。
完全平方式チェッカーが役立つ場面
実装は純粋な parse の段階 A ですので、成功した呼び出しは公開の基本料金 $0.002 で、モデルトークンも外向き通信もありません。
技術的な質問
三項式が完全平方でないときは何が返りますか。
is_perfect_square を false にした成功ペイロードに、エコーした係数、多項式文字列、判別式が付きます。因数欄 p、q、factored_form は省略され、null にはしません。
完全平方式チェッカーの料金はいくらですか。
ブラウザの用具は無料です。API 要求は成功一件あたり $0.002 の前払い KIT 残高を使い、不正な入力は課金されません。