Maison >Java >javaDidacticiel >Comment inverser un entier en Java sans utiliser de tableaux ou de chaînes ?

Comment inverser un entier en Java sans utiliser de tableaux ou de chaînes ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-03 13:23:02337parcourir

How to Reverse an Integer in Java Without Using Arrays or Strings?

Java inverse une valeur Int sans utiliser de tableau

Comprendre l'algorithme

Pour inverser un entier sans utiliser de tableaux ou de chaînes , nous utilisons un algorithme simple mais efficace. Décomposons ses étapes clés :

  1. Extraire le chiffre le plus à droite : Nous extrayons le chiffre le plus à droite de l'entier d'entrée à l'aide de l'opérateur de module (%). Par exemple, pour 1234, 1234 % 10 donnera 4.
  2. Ajouter au nombre inversé : Nous ajoutons le chiffre extrait à une variable (reversedNum) qui accumulera la valeur inversée. Pour l'exemple ci-dessus, reversedNum devient 4.
  3. Multipliez le nombre inversé par 10 : Pour faire de la place pour le chiffre suivant, on multiplie reversedNum par 10. Dans notre cas, cela devient 4 * 10 = 40.
  4. Supprimer le chiffre extrait : Nous divisons l'entier d'entrée par 10 (1234/10) pour supprimer le chiffre le plus à droite. Cela donne 123.
  5. Répétez le processus : Nous répétons les étapes 1 à 4 jusqu'à ce que l'entier d'entrée devienne 0.

Implémentation du code

<code class="java">while (input != 0) {
    reversedNum = reversedNum * 10 + input % 10; // Add digit to reversed number
    input = input / 10; // Remove the rightmost digit
}</code>

Inversion des chiffres impairs uniquement

Pour inverser uniquement les chiffres impairs, nous pouvons modifier l'algorithme en extrayant uniquement les chiffres impairs et en les ajoutant à ReverseNum. Nous pouvons utiliser la condition % 2 == 1 pour vérifier les chiffres impairs :

<code class="java">while (input != 0) {
    if (input % 10 % 2 == 1) {
        reversedNum = reversedNum * 10 + input % 10; // Add odd digit to reversed number
    }
    input = input / 10; // Remove the rightmost digit
}</code>

En suivant ces principes et en les incorporant dans le code, nous pouvons efficacement inverser des entiers sans nous fier à des tableaux ou des chaînes. C'est un exercice précieux qui démontre des compétences en résolution de problèmes et des techniques de manipulation numérique.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn