角度の差の正弦計算
角度の差の正弦計算機は、sin(A − B) を sin(A) cos(B) − cos(A) sin(B) に展開して求めます。2つの角度を入力し、度またはラジアンを選択すると、2つの積と最終的な差が表示されます。そのため、数値を得るだけでなく、課題の確認、導出の記録、手計算の各段階の検算にもお使いいただけます。すべてのリクエストで同一の決定論的な公式を使用し、近似手法、ネットワーク依存、ランダムな処理はありません。
無料で実行
正弦の差の公式が表す内容
正弦の差の公式では、ある角度から別の角度を引いた値の正弦を sin(A − B) = sin(A) cos(B) − cos(A) sin(B) と書き換えます。この式には2つの積があり、記載された順序で引き算を行うことが重要です。第1項は A の正弦と B の余弦を組み合わせ、第2項は A の余弦と B の正弦を組み合わせます。本計算機は最終的な差を返す前に両方の項を表示するため、入力から答えまでの過程をご確認いただけます。これは、手書きの解答に符号の誤りが入った場合の確認に特に役立ちます。たとえば、A = 75°、B = 30° の差は 45° ですが、本ツールは特殊角の既知の値へ直接置き換えるのではなく、展開した公式を実際に評価します。負の角度や B が A より大きい場合にも対応しています。その場合も正弦の通常の符号規則が自動的に適用されるため、特別なモードや手動補正を使わずに sin(A − B) の正しい負の値を求められます。
両方の角度に同じ単位を選ぶ方法
2つの入力角度には、選択した同一の単位を使用してください。値に度記号が付いている場合や、幾何学の問題、測量、回転、方位から得た値には度を選択します。π を使った角度、微積分で扱う角度、プログラムや科学式から直接得た値にはラジアンを選択します。JavaScript の三角関数はラジアンで動作するため、度の入力は内部でラジアンへ変換されます。ラジアンの入力はそのまま使用されます。その後、sin(A)、cos(B)、cos(A)、sin(B) を計算し、対応する組を掛け、第1の積から第2の積を引きます。送信前に片方の角度だけを変換しないでください。ラジアンとして解釈された 30 は 30 度とはまったく異なり、単位を混在させると一見もっともらしくても問題とは無関係な数値になります。返される単位と差により、解釈を明確に確認できます。結果は12桁の小数に丸められ、安定性と読みやすさを保ちながら、学習、一般的な技術確認、表計算、アプリケーション検証に十分な精度を提供します。
返された結果の読み方と検算方法
まず difference をご確認ください。これは入力と同じ単位で表した A − B です。次に sin_a、cos_b、cos_a、sin_b を確認します。これらは公式で使われる4つの三角関数の因子です。first_term は sin(A) cos(B)、second_term は cos(A) sin(B) を表します。最後に value が第1項から第2項を引いた値であり、求める角度差の正弦です。中間値が保持されるため、教科書の解答、表計算の式、別のソフトウェアライブラリと比較する際、最終結果の不一致だけを見るのではなく、どの因子に違いがあるかを特定できます。独立した妥当性確認として、正弦の値は常に −1 から 1 の範囲に入ることもご利用ください。また、先に角度を引き、信頼できる別の方法でその差の正弦を求めると、通常の浮動小数点の丸め範囲内で一致するはずです。API リクエストの料金は $0.002 で、ブラウザー版では同じ決定論的計算をローカルで実行します。入力は公開上限内の有限数である必要があり、不足または無効な角度には、作成された答えではなく明確な入力エラーが返されます。
活用例
三角法の問題を確認する
公式の各因子と積を表示し、符号の誤りや項の入れ替えを見つけやすくします。
表計算の式を検証する
大きな計算に使用する前に、展開した式を同じ角度単位の決定論的な結果と比較できます。
技術計算を記録する
入力、単位、中間項、公式、最終値を残し、透明性のある数値確認に役立てられます。
よくある質問
どの公式を使用しますか?
sin(A − B) = sin(A) cos(B) − cos(A) sin(B) を使用し、差を求める前に2つの積を計算して返します。
度とラジアンを入力できますか?
はい。リクエストでは度またはラジアンを選択してください。2つの角度は同じ単位で入力する必要があります。
角度が負でも計算できますか?
はい。公開されている絶対値上限内であれば、正、0、負の有限角度を入力できます。
中間値が返されるのはなぜですか?
公式の評価過程を正確に示し、単位、符号、乗算、転記の誤りを特定しやすくするためです。
API リクエストの料金はいくらですか?
API リクエスト1回の料金は $0.002 です。ブラウザー版は同じ純粋な計算をローカルで実行します。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/trig/sin-difference \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"angle_a":75,"angle_b":30}'const res = await fetch("https://api.kit.forhosting.com/trig/sin-difference", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"angle_a": 75,
"angle_b": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/trig/sin-difference",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"angle_a": 75,
"angle_b": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/trig/sin-difference", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"angle_a":75,"angle_b":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"angle_a":75,"angle_b":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/trig/sin-difference", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"angle_a": 75,
"angle_b": 30
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.sin_difference",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_abs_angle | 1000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |