×

Reverse a Number in C++

In this tutorial, you'll learn how to utilize a C++ program to reverse a number entered by a user at runtime. Because there are various ways to write a C++ program to reverse a number, we've utilized a well-known approach to do the task, as seen below:

  • Reverse a number using a while loop
  • Using a for loop
  • Using function
  • Using an array

Reverse a number using while loop

To reverse a number in C++ programming, you must first request that the user supply a number. Now get the inverse of that number and print it on the output as demonstrated in the following program:

The task is to develop a C++ program that reverses a number. Here's what it says:

#include < iostream >
#include < bits/stdc++.h >
#include < stdlib >
using namespace std ;
int main ( )
{
    int num , rem , rev = 0 ; 
    cout << "enter the Number: " ;
    cin >> num ; 
    while ( num ! = 0 )
    {
        rem = num % 10 ;
        rev = rem + ( rev * 10 ) ;
        num = num / 10 ;
    }
    cout <<"\nReverse = " << rev ;
    cout << endl ;
    return 0 ;
}

OUTPUT:

Enter the Number: 123
321
………………………………….
Process executed in 1.112 seconds
Press any key to continue.

Explanation:

rev=0, initial value When a user types in the number 123, it is saved in the num field. Now that the condition num!=0 (of the while loop) or 123!=0 is true, program flow enters the loop and all three lines are executed. That is, rem is initialized to num percent 10 or 123 percent 10 or 3. Then rev is initialized to rem + (rev*10) or 3 + (0*10) or 3. So rev=3 num/10, 123/10, or 12 is eventually initialized to num. So num=12 after performing all three while loop statements, the condition is assessed one again.

Using a Loop

Instead of utilizing the while loop, this program uses the for loop. The rest of the software is identical to the previous one:

#include < iostream >
#include < bits/stdc++.h >
#include < stdlib >
using namespace std ;
int main ( )
{
    int number , remainder , rev ;
    cout <<"enter the Number: " ;
    cin >> number ;
    for ( rev = 0 ; number ! = 0 ; number = number / 10 )
    {
        remainder = num % 10 ;
        rev = remainder + ( rev * 10 ) ;
    }
    cout <<"\nReverse = "<<  rev ;
    cout << endl ;
    return 0 ;
}

OUTPUT:

Enter the Number: 23056
65032
…………………………………….
Process executed in 0.22 seconds
Press any key to continue.

Explanation:

Here in the above code we are using the for loop in the line number 10 which is taking rev integer and will iterate till n is not equal to zero.

Without Using Loops

To reverse a number, this program does not require any form of loop, neither for nor while. First, have a look at the software; the explanation will follow:

#include < iostream >
#include < bits/stdc++.h >
#include < stdlib >
using namespace std ;
int main ( )
{
    int num , rem , rev = 0 ;
    cout <<"enter the Number: " ;
    cin >> num ;
    CODeReVeRSe:
        rem = num % 10 ;
        rev = ( rev * 10 ) + rem ;
        num = num / 10 ;
        if ( num ! = 0 )
            goto CODeReVeRSe ;
    cout <<"\nReverse = "<< rev ;
    cout << endl ;
    return 0 ;
}

OUTPUT:

Enter the Number: 23056
65032
……………………………………
Process executed in 0.133 seconds
Press any key to continue.

Explanation:

CODEREVERSE is a label in which all three statements for reversing a number are written. We used if for the condition ( to check ) after running all three statements, like we did in the while loop. If the condition evaluates to true, the program flow returns to the label using the goto keyword followed by the label name.

Using Function

To reverse an integer, this application employs the rev ( ) user-defined function. It accepts a number as an input and returns the opposite. Example:

#include < iostream >
#include < bits/stdc++.h >
#include < stdlib >
using namespace std ;
int rev ( int ) ;
int main ( )
{
    int number , i ; 
    cout <<"enter the Number: " ;
    cin >> number ;
    i = rev ( number ) ;
    cout <<"\nReverse = "<< i ;
    cout << endl ;
    return 0 ; 
}
int rev ( int x )
{
    int remainder , res = 0 ;
    while ( x != 0 ) 
    {
        remainder = x % 10 ;
        res = ( res * 10 ) + remainder ;
        x = x / 10 ;
    }
    return res ;
}

OUTPUT:

Enter the Number: 23056
65032
……………………………………
Process executed in 0.13 seconds
Press any key to continue.

Explanation:

In the above program we are making a function called rev which is taking integer x as a parameter and inside that function we are using while loop for our iterations till x integer is not equal to zero.


Related Topics

C++ vardiac() function

In the C++ programming language, the flexibility feature is provided by the variadic function. To understand more about flexibility, let's see the following syntax. Syntax: If we have to add two numbers,...

3 minutes read.

Function Pointer in C++

Definition: A function pointer in C++ is the same as a usual pointer which is used to point some variables. Function pointers are used to point functions or say store the...

4 minutes read.

Diamond Pattern Using Do-While loop in C++

What is Do-While Loop? An iterative loop that checks the condition at the end.The Do-While loop can be used whenever a test condition is specific, as the control enters the loop...

5 minutes read.

C ++ Program: Alphabet Triangle and Number Triangle

Alphabet Triangle and Number Triangle An alphabet triangle is a triangle that typically looks like a pyramid or other triangles like an isosceles triangle, a right-angled triangle consisting of similar or...

4 minutes read.

C++ String

A string is a collection of characters. C++ programming language supports both C string as well as standard C++ library string. In C++, string is an object of std::string class. C Style String The C style...

5 minutes read.

Precision of floating point numbers Using these functions floor(), ceil(), trunc(), round() and setprecision() in C++

Precision of floating point numbers Using these functions floor(), ceil(), trunc(), round() and setprecision() in C++ 1/2 decimal equal is 0.555555555555555555555 .... An indefinite number of lengths will require the storage...

4 minutes read.

Single level Inheritance

Inheritance is a fundamental element of C++’s Object-Oriented Programming (OOP). It allows a class (called the derived class) to inherit characteristics and attributes from another class (called the base class)....

5 minutes read.

Two dimension array

C++ Two dimension (2D) Array Two dimension (2D) array is an array of arrays. It is represented in the form of row and column. The elements of 2D array are accessed through the...

2 minutes read.

Inheritance and Friendship in C++

In this tutorial, we will look into what Inheritance and Friendship in C++ are, as well as the differences between the two. What is Inheritance in C++: In C++, inheritance is an...

2 minutes read.

Multilevel Inheritance

C++ Multilevel Inheritance Multilevel inheritance is such an inheritance in which a derived class is created from another derived class. C++ Multilevel Inheritance Example In this example, a base class Student is inherited in...

2 minutes read.

Dynamic Memory Allocation in C++

In some programming situations, the number of data items changes as the program is running, which is known as dynamic data or input. Consider a real-world situation where a program...

3 minutes read.

Dynamic Constructor in C++

Dynamic constructors create dynamic memory by using a dynamic memory allocator new within the constructor. This allows us to initialize objects dynamically. The term dynamic constructor is used when memory...

2 minutes read.

ATM machine program in C++ using functions

Automated Teller Machines (ATMs) carry out daily financial transactions. They are straightforward and simple, allowing customers to complete self-service transactions quickly. ATMs can then be used to withdraw cash, deposit...

3 minutes read.

Design Patterns in C++

A design pattern offers an all-encompassing, repeatable answer to the typical issues that arise in software design. Usually, the pattern demonstrates the connections and interactions between several classes or objects....

10 minutes read.

C++ | C Plus Plus Data type

Data type in every language is very important. Data type means the different kinds of data that are supported by a particular programming language. A computer language’s data types specify the...

15 minutes read.

Binary to Decimal in C++

We must create a software to convert a binary number into an equivalent decimal value given a binary number as input. Example: // C++ program to convert binary to decimal #include < iostream...

3 minutes read.

Hashing in C++

Before understanding hashing, we need to know what the use of hashing is. Let us consider an example of a library which consists of many books.Having many books, searching for...

6 minutes read.

abs() function in C++

In C++, the abs() function returns the absolute value of any integer number. Using this function a negative integer is multiplied by -1 and positive number or zero is returned...

4 minutes read.

Multiple Inheritance

C++ Multiple Inheritance Multiple inheritance is such an inheritance in which a derived class inherits properties of more than one base class.     C++ Multiple Inheritance Example In this example, two base classes Square and...

2 minutes read.

C++ Algorithms

There are plenty of programming paradigms that are closely associated with the implementations of code and simulate them into a proper functional one. This is done with the help of...

5 minutes read.