C ++ - program til at bytte to numre

Dette eksempel indeholder to forskellige teknikker til at bytte numre i C-programmering. Det første program bruger midlertidig variabel til at bytte numre, mens det andet program ikke bruger midlertidige variabler.

Eksempel 1: Byt numre (ved hjælp af midlertidig variabel)

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

Produktion

Før du bytter. a = 5, b = 10 Efter bytte. a = 10, b = 5

For at udføre bytte i ovenstående eksempel anvendes tre variabler.

Indholdet af den første variabel kopieres til tempvariablen. Derefter kopieres indholdet af den anden variabel til den første variabel.

Endelig kopieres indholdet af tempvariablen tilbage til den anden variabel, der afslutter swapping-processen.

Du kan også udføre bytte med kun to variabler som nedenfor.

Eksempel 2: Skift tal uden brug af midlertidige variabler

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

Output fra dette program er det samme som det første program ovenfor.

Lad os se, hvordan dette program fungerer:

  1. Oprindeligt a = 5og b = 10.
  2. Derefter tilføjer vi a og b og gemmer det i a med koden a = a + b. Dette betyder a = 5 + 10. Så a = 15nu.
  3. Så bruger vi koden b = a - b. Dette betyder b = 15 - 10. Så b = 5nu.
  4. Igen bruger vi koden a = a - b. Dette betyder a = 15 - 5. Så endelig a = 10.

Derfor er numrene byttet.

Bemærk: Vi kan bruge multiplikation og division i stedet for addition og subtraktion. Dette fungerer dog ikke, hvis et af tallene er 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 

Interessante artikler...