Interschimbarea a doua variabile in C++
Pentru a interschimba doua variabile exista mai multe metode.
Prima consta in folosirea unei variabile ajutatoare, pe care o utilizam pentru a salva temporar valoarea uneia dintre variabile. Dupa ce ii salvam valoarea, putem sa o suprascriem cu a doua variabila. La sfarsit punem valoarea initiala a primei variabile (salvata in ajutator) in a doua variabila. Pentru aceasta metoda, numita si metoda paharelor, codul este cel de mai jos:
Video de pe canalul nostru de YouTube in care explicam cum functioneaza interschimbarea valorii a 2 variabile prin metoda paharelor:
A doua metoda nu se foloseste de o variabila ajutatoare. Aici salvam suma celor doua variabile in prima dintre acestea (a = a + b) . Dupa care, vrem ca in a doua variabila sa fie valoarea primei. Deci vom scadea din suma (a + b), valoarea celei de-a doua variabile si o sa o obtinem pe prima (b = a + b – b). Acum in b o sa fie valoarea initiala a lui a. Deci putem sa facem la fel si pentru a, ca sa obtinem b (a = a + b – a). Pentru aceasta metoda codul este mai jos:
A treia metoda se foloseste de operatiile pe biti. Ne aducem aminte de operatia xor (^). x ^ y = 1, daca si numai daca x este diferit de y. Cel mai usor de inteles metoda este folosind un exemplu vizual:
a = 00010010
b = 11010110
a = a ^ b -> a = 11000100
b = a ^ b -> b = 00010010
a = a ^ b -> a = 11010110
Dupa cate putem vedea, a si b au fost interschimbate.
Daca aveti intrebari nu ezitati sa le lasati in comentarii, va vom raspunde cat de repede putem. Spor la lucuru 🙂