//PrintBackwardThenForward.java
//Prints the digits of an integer backward, then forward.

public class PrintBackwardThenForward
{
    public static void main(String[] args)
    {
        System.out.println
        (
            "\nThis program prints the digits "
            + "of a positive integer backward, then forward.\n"
        );

        System.out.print("123 becomes ");
        printBackwardThenForward(123);
        System.out.println();
        System.out.print("1010 becomes ");
        printBackwardThenForward(1010);
        System.out.println();
        System.out.print("246810 becomes ");
        printBackwardThenForward(246810);
        System.out.println();
        System.out.print("7 becomes ");
        printBackwardThenForward(7);
        System.out.println();
    }

    public static void printBackwardThenForward(int n)
    /**
        Print the digits of an integer backward, then forward.
        @param n The integer whose digits are to be printed
        backward, then forward.
        <p>Pre:<p>n has been initialized with a positive integer.
        <p>Post:<p>The digits of n have been printed backward and then forward.
    */
    {
        if (n < 10)
        {
            System.out.print(n);
            System.out.print(n);
        }
        else
        {
            System.out.print(n % 10);
            printBackwardThenForward(n / 10);
            System.out.print(n % 10);
        }
    }
}

