友愛数チェッカー
220と284は友愛数です。220の真の約数の和は284、284の真の約数の和は220になります。正の整数を2つ入力すると、両方の和とはっきりした判定が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- A
- 220
- B
- 284
- アリクォート和 a
- 284
- アリクォート和 b
- 220
- 順序付き
- 220, 284
友愛数は古典的数論の著名な概念です。相異なる二つの正整数は、それぞれが他方の真の約数の和に等しいとき友愛数対を成します。真の約数とはその数自身を除くすべての正の約数で、その和をアリクォート和と呼びます。最小かつ最も有名な対は220と284です。本チェッカーは二つの正整数を受け取り、厳密な整数演算で双方のアリクォート和を計算し、その対が友愛かどうかを報告します。等しい完全数は別フラグで示すので、古典的友愛と完全数の場合を一目で区別できます。
友愛数とアリクォート和の意味
正の整数nを固定します。その真の約数は、nを割る正の整数のうちn自身を除いたすべてです。例えば220の真の約数は1、2、4、5、10、11、20、22、44、55、110で、和は284です。
284の真の約数は1、2、4、71、142で、和は220です。各アリクォート和が相手の値を復元し、かつ二数が相異なるため、この対は友愛です。数が自身のアリクォート和に等しいときは完全数であり友愛対の一部ではありません。
6と28が古典的な完全数の例です。長さが2を超える社交的鎖は同じアリクォート写像を一般化しますが、二入力の対判定の範囲外です。ここで用いる定義は趣味の数論とコンテスト問題集で教える標準です:s(a)がbに等しく、s(b)がaに等しく、aがbと異なる。
ただしsはアリクォート和を表します。この三部規則により友愛対を完全数や、片側だけで偶然に因子和を共有するだけの対からきれいに分離します。
実務での使い方・制限・料金・提供
アリクォート数列の学習、教科書演習の確認、コンピュータ代数系なしでの真の約数和の演示など、即座の友愛対チェックが欲しいときはブラウザツールを使ってください。検証失敗は残高を消費しません。結果は完全に決定的です。
同じaとbは常に同じアリクォート和、同じ友愛フラグ、同じ順序付き対を生みます。言語モデルも外部算術サービスも乱数もなく、自動テストや再現可能なノートブックに固定して安全です。
活用例
課題とコンテストの検証
学習者と採点者は、ローカルのコンピュータ代数系なしで候補対が友愛かを確認し、双方のアリクォート和を点検できます。
趣味の数論デモ
真の約数を紹介する教材ページで、古典的な220–284対を他の候補の横に示し、等号の場合として完全数を強調できます。
よくある質問
どちらかの数が1未満だとどうなりますか?
友愛対は正整数のみで定義され、1未満は拒否され課金されません。
友愛数チェッカーは無料ですか?
ブラウザツールは端末上で無料実行です。検証失敗は課金されません。
アリクォート和とは何ですか?
nのアリクォート和は、n自身を除くnのすべての正の約数の和です。友愛対は、それぞれが他方のアリクォート和である相異なるaとbそのものです。
最小の友愛数の組は何ですか?
220と284です。220の真の約数1、2、4、5、10、11、20、22、44、55、110の和は284で、284の真の約数1、2、4、71、142の和は220です。
同じ完全数を2回入力するとどうなりますか?
2つの数は異なる必要があるため、友愛数とは判定されません。6や28のような完全数は自分の約数の和と等しく、結果では完全数の場合として別に示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/numth/amicable-numbers \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":220,"b":284}'const res = await fetch("https://api.kit.forhosting.com/numth/amicable-numbers", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 220,
"b": 284
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/amicable-numbers",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 220,
"b": 284
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/amicable-numbers", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":220,"b":284}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":220,"b":284}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/amicable-numbers", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": 220,
"b": 284
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.amicable_numbers",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_n | 1000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
本チェッカーが候補対をどう評価するか
実装は両値が存在し、有限で、整数であり、1未満でないことを検証します。次に各引数のアリクォート和を平方根オーダーの試し割りループで計算します。整数平方根までの各約数dはdを寄与し、相異なるときは補商も寄与しますが、数自身は決して加えません。1は特別扱いで、自身を除外した候補集合が空のためアリクォート和は0です。整数フィールドaとbで能力を呼び出します。それぞれ1以上かつ公開上限以下です。エンジンは二つの和を反対側の入力と比較し、aがbに等しく自己一致するアリクォート和を持つ場合も記録し、それはis_amicableではなくis_perfect_pairとして現れます。応答はa、b、aliquot_sum_a、aliquot_sum_b、両ブール値、表やソート済みリストで安定表示するための昇順の順序付き対を返します。1未満、非整数、欠落フィールド、上限超過はinvalid_inputで失敗し課金されません。
実務での使い方・制限・料金・提供
スクリプト、課題チェッカー、趣味の数学サイトが多くの候補対に対して安定したJSON契約を必要とするときはAPIを使ってください。成功リクエストは$0.002で課金される1アイテムです。受理入力は1兆までの正整数なので、教室例や既知の歴史的対は厳密なJSON数として表現可能です。数論デモ、コンテスト採点、アリクォート数列探索、あるいは近似ヒューリスティックや中間和を隠す不透明なブラックボックス計算機より厳密な約数演算を信じる前処理にエンドポイントを配線してください。
連携の活用例
自動化されたアリクォート対パイプライン
候補の整数対を絞り込むスクリプトは、サービスごとに場当たり的な約数ループを埋め込む代わりに、決定的でアイテム課金のエンドポイントを呼び出せます。
技術的な質問
このAPIで二数が友愛かどう調べますか?
正整数フィールドaとbを持つJSONボディをnumth.amicable_numbers能力へ送ってください。応答はis_amicableと両方のアリクォート和を返し、比較を監査できます。
6と6は友愛とみなされますか?
いいえ。aがbに等しく、それぞれが自身のアリクォート和に等しいとき、結果はis_perfect_pairを真、is_amicableを偽にし、友愛の相手は相異なるという古典的要件に合わせます。