APP发文编辑机制更新后,慢热的我还适应不来。😋这里只放了 python 代码,运行效果和题目,请点击前面蓝色文字,移步我昨天的“学习打卡”帖。
Pyonth 代码:
# coding: utf-8
from random import randint
def ishappy_number(n):
'''“快乐数”判定'''
n_list = list(map(int, list(str(n)))) #解析生成整数各数位列表。
sqrt_sum = 0 #整数各数位平方和初始化。
for i in n_list: #遍历整数各数位列表求平方和。
sqrt_sum += i**2 #平方和累加。
if sqrt_sum == 1: #当平方和为1,证明是“快乐数”,返回True。
return True
try: #当递归到python限制递归深度1000时报错都没得到平方和为1,证明不是“快乐数”,返回False。
return ishappy_number(sqrt_sum)
except Exception as error:
return False
nums = [randint(1, 2**31 - 1) for i in range(10)] #解析10个1~2**31 - 1的随机数。
for num in nums: #遍历10个随机整数,判断“快乐数”。
print(f'\n\n\n{"快乐数判定":_^37}\n\n\n\n{num:>18} :{ishappy_number(num)}\n\n\n\n{"The End":_^42}\n')