백준 문제풀기/JAVA
[백준 2745 JAVA 자바] 진법 변환
냉동피자
2023. 8. 7. 21:08
코딩 수업을 들으면
선생님, 교수님께서 꼭 내주시는 문제, 과제중 하나가
바로 이 진법 변환입니다
분명 진법 변환을 어떻게 하는지
머리로는 알고 있습니다
처음엔 어려울 수 있으니
천천히 종이와 팬으로 써가면서 연습해봅시다
1. 1~9를 넘어서 A=10, B=11, C= 12 ... 대문자 알파벳을 숫자로 변환합시다
2. 진법에는 거듭제곱이 이용됩니다
3. 알맞게 출력합시다
코드입니다
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String str = scan.next();
int n = scan.nextInt();
int sum=0;
for(int i=0;i<str.length();i++) {
int k = str.charAt(i);
if (k>64) {
k = (int)k-55;
}
else {
k = (int)k-48;
}
sum += k*(Math.pow(n, str.length()-i-1));
}
System.out.println(sum);
}
}
Math.pow(a,b)는 a의 b제곱입니다
반환값이 double이기에 주의합시다
저는 int인 k를 곱해서
자연스럽게 int인 sum에 더할 수 있게 된거에요