Úvod do výmeny v C #
Ako už poznáme C #, vyhlásené za programovací jazyk C Sharp, priamo by sme pochopili, ako sa swapovanie v C #. Slovo Výmena nám dáva rovnaký význam ako slovo v anglickom slovníku. Je to všetko o výmene hodnôt. Poďme sa dostať k tomu, ako môžeme túto techniku vykonať pomocou C #.
Výmena 2 čísel
- Pri výmene hodnôt medzi dvoma rôznymi premennými to môžeme urobiť dvoma spôsobmi. Prvá je pomocou tretej premennej známej aj ako dočasná premenná a druhá metóda je bez použitia akejkoľvek inej premennej.
Pozrime sa ďalej, ako to môžeme urobiť pomocou tretej premennej.
kód: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);
)
)
V uvedenom jednoduchom programe sme zobrali dve celočíselné hodnoty a tieto hodnoty sme vymenili pomocou tretej dočasnej premennej.
Výkon:
- Teraz sa pozrime na to, ako môžeme hodnoty premenných získať pomocou vstupu používateľa.
kód: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);
)
)
Na čítanie vstupných hodnôt používateľa sme tu použili metódu ReadLine. A potom sme túto hodnotu previedli na celé číslo, inak by ju čítali ako hodnoty ASCII.
Výkon:
Skúste odstrániť funkciu ToInt32 a skontrolujte, ako program funguje.
- Teraz sa pozrime na výmenu dvoch hodnôt druhou metódou bez použitia tretej premennej:
kód:
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);
)
)
Výkon:
Rovnakým spôsobom ako vyššie, ako cvičenie, môžete skúsiť vymeniť dve premenné bez toho, aby ste použili tretiu premennú pomocou hodnôt zadaných používateľom?
Výmena 3 čísel
- Po úspešnom vykonaní výmeny 2 čísel sa teraz presunieme k výmene 3 čísel.
kód:
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);
)
)
Keďže sme sa už zoznámili s technikou výmeny čísiel bez použitia tretej premennej, použili sme rovnakú metódu pri výmene 3 čísel. Aby sme to jasne uviedli, uchovávali sme výkazy výstupu konzoly po každom kroku a pre hodnoty sme vzali malé hodnoty, aby sme mohli ľahšie porozumieť skutočným matematickým výpočtom, ktoré sa spracúvajú.
Výkon:
- Mali by sme sa teraz pokúsiť použiť hodnoty zadané používateľom?
kód: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);
)
)
Jedna vec, ktorú tu môžeme pozorovať, je, že logika je vždy rovnaká. Berieme iba dynamické hodnoty namiesto pevne kódovaných hodnôt na výmenu.
Výkon:
Ako ste skontrolovali, proces výmeny sa deje ako:
- Hodnota x je daná Y
- Hodnota y je daná Z
- Hodnota z je daná X
Ideálne, však? Môžeme sa teda pokúsiť iným spôsobom priraďovať hodnoty? Samozrejme áno.
- Celkom jednoduché, stačí, ak priradíme hodnoty Y a Z jednu po druhej alebo hodnotu Y, aby sme prevzali súčet, a znova je možné zmeniť poradie prvkov. Uvidíme nižšie.
kód: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);
)
)
Jediným rozdielom medzi vyššie uvedenými programami je zvýraznená časť.
Výkon:
Ako bolo uvedené vyššie, výkon výmeny sa zmenil na:
- Hodnota x je priradená Z
- Hodnota y je priradená k X
- Hodnota z je priradená Y
Môžeme skúsiť zamieňať tri čísla rôznymi spôsobmi. Takže, ako cvičenie, môžete skúsiť vymeniť 3 premenné pomocou štvrtej dočasnej premennej?
Záver - Výmena v C #
Tu sme úspešne vytvorili rôzne techniky výmeny pomocou programovacieho jazyka C # pre obe premenné a tri premenné. Bavte sa učenie C #.
Odporúčané články
Toto je príručka pre výmenu v C #. Tu diskutujeme o úvodu, Výmena čísla 2, Výmena čísiel 3 pomocou kódov a výstupov. Viac informácií nájdete aj v ďalších súvisiacich článkoch.
- Premenné v C #
- Výmena v Pythone
- Slučka C # do-while
- C # Príkazy
- Úvod do výmeny v C
- Sprievodca prepínaním v jazyku Java
- Prehľad odkladania v C ++
- Výmena v PHP
- Slovník v Pythone