Python实现快乐的数字
【摘要】
题目要求:
编写一个算法来确定一个数字是否“快乐”。 快乐的数字按照如下方式确定:从一个正整数开始,用其每位数的平方之和取代该数,并重复这个过程,直到最后数字要么收敛等于1且一直等于1,要么将无休止地循...
题目要求:
编写一个算法来确定一个数字是否“快乐”。
快乐的数字按照如下方式确定:从一个正整数开始,用其每位数的平方之和取代该数,并重复这个过程,直到最后数字要么收敛等于1且一直等于1,要么将无休止地循环下去且最终不会收敛等于1。能够最终收敛等于1的数就是快乐的数字。
输入示例:
例如: 19 就是一个快乐的数字,计算过程如下:
当输入是快乐的数字时,输出True,否则输出False。
实现代码:
def getSumofSquares(num):
numStr=str(num)
sum=0
digitls = [int(x) for x in numStr]
for i in digitls:
sum += i**2
return sum
def main():
n = input("请输入一个正整数:")
sumofSqrs = eval(n)
count = 0
while sumofSqrs != 1:
sumofSqrs = getSumofSquares(sumofSqrs)
count += 1
if count > 100:
print("False")
break
else:
print("True")
main()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
运行效果:
输入一个正整数为快乐的数字,输出True。
输入一个正整数不是快乐的数字,输出False。
文章来源: blog.csdn.net,作者:振华OPPO,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_42257666/article/details/106749654
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)