ma quel ragionamento è esattamente quello che ho fatto io (credo..).
sono riuscito a farlo con il metodo ricorsivo ma il metodo è void e non c'è alcun return, cosa che non è del tutto lecita perchè nella consegna viene specificato di restituire il valore.
Quello che ho scritto:
non riesco a capire come fare senza passare il valore "conta"codice:class NumeroDiCifre { public static void QuanteCifre(int n,int i) { if(n/10 != 0) { n=n/10; i++; QuanteCifre(n,i); }else System.out.println("Ha "+i+" cifra/e"); } public static void main(String[] args) { int numero; System.out.print("Numero: "); numero = SavitchIn.readLineInt(); if(numero<0) //valore assoluto del numero numero=numero*(-1); QuanteCifre(numero,1); } }