请不用*和/实现
实现n*7和n/7,
注意:
1.不能使用*和/操作符。
2.怎样达到最好的性能。
[解决办法]
- C/C++ code
//乘法int chengji = (n << 3 ) - n;
[解决办法]
- C/C++ code
//除法#include<iostream>using namespace std;int main(){ int n ; cout << "输入一个数字:"<< endl; cin >> n; if (n >7 ) //避免n<=7时误减 n= n - n%7; int count = 0;//计数 while((n -= 7)>=0) count++; cout <<"n / 7 = "<< count << endl; return 0;}/*==========运行结果============输入一个数字: 22 n / 7 = 3 请按任意键继续. . . */
[解决办法]
乘法用位移实现了,除法可以利用乘法实现
int ret = 0;
for (ret=0; ret*7 <= n; ret++);//其中ret*7可以按乘法的实现方式替换
ret-1 就是n/7的结果啊。