Программа на C ++ для обмена двумя числами

Этот пример содержит два разных метода обмена числами в программировании на C. Первая программа использует временную переменную для обмена числами, тогда как вторая программа не использует временные переменные.

Пример 1: Поменять номера местами (с использованием временной переменной)

 #include using namespace std; int main() ( int a = 5, b = 10, temp; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; temp = a; a = b; b = temp; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )

Вывод

Перед заменой. a = 5, b = 10 После перестановки. а = 10, б = 5

Для выполнения замены в приведенном выше примере используются три переменные.

Содержимое первой переменной копируется во временную переменную. Затем содержимое второй переменной копируется в первую переменную.

Наконец, содержимое временной переменной копируется обратно во вторую переменную, что завершает процесс обмена.

Вы также можете выполнить замену, используя только две переменные, как показано ниже.

Пример 2: Поменять номера местами без использования временных переменных

 #include using namespace std; int main() ( int a = 5, b = 10; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; a = a + b; b = a - b; a = a - b; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )

Результат этой программы такой же, как и у первой программы выше.

Давайте посмотрим, как работает эта программа:

  1. Изначально a = 5и b = 10.
  2. Затем мы добавляем a и b и сохраняем его в a с кодом a = a + b. Это значит a = 5 + 10. Итак, a = 15теперь.
  3. Затем используем код b = a - b. Это значит b = 15 - 10. Итак, b = 5теперь.
  4. Снова используем код a = a - b. Это значит a = 15 - 5. Итак , наконец, a = 10.

Значит, номера поменялись местами.

Примечание: мы можем использовать умножение и деление вместо сложения и вычитания. Однако это не сработает, если одно из чисел равно 0.

 int a = 5, b = 10; // using multiplication and division for swapping a = a * b; // a = 50 b = a / b; // b = 5 a = a / b; // a = 10 

Интересные статьи...