Open In App

Convert numbers into binary representation and add them without carry

Last Updated : 01 Nov, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Given two numbers N and M. The task to convert both the numbers in the binary form then add respective bits of both the binary converted numbers but with a given condition that there is not any carry system in this addition. 
 

Input: N = 37, M = 12
Output: 41

Input: N = 456, M = 854
Output: 670

 

Approach: 
 

  • If we don’t consider carry then the binary addition of two bits will be: 
     
    1 + 0 = 1
0 + 1 = 1
0 + 0 = 0
1 + 1 = 0 (No carry)
  • If you observe clearly you will notice that this is just bitwise XOR of two numbers. 
     

Below is the implementation of the above approach 
 

C++




// C++ program to add two binary
// number without carry
#include<bits/stdc++.h>
using namespace std;
 
// Function returns sum of both
// the binary number without
// carry
int NoCarrySum(int N, int M)
{
    // XOR of N and M
    return N ^ M;
}
     
// Driver code
int main()
{
    int N = 37;
    int M = 12;
     
    cout << NoCarrySum(N, M);
    return 0;
}


Java




// Java program to add two binary
// number without carry
import java.util.*;
 
class GFG{
 
// Function returns sum of both
// the binary number without
// carry
static int NoCarrySum(int N, int M)
{
    // XOR of N and M
    return N ^ M;
}
     
// Driver code
public static void main(String[] args)
{
    int N = 37;
    int M = 12;
    System.out.print(NoCarrySum(N, M));
}
}
 
// This code is contributed by amal kumar choubey


Python3




# Python3 program to add two binary
# number without carry
 
# Function returns sum of both
# the binary number without
# carry
def NoCarrySum(N, M):
 
    # XOR of N and M
    return N ^ M
 
# Driver code
N = 37
M = 12
print(NoCarrySum(N, M))
 
# This code is contributed by sayesha


C#




// C# program to add two binary
// number without carry
using System;
 
class GFG{
 
// Function returns sum of both
// the binary number without
// carry
static int NoCarrySum(int N, int M)
{
     
    // XOR of N and M
    return N ^ M;
}
     
// Driver code
static public void Main(String[] args)
{
    int N = 37;
    int M = 12;
    Console.Write(NoCarrySum(N, M));
}
}
 
// This code is contributed by Rajput-Ji


Javascript




<script>
 
// Javascript program to add two binary
// number without carry
 
// Function returns sum of both
// the binary number without
// carry
function NoCarrySum(N, M)
{
    // XOR of N and M
    return N ^ M;
}
     
// Driver code
    let N = 37;
    let M = 12;
     
    document.write(NoCarrySum(N, M));
 
</script>


Output

41

Time complexity : O(1)
Auxiliary space : O(1)



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads