ボックスメソッド計算
(2 + 3x)×(4 + 5x)では、4つのマスに8、10x、12x、15x²が入り、真ん中の2つのマスがまとまって積のxの項になります。各二項式の2つの係数を入力すると、すべての部分積が見えるので、交差する項を落としません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
つまり、長方形を4つのセルに分割した面積として計算します。各二項式の2つの係数を定数項を先頭にして送信すると、ボックスのセルとして配置された4つの部分積と、展開後の多項式の係数が返されます。分配法則を目に見える形にしたもので、交差項はすべて漏れなく考慮され、学生が手書きで書き出す計算を決定的な1回の呼び出しで返します。
ボックスメソッドが実際に行うこと
(a0 + a1·x) と (b0 + b1·x) を乗算するということは、分配法則を2回適用することであり、典型的な失敗は交差項の一方を忘れてしまうことです。ボックスメソッドによる乗算のレイアウトは、2×2の格子を描くことでそれを防ぎます。片方の二項式の項が行のラベルになり、もう片方の項が列のラベルになり、各セルには対応する行と列のラベルの積が入ります。
4つのセルは a0·b0、a0·b1·x、a1·b0·x、a1·b1·x² です。これらを足し合わせ、x の同類項をまとめれば、展開後の多項式が得られます。途中の計算過程を示せる個々のボックスセルと、プログラムから結果を利用できる結合済みの係数です。
入力は単なる数値のペア2組なので、解析すべきものはなく、学ぶべき式の構文もなく、符号に関する曖昧さもありません。負の係数はそのまま負の数として扱われます。
入力形式と出力の形
a と b を送信します。それぞれ、定数項を先頭とするちょうど2つの有限数からなる配列です。[2, 3] は 2 + 3x を意味します。
binomials は解釈された2つの二項式をそのまま返すので、クライアントは何が理解されたかを確認できます。box は格子そのもので、行と列のラベルに加え、セルごとに1エントリを持つ terms 配列が含まれます。各エントリはセルの名前、読みやすい式としての乗算、数値、そして寄与する x の次数を示します。
product.coefficients は展開後の結果で、これも定数項が先頭です。定数セル、2つの一次セルの和、二次セルの順です。出力される数値はすべて小数点以下6桁に丸められるため、マシン間でバイト単位の安定した出力が得られます。
実際の活用場面
この機能は教育用途と軽量な記号的処理を対象としています。家庭教師アプリや宿題チェッカーは、学生の演習問題に対して格子全体を表示し、最終的な答えだけでなく各セルを学生自身の解答と比較するために利用します。コンテンツパイプラインは、各セルの式文字列がすでに表示用に整形されているため、解答例を大量生成するために利用します。
小さな数学ツールを組み込む開発者は、次数1の因数に対する安全で副作用のない乗算として利用します。たとえば、評価の前に因数分解形を標準形に展開し直す場合などです。本機能は状態を持たずネットワークアクセスも行わない純粋関数としてエッジ上で動作するため、どの呼び出しでもどのリージョンでも結果は同一です。
活用例
解答例を表示する
代数の授業や解答用紙のために、各セルの乗算を含む2×2のボックス全体を表示します。
学生の宿題をセルごとに採点する
4つの部分積のそれぞれを学生の格子と比較し、どの項が間違っていたかを正確に特定します。
因数分解形をプログラムで展開する
CASへの依存なしに、2つの次数1の因数をパイプライン内で標準形の係数に変換します。
よくある質問
料金はいくらですか?
また、このページではブラウザ内で無料で実行できます。どちらでも同じモジュールが動作します。
どのような入力を期待しますか?
a と b の2つの配列で、それぞれ定数項を先頭とするちょうど2つの有限数を含みます。[2, 3] は二項式 2 + 3x です。
係数に負の数や小数は使えますか?
はい。 有限の数値であれば何でも使えます。負の数、小数、ゼロはすべて有効な係数です。
三項式やそれ以上の次数には対応していますか?
いいえ。 ここでのボックスメソッドは、二項式2つに対する古典的な2×2のケースです。より高次の積には、一般的な多項式乗算の機能をご利用ください。
結果は決定的ですか?
はい。 乱数や時計に依存しない純粋関数であり、すべての数値は小数点以下6桁に丸められるため、マシン間で出力は安定しています。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/box-method \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":[2,3],"b":[4,5]}'const res = await fetch("https://api.kit.forhosting.com/math/box-method", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": [
2,
3
],
"b": [
4,
5
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/box-method",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": [
2,
3
],
"b": [
4,
5
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/box-method", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":[2,3],"b":[4,5]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":[2,3],"b":[4,5]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/box-method", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": [
2,
3
],
"b": [
4,
5
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.box_method",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
ボックスメソッドAPIは、数学の授業で教わるとおりの方法で二項式どうしを乗算します。このページでは同じコードがブラウザ内で無料で動作し、API経由で自動化する場合はリクエストごとに$0.002かかります。
ボックスメソッドが実際に行うこと
このエンドポイントは、生の係数からまさにこの構築を行い、2つの形で結果を返します。
入力形式と出力の形
レスポンスは3つの部分からなります。欠落している、数値でない、または有限でない係数 — NaN、Infinity、文字列、null — はすべて invalid_input エラーで拒否され、結果は返されません。
実際の活用場面
また、このページの無料のブラウザ版は、有料APIとまったく同じモジュールを実行します。価格はリクエストごとに$0.002で、項数やサイズによる追加料金はありません。
技術的な質問
NaN、Infinity、文字列が含まれているとどうなりますか?
問題のある二項式を特定する invalid_input エラーでリクエストは拒否され、課金は発生しません。