Introdução à Troca em C #

Como já estamos familiarizados com o C # pronunciado como linguagem de programação C Sharp, entenderíamos diretamente sobre Trocar em C #. A palavra Troca nos dá o mesmo significado que a palavra no dicionário inglês. É tudo sobre a troca de valores. Vamos ver como podemos fazer essa técnica usando C #.

Troca de 2 números

  • Na troca de valores entre duas variáveis ​​diferentes, podemos fazê-lo de duas maneiras. O primeiro é usar uma terceira variável, também conhecida como variável temporária, e o segundo método, sem usar nenhuma outra variável.

Vamos verificar abaixo, como podemos fazer isso usando uma terceira variável.

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);
)
)

No programa simples acima, pegamos dois valores inteiros e trocamos esses valores usando uma variável temporária.

Resultado:

  • Agora vamos ver como podemos levar os valores das variáveis ​​através da entrada do usuário.

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);
)
)

Aqui, usamos o método ReadLine para ler os valores de entrada do usuário. E então convertemos esse valor em um número inteiro, caso contrário, ele seria lido como valores ASCII.

Resultado:

Tente remover a função ToInt32 e verifique como o programa atua.

  • Agora vamos ver a troca de dois valores pelo segundo método sem usar uma terceira variável:

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);
)
)

Resultado:

Da mesma maneira que acima, como exercício, você pode tentar trocar duas variáveis ​​sem usar a terceira variável usando valores introduzidos pelo usuário?

Troca de 3 números

  • Após a execução bem-sucedida da troca de 2 números, vamos agora prosseguir com a troca 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 já conhecemos a técnica de como trocar números sem usar uma terceira variável, usamos o mesmo método na troca de 3 números. Para deixar claro, mantivemos as instruções de saída do console após cada etapa e pegamos pequenos valores para as variáveis, para que possamos entender os cálculos matemáticos reais que estão sendo processados ​​com mais facilidade.

Resultado:

  • Agora, devemos tentar usar os valores inseridos pelo usuário?

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);
)
)

Uma coisa que podemos observar aqui é que a lógica é sempre a mesma. Estamos apenas pegando os valores dinâmicos em vez dos valores codificados para troca.

Resultado:

Como você verificou, o processo de troca está acontecendo como:

  • O valor x é dado a Y
  • O valor y é dado a Z
  • O valor z é dado a X

Perfeito né? Então, podemos tentar de outra maneira atribuir os valores? Claro que sim.

  • Muito simples, basta atribuir os valores Y e Z um após o outro ou o valor Y para obter a soma e, novamente, a ordem dos elementos pode ser alterada. Vamos ver abaixo.

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);
)
)

A única diferença entre os programas acima é a parte destacada.

Resultado:

Como observado acima, o resultado da troca foi alterado para:

  • O valor x é atribuído a Z
  • O valor y é atribuído a X
  • O valor z é atribuído a Y

Podemos tentar trocar três números de outras maneiras diferentes. Então, como exercício, você pode tentar trocar três variáveis ​​usando uma quarta variável temporária?

Conclusão - Trocando em C #

Aqui, fizemos com sucesso diferentes técnicas de troca usando a linguagem de programação C # para as duas variáveis ​​e três variáveis. Divirta-se aprendendo C #.

Artigos recomendados

Este é um guia para trocar em c #. Aqui discutimos a introdução, Trocando 2 números, Trocando 3 números com códigos e saídas. Você também pode consultar nossos outros artigos relacionados para saber mais.

  1. Variáveis ​​em c #
  2. Trocando em Python
  3. C # do-while loop
  4. Comandos C #
  5. Introdução à Troca em C
  6. Guia de Troca em Java
  7. Visão geral da troca em C ++
  8. Trocando em PHP
  9. Dicionário em Python