비트 연산자 중 하나로, 비트들은 왼쪽 또는 오른쪽으로 이동시키는 연산입니다.
비트들을 왼쪽으로 이동시킵니다. 이동한 비트의 오른쪽에 새로운 비트가 0으로 채워지고, 가장 왼쪽에 있는 비트는 버려집니다.
#include <iostream>
using namespace std;
int main() {
int a = 5; // 이진수로 0000 0101
int b = a << 1; // 왼쪽으로 1비트 시프트 (이진수로 0000 1010)
int c = a << 2; // 왼쪽으로 2비트 시프트 (이진수로 0001 0100)
return 0;
}
a = 5, b = 10, c = 20
비트들을 오른쪽으로 이동시킵니다. 이동한 비트의 왼쪽에 새로운 비트가 0으로 채워지고, 가장 오른쪽에 있는 비트는 버려집니다.
#include <iostream>
using namespace std;
int main() {
int a = 5; // 이진수로 0000 0101
int b = a >> 1; // 왼쪽으로 1비트 시프트 (이진수로 0000 0010)
int c = a << 2; // 왼쪽으로 2비트 시프트 (이진수로 0000 0001)
return 0;
}
a = 5, b = 2, c = 1
정수 n이 1시간마다 2배 씩 증가합니다. t시간 후 n의 값은?
#include <iostream>
using namespace std;
int main() {
int n = 7;
int t;
cin >> t;
n = n << t;
cout << n << endl;
return 0;
}