Source of RecursionDemo2.java


  1: 
  2: import java.util.*;
  3: 
  4: public class RecursionDemo2
  5: {
  6:     public static void main(String[] args)
  7:     {
  8:          System.out.println("Enter a nonnegative number:");
  9:          Scanner keyboard = new Scanner(System.in);
 10:          int number = keyboard.nextInt( );
 11:          System.out.println(number + " contains "
 12:                              + numberOfZeros(number) + " zeros.");
 13:     }
 14: 
 15:     /**
 16:      Precondition: n >= 0
 17:      Returns the number of zero digits in n.
 18:     */
 19:     public static int numberOfZeros(int n)
 20:     {
 21:         if (n == 0)
 22:             return 1;
 23:         else if (n < 10)//and not 0
 24:             return 0;//0 for no zeros
 25:         else if (n%10 == 0)
 26:             return(numberOfZeros(n/10) + 1);
 27:         else //n%10 != 0
 28:             return(numberOfZeros(n/10));
 29:     }
 30: }
 31: 
 32: 
 33: 
 34: 
 35: 
 36: