>> DAVID J. Malan: Se pou yo ekri yon pwogram nan ki nou eseye swap valè yo nan
de varyab, x ak y.
An avanse, Mwen te ekri anpil nan pwogram sa a deja.
Premyèman, mwen deklare yon varyab, x, ak magazen nan li valè a, 1.
Lè sa a, Mwen deklare varyab y ak magazen nan li valè a, 2.
>> Apre sa, mwen kontinye ak printf montre valè yo nan sa yo de varyab.
Apre sa, mwen fè reklamasyon ak yon lòt printf yo dwe échanjé sa yo varyab.
Lè sa a, mwen rele yon fonksyon rele swap.
Lè sa a, mwen reklamasyon ke varyab yo yo te échanjé.
Lè sa a, mwen enprime soti ke sa mwen fè reklamasyon yo se valè yo nan nouvo x ak y.
>> Koulye a, ki sa ki sa a swap fonksyon?
Li pa yon bagay ki vini ak C. Vreman vre, si nou gade nan tèt yo nan mwen
ranpli, ou pral avi ke mwen te deklare yon pwototip pou sa a swap fonksyon
ki espesifye ke li pran de antye, abitrèman rele a ak b, ak sa a
fonksyon pa retounen anyen.
Se konsa, prezimableman, li fè sa sa li di nan echanj yon yo ak valè b la.
Se pou nou kounye a aplike swap.
>> Premyèman, mwen pral deklare yon ti tan varyab epi bay nan li
valè a nan yon, menm si mwen te kapab jis kòm fasil ki estoke nan li b.
Mwen Lè sa a, pral chanje valè a nan yon yo dwe egal a ke nan b.
Lè sa a, Finalman, mwen pral chanje a valè de b yo dwe ki sa yon te, men se
kounye a nan temp.
>> Koulye a, mwen fè reklamasyon sa m 'te jis fè sa yo ki lojikman kòrèk la.
Mwen te sere yon nan yon varyab pou yon ti tan, chanje yon an valè yo dwe b la, ak Lè sa a,
chanje valè b nan yo dwe ki sa yon a te ye a.
Men, lè mwen konpile epi kouri sa a pwogram, mwen enkyete, sa a pa
ale ki sa mwen wè.
>> Fè, pa gen swap.
dot koupe, pa gen swap.
Apre sa, malerezman, dapre printf, valè a nan x ak y, menm
apre nou fin reklamasyon yo dwe échanjé yo, se toujou 1 ak 2.
>> Koulye a, poukisa se sa?
Oke, li vire soti ki nan prensipal yo, lè nou rele sa swap fonksyon, pase nan
x ak y kòm agiman, li la aktyèlman kopi x ak y ki
yo pase nan swap.
Savwa, valè yo 1 ak 2 yo pase nan swap kòm yon ak b.
Epi li a ak b ke nou ap finalman échanjé nan prensipal la.
>> Sa se, 1 vin 2, 2 vin 1.
Men, paske se swap pa gen okenn valè retounen epi paske li resevwa kopi x
ak y, li nan konpòtman te okenn efè sou x ak y.
Vreman vre, A ak B se scoped, se konsa pale, swap, Lè nou konsidere ke x ak y rete
scoped prensipal la.
>> Se konsa, nou gen yon pwoblèm.
Men, ki jan yo korije li?