Lab 1-2

Due Sept 15, 11:59pm

Requirements:

Write a C++ program which takes a 4-digit number (integer) as input from the user and prints the number in reverse order. For example, if the number entered is 5678 then the output should be 8765. The program should repeat this until the user decides to quit.

You need to pay attention to the following:

  1. Provide appropriate comments in your code
  2. Use meaningful identifiers
  3. Don't take the input as a sequence of characters. Take it as a single integer. Also, construct the output as a single integer, as opposed to printing it digit by digit.
  4. Your program should give a warning message if the number (value) is not a 4-digit number. For example, 0345 is not considered to be a 4-digit number.
  5. Your program should not be case-sensitive for the user choice i.e. both Q and q are should be acceptable quit.
  6. You may assume that when asked to enter a 4-digit number, the user enters a positive integer (as opposed to other kind of data, such as a character)
  7. When the last digit (units) of the input is 0, the reverse is not a 4-digit number. So it is Ok to report the reverse as a 3-digit number in that case.
Here is a typical dialogue for this program:
Enter a 4-digit number
134 
This is not a 4-digit number: Enter a 4-digit number 
1234 
The reverse number is 4321 
Enter Q to quit, enter any letter to continue  C 
Enter a 4-digit number 
9001 
The reverse number is 1009 
Enter Q to quit, enter any letter to continue 
Q 
Thanks for using this program, bye !...

Important hint

  • The integer % operator gives the remainder of a division of two values. For example: x = 11 % 3; results in x = 2;
  • When integers are divided, the result of the / operator is the algebraic quotient with any fractional part discarded. For example: x = 11 / 3; results in x = 3.
  • If the number entered is n, what does n%10 give you? How about n/10?
Topic revision: r1 - 2015-09-07 - JimSkon
 
This site is powered by the TWiki collaboration platformCopyright &© by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback