在 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 次瀏覽

職業生涯 起步

完成課程獲得認證

立即開始
廣告