Digital Root Calculator
整数の各桁を繰り返し合計してデジタルルートを計算します。ステップバイステップのプロセスと加法的永続性を表示します。
加法的デジタルルート: 1桁になるまで繰り返し数字を足します。
乗法的デジタルルート: 1桁になるまで繰り返し数字を掛けます。
このツールについて
デジタルルート(digital root)は、数字を繰り返し足していき、最終的に1桁になったときの値です。このプロセスは数秘術、モジュロ演算、数学パズルの基礎となり、任意の整数の潜在的なデジタル・フィンガープリントを明らかにします。デジタルルート計算機はこの反復プロセスを自動化し、各段階での計算と最終的な1桁の結果、そして反復回数(加法的永続性と呼ばれます)を表示します。
使い方は非常にシンプルです。任意の正の整数を入力するだけで、完全な縮約シーケンス——各段階で数字がどのように組み合わさるか——が表示され、最終的な1桁の結果と反復に要した回数が示されます。デジタルルート計算は、数字の合計について学ぶ学生、数の性質を実演する教育者、大きな数の中に隠された再帰的構造に興味のある人に役立ちます。
有用な洞察として、デジタルルートは9による除算と関連があります。数のデジタルルートはその数を9で割った余りと合同です(9の倍数には特別な処理があります)。すべての計算はブラウザ内でローカルに実行されるため、デバイスを離れることなく好きなだけデジタルルートを探索できます。
よくある質問
コード実装
def digit_sum(n: int) -> int:
return sum(int(d) for d in str(abs(n)))
def digital_root(n: int) -> int:
"""Returns the additive digital root (1-9, or 0 for 0)."""
if n == 0:
return 0
remainder = n % 9
return remainder if remainder != 0 else 9
def additive_persistence(n: int) -> tuple[int, list[int]]:
steps = [n]
count = 0
while n >= 10:
n = digit_sum(n)
steps.append(n)
count += 1
return count, steps
def multiplicative_digital_root(n: int) -> tuple[int, list[int]]:
steps = [n]
count = 0
while n >= 10:
product = 1
for d in str(n):
product *= int(d)
n = product
steps.append(n)
count += 1
return count, steps
n = 493
print(f"Digital root of {n}: {digital_root(n)}")
persistence, steps = additive_persistence(n)
print(f"Steps: {' -> '.join(map(str, steps))}")
print(f"Additive persistence: {persistence}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.