Когда-то давно мы уже рассматривали данную задачу применительно к целочисленным переменным. Но как быть с переменными логического типа (boolean)?
На самом деле очень просто. Есть целых 2 способа решить эту задачу.
Способ 1. Использование битовых операций (исключающего «или»)
Логический тип прекрасно работает с битовыми операциями:
1 2 3 |
a = a ^ b; b = b ^ a; a = a ^ b; |
Также можно воспользоваться упрощённым синтаксисом:
1 |
a^=b^=a^=b; |
Способ 2. Использование кортежей
Можно составить кортеж из двух переменных и в кортеже поменять их значения между собой.
1 |
a,b = b,a |
Но, этот способ применим только в некоторых языках программирования. Например, в Python.
В любом обмен значениями между двумя логическими переменными не представляет сколь-нибудь сложной задачи.
Добавить комментарий