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
*/