Introducción al intercambio en C #
Como ya estamos familiarizados con C # pronunciado como lenguaje de programación C Sharp, entenderíamos directamente sobre el intercambio en C #. La palabra Intercambio nos da el mismo significado que la palabra en el diccionario de inglés. Se trata del intercambio de valores. Veamos cómo podemos hacer esta técnica usando C #.
Intercambiando 2 números
- En el intercambio de valores entre dos variables diferentes, podemos hacerlo de 2 maneras. La primera es usar una tercera variable también conocida como variable temporal y el segundo método es sin usar ninguna otra variable.
Veamos a continuación, cómo podemos hacerlo usando una tercera variable.
Código: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);
)
)
En el programa simple anterior, hemos tomado dos valores enteros y hemos intercambiado esos valores usando una tercera variable temporal.
Salida:
- Ahora veamos, cómo podemos tomar los valores de las variables a través de la entrada del usuario.
Código:width="638">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);
)
)
Aquí, hemos utilizado el método ReadLine para leer los valores de entrada del usuario. Y luego convertimos ese valor en un entero, de lo contrario lo leería como valores ASCII.
Salida:
Intente eliminando la función ToInt32 y verifique cómo actúa el programa.
- Ahora veamos el intercambio de dos valores a través del segundo método sin usar una tercera variable:
Código:
width="638">using System;
class First (
static void Main() (
int a=85, b=58;
a=a+b;
b=ab;
a=ab;
Console.WriteLine("Values after swapping :");
Console.WriteLine("a is "+a);
Console.WriteLine("b is "+b);
)
)
Salida:
De la misma manera que arriba, como ejercicio, ¿puede intentar intercambiar dos variables sin usar la tercera variable usando los valores ingresados por el usuario?
Intercambiando 3 números
- Después de la ejecución exitosa del intercambio de 2 números, sigamos ahora con el intercambio de 3 números.
Código:
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);
)
)
Como ya conocimos la técnica sobre cómo intercambiar números sin usar una tercera variable, hemos utilizado el mismo método para intercambiar 3 números. Para que quede claro, hemos mantenido las declaraciones de salida de la consola después de cada paso y hemos tomado pequeños valores para las variables, de modo que podamos entender los cálculos matemáticos reales que se procesan más fácilmente.
Salida:
- Ahora, ¿deberíamos intentar usar los valores ingresados por el usuario?
Código: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);
)
)
Una cosa que podemos observar aquí es que la lógica es siempre la misma. Solo estamos tomando los valores dinámicos en lugar de los valores codificados para el intercambio.
Salida:
Como ha verificado, el proceso de intercambio se produce como:
- El valor x se da a Y
- El valor y se da a Z
- El valor z se da a X
Perfecto verdad? Entonces, ¿podemos intentar de alguna otra manera asignar los valores? Por supuesto que sí.
- Muy simple, solo tenemos que asignar los valores Y y Z uno tras otro o el valor Y para tomar la suma y nuevamente se puede cambiar el orden de los elementos. Veamos a continuación.
Código: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 única diferencia entre los programas anteriores es la parte resaltada.
Salida:
Como se señaló anteriormente, la salida del intercambio ha cambiado a:
- El valor x se asigna a Z
- El valor y se asigna a X
- El valor z se asigna a Y
Podemos intentar intercambiar tres números de otras maneras diferentes. Entonces, como ejercicio, ¿puedes intentar intercambiar 3 variables usando una cuarta variable temporal?
Conclusión: intercambio en C #
Aquí, hemos realizado con éxito diferentes técnicas de intercambio utilizando el lenguaje de programación C # para las dos variables y las tres variables. Diviértete aprendiendo C #.
Artículos recomendados
Esta es una guía para el intercambio en C #. Aquí discutimos la introducción, Intercambiar 2 números, Intercambiar 3 números con códigos y salidas. También puede consultar nuestros otros artículos relacionados para obtener más información.
- Variables en C #
- Intercambio en Python
- C # do-while loop
- Comandos C #
- Introducción al intercambio en C
- Guía para el intercambio en Java
- Descripción general del intercambio en C ++
- Intercambio en PHP
- Diccionario en Python