Menu

Daxil olun Qeydiyyat

C++ Proqramlaşdırma Dili

3.7 İki dəyişənin qiymətlərinin bir-biri ilə dəyişdirilməsi

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 using namespace std; int main (){ int x, y ,z; x = 67; y = 90; //x-ve y-in qiymetlerini cap edek cout << "\nx ve y-in evvelki qiymetleri\n"; cout << "x = " << x << "\n"; cout << "y = " << y << "\n"; //x ve y-in qiymetlerini evezleyek z = x; x = y; y = z; //x -ve y-in yeni qiymetlerini cap edek cout << "\nQiymetleri evezledikden sonra\n"; cout << "x = " << x << "\n"; cout << "y = " << y << "\n"; } Nəticə


Bizi dəstəkləyənlər