C ++ program két szám felcserélésére

Ez a példa két különböző technikát tartalmaz a számok cseréjére a C programozásban. Az első program ideiglenes változót használ a számok felcserélésére, míg a második program nem használ ideiglenes változót.

1. példa: Számok cseréje (ideiglenes változó használata)

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

Kimenet

Csere előtt. a = 5, b = 10 csere után. a = 10, b = 5

A fenti példa cseréjének elvégzéséhez három változót használunk.

Az első változó tartalma átmásolódik a temp változóba. Ezután a második változó tartalma átmásolódik az első változóba.

Végül a temp változó tartalmát visszamásoljuk a második változóba, amely befejezi a cserélési folyamatot.

Cserélhet is csak két változó használatával, az alábbiak szerint.

2. példa: Számok cseréje ideiglenes változók használata nélkül

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

Ennek a programnak a kimenete megegyezik a fenti programmal.

Nézzük meg, hogyan működik ez a program:

  1. Kezdetben, a = 5és b = 10.
  2. Ezután hozzáadunk a és b elemeket, és a kóddal együtt tároljuk a-ban a = a + b. Ez azt jelenti a = 5 + 10. Szóval, a = 15most.
  3. Akkor használjuk a kódot b = a - b. Ez azt jelenti b = 15 - 10. Szóval, b = 5most.
  4. Ismét a kódot használjuk a = a - b. Ez azt jelenti a = 15 - 5. Tehát végül a = 10.

Ezért a számokat felcserélték.

Megjegyzés: Használhatunk szorzást és osztást összeadás és kivonás helyett. Ez azonban nem fog működni, ha az egyik szám 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 

érdekes cikkek...