Compare two integers without using any Comparison operator
Last Updated :
30 Jan, 2023
Given two integers A & B. Task is to check if A and B are same or not without using comparison operators.
Examples:
Input : A = 5 , B = 6
Output : 0
Input : A = 5 , B = 5
Output : 1
Note : 1 = “YES” and 0 = “NO”
The idea is pretty simple we do Xor of both elements ( A, B ). if Xor is zero then two numbers are equal else not.
Below is the implementation of the above idea :
C++
#include<bits/stdc++.h>
using namespace std;
bool EqualNumber( int A, int B)
{
return ( A ^ B ) ;
}
int main()
{
int A = 5 , B = 6;
cout << !EqualNumber(A, B) << endl;
return 0;
}
|
Java
import java.util.*;
class solution
{
static boolean EqualNumber( int A, int B)
{
if ((A^B) != 0 )
return true ;
else
return false ;
}
public static void main(String args[])
{
int A = 5 , B = 6 ;
if (EqualNumber(A, B) == false )
System.out.println( 1 );
else
System.out.println( 0 );
}
}
|
Python3
def EqualNumber(A, B):
return ( A ^ B )
A = 5 ; B = 6
print ( int ( not (EqualNumber(A, B))))
|
C#
using System;
class GFG
{
static bool EqualNumber( int A, int B)
{
if (( A ^ B ) > 0)
return true ;
else
return false ;
}
public static void Main()
{
int A = 5 , B = 6;
if (!EqualNumber(A, B) == false )
Console.WriteLine( "0" );
else
Console.WriteLine( "1" );
}
}
|
PHP
<?php
function EqualNumber( $A , $B )
{
return ( $A ^ $B ) ;
}
$A = 5 ;
$B = 6;
echo ((int)!(EqualNumber( $A , $B ))) . "\n" ;
?>
|
Javascript
<script>
function EqualNumber(A, B)
{
return ( A ^ B ) ;
}
let A = 5 , B = 6;
if (!EqualNumber(A, B) == false )
document.write( "0" );
else
document.write( "1" );
</script>
|
Time Complexity: O(1)
Auxiliary Space: O(1)
2nd Method:
Another Approach is using “-” (Minus/Subtraction Operator). If the Result of Subtraction between the two Numbers is “Zero”, then they are equal (we return ‘1’), else they are not equal (we return ‘0’).
C++
#include <iostream>
using namespace std;
int EqualNumber( int A, int B)
{
int diff = A - B;
if (diff)
return 0;
else
return 1;
}
int main()
{
int A = 5, B = 6;
cout << EqualNumber(A, B);
return 0;
}
|
Java
import java.util.*;
public class GFG
{
static int EqualNumber( int A, int B)
{
int diff = A - B;
if (diff != 0 )
return 0 ;
else
return 1 ;
}
public static void main(String[] args)
{
int A = 5 , B = 6 ;
System.out.println(EqualNumber(A, B));
}
}
|
Python
def EqualNumber(A, B):
diff = A - B
if (diff):
return 0
else :
return 1
A = 5 ; B = 6
print ((EqualNumber(A, B)))
|
C#
using System;
public class GFG {
static int EqualNumber( int A, int B)
{
int diff = A - B;
if (diff != 0)
return 0;
else
return 1;
}
static public void Main()
{
int A = 5, B = 6;
Console.Write(EqualNumber(A, B));
}
}
|
Javascript
<script>
function EqualNumber(A, B)
{
var diff = A - B;
if (diff)
return 0
else
return 1
}
let A = 5 , B = 6;
document.write(EqualNumber(A, B))
</script>
|
Time Complexity: O(1)
Auxiliary Space: O(1)
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...