작성
·
187
0
int main(){
int n = 100;
int b = 2;
while(n > 1){
v.push_back(n % b);
n /= b;
}
if(n == 1)v.push_back(1);
reverse(v.begin(), v.end());
for(int a : v) {
if(a >= 10)cout << char(a + 55);
else cout << a;
}
return 0;
}
ㅡㅡㅡㅡㅡㅡㅡ
안녕하세요. 여기서 if(a>=10) cout << char(a+55); 부분이 잘 이해가 되지 않습니다.
a가 10이상이면 'A' 부터 인데 이 라인이 왜 있는 건가요??
답변 2
1
안녕하세요 머리가 짧아 슬픈 개발자님 ㅎㅎ
해당 부분은 16진법을 위해 필요한 부분입니다. 잘 이해하셨네요. ㅎㅎ
또한, 혹시나 다른 분들도 헷갈리실까봐 교안에 주석을 추가해 수정해놓겠습니다.
감사합니다.
0