码迷,mamicode.com
首页 > 编程语言 > 详细

剑指offer-JZ48-不用加减乘除做加法(C++)

时间:2020-07-29 21:55:54      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:span   lazy   load   整数   add   clu   off   int   运算符   

题目描述:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。

心得:两数相加还能这么表示

 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 class Solution 
 6 {
 7 public:
 8     int Add(int num1, int num2)
 9     {
10         while (num2 != 0) 
11         {
12             int temp = num1;
13             num1 = num1^num2;
14             num2 = (temp&num2) << 1;
15             
16         
17         }
18         return num1;
19     }
20 };
21 
22 int main()
23 {
24     Solution sol;
25     int num1 = -22;
26     int num2 = -15;
27     int sum = sol.Add(num1, num2);
28     cout << sum << endl;
29 
30     int u;
31     cin >> u;
32 
33     return 0;
34 }

技术图片

 

剑指offer-JZ48-不用加减乘除做加法(C++)

标签:span   lazy   load   整数   add   clu   off   int   运算符   

原文地址:https://www.cnblogs.com/pgzhanglin/p/13399200.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!