在 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