2×2連立一次方程式を解く
2x + yが5、x + 3yが7となる2本の直線は(1.6, 1.8)で交わります。クラメルの公式か消去法で2つの一次方程式の唯一の交点を求め、行列式(ここでは5)も示します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- A11
- 2
- A12
- 1
- A21
- 1
- A22
- 3
- B1
- 5
- B2
- 7
- X
- 1.6
- Y
- 1.8
- 行列式
- 5
- Det. x
- 8
二行二列の線形系は、連立方程式の最小の実用モデルです。二つの未知数が二つの独立な直線で制約されます。生徒は交点のグラフ化で、技術者は二つの力や二つの回路ループの釣り合いで、データパイプラインは二つの独立観測から二つのパラメータを復元するときに出会います。本能力は a11 x + a12 y = b1 および a21 x + a22 y = b2 を解き、係数行列式が非零のとき一意の対 x,y を返します。三つの二行二列行列式を作るクラメルの公式、または拡大行列を簡約する部分ピボット付きガウス消去法を選べます。
2×2線形系とは何か、いつ一意解を持つか
系を行列形で、Aに未知数の列ベクトルを掛けたものが定数の列ベクトルに等しいと書きます。係数行列Aは第一行にa11とa12、第二行にa21とa22を持ちます。その行列式 a11·a22 − a12·a21 は、平面上の二直線の幾何を決める一つの数です。
行列式が非零なら直線は平行でなく、ちょうど一点で交わり、その交点が一意解 (x, y) です。行列式が零ならAの行は一次従属で、直線は平行で交わらない(解なし)か、同じ直線を二度書いたもの(無限解)です。消去法は左下要素を消し逆代入して同じ対に達します。
いずれの方法も通常の浮動小数係数では機械精度内で正確で、遠隔ソルバなしにブラウザ内で十分安価に走れます。
実務利用、料金、制限、提供
宿題確認、講義スライド準備、または計算機代数系を入れずに二式制約をデバッグするとき、即時の厳密交点が欲しければブラウザツールを使ってください。言語モデルも外部線形代数サービスも乱数もなく、CI検査や再現可能な教材に固定して安全です。結果は完全に決定的で、同じ係数と方法は常に同じ x, y, 行列式を生みます。
説明用の中間行列式が欲しければクラメルを、行操作を教えより大きな系へ一般化する道が欲しければ消去を選んでください。打消しが支配しないよう係数を通常の浮動範囲に保ち、教室の整数や典型的な工学スケールでは倍精度内で正確です。ソース入出力は他のKIT parse品目と同じ保持規則に従い、検証後の失敗タスクは課金されません。
活用例
宿題とチュータリングの検証
生徒と採点者が二つの一次方程式の (x, y) を確認し、正しく失敗する特異ケースも含め、ローカルCASなしで行います。
パイプラインでの二パラメータ復元
二つの独立線形制約から二つの未知数を合わせるスクリプトが、各言語で行列式を再実装せず決定的2×2オラクルを呼び出します。
よくある質問
クラメルの公式と消去法の違いは?
消去は部分ピボットで拡大行列を簡約します。非特異ならどちらも同じ一意 (x, y) を返します。
3×3のような大きな系も解けますか?
いいえ。 本能力は二つの未知数に対する二つの式に限られます。より大きな系には別能力または一般線形代数ライブラリが必要です。
行列式が0の場合はどうなりますか?
2本の直線が平行か、同じ直線を2回書いた状態なので、解は1つに定まりません。値の組を作り出さず、系が特異であることを伝えます。
クラメルの公式で2×2の連立方程式をどう解きますか?
係数の1列を定数項に置き換えた行列式を、元の行列式で割ります。例では8と9を行列式5で割って、1.6と1.8が得られます。
係数に小数を使えますか?
はい、有限の数なら整数でも小数でも入力できます。計算は通常の浮動小数点の精度で行われ、練習問題や一般的な工学の値には十分です。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/algebra/system-2x2 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a11":2,"a12":1,"a21":1,"a22":3,"b1":5,"b2":7}'const res = await fetch("https://api.kit.forhosting.com/algebra/system-2x2", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a11": 2,
"a12": 1,
"a21": 1,
"a22": 3,
"b1": 5,
"b2": 7
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/system-2x2",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a11": 2,
"a12": 1,
"a21": 1,
"a22": 3,
"b1": 5,
"b2": 7
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/system-2x2", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a11":2,"a12":1,"a21":1,"a22":3,"b1":5,"b2":7}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a11":2,"a12":1,"a21":1,"a22":3,"b1":5,"b2":7}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/system-2x2", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a11": 2,
"a12": 1,
"a21": 1,
"a22": 3,
"b1": 5,
"b2": 7
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.system_2x2",
"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 で拒否します。
2×2線形系とは何か、いつ一意解を持つか
どちらの特異ケースでも本APIは一意対を捏造せず invalid_input で失敗し、製品説明の約束に合います。クラメルの公式は非零行列式の場合を直接使い、Aの第一列を定数で置き換えて det_x、第二列を置き換えて det_y を得て、x = det_x / det、y = det_y / det とします。
ソルバの呼び出し方と応答の読み方
任意で method を cramer(既定)または elimination に設定します。係数行列式の絶対値が 1e-12 付近の厳しいイプシロンより小さいときも、系が特異で一意解がないというメッセージで失敗します。成功時は常に x, y, determinant, method、true の unique フラグ、両直線の表示文字列を持つ equations オブジェクトを含みます。必須の六数 a11, a12, a21, a22, b1, b2 を持つJSON本体を送ってください。エンジンは各係数が有限数であることを検証し、欠損フィールド、非数値文字列、NaN や Infinity は直ちに invalid_input で失敗し課金されません。クラメルを選んだ場合は det_x と det_y が含まれ、教材UIが三つの行列式を並べて示せます。既にJSONを話し安定契約を必要とするスクリプトにエンドポイントを接続し、各言語でピボット論理を再実装しないでください。
実務利用、料金、制限、提供
チューター基盤、コーディング面接サンドボックス、物理実験ノート、表計算パイプラインが多数の係数集合に対し単一契約の安定JSONを必要とするときはAPIを使ってください。成功リクエストは $0.002 の請求品目一つで、検証失敗と特異系は残高を消費しません。
連携の活用例
クラメル対消去の教材
授業ページが方法を切り替え、det_x、det_y、または消去経路を示し、学習者が両アルゴリズムを同じ一意交点に結びつけます。
技術的な質問
このAPIで2×2連立方程式をどう解きますか?
a11, a12, a21, a22, b1, b2(と任意のmethod)をJSONで送ってください。一意解があるとき応答は x, y, determinant と関連フィールドを返します。
系が特異だとどうなりますか?
係数行列式が(厳しいイプシロン内で)零のとき、リクエストは invalid_input で失敗し課金されません——一意解はありません。
2×2系ソルバは無料ですか?
ブラウザツールは端末上で無料です。APIは成功品目ごとに$0.002の前払いKIT残高を使い、検証失敗と特異系は課金されません。