Maison  >  Article  >  Java  >  Comment vérifier si un numéro est un numéro charmé en Java ?

Comment vérifier si un numéro est un numéro charmé en Java ?

WBOY
WBOYavant
2023-09-01 21:25:061056parcourir

Comment vérifier si un numéro est un numéro charmé en Java ?

Un nombre charmant peut être défini comme un nombre multiplié par 2 et 3 puis concaténé avec le nombre lui-même. Le résultat contient tous les nombres de 1 à 9.

Pour faire d'un nombre un nombre fascinant, il doit comporter trois chiffres ou plus.

Montrez quelques exemples

Exemple 1

Entrez le numéro 327

Vérifions-le en utilisant la logique des nombres fascinants -

327 * 2 = 654
327 * 3 = 981

Connectez "654" + "981" + "327" = 654981327

Donc, 327 est un nombre fascinant.

Exemple 2

Entrez le numéro 192

Vérifions-le en utilisant la logique des nombres fascinants -

192 * 2 = 384
192 * 3 = 576

Connectez "384" + "576" + "192" = 384576192

Donc, 327 est un nombre fascinant.

Exemple 3

Entrez le numéro 241

Vérifions-le en utilisant la logique des nombres fascinants -

241 * 2 = 482
241 * 3 = 723

Connectez "482" + "723" + "241" = 482723241

Donc, 241 n'est pas un nombre fascinant

Certains autres exemples de nombres fascinants incluent 192, 1920, 2019, 327, etc.

Algorithme

  • Étape 1 - Obtenez un entier via l'initialisation ou la saisie de l'utilisateur.

  • Étape 2 - Vérifiez s'il s'agit d'un numéro à trois chiffres.

  • Étape 3 - Multipliez les nombres par 2 et 3.

  • Étape 4 - Connectez les deux produits avec le numéro lui-même.

  • Étape 5 - Déterminez maintenant si tous les chiffres de 1 à 9 sont présents dans le nombre. Si tel est effectivement le cas, alors ce serait un numéro fascinant

Méthodes multiples

Nous proposons des solutions de différentes manières.

  • En utilisant des valeurs d'entrée statiques

  • En utilisant des méthodes définies par l'utilisateur

Regardons le programme et sa sortie un par un.

Méthode 1 : Utiliser des valeurs d'entrée statiques

Dans cette méthode, une valeur entière est initialisée dans le programme puis, en utilisant un algorithme, nous pouvons vérifier si un nombre est un nombre charmant ou non.

Exemple

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

Sortie

Given number: 327
Fascinating number

Méthode 2 : Utiliser la méthode définie par l'utilisateur

Dans cette méthode, une valeur entière est initialisée dans le programme et le nombre est passé en paramètre à la méthode définie par l'utilisateur, puis en utilisant l'algorithme dans la méthode, nous pouvons vérifier si un nombre est un nombre charmé ou non.

Exemple

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

Sortie

Given number: 327
Fascinating number

Dans cet article, nous avons exploré comment vérifier si un nombre est un nombre intéressant en Java en utilisant différentes méthodes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer