3.7 İki dəyişənin qiymətlərinin bir-biri ilə dəyişdirilməsi
Dəyişənlərin qiymətlərinin dəyişdirilməsi gələcəkdə bizə tez-tez lazım olacaq, əsasən də 6-cı paraqrafda cərgələri keçəndə Tutaq ki, bizə int tipli x və y dəyişənləri verilmişdir. int x, y;
Bu dəyişənlərə müxtəlif qiymətlər mənimsədək: x = 67; y = 90; İndi isə bizdən tələb olunur ki, bu iki dəyişənin qiymətlərini bir-biri ilə əvəzləyək. Yəni x-in qiyməti olsun 90, y-ki isə 67, aşağıdakı kimi: Biz dəyişənlərin qiymətlərini əvəzləmək üçün aşağıdakı kimi mənimsətmə operatorları işə yaramaz. x = y; y = x; Çünki mənimsətmə operatoru dəyişənin əvvəlki qiymətini silir, yerinə yenisini yazır. Misal üçün baxdığımız birinci mənimsətmə zamanı x = y; x-in qiyməti yəni 67 silinər və yerinə 90 yazılar. Nəticədə hər iki dəyişənin qiyməti 90-a bərabər olar. Bu halda biz 67 qiymətini itirmiş oluruq. Daha sonra yazdığımız ikinci mənimsətmə isə y = x; heç nəyi dəyişməz. Bu problemi həll etmək üçün əlavə 3-cü dəyişənə ehtiyacımız var. Əlavə dəyişəndən x-in başlanğıc qiymətini yadda saxlamaq üçün isitfadə edəcəyik. Ədəbiyyadta bu dəyişəni çox vaxt müvəqqəti dəyişən də adlandırırlar. Tutaq ki, x və y-dən əlavə int tipli hər-hansı z dəyişəni də elan etmişik: int z; Əvvəlcə x-in qiymətin z-tə yazaq: z = x; x –in qiyməti z-tə köçürülər. Təbii ki z-in öz əvvəlki qiyməti silinəcək, lakin bu bizi elə də narahat etmir. Artıq x-in qiymətini z-də yadda saxladığımıza görə y-in qiymətini x-ə asanlıqla köçürə bilərik. x = y; x-in əvvəlki qiymətini z-də yadda saxladığımıza görə y-ə də onu mənimsədirik: y = z; Beləliklə x və y dəyişənlərinin qiymətlərini bir-biri ilə əvəzləmiş olduq. İki dəyişənin qiymətini əvəzləyən proqram kodunun tam mətni aşağıdakı kimi olar. Nümunə #include