Даша: Спасибо:3
31-05-2023
Читать статью
Санечка: я ничего не учила) но буду надеятся что ..
30-05-2023
Мейнер Сяо: Удачи всем сегодня на экзамене ;)..
Сегодня разберём хороший приём по информатике: как поменять значения переменных между собой, без использования третьей переменной.
Задача: Поменять значения целочисленных переменных между собой любыми тремя различными способами.
Данные приёмы способствуют росту мастерства по информатике и программированию и приводят ум в порядок!
Решение:
Первый способ самый привычный для нас в информатике. Он заключается в том, что мы использованием третью переменную. Код приведён на языке C#.
static void Main(string[] args) { int a = 3, b = 5, temp; temp = a; a = b; b = temp; Console.WriteLine("a= " + a); Console.WriteLine("b= " + b); Console.ReadKey(); }
Здесь значение переменной a сохраняется в промежуточную переменную temp. Затем мы кладём значение переменной b в переменную a. И, наконец, в переменную b кладём значение переменной temp, т.е. первоначальное значение переменной a. Таким образом, у нас переменные поменялись значениями.
Второй способ без использование третьей переменной.
static void Main(string[] args) { int a = 3, b = 5 ; a = a + b; b = a - b; // здесь уже будет 3 a = a - b; Console.WriteLine("a= " + a); Console.WriteLine("b= " + b); Console.ReadKey(); }
Третий способ малоизвестный с использованием логической операции исключающее ИЛИ (XOR).
static void Main(string[] args) { int a = 3, b = 5; a = a ^ b; b = b ^ a; a = a ^ b; Console.WriteLine("a= " + a); Console.WriteLine("b= " + b); Console.ReadKey(); }
Рассмотрим операцию исключающего ИЛИ, и почему она нам помогает менять значения у переменных местами.
Если биты разные, то результат будет 1, если одинаковые, то 0. Как переменные меняются значениями показано на рисунках:
В результате у нас получается в переменной a число 5, а в переменной b число 3.