Programma Java per contare il numero di cifre in un intero

In questo programma imparerai a contare il numero di cifre usando un ciclo while e un ciclo for in Java.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:

  • Tipi di dati Java (primitivi)
  • Java while e do … while Loop
  • Java per Loop

Esempio 1: contare il numero di cifre in un intero utilizzando il ciclo 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); ) )

Produzione

 Numero di cifre: 4

In questo programma, whileil ciclo viene iterato fino a quando l'espressione di test non num != 0viene valutata a 0 (falso).

  • Dopo la prima iterazione, num sarà diviso per 10 e il suo valore sarà 345. Quindi, il conteggio verrà incrementato a 1.
  • Dopo la seconda iterazione, il valore di num sarà 34 e il conteggio viene incrementato a 2.
  • Dopo la terza iterazione, il valore di num sarà 3 e il conteggio verrà incrementato a 3.
  • Dopo la quarta iterazione, il valore di num sarà 0 e il conteggio viene incrementato a 4.
  • Quindi l'espressione di test viene valutata come falsa e il ciclo termina.

Nota : il programma ignora gli zeri presenti prima del numero. Quindi, per cifre come 000333, l'output sarà 3.

Esempio 2: contare il numero di cifre in un intero utilizzando il ciclo 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); ) )

Produzione

 Numero di cifre: 6

In questo programma, invece di usare un ciclo while, usiamo un ciclo for senza corpo.

Ad ogni iterazione, il valore di num viene diviso per 10 e count viene incrementato di 1.

Il forciclo termina quando num != 0è falso, ovvero num = 0.

Poiché, forloop non ha un corpo, puoi cambiarlo in una singola istruzione in Java in quanto tale:

 for (; num! = 0; num / = 10, ++ count);

Articoli interessanti...