Program C ++ pro výměnu dvou čísel

Tento příklad obsahuje dvě různé techniky pro přepínání čísel v programování C. První program používá dočasnou proměnnou k výměně čísel, zatímco druhý program dočasné proměnné nepoužívá.

Příklad 1: Zaměnit čísla (pomocí dočasné proměnné)

 #include using namespace std; int main() ( int a = 5, b = 10, temp; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; temp = a; a = b; b = temp; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )

Výstup

Před výměnou. a = 5, b = 10 Po výměně. a = 10, b = 5

Pro provedení swapování ve výše uvedeném příkladu se používají tři proměnné.

Obsah první proměnné se zkopíruje do dočasné proměnné. Poté se obsah druhé proměnné zkopíruje do první proměnné.

Nakonec se obsah dočasné proměnné zkopíruje zpět do druhé proměnné, která dokončí proces výměny.

Prohození můžete provést také pomocí pouze dvou proměnných, jak je uvedeno níže.

Příklad 2: Prohodit čísla bez použití dočasných proměnných

 #include using namespace std; int main() ( int a = 5, b = 10; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; a = a + b; b = a - b; a = a - b; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )

Výstup tohoto programu je stejný jako u prvního programu výše.

Podívejme se, jak tento program funguje:

  1. Zpočátku a = 5a b = 10.
  2. Poté přidáme a a b a uložíme je do a s kódem a = a + b. To znamená a = 5 + 10. Takže a = 15teď.
  3. Pak použijeme kód b = a - b. To znamená b = 15 - 10. Takže b = 5teď.
  4. Opět použijeme kód a = a - b. To znamená a = 15 - 5. Tak konečně a = 10.

Proto byla čísla vyměněna.

Poznámka: Místo sčítání a odčítání můžeme použít násobení a dělení. To však nebude fungovat, pokud je jedno z čísel 0.

 int a = 5, b = 10; // using multiplication and division for swapping a = a * b; // a = 50 b = a / b; // b = 5 a = a / b; // a = 10 

Zajímavé články...