高度合成数チェッカー|約数個数の記録を判定
高度合成数とは、それ未満のどの正の整数よりも正の約数が多い数です。このチェッカーは、単に因数が多いか、合成数であるかを見るのではなく、入力値がこの厳密な記録条件を満たすかを判定します。対象の約数個数、それより小さい整数が達成した最大の約数個数、そして真偽の結論を返します。根拠となる数値も確認できるため、授業、整数列の研究、プログラミング課題、検証処理で安心してご利用いただけます。
無料で実行
高度合成数と判定される条件
対象の数が条件を満たすのは、その正の約数の個数が、それ未満のすべての正の整数の約数個数を厳密に上回る場合だけです。「厳密に上回る」という点が重要です。以前の数が同じ個数に到達していれば、後の数は新記録を作っていないため、判定結果は偽になります。したがって、この機能が調べるのは素数と合成数の一般的な区別ではなく、約数個数の数列における記録保持者です。正の整数 1 も対象に含まれます。1 には正の約数が1個あり、比較すべき小さな正の整数が存在しないため、ここで採用する定義では最初の記録保持者となります。結果の divisor_count は入力値の約数個数、max_smaller_divisor_count は以前の最大値を示します。この2項目を比較すれば、理由の分からないラベルを信じることなく、真偽値の根拠をご確認いただけます。約数を多く持つ印象的な素因数分解の数でも、以前の整数が同数以上に達していれば高度合成数にはならないため、記録数列の学習に特に役立ちます。
再現可能な答えを求める仕組み
アルゴリズムは、1 から指定値までの各正の整数について、正確な約数個数の表を作成します。候補となる各約数を順に調べ、その倍数すべてのカウンターを増やします。これは、ある数を余りなく割れる数が約数であるという関係をそのまま計算したものです。表が完成すると、指定値より前の全項目を走査し、見つかった約数個数の最大値を保存します。入力した数自身の個数がその過去最大値を上回る場合に限り、高度合成数と判定します。確率的素数判定、近似、外部データベース、乱数、時計に依存する値は一切使用しません。そのため、同じ入力からはブラウザーでも API でも同じ JSON が得られます。安全に扱える正の整数と、数字だけで構成された文字列を受け付けます。小数、数字以外の文字、1 未満の値、宣言済み上限を超える入力は拒否します。この上限により、ブラウザーや実行環境でのメモリー使用量と入れ子の計算回数を予測可能に保ちながら、通常の探索や数列確認に十分な範囲を提供します。
返却項目の読み方と活用方法
まず、主判定を示す is_highly_composite をご確認ください。真の場合、divisor_count は必ず max_smaller_divisor_count より大きく、入力値が新記録を樹立したことを示します。偽の場合は、過去最大値が入力値の個数以上であるため、因数が多くても定義を満たしません。応答には n も再掲されるので、ログや一括処理で各判定を元の値と確実に対応させられます。数列の授業では、隣り合う整数を順に入力し、次の記録が現れるまで最大値が変化しない様子をご覧いただけます。ソフトウェアテストでは、見かけ上正しいラベルの裏に不具合が隠れないよう、真偽値に加えて2つの個数も検証してください。データ処理では、無効入力の応答を数学的な答えではなく、契約違反として扱います。0 と負の整数は定義域外です。API の各リクエストは $0.002 で、ブラウザー版は端末内で動作します。どちらも外部の数値データベースへ照会せず、入力整数を変更したり保存したりしません。
活用例
約数記録の数列を探索する
正の整数を順番に判定し、約数個数の新記録が現れる位置を正確に特定できます。
数学の課題を確認する
高度合成数だという主張を検証し、判定の根拠となる2つの個数をご確認いただけます。
生成した候補を検証する
素因数分解や整数列から候補を提案するコードに、再現可能な記録判定を追加できます。
よくある質問
高度合成数とは何ですか?
それ未満のどの正の整数よりも、正の約数を厳密に多く持つ整数です。
以前の数と同数なら条件を満たしますか?
いいえ。過去の約数個数記録を上回る必要があり、同数では条件を満たしません。
1 は高度合成数に含まれますか?
はい、ここで用いる定義では含まれます。約数が1個あり、最初の記録を争う小さな正の整数が存在しないためです。
どのような入力を利用できますか?
1 から 1,000,000 までの正の整数をご指定ください。共有ソルバーは、数字だけの文字列にも対応します。
API リクエストの料金はいくらですか?
API リクエスト1回につき $0.002 です。同じ再現可能なチェッカーをブラウザーでもご利用いただけます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/numth/highly-composite-check \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":12}'const res = await fetch("https://api.kit.forhosting.com/numth/highly-composite-check", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 12
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/highly-composite-check",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 12
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/highly-composite-check", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":12}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":12}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/highly-composite-check", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"n": 12
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.highly_composite_check",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_n | 1000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |