[백준] 11005. 진법 변환2
2023. 7. 19. 15:28ㆍ코딩테스트/백준
[문제]
https://www.acmicpc.net/problem/11005
11005번: 진법 변환 2
10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를
www.acmicpc.net
[풀이]
문자열 배열 s에
s를 역순으로 출력. 이때 문자열 배열이므로 0~9사이이면 +'0'을, A~Z 사이이면 -10+'A'를 해준다.
[코드]
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main(void)
{
long long neww;
long long k;
long long si = 0;
char s[100001];
scanf("%llu %llu", &neww, &k);
while (neww > 0) {
s[si++] = neww % k;
neww /= k;
}
for (long long i = si - 1; i >= 0; i--) {
if (s[i] >= 0 && s[i] <= 9)
printf("%c", s[i]+'0');
else
printf("%c", s[i] - 10 + 'A');
}
}
'코딩테스트 > 백준' 카테고리의 다른 글
[백준] 24262. 알고리즘 수업 - 알고리즘의 수행 시간 1 (0) | 2023.07.19 |
---|---|
[백준]5622. 다이얼 (0) | 2023.07.19 |
debug error run-time check failure #2 (0) | 2023.07.18 |
[백준] 15894. 수학은 체육과목 입니다 (0) | 2023.07.08 |
[백준]2869. 달팽이는 올라가고 싶다 (0) | 2023.07.03 |