How to swap two numbers without using a third variable
There are many ways to swap two numbers without using a third variable.
1. Using arithmetic operators
The arithmetic operators for addition and subtraction can be used to perform the swap without using a third variable.
#include <iostream>using namespace std;int main(){int x = 10, y = 50;x = x + y; // x = 60y = x - y; // y = 10x = x - y; // x = 50cout << "After Swapping: x = " << x << ", y = " << y;}
Similarly, multiplication and division can be used to perform the swap without using the third variable.
#include <iostream>using namespace std;int main(){int x = 10, y = 50;x = x * y; // x = 500y = x / y; // y = 10x = x / y; // x = 50cout << "After Swapping: x = " << x << ", y = " << y;}
2. Using Bitwise XOR
The result of the bitwise XOR operator is if the corresponding bits of two operands are opposite. It is denoted by ^.
#include <iostream>using namespace std;int main(){int x = 10, y = 50;x = x ^ y;y = x ^ y;x = x ^ y;cout << "After Swapping: x = " << x << ", y = " << y;}
Free Resources
Copyright ©2026 Educative, Inc. All rights reserved