To swap two numbers N1 and N2, using a third variable T... T = N1;
N1 = N2;
N2 = T;
Chat with our AI personalities
The required c program is given below /*Swapping(interchange) the two entered numbers*/ #include<stdio.h> main() { /*Without using third variable*/ int a,b,t; printf("Enter a:"); scanf("%d",&a); printf("Enter b:"); scanf("%d",&b); a=a+b; b=a-b; a=a-b; printf("\n After swapping without using third variable"); printf("\na=%d\nb=%d",a,b); }
Compare the first two numbers with the ternary operator. Store the result in a temporary variable. Compare the temporary variable with the third number, again using the ternary operator.
a ^= b; b ^= a; a ^= b;
the simple way can be explained by example as: let there be two integers as : int a=10,b=5; if we want to use third variable then let third variable be int c; and sorting is done as : c=a; a=b; b=c; if it is to be done by without using third variable then : a=a+b; b=a-b; a=a-b; at last the variable is sorted.
I'll assume you meant to say: Swapping instead of Swamping. You would need to perform the XorSwap algorithm: void XorSwap(int *x, int *y) { if(x != y) { *x ^= *y; *y ^= *x; *x ^= *y; } } You can read more about this algorithm on Wikipedia.