球の計算機
球の半径を入れるだけで、直径・赤道の円周・表面積・体積がまとめて分かります。半径1なら表面積は12.5663706144、体積は4.1887902048です。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 半径(r)
- 1
- 直径
- 2
- 円周
- 6.2831853072
- 球の表面積
- 12.5663706144
- 球の体積
- 4.1887902048
正の球体半径を入力すると、Math.PI を用いて直径・赤道円周・表面積・体積を計算し、round10 で丸めた値を返します。
仕組み
このツールは、正の半径 r をひとつ受け取り、球体に関する四つの量を求めます。直径は半径の二倍、赤道円周は二かける円周率かける半径、表面積は四かける円周率かける半径の二乗、体積は三分の四かける円周率かける半径の三乗として計算します。
すべての演算では定数 Math.PI を用い、各数値の結果は round10、すなわち小数第十位までの丸めを、ゼロから遠い側へ寄せる方式でおこないます。入力値はすべて、算術演算に入る前に検証されます。したがって、同じ半径を与えれば、いつでもどこでも同じ結果が得られます。
入力と出力
必須の項目は半径 r のみで、これは厳密に正の数であり、かつ正しい型でなければなりません。単位は指定されておらず、結果は与えられた半径と同じ単位で表され、表面積はその二乗、体積はその三乗の単位になります。処理が成功した場合、応答には必ず四つの出力項目、すなわち直径・赤道円周・表面積・体積が含まれます。
これにより、期待される項目が呼び出しごとに欠けることがなくなり、画面表示との結びつきが安定します。各数値はあらかじめ小数第十位まで丸められて返されるため、追加の加工なしにそのまま表示できます。
境界条件と限界
検証はあらゆる計算の前におこなわれます。半径が有限かつ厳密に正の数でなければ、関数はただちに停止し、照合用の文字列が安定したエラーを返すため、認証のためのテスト群はそれを曖昧さなく識別できます。半径が極端に大きく、その三乗が浮動小数点数の限界を超える場合でも、無限の体積がそのまま通ることはありません。
この場合も同様に捕捉され、無効な入力として報告されます。
活用例
宿題と授業
固定された基準値で、教科書的な例を確認できます。
技術的な素早い確認
表計算ソフトを使わずに、公式の結果を検証できます。
よくある質問
無料ですか?
はい。 ティア A はアカウントなしでブラウザ内で動作します。
どの計算式を使っていますか?
直径は半径の2倍、円周は半径の2π倍、表面積は半径の2乗の4π倍、体積は半径の3乗にπと3分の4を掛けた値です。
赤道の円周とは何ですか?
球のいちばん大きな円、地球儀なら赤道に当たる円の周りの長さです。直径のπ倍で、半径1なら6.2831853072になります。
直径や体積から計算できますか?
入力できるのは半径だけです。直径を測った場合は半分にしてから入力し、体積や表面積しか分からない場合は、先にそこから半径を求めてください。
どんな値が拒否されますか?
0、負の数、数値でないものは計算の前に拒否されます。結果があふれるほど大きな半径も、意味のない数字を返さずに拒否します。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/dev/sphere \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"r":1}'const res = await fetch("https://api.kit.forhosting.com/dev/sphere", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"r": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/sphere",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"r": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/sphere", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"r":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"r":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/sphere", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"r": 1
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.sphere",
"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 の経路でも動作するため、両者は常に同一の値を返します。
入力と出力
この固定された構造のおかげで、基準となるテストや自動化された連携は、一定のキーと、ブラウザでも API でも同一に再現できる値に、安心して依拠できます。
境界条件と限界
型が誤っている場合、禁止された場所での零または負の半径、そして計算結果が有限でなくなるあふれは、静かな null や NaN の項目ではなく、明確な invalid_input エラーへと変換されます。ブラウザと API で完全に一致するこの挙動により、予期せぬ結果が避けられ、すべての呼び出し側にとって検証の結果が予測可能になります。
連携の活用例
自動化
無料のウィジェットでも API でも、同じ純粋関数が動きます。
技術的な質問
ネットワークに接続しますか。
いいえ。端末内で完結する純粋な計算です。
入力が無効な場合は。
invalid_input を返し、明確で安定した照合文字列が付きます。
丸めは。
数値の出力に対し、ゼロから遠い側へ、小数第十位まで丸めます。
作者は。
samurai。