+ 3

Ever wondered how Python's generator functions work?

This one is a coding idea from the Idea Bag 2 app. Exercise is the following: Happy Numbers A happy number is defined by the following process. Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number equals 1 (where it will stay), or it loops endlessly in a cycle which does not include 1. Those numbers for which this process ends in 1 are happy numbers, while those that do not end in 1 are unhappy numbers. Find the first 8 happy numbers. My thoughts here are that this is a great example for using a generator function. Instead of just having a list of the first 8 happy numbers, I let the user type in the number of happy numbers s/he wants to see using int(input()). The code is here: https://code.sololearn.com/czRytCS74LVe/#py Please let me know how you like the code!

7th Jun 2017, 9:06 AM
Senfman
Senfman - avatar
1 Answer
0
Question: What is the advantage to using the variable "isnotDone"? It looks like you should be able to set that directly to True and then use "break" in the "if" statements? Many Thanks!
17th Jun 2017, 2:52 AM
BetaKourt
BetaKourt - avatar