ForHosting KIT · 開発者向けツール

各桁の階乗和チェーンの長さ計算

各桁の階乗和チェーンは、0以上の整数から始め、その10進数の各桁の階乗を足した値へ置き換える操作を、同じ値が2回目に現れるまで繰り返す数列です。この計算機は、最初の反復が起こる前に現れた異なる値の個数を返します。各階乗を手作業で計算したり、長くなる数列を照合して循環を探したりせずに、数論で知られるこの過程を迅速かつ正確に調べられます。

● Beta無料・ブラウザ内で実行
ご利用方法 ウェブAPIメールTelegramアプリ 近日

各桁の階乗和チェーンを作る方法

調べたい0以上の整数から始めます。その数を10進数の各桁に分け、各桁の階乗を求めて合計します。得られた結果を次の値とし、同じ規則をもう一度適用します。たとえば69から始める場合は6! + 9!となり、結果は363600です。次に363600の各桁を処理して次の値を求め、同じ方法でチェーンを続けます。計算機は、途中で現れたすべての値を記録します。次に得られた値がすでに一度現れていれば、過程は循環に入ったため、その時点で計算を終了します。返される長さは、開始値を含む異なる値だけを数え、2回目に現れた値は重ねて数えません。この数え方により、異なる開始値を明確な基準で比較できます。0も独立した10進数の桁として扱うため、0!は1です。計算のどの段階でも丸めや近似は行いません。

返される長さの読み方

結果として返すのは途中の数列全体ではなく、1つの長さです。これは、反復が始まるまでに異なる項がいくつ現れるか、という中心的な問いに答えます。数段階前に現れた値へ戻るチェーンを考えてみます。各項は最初に現れたときだけ長さに1を加え、2回目の出現は停止位置を示すだけで追加されません。この定義は、値が自分自身へ戻る不動点にも、複数の値からなる長い循環にも適用されます。ある値が直ちに自分自身へ移る場合、その値を開始値にすると長さは1です。開始後に複数の値を通ってからその不動点へ到達する場合は、経路上の異なる値をすべて数えます。異なる開始整数が途中から同じ経路へ合流しても、合流前の固有部分が異なれば長さも異なります。アルゴリズムは安全な整数の正確な算術を使い、開始前に入力を検証し、出現済みかどうかを明示的に記録するため、推測した反復上限や数学的な近道には依存しません。

計算機を確実に利用するために

n欄には、0以上の安全な整数を入力してください。小数はこの操作が想定する10進数の桁列を持たず、負数は定義された対象外であるため、整数のみを受け付けます。ブラウザー版は、個別の実験、授業での実演、階乗チェーンを学ぶ際の答え合わせに便利です。選んだ複数の入力をプログラムで比較したり、問題を作成したり、別の方法で得た結果を検証したりする場合はAPIをご利用いただけます。1回のリクエスト料金は $0.002 です。計算は決定的であり、同じ整数からは必ず同じ長さが得られます。ネットワーク通信、乱数、現在時刻、外部データは使用しません。最初の変換で値が大きくなる場合でも、各桁の階乗和はすぐに有限で有界な範囲へ入るため、出現済みの値を記録することで自然に終了を判定できます。再現可能な記録には、元の入力と返された長さを残し、他の資料と比較するときは2回目の出現を数えない規則を明記してください。

数論の数列を調べる

開始値から各桁の階乗和をたどり、同じ項へ到達するまでにいくつの異なる値が現れるか測定します。

学習問題の答えを確認する

手計算した階乗チェーンを検証し、異なる項が一貫した規則で数えられているか確認できます。

選んだ開始値を比較する

複数の整数についてAPIを呼び出し、再現可能な実験として各チェーンの長さを比較します。

長さは具体的に何を数えますか?

開始整数から最初の反復直前に現れる最後の新しい値まで、異なる値を数えます。2回目に現れた値は重ねて数えません。

開始値も長さに含まれますか?

はい。開始整数はチェーンで最初の異なる値であり、返される長さに1として含まれます。

数字の0はどのように扱いますか?

0は0!として計算し、その値は1です。したがって、開始値が0の場合、次の値は1になります。

nに負数や小数を指定できますか?

いいえ。入力は0以上の安全な整数でなければなりません。負数や小数を指定すると、無効な入力としてエラーになります。

APIリクエストの料金はいくらですか?

APIリクエスト1回の料金は $0.002 です。このページのブラウザー上でも直接計算できます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/numth/digit-factorial-chain

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/numth/digit-factorial-chain \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":69}'
{
  "n": 69
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.digit_factorial_chain",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

KITの完全なドキュメントを見る →