Comme nous sommes déjà familiers avec le C# prononcé comme langage de programmation C Sharp, nous comprendrions directement le Swapping en C#. Le mot Swapping nous donne la même signification que le mot du dictionnaire anglais. Tout est question d’échange de valeurs. Voyons comment appliquer cette technique en utilisant C#.
Dans l'échange de valeurs entre deux variables différentes, nous pouvons le faire de 2 manières. La première consiste à utiliser une troisième variable également connue sous le nom de variable temporaire et la deuxième méthode consiste à utiliser aucune autre variable.
Vérifions ci-dessous comment nous pouvons procéder en utilisant une troisième variable.
Code :
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); } }
Dans le programme simple ci-dessus, nous avons pris deux valeurs entières et échangé ces valeurs à l'aide d'une 3rd variable temporaire.
Sortie :
Code :
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); } }
Ici, nous avons utilisé la méthode ReadLine pour lire les valeurs saisies par l'utilisateur. Et puis nous avons converti cette valeur en nombre entier, sinon il la lirait sous forme de valeurs ASCII.
Sortie :
Essayez en supprimant la fonction ToInt32 et vérifiez comment le programme agit.
Code :
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); } }
Sortie :
De la même manière que ci-dessus, à titre d'exercice, pouvez-vous essayer d'échanger deux variables sans utiliser la troisième variable en utilisant les valeurs saisies par l'utilisateur ?
Code :
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); } }
Comme nous avons déjà appris la technique pour échanger des nombres sans utiliser de troisième variable, nous avons utilisé la même méthode pour échanger 3 nombres. Pour que ce soit clair, nous avons conservé les instructions de sortie de la console après chaque étape et pris de petites valeurs pour les variables, afin que nous puissions comprendre plus facilement les calculs mathématiques réels qui sont traités.
Sortie :
Code :
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); } }
Une chose que nous pouvons observer ici est que la logique est toujours la même. Nous prenons simplement les valeurs dynamiques au lieu des valeurs codées en dur pour les échanger.
Sortie :
Comme vous l'avez vérifié, le processus d'échange se déroule comme :
Parfait, non ? Alors, pouvons-nous essayer d’attribuer les valeurs d’une autre manière ? Bien sûr, oui.
Code :
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); } }
La seule différence entre les programmes ci-dessus est la partie en surbrillance.
Sortie :
Comme indiqué ci-dessus, le résultat de l'échange a été modifié comme suit :
Nous pouvons essayer d'échanger trois numéros de différentes manières. Alors, à titre d'exercice, pouvez-vous essayer d'échanger 3 variables en utilisant une quatrième variable temporaire ?
Ici, nous avons réussi à réaliser différentes techniques d'échange en utilisant le langage de programmation C# pour les deux variables et trois variables. Amusez-vous à apprendre le C#.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!