C ++ programma divu ciparu nomaiņai

Šajā piemērā ir divas dažādas metodes, kā mainīt ciparus C programmēšanā. Pirmajā programmā numuru maiņai tiek izmantots pagaidu mainīgais, savukārt otrajā programmā pagaidu mainīgie netiek izmantoti.

1. piemērs: Nomainiet numurus (izmantojot pagaidu mainīgo)

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

Rezultāts

Pirms mijmaiņas. a = 5, b = 10 Pēc maiņas. a = 10, b = 5

Lai veiktu maiņu iepriekšējā piemērā, tiek izmantoti trīs mainīgie.

Pirmā mainīgā saturs tiek kopēts temp mainīgajā. Pēc tam otrā mainīgā saturs tiek kopēts pirmajā mainīgajā.

Visbeidzot, temp mainīgā saturs tiek kopēts atpakaļ uz otro mainīgo, kas pabeidz maiņas procesu.

Jūs varat arī veikt maiņu, izmantojot tikai divus mainīgos, kā norādīts zemāk.

2. piemērs: Nomainiet numurus, neizmantojot pagaidu mainīgos

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

Šīs programmas izeja ir tāda pati kā pirmās iepriekš minētās programmas.

Apskatīsim, kā šī programma darbojas:

  1. Sākotnēji a = 5un b = 10.
  2. Tad mēs pievienojam a un b un glabājam tos kopā ar kodu a = a + b. Tas nozīmē a = 5 + 10. Tātad, a = 15tagad.
  3. Tad mēs izmantojam kodu b = a - b. Tas nozīmē b = 15 - 10. Tātad, b = 5tagad.
  4. Atkal mēs izmantojam kodu a = a - b. Tas nozīmē a = 15 - 5. Tātad beidzot a = 10.

Tādējādi numuri ir mainīti.

Piezīme: Saskaitīšanas un atņemšanas vietā mēs varam izmantot reizināšanu un dalīšanu. Tomēr tas nedarbosies, ja viens no skaitļiem ir 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 

Interesanti raksti...