How to sum two binary strings in Go

1 Answer

0 votes
package main

import (
    "fmt"
    "strconv"
)

func addBinaryStrings(a, b string) (string, error) {
    num1, err1 := strconv.ParseInt(a, 2, 64)
    num2, err2 := strconv.ParseInt(b, 2, 64)

    if err1 != nil || err2 != nil {
        return "", fmt.Errorf("invalid binary input")
    }

    sum := num1 + num2
    return strconv.FormatInt(sum, 2), nil
}

func main() {
    a, b := "11", "1"
    result, err := addBinaryStrings(a, b)
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println(result) 
    }

    a, b = "1010", "1011"
    result, err = addBinaryStrings(a, b)
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println(result) 
    }
}



/*
run:

100
10101

*/

 



answered Jul 2, 2025 by avibootz
edited Jul 3, 2025 by avibootz
...