以下に、オートモーフィック数を求めるためのいくつかのアプローチとコード例を紹介します。
アプローチ1: 文字列操作を用いる方法
- 整数を文字列に変換する。
- 文字列を平方する。
- 平方した文字列の末尾を元の文字列と比較する。
Pythonのコード例:
def is_automorphic_number(num):
square = str(num 2)
return square.endswith(str(num))
# テスト
print(is_automorphic_number(5)) # True
print(is_automorphic_number(6)) # False
アプローチ2: 数学的な性質を利用する方法
- 整数の桁数を求める。
- 整数を平方する。
- 平方した結果の末尾の桁数だけを取り出して、元の整数と比較する。
Pythonのコード例:
def is_automorphic_number(num):
num_digits = len(str(num))
square = num 2
truncated_square = square % (10 num_digits) # 末尾の桁数だけ取り出す
return truncated_square == num
# テスト
print(is_automorphic_number(5)) # True
print(is_automorphic_number(6)) # False
以上がオートモーフィック数の解説といくつかのアプローチとコード例です。これらを使って、オートモーフィック数を判定することができます。