大数求和:
给定两个非常大的正整数A和B,位数在50至100之间。求C=A+B;
输入:
因为A和B很大,从高位到低位,以字符串的形式输入两行数字A和B。A和B的位数在50至100之间。
输出:
以字符串形式,输出一行,表示A和B的和。
样例输入:
11111111111111111111111111111111111
22222222222222222222222222222222222
样例输出:
给定两个非常大的正整数A和B,位数在50至100之间。求C=A+B;
输入:
因为A和B很大,从高位到低位,以字符串的形式输入两行数字A和B。A和B的位数在50至100之间。
输出:
以字符串形式,输出一行,表示A和B的和。
样例输入:
11111111111111111111111111111111111
22222222222222222222222222222222222
样例输出:
33333333333333333333333333333333333
代码实现:
package huawei
import (
"bytes"
"fmt"
"strconv"
"strings"
)
func Test2Base() {
s := add("91111111111111111111111111111111111", "122222222222222222222222222222222222")
fmt.Println(s)
}
func add(a string, b string) string {
//位数较少的,高位补0
if len(a) < len(b) {
a = strings.Repeat("0", len(b)-len(a)) + a
} else if len(a) > len(b) {
b = strings.Repeat("0", len(a)-len(b)) + b
}
strLen := len(a)