[백준] 11005번 진법 변환 2 - 자바
문제
해설
10진수를 B진법으로 표현하기 위해선 10진수의 숫자를 B로 나누고 그 나머지를 역순으로 출력한다. (10진수 숫자 n은 계속 B로 나누면서 0이 아닐 때까지 반복한다. )
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(st.nextToken());
int base = Integer.parseInt(st.nextToken());
while(n > 0) {
if(n%base >= 10) {
sb.append((char)(n%base+55));
}else sb.append((char)(n%base +'0'));
n /= base;
}
System.out.println(sb.reverse());
}
}
[참고]
1. 문자열 <-> 숫자 변환
위에 코드에서 보았듯이 숫자 65를 맞추던지 + 'A' 를 더하면 된다. 이를 (char) 를 이용해서 형변환 한다.
2. 문자열을 거꾸로 출력하기 (https://yangbox.tistory.com/59)
Java String reverse (문자열 뒤집기)
Java String reverse (문자열 뒤집기) 자바에서 문자열을 다루며 빈번하게 하는 작업 중 하나가 뒤집기(reverse)이다. 자바에서 문자열을 뒤집을 수 있는 방법 중 몇 가지를 소개한다. (String 클래스에 reve
yangbox.tistory.com
'백준 문제풀이 > Java' 카테고리의 다른 글
[백준] 2903번 중앙 이동 알고리즘 (0) | 2024.03.26 |
---|---|
[백준] 2720번 세탁소 사장 동혁 (0) | 2024.03.26 |
[백준] 2745번 진법 변환 (ft. 아스키코드표) ⭐ (1) | 2024.03.26 |
[백준] 2563번 색종이 ⚠️ (2) | 2024.03.25 |
[백준] 10798번 세로읽기 (0) | 2024.03.23 |