Programa Java para agregar dos strings binarias

Cuando se agregan dos strings binarias, la suma devuelta también es una string binaria.

Ejemplo:

Input :  x = "10", y = "01"
Output: "11"

Input :  x = "110", y = "011"
Output: "1001"
Explanation:
  110 
+ 011
=1001

Aquí, debemos comenzar a sumar desde el lado derecho y cuando la suma devuelta sea más de uno, almacenar el acarreo para los siguientes dígitos.

Veamos un programa para tener un concepto claro del tema anterior.

Ejemplo:

Java

// java program to add two binary strings
  
public class gfg {
  
    // Function to add two binary strings
    static String add_Binary(String x, String y)
    {
  
        // Initializing result
        String res = "";
  
        // Initializing digit sum
        int d = 0;
  
        // Traversing both the strings starting
        // from the last characters
        int k = x.length() - 1, l = y.length() - 1;
        while (k >= 0 || l >= 0 || d == 1) {
  
            // Computing the sum of last
            // digits and the carry
            d += ((k >= 0) ? x.charAt(k) - '0' : 0);
            d += ((l >= 0) ? y.charAt(l) - '0' : 0);
  
            // When the current digit's sum is either
            // 1 or 3 then add 1 to the result
            res = (char)(d % 2 + '0') + res;
  
            // Computing carry
            d /= 2;
  
            // Moving to the next digits
            k--;
            l--;
        }
  
        return res;
    }
  
    // The Driver code
    public static void main(String args[])
    {
        String x = "011011", y = "1010111";
  
        System.out.print(add_Binary(x, y));
    }
}
Producción

1110010

Publicación traducida automáticamente

Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *