頂点形式から一般形への変換計算機
この計算機は、a(x − h)² + kで表された二次式をax² + bx + cへ展開します。主係数aと頂点の座標h、kを入力してください。分配法則を適用して定数項を整理し、a、b、cを直接返します。代数計算の確認、二次方程式の解の公式を使う準備、またはグラフを変えずに同じ放物線の表し方を切り替える際に便利です。
無料で実行
頂点形式を正しく読み取る方法
頂点形式の二次式はa(x − h)² + kと書きます。aは放物線の開く向きと縦方向の伸縮を決め、点(h, k)が頂点です。hには括弧内に見える符号ではなく、座標としての符号を付けて入力してください。たとえば(x − 3)²ではh = 3ですが、(x + 3)²は(x − (−3))²と同じなのでh = −3です。aが0になると二乗項が消えて二次式ではなくなるため、0は指定できません。一方、hとkには0、正数、負数、小数を指定できます。この3つの値が決まれば、対応する一般形は一意に定まります。計算機は有限の数値係数を返すため、そのまま後の計算に利用したり、手計算による展開結果と照合したりできます。
展開からbとcが得られる仕組み
変換には恒等式(x − h)² = x² − 2hx + h²を使います。各項にaを掛けるとax² − 2ahx + ah²となり、さらにkを加えるとax² − 2ahx + ah² + kになります。これをax² + bx + cと比較すると、主係数はaのまま、b = −2ah、c = ah² + kだと分かります。たとえば2(x − 3)² − 5は、2(x² − 6x + 9) − 5、次に2x² − 12x + 18 − 5、最後に2x² − 12x + 13となります。この計算機は自由入力された数式文字列を解析せず、これらの恒等式を数値へ直接適用します。そのため、上付き文字、乗算記号、キーボードでの表記方法による曖昧さがなく、小数も通常の数値係数として扱えます。
一般形の結果を確認して活用する方法
変換結果を手早く確かめるには、一般形のxへhを代入します。hは頂点のx座標なので、ah² + bh + cはkと一致する必要があります。また、任意のxについて元の式と展開後の式をそれぞれ計算し、同じ値になることを確認してもかまいません。一般形は、定数項の確認、二次方程式の解の公式、判別式b² − 4acの計算、多項式の加減算、係数の比較に適しています。頂点形式は、頂点や対称軸を読み取る場合に便利です。どちらかが常に優れているわけではなく、示しやすい情報が異なります。返されたa、b、cは、0の係数も含めて一組として扱ってください。b = 0なら通常は中間項を省略して書きますが、その係数自体は0として存在します。
活用例
展開問題の答え合わせ
分配して整理した各項を、計算されたa、b、cの値と比較できます。
解の公式を使う準備
判別式や二次方程式の解の公式に必要な係数形式へ変換できます。
2つの放物線を比較
頂点形式を一般形へ直し、それぞれの係数を直接比較できます。
よくある質問
頂点形式を一般形へ変換する公式は何ですか?
a(x − h)² + kでは、一般形の係数はa = a、b = −2ah、c = ah² + kです。
(x + h)²はどのように入力しますか?
加算を負の座標の減算として扱います。たとえば(x + 4)²ではh = −4を入力します。
aに0を指定できますか?
できません。aが0だと二乗項が消え、式は二次式ではなくなります。
小数や負数も使用できますか?
はい。aが0でなければ、a、h、kには有限の小数や負数を指定できます。
APIリクエストの料金はいくらですか?
APIリクエストは1回$0.002です。このページのブラウザー計算機は無料です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/algebra/quadratic-from-vertex-form \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":2,"h":3,"k":-5}'const res = await fetch("https://api.kit.forhosting.com/algebra/quadratic-from-vertex-form", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 2,
"h": 3,
"k": -5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/quadratic-from-vertex-form",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 2,
"h": 3,
"k": -5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/quadratic-from-vertex-form", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":2,"h":3,"k":-5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":2,"h":3,"k":-5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/quadratic-from-vertex-form", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": 2,
"h": 3,
"k": -5
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.quadratic_from_vertex_form",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |