整数求和

  1. 不使用四则运算,求两个整数的和
int count(int a,int b){
while(a!=0){
int cur=a^b;//异或运算,不同为一相同为0,替代没有进位的加法运算。
a=(a&b)<<1;//与运算,用于判断哪些位进位,没有进位则终止循环
b=cur;
}
return b;
}

  1. 求两个二进制字符串的和
string addBinary(string a, string b) {
        int a1 = a.size();
        int b1 = b.size();
        while (a1 < b1) {
            a = "0" + a;
            a1++;
        }
        while (a1 > b1) {
            b = "0" + b;
            b1++;
        }
        for (int i = a1 - 1; i > 0; i++) { //解决字符串非首位的加法运算
            a[i] = a[i] - '0' + b[i];
            if (a[i] >='2') {
                a[i] = (a[i] - '0') % 2+'0';
                a[i - 1] = a[i - 1]  + 1;
            }
        }
        a[0] = a[0] - '0' + b[0];//处理首位的进位问题
            if (a[0] >= '2') //若大于等于2,需要进一
            {
                a[0] = (a[0] - '0') % 2 + '0';
                a = '1' + a;
            }
            return a;
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 运算符是处理数据的基本方法,用来从现有的值得到新的值。JavaScript 提供了多种运算符,本章逐一介绍这些运算...
    徵羽kid阅读 3,975评论 0 0
  • 一、ECMAScript 一元运算符 一元运算符只有一个参数,即要操作的对象或值。它们是 ECMAScript 中...
    耦耦阅读 3,526评论 0 0
  • •1 C语言程序的结构认识 用一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使读者对c语...
    CONLYOUC阅读 12,782评论 9 66
  • 探访的第三位独居者是聋哑人,大约五六十岁的样子,她的脸上有皱纹,心理年龄却停留在孩子的阶段。我们进屋的时候她正在煮...
    mo慢慢阅读 1,280评论 0 1
  • 感谢本我的指引! 感谢生活的检验! 感谢生命的美好! 感谢所有的结果都是你的答案,原生家庭的我和本我的结果...
    水花皇冠阅读 1,066评论 0 0