This is a Java program to print happy numbers for a given range. But what is a happy number?

A number whose sum of the square of digits is **ultimatly **equal to 1 is a happy number. By ultimately we mean that starting with any positive number we continue the addition of square of digits till we get a single digit number (0 ~ 9). But the on whose sum is ultimately 1 is a happy number.

**Example #1:**13 ; 12 + 32 = 1 + 9 =10 ; 1 2 + 0 2 = 1 (Thus a happy number)

**Example #2:**32; 3 2 + 2 2 = 9 + 4 = 13; and in Example#1 13 is already a happy number;

Some of the first happy numbers (upto 150) are: 1, 7, 10, 13, 19, 23, 28, 31, 32, 44, 49, 68, 70, 79, 82, 86, 91, 94, 97, 100, 103, 109, 129, 130.

**ALSO CHECK : **Java program to check for a happy number

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import java.io.*; class happynumber { public static void main(String args[])throws Exception { int i,j,n,k; happynumber obj=new happynumber(); System.out.print("Enter the upper limit for happy number series : "); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); n=Integer.parseInt(br.readLine()); // Accept the range for the happy numbers till n i.e happy numbers from 1 to n for(k=;k<n;k++) {i=k; while((j= obj.happy(i))/10 !=) // You have to check the sum of all digits until a single digit is achieved i.e. sum=1,2,3,..9 { i=j; // If sum of digits= 19 it then again goes to 1+9 =10 and again 1+0= '1' a single digit to check if 1 or not } if(j==1) System.out.print(k+","); } } int happy (int n) { if(n/10==) return n*n; else return (int)Math.pow(n%10,2)+ happy(n/10); } } |

OUTPUT:

* Incoming terms:* Java program to print happy numbers for a given range, program for happy number series