//NumberOfZerosInN.java

public class NumberOfZerosInN
{
    public static void main(String[] args)
    {
        System.out.println("\nTesting numberOfZerosInN() ...");
        System.out.println(numberOfZerosInN(123456));
        System.out.println(numberOfZerosInN(0));
        System.out.println(numberOfZerosInN(101010));
        System.out.println(numberOfZerosInN(100000));
        System.out.println(numberOfZerosInN(100001));
        System.out.println(numberOfZerosInN(100100));
        System.out.println(numberOfZerosInN(1001001));
    }

    //Computes and returns the number of zero digits
    //in a non-negative integer n
    public static int numberOfZerosInN(int n)
    {
        if (n == 0)
            return 1;
        else if (n < 10)
            return 0;  //n has one digit that is not 0
        else if (n % 10 == 0)
            return numberOfZerosInN(n / 10) + 1;
        else //n % 10 != 0 at this point
            return numberOfZerosInN(n / 10);
    }
}
