Study/Algorithm
BOJ (C/C++) 11005번: 진법 변환 2
hwooo
2023. 4. 27. 15:56
https://www.acmicpc.net/problem/11005
11005번: 진법 변환 2
10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를
www.acmicpc.net


코드
#include <stdio.h>
#include <vector>
using namespace std;
int main() {
int N, B;
vector <int> V;
scanf("%d %d", &N, &B);
// 숫자를 36진수 형태로 나눠줌
while (N != 0) {
V.push_back(N%B);
N /= B;
}
// 10을 넘어간다면 알파벳으로 바꿔서 출력
for (int i = V.size() - 1; i >= 0; i--) {
if (V[i] >= 10) printf("%c", V[i] - 10 + 'A');
else printf("%d", V[i]);
}
return 0;
}