Programme Java pour identifier les nombres d'Armstrong avec une boucle for
Qu'est-ce qu'un nombre d'Armstrong ?
Un nombre d'Armstrong (aussi appelé nombre narcissique) est un nombre qui est égal à la somme de ses propres chiffres chacun élevé à la puissance du nombre total de chiffres.
Mathématiquement, pour un nombre à chiffres x, y, … z et n chiffres, on a :
xy…z = xn + yn + … + zn
Exemples de nombres d'Armstrong :
0, 1, 4, 5, 9, 153, 371, 407, 8208, …
Programme Java pour vérifier si un nombre est un nombre d'Armstrong
Voici une implémentation Java compacte qui vérifie si un entier donné est un nombre d'Armstrong. L'algorithme itère sur chaque chiffre, accumule le cube du chiffre (puisque nous nous concentrons sur les nombres à trois chiffres), et compare la somme au nombre original.
// Vérifier si un nombre est un nombre d'Armstrong avec une boucle while
package com.guru99;
public class NombreArmstrong {
public static void main(String[] args) {
int nombreArmstrongEntree = 153; // Nombre à tester
int nombreTemp, chiffre, sommeCubesChiffres = 0;
nombreTemp = nombreArmstrongEntree;
while (nombreTemp != 0) {
System.out.println("Nombre courant : " + nombreTemp);
chiffre = nombreTemp % 10;
System.out.println("Chiffre courant : " + chiffre);
sommeCubesChiffres += chiffre * chiffre * chiffre;
System.out.println("Somme des cubes courante : " + sommeCubesChiffres);
nombreTemp /= 10;
}
if (sommeCubesChiffres == nombreArmstrongEntree)
System.out.println(nombreArmstrongEntree + " est un nombre d'Armstrong");
else
System.out.println(nombreArmstrongEntree + " n'est pas un nombre d'Armstrong");
}
}
Sortie
Nombre courant : 153 Chiffre courant : 3 Somme des cubes courante : 27 Nombre courant : 15 Chiffre courant : 5 Somme des cubes courante : 152 Nombre courant : 1 Chiffre courant : 1 Somme des cubes courante : 153 153 est un nombre d'Armstrong
Programme Java pour lister tous les nombres d'Armstrong de 0 à 999
Le programme suivant montre comment énumérer chaque nombre d'Armstrong dans l'intervalle 0-999. Il utilise une boucle for pour l'intervalle et une boucle while pour traiter chaque candidat.
// Énumérer les nombres d'Armstrong entre 0 et 999
package com.guru99;
public class NombreArmstrong {
public static void main(String[] args) {
for (int nombreArmstrongEntree = 0; nombreArmstrongEntree < 1000; nombreArmstrongEntree++) {
int nombreTemp = nombreArmstrongEntree;
int sommeCubesChiffres = 0;
while (nombreTemp != 0) {
int chiffre = nombreTemp % 10;
sommeCubesChiffres += chiffre * chiffre * chiffre;
nombreTemp /= 10;
}
if (sommeCubesChiffres == nombreArmstrongEntree)
System.out.println(nombreArmstrongEntree + " est un nombre d'Armstrong");
}
}
}
Sortie
0 est un nombre d'Armstrong 1 est un nombre d'Armstrong 153 est un nombre d'Armstrong 370 est un nombre d'Armstrong 371 est un nombre d'Armstrong 407 est un nombre d'Armstrong
Java
- Maîtriser la boucle for améliorée en Java : Syntaxe, exemples et bonnes pratiques
- Surcharge de Constructeur en Java – Expliqué avec Exemples de Code Pratiques
- Programme Java pour déterminer si un nombre est premier
- Programme Java pour lister les nombres premiers de 1 à 100
- Générer la suite de Fibonacci en Java : boucles for, while et récursivité
- Inverser une chaîne en Java par récursivité - Guide étape par étape
- Vérificateur de nombre palindrome en Java : algorithmes avec boucles while et for
- Algorithme de tri par insertion en Java : exemple clair et guide pas à pas
- Tri par sélection en Java : exemple pas à pas et code complet