Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 * 및 / 연산자를 사용하지 않고 숫자에 15를 곱합니다.

<시간/>

왼쪽 시프트(<<)를 사용할 수 있습니다. 15를 곱하는 연산자 . shift 1을 왼쪽으로 하면 , 그런 다음 2를 곱합니다. .

주어진 숫자를 4로 왼쪽 시프트하면 , 그러면 16 * n.이 됩니다. 16 * n에서 주어진 숫자를 빼면 15 * n이 됩니다.

또는

8 * n + 4 * n + 2 * n + n으로 나눌 수도 있습니다. 2의 거듭제곱을 쉽게 곱할 수 있습니다. 왼쪽 시프트를 사용합니다.

알고리즘

  • 숫자 n을 초기화합니다.
  • 16 * n을 얻으려면 n <<4를 찾으세요.
  • 위 결과에서 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