যোগ এবং বিয়োগ অপারেশনের সাহায্যে আমরা দুটি সংখ্যাকে একটি মেমরি লোকেশন থেকে অন্য মেমরি লোকেশনে সওয়্যাপ করতে পারি।
অ্যালগরিদম
অ্যালগরিদম নিচে ব্যাখ্যা করা হল:
START
ধাপ ১: x এবং y দুটি ভেরিয়েবল ডিক্লেয়ার করুন। ধাপ ২: কিবোর্ড থেকে দুটি সংখ্যা পড়ুন। ধাপ ৩: সংখ্যাগুলো সওয়্যাপ করুন। // যোগ এবং বিয়োগ অপারেশন প্রয়োগ করে সংখ্যাগুলো সওয়্যাপ করুন। i. x = x + y ii. y = x - y iii. x = x - y ধাপ ৪: x এবং y মান প্রিন্ট করুন।
প্রোগ্রাম
থার্ড ভেরিয়েবল বা টেম্পোরারি ভেরিয়েবল ছাড়া দুটি সংখ্যা সওয়্যাপ করার ব্যাখ্যা করে C প্রোগ্রাম নিচে দেওয়া হল:
#includeint main(){ int x, y; printf("x এবং y মান লিখুন: "); scanf("%d%d", &x, &y); // x = 20 এবং y = 30 ধরুন x = x + y; // x = 20+30 = 50 y = x - y; // y = 50-30 = 20 x = x - y; // x = 50-20 = 30 printf("সওয়্যাপ করার পর x=%d এবং y=%d", x, y); return 0; }
আউটপুট
আপনি নিচের আউটপুট পাবেন:
x এবং y মান লিখুন: 20 30 সওয়্যাপ করার পর x=30 এবং y=20
নোট - আমরা গুণ এবং ভাগ এবং বিটওয়াইজ XOR অপারেটর ব্যবহার করে থার্ড ভেরিয়েবল ছাড়া দুটি সংখ্যা সওয়্যাপ করতে পারি।
গুণ এবং ভাগ অপারেটর ব্যবহার করে দুটি সংখ্যা সওয়্যাপ করার আরেকটি উদাহরণ বিবেচনা করুন।
প্রোগ্রাম
দুটি সংখ্যা সওয়্যাপ করার সক্রিয় ফাংশনিং ডেমনস্ট্রেট করার C প্রোগ্রাম নিচে দেওয়া হল:
#includeint main(){ int x, y; printf("x এবং y মান লিখুন: "); scanf("%d%d", &x, &y); x = x * y; y = x / y; x = x / y; printf("সওয়্যাপ করার পর x=%d এবং y=%d", x, y); return 0; }
আউটপুট
উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের আউটপুট পাওয়া যাবে:
x এবং y মান লিখুন: 120 250 সওয়্যাপ করার পর x=250 এবং y=120