/* * ----------------------------------------------------- * CS2S03/SE2S03, September 2011 * Assignment 1, Question 1 * File: PE0106.cpp * ----------------------------------------------------- * This program reads an integer and then displays the * number that has the same digits in the reverse order. * ----------------------------------------------------- */ #include "genlib.h" #include "simpio.h" #include /* Private function prototypes */ long DigitReverse(long n); /* Main program */ int main() { long n; cout << "This program reverses the digits in an integer." << endl; while (true) { cout << "Enter a positive integer: "; n = GetLong(); if (n > 0) break; cout << "Try again." << endl; } cout << "The reversed integer is: " << DigitReverse(n) << endl; return 0; } /* * Function: DigitReverse * Usage: rev = DigitReverse(n); * ----------------------------------------------------- * This function returns the integer that has the same * digits as n but in reverse order */ long DigitReverse(long n) { long reverse = 0; while (n > 0) { reverse = reverse * 10 + (n % 10); n = n / 10; } return reverse; }