সওয়াপ ( Swap) বদল করা বা বিনিময় এর একটি পরিচিত ইংরেজি প্রতিশব্দ (Exchange) .
মনে করি, int a = 10, int b = 20 এখন বদল করে a = 20, b = 10 করতে চাই।এটিই সওয়াপ ( Swap) বা বদল করা।
আমি আগেই বলেছি, কম্পিউটার সরাসরি যোগ, বিয়োগ, গুন, ভাগ , করতে পারে না ভেরিরেবল এর মানকে বাইনারিতে রুপান্তর করে Addition, Multiplication, Subtraction কার্য সম্পাদন করে।
#include <stdio.h> int main () { int a = 10, b = 20; int temp; //Swap useing 3rd variable temp = a; a = b; b = temp; printf("a value is = %d\n", a); printf("b value is = %d\n", b); return 0; }
Output
a value is = 20
b value is = 10
এখনে লক্ষনীয় যে, temp = a; লাইন দ্বারা temp ভেরিয়াবলে আমি a এর মানটা রেখেছি। a খালি হয়েছে ।
a = b; পরের লাইনে b এর মান a তে রাখলাম । b খালি হয়েছে।
এখন, temp এতে রাখা a এর মান b তে রেখে দিছি। তাহলে, a = 20, b = 10 বদল করা হয়ে গেল।
এখন আমরা ৩য় ভেরিয়েবল ছাড়া সওয়াপ ( Swap) করব
#include <stdio.h> int main() { int a = 10, b = 20; // Swap without 3rd Variable a = a - b; b = a + b; a = b - a; printf("After swapping, a = %d\n", a); printf("After swapping, b = %d\n", b); return 0; }
আউটপুট
After swapping, a = 20
After swapping, b = 10
এখানে, a = a – b; এই লাইনে ১০-২০ = -১০, এখন a = তে -১০ আছে।
b = a + b; এখানে -১০ + ২০ = ১০, এখন b তে ১০ আছে।
পরের লাইনে a = b – a মানে ১০ – (-১০) = ২০ এখন a তে ২০ আছে।
এক্সর অপারেটর ব্যবহার করে সওয়াপ ( Swap)
#include<stdio.h> void swap(int m, int n) { m = m ^ n; n = m ^ n; m = m ^ n; printf("After Swapping "); printf("\n\nFirst Number is: %d",m); printf("\nSecond Number is: %d",n); } int main (){ int a = 10, b = 20; swap(a, b); }
Output
After Swapping
First Number is: 20
Second Number is: 10
নিচের ছবিটি দেখে বুজার চেস্টা কর

০ ০ = ০, ০ ১ =১, ১ ০=১, ১ ১ =০ এক্সর এর বেসিক।
ইনপুট জিরো হতে পারবে না
#include<stdio.h> void swap(int m, int n) { if(m != 0 && n != 0) { m = m * n; n = m/n; m = m/n; printf("\nAfter Swapping, the numbers are: "); printf("\n\nFirst Number is m: %d",m); printf("\nSecond Number is n: %d",n); } else { printf("\n Both the numbers should be Non-Zero!"); } } int main() { int m = 10, n = 20; swap(m,n); return 0; }
আউটপুট
After Swapping
First Number is m: 20
Second Number is n: 10
সি অলসদের জন্য একটি ( Swap) এক লাইনে
#include<stdio.h> void swap(int m, int n) { n = m + n - (m = n); printf("After Swapping"); printf("\n\nFirst Number is: %d",m); printf("\nSecond Number is: %d",n); } int main() { int m = 10, n = 20; swap(m,n); return 0; }
আউটপুট
After Swapping
First Number is: 20
Second Number is: 10
নিচের লিংক গুলি ফলো কর
- টাইপ কাস্টিং কি ( What is Type Casting )
- গো-টু ইন সি ( goto in c)
- কন্টিনিউ ইন সি ( continue in c )
- ব্রেক কিওয়ার্ড সি (break keyword in c)
- ইনফিনিট লুপ সি ( Infinite loop in C)
- নিস্টেড লুপ সি (Nested loops C)
- ফর লুপ সি (for loop c)
- হুইল লুপ (while loop)