在 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

更新于: 25-Oct-2021

286 次浏览

职业生涯 起步

完成课程获得认证

立即开始
广告