交わる弦の計算ツール
APが3、PBが4、CPが2なら、足りないPDは6です。どちらの弦も積が12になるためです。交わる2本の弦の4つの線分のうち、3つを入れるだけで残りが分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 線分 AP の長さ
- 3
- 線分 PB の長さ
- 4
- 線分 CP の長さ
- 2
- 線分 PD の長さ
- 6
- 計算した線分
- PD
- 弦の線分の積
- 12
方べきの定理を解きます。4 つの線分 AP・PB・CP・PD のうち任意の 3 つを指定すると、関係式 AP·PB = CP·PD を用いて、欠けている線分と積 AP·PB を返します。
方べきの定理
円の 2 本の弦が内部の点 P で交わるとき、分割された線分の積は等しくなります。弦 AB が AP と PB に、弦 CD が CP と PD に分けられるとき、定理は AP·PB = CP·PD を主張します。この計算ツールはその恒等式を逆に用います。
4 つの線分の長さ AP・PB・CP・PD のうちちょうど 3 つを、それぞれ正の数として渡すと、省いた 1 つを代数的に復元します。
検証と境界事例
指定する各線分は 0 より厳密に大きい有限の数でなければなりません。AP・PB・PD・CP のうちちょうど 3 つを指定しなければなりません。4 つを渡すと解くべきものが残らず、2 つ以下では決定できないため、どちらも明確なメッセージとともに拒否されます。
除数となる線分が有限でない結果を強いるような退化した構成は、Infinity を返すのではなく検出して拒否します。これらの安定した機械可読なエラーによって、フォームは不正な入力箇所を正確に強調でき、自動化されたクライアントは安全に再試行できます。
活用例
幾何の宿題と証明
円を手で描くことなく、欠けている弦の線分を復元し、AP·PB = CP·PD を検証できます。
CAD とレイアウトの確認
円弧の作図における交点の距離を、測定した 3 つの長さから確認できます。
よくある質問
何を指定すればよいですか?
4 つの線分 AP・PB・CP・PD のうちちょうど 3 つを、それぞれ正の数として指定します。ツールは AP·PB = CP·PD から 4 つ目を解きます。
出力 product とは何ですか?
AP·PB、すなわち両方の弦の組が等しくなる共通の値です。生の乗算から一度だけ丸められます。
足りない線分はどうやって求めますか?
2本の弦で線分の積が等しいことを使い、分かっている側の積を、同じ弦にあるもう一方の線分で割ります。たとえばPDが足りなければ、APとPBの積をCPで割ります。
交わる弦の定理とは何ですか?
円の内部で2本の弦が交わるとき、一方の弦の2つの線分の積と、もう一方の弦の2つの線分の積が等しくなるという定理です。3と4に分かれた弦と、2と6に分かれた弦の積はどちらも12です。
結果は小数点以下何桁で表示されますか?
初期設定は6桁で、0から10までの整数で指定できます。丸めは丸める前の掛け算の結果から一度だけ、半分は切り上げで行うので、積と求めた線分が食い違いません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/intersecting-chords \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"AP":3,"PB":4}'const res = await fetch("https://api.kit.forhosting.com/math/intersecting-chords", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"AP": 3,
"PB": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/intersecting-chords",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"AP": 3,
"PB": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/intersecting-chords", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"AP":3,"PB":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"AP":3,"PB":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/intersecting-chords", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"AP": 3,
"PB": 4
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.intersecting_chords",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
方べきの定理
出力は解決した 4 つの長さすべてをそのまま返し、どれが再構成されたかを missing_segment で示し、両方の弦の組が共有すべき共通の値 AP·PB を product として報告します。この関係は三角関数を含まない単なる乗法的な等式なので、答えは要求された丸めの範囲で厳密であり、既知の線分をどの順で並べたかに依存することは決してありません。
どの線分をどう解くか
PD が欠けていれば AP·PB/CP を、CP が欠けていれば AP·PB/PD を、PB が欠けていれば CP·PD/AP を、AP が欠けていれば CP·PD/PB を計算します。出力 product である AP·PB も、すでに丸められた線分からではなく生の乗算から、同じ方法で一度だけ丸められるため、解決された値と整合します。ツールは省略された唯一のフィールドを検出し、AP·PB = CP·PD の対応する変形を選びます。復元された長さは、省略可能な decimals フィールド(0 以上 10 以下の整数、既定 6)で制御される小数桁数に half-up で丸められます。計算例 AP=3, PB=4, CP=2 では、欠けている PD が 6 に解決され、product は 12 になります。これは、もう一方の弦について 3·4 が積 2·6 に等しいことを確認するものです。
検証と境界事例
0、負、数値でない、または有限でない値は、問題のあるフィールド名を示す型付きの invalid_input エラー(たとえば "CP inválido")を送出します。decimals フィールドは 0〜10 の範囲に境界チェックされ、整数でなければなりません。
連携の活用例
API による一括検証
多数の弦の構成を JSON として投入し、それぞれについて解決された 4 つ目の線分と積を取得できます。
技術的な質問
欠けている線分はどう求められますか?
省略されたフィールドについて AP·PB = CP·PD を変形し、指定の小数桁数(0〜10、既定 6)に half-up で丸めて求めます。
不正な入力では何が起きますか?
0、負、有限でない値、または線分の個数が誤っている場合、フィールド名を示す型付きの invalid_input エラーが返ります。
無料ですか?
ブラウザでは tier A widget として無料です。決定的な API は成功した呼び出し 1 回あたり $0.002 かかり、失敗したタスクは課金されません。