在 C++ 中不使用 * 和 / 运算符而将一个数乘以 15
我们可以使用左移(<<)运算符来乘15。如果我们左移1,那么我们乘以2。
如果我们用4左移给定的数字,那么我们将得到16 * n。从 16 * n 中减去给定的数字将得到 15 * n。
或
我们还可以将它分为8 * n + 4 * n + 2 * n + n。你可以使用左移轻松地将2的幂进行相乘。
算法
- 初始化数 n。
- 查找 n << 4 以获得 16 * n。
- 从上述结果中减去 n。
- 返回最终答案。
实现
以下是 C++ 中上述算法的实现
#include <bits/stdc++.h>
using namespace std;
long long getMultiplicationResult(long long n) {
return (n << 4) - n;
}
int main() {
long long n = 15;
cout << getMultiplicationResult(n) << endl;
return 0;
}输出
如果运行上面的代码,那么你将得到以下结果。
225
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP