ダドニー数チェッカー
512はダドニー数です。各桁の和は8で、8の3乗は512になります。正の整数を入れると、桁和、完全立方数かどうか、立方根、最終的な判定が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- N
- 512
- 各桁の和
- 8
- 立方根
- 8
ダドニー数とは、完全立方数であり、かつ十進表記の各桁の和がその立方根と等しい正の整数です。このチェッカーは両方の条件を正確に調べ、各桁の和、完全立方数かどうか、存在する場合の立方根、最終的なダドニー数判定を返します。立方数の確認には整数演算を使用するため結果は決定的です。
ダドニー数の判定が意味すること
この定義は、位取り記数法の計算と累乗の関係を結び付けたものです。まず正の整数 n の十進表記に含まれる各桁を足します。次に、n がその合計の 3 乗になっているかを確認します。
言い換えると、n には整数の立方根が存在し、その根が各桁の和と等しくなければなりません。512 の各桁の和は 8 で、8 の 3 乗は 512 なので、512 はダドニー数です。ただし、完全立方数が必ず条件を満たすわけではありません。
1,000 の立方根は 10 ですが、各桁の和は 1 です。また、各桁の和がある値と一致しても、入力が完全立方数でなければ不十分です。1 は各桁の和と立方根がともに 1 なので受け付けられ、条件を満たします。
正確な結果を計算する仕組み
入力は完全な十進整数として読み取ります。各桁の和は、正規化された十進表記から直接計算します。丸められた浮動小数点の立方根を正確な値と誤認しないように、候補となる根の小さな有限範囲を整数比較で探索し、候補の 3 乗を BigInt 演算で検証します。
受け付ける入力はすべて安全な整数なので、非負の立方根は固定された探索上限を下回ります。このため、アルゴリズムは少数の予測可能な比較で必ず終了します。両方の条件を満たす場合にだけ dudeney が true になります。
活用例
整数論の演習を確認する
提示されたダドニー数を、分類の根拠となる各桁の和と正確な立方数の証拠を保ったまま検証できます。
整数レコードを分類する
検証やデータ拡充の処理で、個々の整数レコードに説明可能なダドニー判定を追加できます。
よくある質問
ダドニー数とは何ですか?
十進表記の各桁の和が整数の立方根と等しくなる、正の完全立方数です。
512 はダドニー数ですか?
はい。 各桁の和は 8 で、512 は正確に 8 の 3 乗です。
すべての完全立方数がダドニー数ですか?
いいえ。 十進表記の各桁の和も立方根と一致する場合に限られます。
1はダドニー数ですか?
はい。桁和は1で立方根も1なので、2つの条件を両方満たします。このツールは1を受け付け、ダドニー数と判定します。
1000がダドニー数でないのはなぜですか?
条件の片方しか満たさないからです。1000は立方根が10の完全立方数ですが、各桁の和は1で、2つの値が一致しません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/numth/dudeney-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":512}'const res = await fetch("https://api.kit.forhosting.com/numth/dudeney-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 512
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/dudeney-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 512
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/dudeney-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":512}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":512}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/dudeney-number", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"n": 512
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.dudeney_number",
"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 では成功したリクエストごとに $0.002 でご利用いただけます。
ダドニー数の判定が意味すること
レスポンスでは、digit_sum、is_perfect_cube、任意の cube_root、dudeney を分けて返します。そのため、false の場合も単なる「いいえ」ではなく理由を確認できます。1 未満の入力は対象範囲外であり、数学的な分類ではなく invalid_input を返します。この仕様により、正しい否定結果と無効なリクエストを明確に区別していただけます。
正確な結果を計算する仕組み
JSON の整数と十進整数の文字列は受け付けますが、小数、指数表記、無限大、JavaScript の安全な整数範囲を超える値は拒否します。候補の 3 乗が n と厳密に一致しない場合、is_perfect_cube は false となり、整数の立方根が該当しないため cube_root は省略されます。厳密に一致する場合は根を返し、digit_sum と比較します。ネットワーク通信、乱数、保存された状態、現在時刻は一切使用しないため、同じ入力はブラウザでも API でも常に同じ JSON 結果になります。
学習、テスト、データ処理での活用方法
ダドニー数は、単純な十進演算が累乗と意外な形で一致するため、レクリエーション数学の分かりやすい題材です。教員の方は、構造化された結果を表示する前に、学習者に各桁の和と完全立方数かどうかを予想してもらうことで、2 つの条件が必要な理由を説明できます。学習者は、分類の根拠となる途中結果を保ったまま手計算を確認できます。明示的な is_perfect_cube フィールドにより、通常の非立方数と、立方根が各桁の和に一致しない完全立方数を簡単に分けられます。任意の cube_root は数学的に該当する場合だけ現れるため、型付きクライアントで曖昧な null 値を避けられます。個別の確認にはブラウザ実行が便利で、自動化された成功リクエストは 1 件あたり $0.002 となり、同じ純粋なソルバーを使用します。このツールはリクエストごとに 1 つの値を判定し、範囲の列挙や別の数字遊びへの定義拡張は行いません。一括探索では、お客様側の上限付きループから値を送り、dudeney が true のレスポンスだけを保持してください。
連携の活用例
数列生成器をテストする
プログラムが整数数列の候補を生成または絞り込む際に、決定的なレスポンスをテストデータとして利用できます。
技術的な質問
n が 1 未満の場合はどうなりますか?
このチェッカーは正の整数だけを受け付けるため、invalid_input で失敗します。
API リクエストの料金はいくらですか?
成功した API リクエストは 1 件あたり $0.002 です。同じ決定的な計算をブラウザで無料実行することもできます。