Home > Java > javaTutorial > body text

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

WBOY
Release: 2023-09-01 21:25:06
forward
1047 people have browsed it

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
Copy after login

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
Copy after login

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
Copy after login

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");
   }
}   
Copy after login

Output

Given number: 327
Fascinating number
Copy after login
Copy after login

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");
   }
}
Copy after login

Output

Given number: 327
Fascinating number
Copy after login
Copy after login

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!

Related labels:
source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template