ForHosting KIT · 数学

ハッピー数チェッカー

19はハッピー数です。1² + 9² で82、次に68、100と進み、4回で1に着きます。正の整数を入力すると、1に着くか、終わらないループに入るかを、途中の値をすべて示して判定します。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日
入力した場合
N
19
結果
反復回数
4
列
19, 82, 68, 100, 1
終端
1

ハッピー数(幸福数)とは、十進表記の各桁を平方して足し合わせる操作を繰り返し、最終的に1に到達する正の整数です。過程が1を含まない閉路に入れば、その数はアンハッピー(時にサッド)と呼ばれます。道のりは短く完全に決定的で、娯楽数論とコーディング面接で有名です。本チェッカーは単一の正の整数を受け取り、閉路検出付きで桁平方写像を走らせ、ハッピーかどうかと監査用の中間値の全列を返します。1未満の値は無効入力として拒否されます。

ハッピー数とは何か、桁の平方プロセスの仕組み

十進で書いた任意の正の整数から始めます。各桁を平方し、それらの平方を足し、合計を列の次の値とします。繰り返します。 いつか1に着地すれば元の数はハッピーです。

既に見た数に再訪すれば、1を含まない有限閉路に入ったので元の数はアンハッピーです。教科書的なハッピー例は19です。1の平方と9の平方は82、8の平方と2の平方は68、6の平方と8の平方は100、1の平方と0の平方と0の平方は1です。

2のようなアンハッピーな出発点はすぐ4に至り、16、37、58、89、145、42、20、そして再び4という、この写像下のすべてのアンハッピー正整数が共有する古典的閉路に入ります。定義は純粋に算術的で、確率も外部表も、通常の整数の範囲では浮動小数近似への依存もありません。教材はしばしばデジタルルートや加法的持続性といった関連する桁操作と対比します。

それらは桁を一度足して縮約するのに対し、ハッピネスは足す前に各桁を平方し、1到達かループかを問題にします。非負整数は桁が少しでも多いと厳密に小さい値へ写るか、少なくとも小さな閉アトラクタ集合へ入るため、アルゴリズムは常に控えめな反復回数で終了します。そのため自動判定、コンテスト問題、道筋を示さねばならない授業デモに適しています。

面接・コンテスト問題の確認

受験者と採点者は任意の正整数のハッピー数分類を検証し、ローカルループを書かずに桁平方の全列を検査できます。

授業での数論デモ

教員は、平方した桁の和が1へ向かうか古典的アンハッピー閉路へ入るかを、議論用に中間値をすべて見せながら示せます。

nが1未満の場合はどうなりますか?

本チェッカーは正の整数を要求し、0と負数は拒否され課金されません。

19はハッピー数ですか?

はい。各桁を2乗して足すと82、68、100と続き、最後に1になります。19は4回で1に着くのでハッピー数です。結果にはこの道のりがすべて表示されます。

ハッピー数でない数はどうなりますか?

1には着かず、同じ値を繰り返すループに入ります。例えば2から始めると、4、16、37、58、89、145、42、20と進んで4に戻ります。これがハッピー数でない数に共通のループです。

ハッピー数かどうかはどう調べますか?

各桁を2乗して足し、その合計で同じ操作を繰り返します。1になればハッピー数、前に出た値が再び現れればループに入ったのでハッピー数ではありません。

数字根とは何が違いますか?

数字根は各桁をそのまま足していきます。ハッピー数では各桁を2乗してから足し、1に着くかループするかを見ます。似ていますが、別の計算です。

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

POSThttps://api.kit.forhosting.com/numth/happy-number

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

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

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

1リクエストあたり$0.002

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

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

本チェッカーがハッピネスを評価し列を報告する方法

実装はnが存在し、有限で、整数で、少なくとも1であることを検証します。その後、桁の平方和写像を順に歩き、各値を記録します。既出値の集合が繰り返しの瞬間に閉路を検出するため、ループが永遠に回り続けることはありません。決定性は完全です。 同じnは常に同じ真偽値、同じ順序付き列、同じ反復回数を返すので、ユニットテストや再現可能なノートで応答を固定できます。正の整数nを持つフィールドで能力を呼び出します。安全範囲内のJSON数、または整数に正規化される桁文字列のどちらでも構いません。歩行が止まると、終端値が1ならis_happy true、さもなくばfalse、適用した桁平方ステップ数をiterations、終端エントリを含む全sequence、機械可読な短い停止条件としてのterminalを報告します。n欠落、非整数、1未満、公開上限を超える整数はinvalid_inputで失敗し課金されません。

実務利用、制限、料金、提供チャネル

LeetCode風の問題を解くとき、数論の授業を準備するとき、計算機代数系を入れずにコンテスト答案を確認するときなど、即座のハッピー数判定が欲しい場合はブラウザツールをご利用ください。検証失敗は残高を消費しません。受理入力は公開上限までの正の整数で、授業例や面接デモを通常の数範囲内で厳密に保てます。結果は時計、乱数シード、遠隔算術サービスに依存しません。スクリプト、宿題チェッカー、教育プラットフォームが固定契約の安定したJSONを多数の値に対して必要とする場合はAPIをご利用ください。成功した各リクエストは$0.002の課金項目1件です。正確な桁演算を不透明なブラックボックス電卓より好むコーディング面接練習アプリ、娯楽数学ページ、整数分類パイプライン、教材ダッシュボードにエンドポイントを接続してください。Webフォーム、タスクAPI、SDKクライアント、その他のKITチャネルから、数学契約を変えずに利用できます。

整数分類の自動パイプライン

整数をハッピーまたはアンハッピーとタグ付けするスクリプトは、場当たり的な閉路検出を埋め込む代わりに、項目課金の単一決定的エンドポイントを呼べます。

このAPIでハッピー数をどう調べますか?

正の整数フィールドnを持つJSON本体をnumth.happy_number能力へ送ってください。応答はis_happy、iterations、順序付きsequence、terminal値を返します。

sequenceフィールドには何が含まれますか?

sequenceは元のnから各桁の平方和を経て、歩行が1に達するか既出の閉路メンバーに再入するまでのすべての値を列挙します。

ハッピー数チェッカーは無料ですか?

ブラウザツールは端末上で無料に動きます。API呼び出しは成功項目あたり$0.002で前払いKIT残高を使い、検証失敗は課金されません。

結果は決定的ですか?

はい。同じnは常に同じis_happyフラグ、同じsequence、同じ反復回数を生成します。経路にモデル、ネットワーク呼び出し、乱数はありません。

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