C ++ -ohjelma kahden numeron vaihtamiseksi

Tämä esimerkki sisältää kaksi erilaista tekniikkaa numeroiden vaihtamiseksi C-ohjelmoinnissa. Ensimmäinen ohjelma käyttää väliaikaista muuttujaa numeroiden vaihtamiseen, kun taas toinen ohjelma ei käytä väliaikaisia ​​muuttujia.

Esimerkki 1: Vaihda numerot (väliaikaisen muuttujan avulla)

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

Tuotos

Ennen vaihtamista. a = 5, b = 10 vaihdon jälkeen. a = 10, b = 5

Vaihdon suorittamiseksi yllä olevassa esimerkissä käytetään kolmea muuttujaa.

Ensimmäisen muuttujan sisältö kopioidaan lämpötilamuuttujaan. Sitten toisen muuttujan sisältö kopioidaan ensimmäiseen muuttujaan.

Lopuksi temp-muuttujan sisältö kopioidaan takaisin toiseen muuttujaan, joka saa vaihdon päätökseen.

Voit myös vaihtaa käyttämällä vain kahta muuttujaa kuten alla.

Esimerkki 2: Vaihda numerot käyttämättä väliaikaisia ​​muuttujia

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

Tämän ohjelman tulos on sama kuin ensimmäinen yllä oleva ohjelma.

Katsotaanpa, miten tämä ohjelma toimii:

  1. Aluksi a = 5ja b = 10.
  2. Sitten lisätään a ja b ja tallennetaan se koodiin a = a + b. Tämä tarkoittaa a = 5 + 10. Joten a = 15nyt.
  3. Sitten käytämme koodia b = a - b. Tämä tarkoittaa b = 15 - 10. Joten b = 5nyt.
  4. Jälleen käytämme koodia a = a - b. Tämä tarkoittaa a = 15 - 5. Joten lopuksi a = 10.

Siksi numerot on vaihdettu.

Huomaa: Voimme käyttää kertomista ja jakamista yhteenlaskemisen ja vähentämisen sijaan. Tämä ei kuitenkaan toimi, jos jokin numeroista on 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 

Mielenkiintoisia artikkeleita...