每个人的Python:数学、算法和游戏编程训练营
上QQ阅读APP看书,第一时间看更新

编程实现——如何判断快乐数

前面我们解决了有关完美数的问题,本节再来判断一个数字是不是快乐数。在自然界中,完美数非常稀有,但是快乐数却有很多。这或许在另一方面也给了我们一个启示:生活中完美的事很少,但是快乐却很多。

根据快乐数的定义,要判断一个数是否为快乐数的思路非常简单,只需要循环将其拆解计算后,看最终的结果是否等于1,期间如果出现了已经拆解过的数字,则表明会进入循环,可以判定此数不是快乐数。示例代码如下:

通过本题我们可以发现,for-in结构的循环很多时候适用于集合的遍历或已知循环次数的循环结构,而循环次数不定,需要在程序运行过程中实时变更循环条件的场景,使用while循环则更加合适。