Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 두 숫자 값 교환(Swap)하는 방법

C#에서 두 숫자 교환(Swap)하기

프로그래밍에서 두 변수의 값을 서로 맞바꾸는 작업을 스왑(Swap)이라고 합니다. C#에서는 별도의 임시 변수 없이도 덧셈과 뺄셈 연산만으로 두 숫자를 간단하게 교환할 수 있습니다.

기본 로직

먼저 교환할 두 개의 변수를 선언하고 초기화합니다.

val1 = 100;
val2 = 200;

이제 다음 세 단계의 연산을 통해 두 값을 교환합니다.

val1 = val1 + val2;
val2 = val1 - val2;
val1 = val1 - val2;

동작 원리

이 방식이 어떻게 작동하는지 초기값(val1 = 100, val2 = 200)을 기준으로 단계별로 살펴보겠습니다.

  1. val1 = val1 + val2 → val1에 합계인 300(100+200)이 저장됩니다.
  2. val2 = val1 - val2 → 300-200 = 100, 즉 원래 val1의 값이 val2에 저장됩니다.
  3. val1 = val1 - val2 → 300-100 = 200, 즉 원래 val2의 값이 val1에 저장됩니다.

결과적으로 두 변수의 값이 성공적으로 교환됩니다.

전체 예제 코드

using System;
namespace Demo {
   class Program {
      static void Main(string[] args) {

         int val1, val2;
         val1 = 100;
         val2 = 200;

         Console.WriteLine("Values before swap...");
         Console.WriteLine(val1.ToString());
         Console.WriteLine(val2.ToString());

         val1 = val1 + val2;
         val2 = val1 - val2;
         val1 = val1 - val2;

         Console.WriteLine("Values after swap...");
         Console.WriteLine(val1.ToString());
         Console.WriteLine(val2.ToString());
         Console.ReadLine();
      }
   }
}

실행 결과

Values before swap...
100
200
Values after swap...
200
100