package com.company; public class NumberToWords { public static void numberToWords(int number){ if(number < 0){ System.out.println("Invalid Value"); } int container = reverse(number); int digitCountNumber = getDigitCount(number); int remainder = 0; while(digitCountNumber > 0) { remainder = container % 10; container /= 10; digitCountNumber--; switch (remainder) { case 0: System.out.println("Zero"); break; case 1: System.out.println("One"); break; case 2: System.out.println("Two"); break; case 3: System.out.println("Three"); break; case 4: System.out.println("Four"); break; case 5: System.out.println("Five"); break; case 6: System.out.println("Six"); break; case 7: System.out.println("Seven"); break; case 8: System.out.println("Eight"); break; case 9: System.out.println("Nine"); break; } } } public static int reverse(int number){ int reversedNumber = 0; int remainder = 0; while(number != 0){ remainder = number % 10; reversedNumber = reversedNumber * 10 + remainder; number /= 10; } return reversedNumber; } public static int getDigitCount(int number){ if(number < 0){ return -1; } if(number == 0){ return 1; } int counter = 0; while(number != 0){ counter++; number /= 10; } return counter; } }