In this tutorial, I am going to discuss a very interesting problem to determine if a number is happy or not.
Given a number n, we have to write a code to check whether a number is happy or not.
Happy Number
Take any positive integer, and replace the number with the sum of the squares of its digits. Repeat the process until the number equals 1 (where it will stay). If it’s equal to 1 then it’s a happy number. If it loops endlessly in a cycle which does not include 1 then it’s not a happy number.
Those numbers for which this process ends in 1 are happy numbers.
For Example –
Example 1:
Input : 19, Output: true
Step 1: 1^2 + 9^2 = 82
Step 2: 8^2 + 2^2 = 68
Step 3: 6^2 + 8^2 = 100
Step 4: 1^2 + 0^2 + 0^2 = 1 (The number ends at 1, So it’s a happy number).
Example 2:
Input : 20, Output : false
Step 1: 2^2 + 0^2 = 4
Step 2: 4^2 = 16
Step 3: 1^2 + 6^2 = 37
Step 4: 3^2 + 7^2 = 58
Step 5: 5^2 + 8^2 = 89
Step 6: 8^2 + 9^2 = 145
Step 7: 1^2 + 4^2 + 5^2 = 42
Step 8: 4^2 + 2^2 = 20 (Loop occurs)