Interschimbarea valorilor a două variabile
Una dintre
problemele clasice ce pot fi întâmpinate la crearea programelor o reprezintă
interschimbarea
valorilor a două variabile. Poate pare banal, însă există totuși mai multe trucuri!
EXEMPLU
Să presupunem că avem două pahare, notate cu
A și
B, care conțin fiecare
70 și respectiv
40 ml de lichid:
Cum le interschimbăm conținutul? Putem folosi un al treilea pahar
de manevră, numit
C,
care inițial este gol:
Pasul 1. Turnăm conținutul lui
A în
C:
Pasul 2. Turnăm apoi conținutul lui
B în
A:
Pasul 3. La final, turnăm conținutul lui
C în
B:
Paharul
C este iar gol, iar noi am reușit!
Algoritmul transpus în
Python este deci următorul:
Editor - lectia5_interschimbare.py
|
|
Atenție. Spre deosebire de pahare, unde folosim un proces mecanic, la finalul programului variabila
C va reține
ultima valoare, adică cea reținută acum de
B. Noi în program
copiem valorile și nu le turnăm! 😜
Variabilele de manevră /
intermediare nu contează la ieșire,
ci sunt utilizate pentru a efectua calcule
în interiorul programului, precum
C.
CUM PUTEM GREȘI?
Simplu. Considerăm suficientă secvența de mai jos:
A = B #A reține 40
B = A #B va reține iar 40
Prima atribuire pierde conținutul lui
A definitiv...
O ALTĂ METODĂ
Cine îți spune că informatica nu necesită
matematică, se înșeală amarnic.
Se poate efectua interschimbarea și
fără o altă variabilă de manevră! Testează spre
exemplu codul de mai jos:
A = A + B #A reține 110
B = A - B #B va reține 70
A = A - B #A va reține 40
PYTHON ESTE SUPER FAIN!
Creatorii limbajului au anticipat această necesitate, așadar putem folosi următorul tip de atribuire:
A, B = B, A
Elegant, nu? 😎
Execută programul și citește informațiile.
Cărțile editurii noastre
O parte dintre manualele și culegerile de probleme se găsește și [
în format electronic]
securizat sub formă
de fișier *.pdf.
"
O cameră fără cărţi este ca un corp fără suflet."
(G. K. Chesterton)
Cursanții au mai cumpărat ...
[
vezi lista completă a cărților]