Program to find max(x,y) or Min(x,y) without using any relational and logical operator.
EXTRA DOSE: One More thing to find min and max...
Code: C
int maximum(int x, int y)
{
int fNum[2],temp,num[2];
num[0] = x;
num[1] = y;
temp=fNum[ Fun4Sign(x - y)];
return( temp);
}
int Fun4Sign(int sgn)
{
int temp;
temp= unsigned(sgn) >> (sizeof(int)*8-1); return(temp);
}
Code: C
int MinimumOf( int a, int b)
{
return( b + ((a - b) & ((a - b) >> (sizeof(int) * CHAR_BIT - 1))) );
}
Code: C
int MaximumOf( int a, int b)
{
return( a - ((a - b) & ((a - b) >> (sizeof(int) * CHAR_BIT - 1))) );
}

