Swap two numbers by C++

Swap two numbers : If there are two variable named x and y. And the value of x and y are following;

x = 10;

y = 20;

Then the swap number program will makes it like as bellow;

x = 20;

y = 10;

Swap number means interchanging the value of two variables. We can make the program to swap two number using a third variable or without it. Here we will see some C++ program to swap two numbers.

In our C programming guide we have discussed about swap two numbers in C and here we will do same thing with C++ only. So, let’s get started with C++ code.

Swap two numbers using a third variable in C++

  • At first we will take the value of x and y from the user.
  • Then we will store the value of x into z.
  • Then we will assign the value of y into x
  • After that we will assign the value of z to y.
// swap number program in c++

#include <iostream>
using namespace std;

int main(){
    int x, y, z;    // variable declaration
    cout << "Enter value of x here : ";
    cin >> x;
    cout << "Enter value of y here : ";
    cin >> y;

    z = x;    // swapping numbers
    x = y;
    y = z;

    cout << "\nValue of x = " << x << endl;
    cout << "Value of y = " << y << endl;

    return 0;

}

Output of this swap numbers program

swap-numbers-program-in-c-c-program-to-swap-two-numbers

Swap two numbers without third variable

Here we will implement some different logic to swap two numbers without using a third variable. We can do it in different way. Let’s see some logic to swap two numbers without third variable.

First method:

In this bellow program we will use * and / operator to swap two numbers.

Consider, x = 5 and y = 7.

Then (x *  y) = (5 * 7) = 35

And (xy / y) = x where (xy / x) = y

That means, (35 / 7) = 5 and (35 / 5) = 7.

// swap two number using * and / operators

#include <iostream>
using namespace std;

int main(){
    int first = 15, second = 25;

    cout<<"Before swapping value of : \n" << "first variable = " << first << endl;
    cout << "second variable = " << second << endl;

    first = first * second;
    second = first / second;
    first = first / second;

    cout<<"\nAfter swapping value of : \n" << "first variable = " << first << endl;
    cout << "second variable = " << second << endl;

    return 0;
}

Output of program:

Before swapping value of :
first variable = 15
second variable = 25

After swapping value of :
first variable = 25
second variable = 15

Second method:

Now we will swap two number using + and – operators.

Consider x = 4 and y = 6;

Now, (x + y) = (4 + 6) = 10;

We will assign 10 to the variable x, that means x = 10 now.

Now, y = (x – y) = (10 – 6) = 4

And x = (x – y) = (10 – 4) = 6;    (Because y = 4 now)

// swap two number using + and - operators

#include <iostream>
using namespace std;

int main(){
    int first = 10, second = 20;

    cout << "Before swapping : \nfirst variable = " << first << endl;
    cout << "second variable = " << second << endl;

    first = first + second;
    second = first - second;
    first = first - second;

    cout << "\nAfter swapping : \nfirst variable = " << first << endl;
    cout << "second variable = " << second << endl;

    return 0;
}

Output of this swap two numbers program:

Before swapping :
first variable = 10
second variable = 20

After swapping :
first variable = 20
second variable = 10

Previous pageReverse number

Next pageFibonacci series