तीन नंबरों को एक फंक्शन साइक्लिकस्वैपिंग () में संदर्भ द्वारा कॉल करके पास करके चक्रीय क्रम में अदला-बदली की जा सकती है। यह फ़ंक्शन संख्याओं को चक्रीय तरीके से स्वैप करता है।
संदर्भ द्वारा कॉल का उपयोग करके चक्रीय क्रम में संख्याओं को स्वैप करने का कार्यक्रम निम्नानुसार दिया गया है -
उदाहरण
#include<iostream> using namespace std; void cyclicSwapping(int *x, int *y, int *z) { int temp; temp = *y; *y = *x; *x = *z; *z = temp; } int main() { int x, y, z; cout << "Enter the values of 3 numbers: "<<endl; cin >> x >> y >> z; cout << "Number values before cyclic swapping..." << endl; cout << "x = "<< x <<endl; cout << "y = "<< y <<endl; cout << "z = "<< z <<endl; cyclicSwapping(&x, &y, &z); cout << "Number values after cyclic swapping..." << endl; cout << "x = "<< x <<endl; cout << "y = "<< y <<endl; cout << "z = "<< z <<endl; return 0; }
आउटपुट
उपरोक्त कार्यक्रम का आउटपुट इस प्रकार है -
Enter the values of 3 numbers: 2 5 7 Number values before cyclic swapping... x = 2 y = 5 z = 7 Number values after cyclic swapping... x = 7 y = 2 z = 5
उपरोक्त कार्यक्रम में, फंक्शन साइक्लिकस्वैपिंग () कॉल बाय रेफरेंस का उपयोग करके तीन नंबरों को चक्रीय क्रम में स्वैप करता है। ऐसा करने के लिए फ़ंक्शन एक चर अस्थायी का उपयोग करता है। इसके लिए कोड स्निपेट इस प्रकार है -
void cyclicSwapping(int *x, int *y, int *z) { int temp; temp = *y; *y = *x; *x = *z; *z = temp; }
फ़ंक्शन मुख्य () में, उपयोगकर्ताओं द्वारा 3 संख्याओं के मान प्रदान किए जाते हैं। फिर इन मानों को स्वैप करने से पहले प्रदर्शित किया जाता है। फंक्शन साइक्लिकस्वैपिंग () को संख्याओं को स्वैप करने के लिए कहा जाता है और फिर उन्हें स्वैप करने के बाद मान प्रदर्शित होते हैं। यह नीचे दिया गया है -
cout << "Enter the values of 3 numbers: "<<endl; cin >> x >> y >> z; cout << "Number values before cyclic swapping..." << endl; cout << "x = "<< x <<endl; cout << "y = "<< y <<endl; cout << "z = "<< z <<endl; cyclicSwapping(&x, &y, &z); cout << "Number values after cyclic swapping..." << endl; cout << "x = "<< x <<endl; cout << "y = "<< y <<endl; cout << "z = "<< z <<endl;