每日一题 No.17 a+b(位操作符)
来源:互联网 发布:巨人网络a股上市时间 编辑:程序博客网 时间:2024/06/05 19:03
本题要求:
昨天学了位操作符,进来让我们来用位操作符写2个数相加吧,给定2个数a,b,计算a+b
输入格式:
a b
输出格式:
a+b的值
输入样例:
155 152
输出样例:
307
解题思路 :
就拿1+1为例
1 ^ 1 如下图所示
1 & 1 如下图所示
1 << 1 如下图所示
0 ^ 2 如下图所示
0 & 2 如下图所示
跳出递归函数。
得到s = 2
代码 :
#include <iostream>using namespace std; int add(int a, int b) { if (b == 0) { return a; } int s = a ^ b; int c = (a & b) << 1; return add(s, c);}int main() { int a, b; cin >> a >> b; cout << add(a, b) << endl; return 0; }
0 0
- 每日一题 No.17 a+b(位操作符)
- 每日一题 No.18 a-b(位操作符)
- 每日一题 No.19 a*b(位操作符)【仅限正数】
- 每日一题 No.20 a*b(位操作符)【正负数】
- 每日一题 No.21 a/b(位操作符)【正整数】
- 每日一题 No.22 a/b(位操作符)【正负数】
- 每日一题 No.16 位操作符的学习与应用
- 【C语言 每日一题】SOJ 1000 A-B
- 位操作 A + B Problem
- 每日一题(4)—— (a ^ b << 2)
- 每日一算法 A^B Problem
- 每日一题A
- 每日一题A
- 每日一题A
- 每日一题 No.36 AI贪吃蛇(一)
- 每日一题 No.43 Java基础学习(一)
- 每日一题 No.14 全排列(利用next_permutation)
- 每日一题 No.24 跑马灯(字符串运用)
- 杭电oj 1006 Tick and Tick
- 杭电oj 1006 Tick and Tick
- js map操作
- PLC控制系统的软件设计
- 关于使用 iOS 中Instrument只显示地址不显示具体代码的问题
- 每日一题 No.17 a+b(位操作符)
- numpy 常用操作矩阵(API 简介)
- 前端中的循环方法
- linux 下的gawk
- MyBatis 关联映射之多对多
- 文件名批量修改工具V1.0 绿色版
- 感想
- MTK6580M 调试ADC mcp3421 I2C接口
- jQuery实现web备忘录-2(添加细节)