Home >Java >javaTutorial >How to check if a number is a charmed number in Java?

How to check if a number is a charmed number in Java?

WBOY
WBOYforward
2023-09-01 21:25:061075browse

How to check if a number is a charmed number in Java?

Charming numbers can be defined as a number that is multiplied by 2 and 3 and then concatenated with the number itself. The result contains all numbers from 1 to 9.

To make a number a fascinating number, it should be three digits or more.

Show you some examples

Example 1

Enter the number as 327

Let’s check it out using the logic of charming numbers -

327 * 2 = 654
327 * 3 = 981

Connect "654" "981" "327" = 654981327

So, 327 is a fascinating number.

Example 2

Enter the number as 192

Let’s check it out using the logic of charming numbers -

192 * 2 = 384
192 * 3 = 576

Connect "384" "576" "192" = 384576192

So, 327 is a fascinating number.

Example 3

Enter the number as 241

Let’s check it out using the logic of charming numbers -

241 * 2 = 482
241 * 3 = 723

Connect "482" "723" "241" = 482723241

Therefore, 241 is not a fascinating number

Some other fascinating number examples include 192, 1920, 2019, 327, etc.

algorithm

  • Step 1 - Get an integer via initialization or user input.

  • Step 2 - Check if this is a three digit number.

  • Step 3 - Multiply the numbers by 2 and 3.

  • Step 4 - Connect the two products with the number itself.

  • Step 5 - Now find if all digits from 1 to 9 are present in the number. If it does, it would be a fascinating number

Multiple methods

We provide solutions in different ways.

  • By using static input values

  • By using user-defined methods

Let’s look at the program and its output one by one.

Method 1: Using static input values

In this method, an integer value is initialized in the program and then by using an algorithm we can check whether a number is a charming number or not.

Example

public class Main {

   public static void main(String args[]){   
      // Initialized an integer value
      int num = 327;
      System.out.println("Given number: "+num);

      // Store the product of the numbers in the variables
      int prod1 = num*2;
      int prod2 = num*3;

      // Concatenate the numbers
      String concatNum = prod1+""+prod2+num;
      // Boolean value to store the result
      boolean flag = true;

      // Loops from 1 to 9
      for(char c = '1'; c <= '9'; c++)  {  
         // COunt holds the number of times a digit occurs
         int count = 0;  
         //loop counts the frequency of each digit  
         for(int i = 0; i < concatNum.length(); i++)  {  
            char ch = concatNum.charAt(i);  
            //compares the character of concatNum with i  
            if(ch == c)  
            //increments the count by 1 if the specified condition returns true  
            count++;  
         }
         // Checks if all the digits are present in the number
         if(count > 1 || count == 0)  {  
            flag = false;  
            break;  
         }
      }  
      // Prints the result
      if(flag)
         System.out.println("Fascinating number");
      else
         System.out.println("Not a fascinating number");
   }
}   

Output

Given number: 327
Fascinating number

Method 2: Using user-defined methods

In this method, an integer value is initialized in the program and the number is passed as parameter to the user-defined method, then using an algorithm in the method we can check whether a number is a charmed number or not.

Example

public class Mai {
   static boolean fascinatingNum(int num){
      // Store the product of the numbers in the variables
      int prod1 = num*2;
      int prod2 = num*3;
      
      // Concatenate the numbers
      String concatNum = prod1+""+prod2+num;
      // Boolean value to store the result
      boolean flag = true;

      // Loops from 1 to 9
      for(char c = '1'; c <= '9'; c++)  {  
         // COunt holds the number of times a digit occurs
         int count = 0;  
         //loop counts the frequency of each digit  
         for(int i = 0; i < concatNum.length(); i++){  
            char ch = concatNum.charAt(i);  
            //compares the character of concatNum with i  
            if(ch == c)  
            //increments the count by 1 if the specified condition returns true  
            count++;  
         }
         // Checks if all the digits are present in the number
         if(count > 1 || count == 0)  {  
            flag = false;  
            break;  
         }
      }  
      return flag;
   }
   public static void main(String args[]){   
      // Initialized an integer value
      int num = 327;
      System.out.println("Given number: "+num);

      // Calls the user defined method and stores the result in res variable
      boolean res = fascinatingNum(num);

      // Prints the result
      if(res)
         System.out.println("Fascinating number");
      else
         System.out.println("Not a fascinating number");
   }
}

Output

Given number: 327
Fascinating number

In this article, we explored how to check if a number is an interesting number in Java using different methods.

The above is the detailed content of How to check if a number is a charmed number in Java?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete