이미 C Sharp 프로그래밍 언어로 발음되는 C#에 익숙하듯이 C#의 Swapping에 대해서도 직접적으로 이해할 수 있을 것입니다. Swapping이라는 단어는 영어 사전에 나오는 단어와 동일한 의미를 제공합니다. 그것은 가치의 교환에 관한 것입니다. C#을 사용하여 이 기술을 어떻게 수행할 수 있는지 살펴보겠습니다.
두 가지 다른 변수 사이의 값을 교환하는 데에는 두 가지 방법이 있습니다. 첫 번째는 임시 변수라고도 하는 세 번째 변수를 사용하는 것이고, 두 번째 방법은 다른 변수를 사용하지 않고 사용하는 것입니다.
아래에서 세 번째 변수를 사용하여 수행할 수 있는 작업을 확인해 보겠습니다.
코드:
using System; class First { static void Main() { int a=75,b=84,t; t=a; a=b; b=t; Console.WriteLine("Values after swapping:"); Console.WriteLine("a is :"+a); Console.WriteLine("b is :"+b); } }
위의 간단한 프로그램에서는 두 개의 정수 값을 가져와 세 번째 임시 변수를 사용하여 해당 값을 바꿨습니다.
출력:
코드:
using System; class First { static void Main() { string a,b; int temp,c,d; Console.Write("Enter value for a :"); a = Console.ReadLine(); c = Convert.ToInt32(a); Console.WriteLine("A's value is {0}", c); Console.Write("Enter value for b : "); b = Console.ReadLine(); d = Convert.ToInt32(b); Console.WriteLine("B's value is {0}", d); temp=c; c=d; d=temp; Console.WriteLine("Values after swapping are:"); Console.WriteLine("a is : "+c); Console.WriteLine("b is : "+d); } }
여기에서는 ReadLine 메서드를 사용하여 사용자 입력 값을 읽었습니다. 그런 다음 해당 값을 정수로 변환했습니다. 그렇지 않으면 ASCII 값으로 읽혀집니다.
출력:
ToInt32 함수를 제거하고 프로그램이 어떻게 작동하는지 확인해 보세요.
코드:
using System; class First { static void Main() { int a=85,b=58; a=a+b; b=a-b; a=a-b; Console.WriteLine("Values after swapping :"); Console.WriteLine("a is "+a); Console.WriteLine("b is "+b); } }
출력:
위와 같은 방법으로 연습삼아, 세 번째 변수를 사용하지 않고 사용자가 입력한 값을 이용해 두 변수를 바꿔보실 수 있나요?
코드:
using System; class First { static void Main() { int a=4,b=5,c=6; //swapping a=a+b+c; Console.WriteLine("After First step A value is "+a); b=a-(b+c); Console.WriteLine("After Second step B value is "+b); c=a-(b+c); Console.WriteLine("After Third step C value is "+c); a=a-(b+c); Console.WriteLine("After Fourth step A value is "+a); Console.WriteLine("Values after swapping are:"); Console.WriteLine("a is "+a); Console.WriteLine("b is "+b); Console.WriteLine("c is "+c); } }
세 번째 변수를 사용하지 않고 숫자를 바꾸는 방법은 이미 알고 있으므로 3개의 숫자를 바꾸는 데에도 동일한 방법을 사용했습니다. 이를 위해 각 단계 후에 콘솔 출력 문을 유지하고 변수에 대해 작은 값을 취하여 처리되는 실제 수학적 계산을 보다 쉽게 이해할 수 있도록 했습니다.
출력:
코드:
using System; clas1s First { static void Main() { string a,b,c; int x,y,z; Console.Write("Enter value for x :"); a = Console.ReadLine(); x = Convert.ToInt32(a); Console.WriteLine("X's value is {0}", x); Console.Write("Enter value for y : "); b = Console.ReadLine(); y = Convert.ToInt32(b); Console.WriteLine("Y's value is {0}", y); Console.Write("Enter value for z : "); c = Console.ReadLine(); z = Convert.ToInt32(c); Console.WriteLine("Z's value is {0}", z); x=x+y+z; Console.WriteLine("After Fourth step X value is "+x); y=x-(y+z); Console.WriteLine("After Second step Y value is "+y); z=x-(y+z); Console.WriteLine("After Third step Z value is "+z); x=x-(y+z); Console.WriteLine("After Fourth step X value is "+x); Console.WriteLine("Values after swapping are:"); Console.WriteLine("X is : "+x); Console.WriteLine("Y is : "+y); Console.WriteLine("Z is : "+z); } }
여기서 우리가 관찰할 수 있는 한 가지는 논리가 항상 동일하다는 것입니다. 우리는 교체를 위해 하드코딩된 값 대신 동적 값을 사용하고 있습니다.
출력:
확인하신 바와 같이 교체 과정은 다음과 같이 진행됩니다.
완벽하죠? 그렇다면 값을 할당하는 다른 방법을 시도해 볼 수 있을까요? 물론이죠.
코드:
width="638">using System; class First { static void Main() { string a,b,c; int x,y,z; Console.Write("Enter value for x :"); a = Console.ReadLine(); x = Convert.ToInt32(a); Console.WriteLine("X's value is {0}", x); Console.Write("Enter value for y : "); b = Console.ReadLine(); y = Convert.ToInt32(b); Console.WriteLine("Y's value is {0}", y); Console.Write("Enter value for z : "); c = Console.ReadLine(); z = Convert.ToInt32(c); Console.WriteLine("Z's value is {0}", z); x=x+y+z; Console.WriteLine("After Fourth step X value is "+x); z=x-(y+z); Console.WriteLine("After Second step Z value is "+z); y=x-(y+z); Console.WriteLine("After Third step Y value is "+y); x=x-(y+z); Console.WriteLine("After Fourth step X value is "+x); Console.WriteLine("Values after swapping are:"); Console.WriteLine("X is : "+x); Console.WriteLine("Y is : "+y); Console.WriteLine("Z is : "+z); } }
위 프로그램과 차이점은 강조된 부분뿐입니다.
출력:
위에서 알 수 있듯이 스와핑 출력은 다음과 같이 변경되었습니다.
다른 방법으로 세 개의 숫자를 바꿔볼 수 있습니다. 그럼 연습삼아 네 번째 임시 변수를 사용하여 3개의 변수를 바꿔볼 수 있나요?
여기서는 두 변수와 세 변수 모두에 대해 C# 프로그래밍 언어를 사용하여 다양한 스와핑 기술을 성공적으로 만들었습니다. 재미있게 C#을 배워보세요.
위 내용은 C#에서 스와핑의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!