有理根定理
2x^3 - 3x^2 - 3x + 2の有理根の候補は±1、±2、±1/2の6つです。定数項の約数を最高次係数の約数で割って作ります。候補の一覧を出すので、確かめるのは次の手順です。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 係数
- 2, -3, -3, 2
- 次数
- 3
- 多項式
- 2x^3 - 3x^2 - 3x + 2
- 先頭係数
- 2
- 定数項
- 2
有理根定理は、多項式が煩雑に見えるときに多くの代数学の学習者が最初に使う道具です。組立除法やグラフ電卓の前に、可能な有理根の有限リストが必要になります。最高次から順の整数係数配列を与えると、本機能は定数項を割るpと先頭係数を割るqによるp/q形の候補をすべて返し、両符号と既約に簡約した値を含みます。計算機代数システムを導入する必要はありません。
有理根定理の主張と多項式の符号化方法
次数は整形式配列の長さより1小さく、少なくとも1でなければならないため、常に先頭項と定数項の両方を送ります。中間係数はゼロでも構いません。それは単に欠けた x のべきを意味し、定理は変わりません。
本機能でゼロにしてはならないのは先頭係数と定数項です。係数は整数、またはきれいに丸まるほぼ整数でなければなりません。古典的な定理の主張は整数係数環向けだからです。
候補の生成方法:約数、符号、既約分数
エンジンは定数項と先頭係数の絶対値を取り、それぞれの正の約数をすべて列挙します。その2つの約数リストが p 因子集合と q 因子集合です。各対(絶対値 p、絶対値 q)を最大公約数で約分して既約分数にし、その後分子に正負の両符号を付けます。
可能なものを列挙することと、どれが実際の根かを試すことは意図的に分離されており、可能なリストだけを求める宿題の段階が誠実に保たれます。
結果の読み方と使いどころ
一度限りの宿題確認、講義デモ、手早い健全性確認には、Maxima・SymPy・ローカルCASを入れずにブラウザの無料ツールを使ってください。次数は上限があり、隔離安全のため係数の大きさも制限されます。約数の多い巨大整数でも有限ですが候補リストが長くなり得るため、教室規模の入力を優先してください。
候補だけでなく実際の実根が必要なときは、このリストと組立除法を組み合わせるか、根探索能力を呼び出してください。入力源は他のKIT parse項目と同じ保持規則に従い、エンジンが拒否した後の検証失敗では残高を消費しません。
活用例
宿題・チュータリングの検証
学習者と採点者は、組立除法で因子を試す前に三次・四次の可能な有理根の完全リストを確認でき、定数項や先頭係数がゼロのときは明確なエラーが出ます。
カリキュラムと評価の生成
自動問題バンクが整数係数の演習を組み立て、印刷された解答キーがこの決定的な候補オラクルと一致することを確認してからワークシートを公開します。
よくある質問
どの候補が実際の根かも教えてくれますか?
いいえ。 定理に基づく可能な有理根だけを列挙します。候補は組立除法で試すか、確定した根が必要なら多項式の根探索器を使ってください。
有理根定理電卓は無料ですか?
ブラウザツールはお使いの端末上で無料です。検証失敗は課金されません。
最高次係数や定数項が0の場合はどうなりますか?
計算は行われません。定理には両方が0でないことが必要です。次数を下げて推測したり0を根として扱ったりせず、係数の見直しを求めます。
多項式はどのように入力しますか?
整数の係数を最高次から定数項の順に入力します。2x^3 - 3x^2 - 3x + 2なら2, -3, -3, 2で、候補は±1、±2、±1/2の6つになります。
途中の係数が0でもかまいませんか?
はい。途中の係数が0なのは、xのある次数の項がないという意味です。定理は定数項と最高次係数だけで決まるため、結果に影響しません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/algebra/rational-root \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"coefficients":[2,-3,-3,2]}'const res = await fetch("https://api.kit.forhosting.com/algebra/rational-root", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"coefficients": [
2,
-3,
-3,
2
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/rational-root",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"coefficients": [
2,
-3,
-3,
2
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/rational-root", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"coefficients":[2,-3,-3,2]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"coefficients":[2,-3,-3,2]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/rational-root", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"coefficients": [
2,
-3,
-3,
2
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.rational_root",
"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_n x の n 乗に a_{n-1} x の n-1 乗を加え、定数項 a_0 までと書きます。入力配列はまさにその順序の整数で、先頭が先頭係数 a_n、末尾が定数項 a_0 です。定理は、既約分数 p/q として書かれたすべての有理根について、p が a_0 を割り、q が a_n を割ると述べます。いずれかが消えると、次数を推測したり古典的な有限リストの外でゼロを自由根として扱うのではなく、invalid_input で失敗します。
候補の生成方法:約数、符号、既約分数
未約分の同値から生じる重複数値はまとめられ、最終リストは安定したJSONのため昇順に並べられます。応答は整形済み係数、次数、読みやすい多項式文字列、先頭および定数係数、正の因子リスト、数値候補、1/2 や -3 のような並列な分数文字列、p・q・value・fraction を持つ構造化 candidate_details、candidate_count、および rational_root_theorem に固定された method ラベルを返します。この経路では候補で多項式を評価しません。配列欠落、非整数、先頭項ゼロ、定数項ゼロなどの検証失敗は invalid_input を投げ、課金されません。
APIの呼び出し、応答の読み方、料金、実務フローへの位置づけ
必須の整数配列 coefficients を最高次から先に並べたJSON本体を送ってください。便宜上 alias の coeffs も受け付けます。成功時は表示に candidates または candidates_as_fractions を使い、組立除法のループや段階的説明で正確な分子・分母が必要なときは candidate_details を使います。チュータリング基盤、コーディング評価サンドボックス、カリキュラム生成器、データパイプラインが前払いKIT残高のもとで安定契約を必要とする場合はAPIを使い、成功1件あたり $0.002 です。
連携の活用例
段階的な代数パイプライン
因数分解を先に教えるアプリは本エンドポイントから有理根定理の候補を出し、各言語で約数列挙を再実装せずに学習者が各値を試すよう導きます。
技術的な質問
このAPIで有理根定理の候補をどう列挙しますか?
coefficients を最高次から先の整数配列としてJSONで送ります(例:2x³ − 3x² − 3x + 2 なら [2, -3, -3, 2])。応答は因子・分数・件数とともに各々異なる候補 p/q を列挙します。
先頭係数または定数項がゼロだとどうなりますか?
リクエストは invalid_input で失敗し、先頭係数と定数項の両方が非ゼロでなければならないというメッセージが返ります。失敗した呼び出しは課金されません。
係数は整数でなければなりませんか?
はい。古典的な有理根定理は整数係数に適用されます。非整数の項目は invalid_input で拒否され、因子リストがきちんと定義されたままになります。