w3resource

Java: Check whether a given number is a Disarium number or unhappy number

Java Numbers: Exercise-11 with Solution

Write a Java program to check whether a given number is a Disarium number or an unhappy number.

A Disarium number is a number defined by the following process:
Sum of its digits powered with their respective position is equal to the original number.
For example 175 is a Disarium number:
As 11+32+53 = 135
Some other DISARIUM are 89, 175, 518 etc.
A number will be called Disarium if the sum of its digits powered with their respective position is equal with the number itself. Sample Input: 135.

Test Data
Input a number : 25

Pictorial Presentation:

Java: Check whether a given number is a Disarium number or unhappy number.

Sample Solution:

Java Code:

import java.util.Scanner;

public class Example11 {

    public static void main(String args[])
        {
            Scanner sc = new Scanner(System.in);
            System.out.print("Input a number : ");
            int num = sc.nextInt();
            int copy = num, d = 0, sum = 0;
            String s = Integer.toString(num);  
            int len = s.length();  
             
            while(copy>0)
            {
                d = copy % 10;  
                sum = sum + (int)Math.pow(d,len);
                len--;
                copy = copy / 10;
            }
             
            if(sum == num)
                System.out.println("Disarium Number.");
            else
                System.out.println("Not a Disarium Number.");
        }
    }

Sample Output:

Input a number : 25                                                                                           
Not a Disarium Number.

Flowchart:

Flowchart: Check whether a given number is a Disarium number or unhappy number

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a Java program to check whether a given number is a happy number or unhappy number.
Next: Write a Java program to check whether a number is a Harshad Number or not.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.