Dans ce programme, vous apprendrez à compter le nombre de chiffres en utilisant une boucle while et une boucle for en Java.
Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation Java suivantes:
- Types de données Java (primitif)
- Java pendant et faire… en boucle
- Java pour Loop
Exemple 1: compter le nombre de chiffres dans un entier en utilisant la boucle while
public class Main ( public static void main(String() args) ( int count = 0, num = 0003452; while (num != 0) ( // num = num/10 num /= 10; ++count; ) System.out.println("Number of digits: " + count); ) )
Production
Nombre de chiffres: 4
Dans ce programme, while
la boucle est itérée jusqu'à ce que l'expression de test num != 0
soit évaluée à 0 (faux).
- Après la première itération, num sera divisé par 10 et sa valeur sera 345. Ensuite, le compte est incrémenté à 1.
- Après la deuxième itération, la valeur de num sera 34 et le compte est incrémenté à 2.
- Après la troisième itération, la valeur de num sera 3 et le compte est incrémenté à 3.
- Après la quatrième itération, la valeur de num sera 0 et le nombre est incrémenté à 4.
- Ensuite, l'expression de test est évaluée à false et la boucle se termine.
Remarque : le programme ignore tout zéro présent avant le nombre. Par conséquent, pour les chiffres tels que 000333, la sortie sera 3.
Exemple 2: Compter le nombre de chiffres dans un entier à l'aide de la boucle for
public class Main ( public static void main(String() args) ( int count = 0, num = 123456; for (; num != 0; num /= 10, ++count) ( ) System.out.println("Number of digits: " + count); ) )
Production
Nombre de chiffres: 6
Dans ce programme, au lieu d'utiliser une boucle while, nous utilisons une boucle for sans corps.
À chaque itération, la valeur de num est divisée par 10 et le nombre est incrémenté de 1.
La for
boucle se termine quand num != 0
est faux, c'est-à-dire num = 0.
Comme la for
boucle n'a pas de corps, vous pouvez la changer en une seule instruction en Java en tant que telle:
pour (; num! = 0; num / = 10, ++ count);