Сегодня мы узнаем, как поменять местами два числа без использования дополнительных переменных или библиотечных функций. Так, например, мы возьмем две переменные A и B и присвоим им некоторое случайное значение. Мы возьмем пока 10 и 5, но вы можете брать все, что хотите.

Давайте приступим к простому хитрому сложению и вычитанию. если мы добавим значение B и назначим его A, тогда A будет содержать значение A+B > (10 + 5 = 15). Имейте в виду, что B остается прежним(5). Теперь, если мы вычтем значение B(5) из A(15), мы получим значение, которое изначально было присвоено A ( 15–5 = 10), поэтому давайте сохраним это значение в B(10). Теперь, если мы вычтем значение B(10) из A(15), мы получим начальное значение B(15–10 = 5), поэтому давайте сохраним это значение в A(5). Так какова ценность A и B прямо сейчас? Значения A и B теперь поменялись местами. Ниже приведен код на C++.

Остерегайтесь переполнения.