C ++ - programma om twee nummers te wisselen

Dit voorbeeld bevat twee verschillende technieken om nummers te wisselen in C-programmering. Het eerste programma gebruikt tijdelijke variabelen om nummers te wisselen, terwijl het tweede programma geen tijdelijke variabelen gebruikt.

Voorbeeld 1: nummers omwisselen (tijdelijke variabele gebruiken)

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

Uitvoer

Alvorens te ruilen. a = 5, b = 10 Na verwisseling. a = 10, b = 5

Om ruilen in het bovenstaande voorbeeld uit te voeren, worden drie variabelen gebruikt.

De inhoud van de eerste variabele wordt gekopieerd naar de tijdelijke variabele. Vervolgens wordt de inhoud van de tweede variabele gekopieerd naar de eerste variabele.

Ten slotte wordt de inhoud van de tijdelijke variabele teruggekopieerd naar de tweede variabele waarmee het wisselproces is voltooid.

U kunt ook swappen met slechts twee variabelen, zoals hieronder.

Voorbeeld 2: nummers verwisselen zonder tijdelijke variabelen te gebruiken

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

De output van dit programma is hetzelfde als het eerste programma hierboven.

Laten we eens kijken hoe dit programma werkt:

  1. In eerste instantie, a = 5en b = 10.
  2. Vervolgens voegen we a en b toe en slaan het op in a met de code a = a + b. Dit betekent a = 5 + 10. Dus a = 15nu.
  3. Dan gebruiken we de code b = a - b. Dit betekent b = 15 - 10. Dus b = 5nu.
  4. Nogmaals, we gebruiken de code a = a - b. Dit betekent a = 15 - 5. Dus eindelijk a = 10.

Daarom zijn de nummers omgewisseld.

Opmerking: we kunnen vermenigvuldigen en delen gebruiken in plaats van optellen en aftrekken. Dit werkt echter niet als een van de cijfers 0 is.

 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 

Interessante artikelen...