Seperti yang sudah biasa dengan C# yang disebut sebagai bahasa pengaturcaraan C Sharp, kami akan memahami secara langsung tentang Pertukaran dalam C#. Perkataan Swapping memberi kita makna yang sama seperti perkataan dalam kamus bahasa Inggeris. Ini semua tentang pertukaran nilai. Mari kita lihat bagaimana kita boleh melakukan teknik ini menggunakan C#.
Dalam pertukaran nilai antara dua pembolehubah berbeza, kita boleh melakukannya dalam 2 cara. Yang pertama adalah dengan menggunakan pembolehubah ketiga yang juga dikenali sebagai pembolehubah sementara dan kaedah kedua adalah dengan tanpa menggunakan pembolehubah lain.
Mari kita semak di bawah, bagaimana kita boleh lakukan dengan menggunakan pembolehubah ketiga.
Kod:
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); } }
Dalam atur cara mudah di atas, kami telah mengambil dua nilai integer dan menukar nilai tersebut menggunakan pembolehubah sementara 3rd.
Output:
Kod:
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); } }
Di sini, kami telah menggunakan kaedah ReadLine untuk membaca nilai input pengguna. Dan kemudian kami menukar nilai itu kepada integer, jika tidak ia akan membacanya sebagai nilai ASCII.
Output:
Cuba dengan mengalih keluar fungsi ToInt32 dan semak cara atur cara bertindak.
Kod:
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); } }
Output:
Dengan cara yang sama seperti di atas, sebagai latihan, bolehkah anda cuba menukar dua pembolehubah tanpa menggunakan pembolehubah ketiga menggunakan nilai yang dimasukkan pengguna?
Kod:
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); } }
Memandangkan kami telah mengetahui teknik menukar nombor tanpa menggunakan pembolehubah ketiga, kami telah menggunakan kaedah yang sama dalam menukar 3 nombor. Untuk membuat, jelas, kami telah menyimpan pernyataan keluaran konsol selepas setiap langkah dan mengambil nilai kecil untuk pembolehubah, supaya kami dapat memahami pengiraan matematik sebenar yang sedang diproses dengan lebih mudah.
Output:
Kod:
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); } }
Satu perkara yang boleh kita perhatikan di sini ialah, logik sentiasa sama. Kami hanya mengambil nilai dinamik dan bukannya nilai berkod keras untuk bertukar.
Output:
Seperti yang telah anda semak, proses pertukaran berlaku seperti:
Sempurna kan? Jadi, bolehkah kita mencuba dengan cara lain untuk memberikan nilai? Sudah tentu, Ya.
Kod:
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); } }
Satu-satunya perbezaan antara program di atas ialah bahagian yang diserlahkan.
Output:
Seperti yang diperhatikan di atas, output pertukaran telah berubah kepada:
Kita boleh cuba menukar tiga nombor dengan cara lain yang berbeza. Jadi, sebagai latihan bolehkah anda cuba menukar 3 pembolehubah menggunakan pembolehubah sementara keempat?
Di sini, kami telah berjaya membuat teknik pertukaran yang berbeza menggunakan bahasa pengaturcaraan C# untuk kedua-dua pembolehubah dan tiga pembolehubah. Selamat belajar C#.
Atas ialah kandungan terperinci Bertukar dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!