문제:
1개의 10진수가 주어집니다. 이것을 2진수, 8진수, 16진수로 변환해봅시다.
입력:
16
출력:
10000
20
10
코드:
public static void main(String[] args) {
// TODO Auto-generated method stub
//10진수를 2,8,16 진수로 바꿔 출력하기
Scanner sc = new Scanner(System.in);
int decimalNum = sc.nextInt();
System.out.println(Integer.toBinaryString(decimalNum));
System.out.printf("%o\n",decimalNum);
System.out.printf("%x",decimalNum);
}
}
첫 번째 방법:
2진수의 경우 지시자를 통한 printf 출력이 불가능( 2진수 지시자가 존재하지 않음)하므로 'Integer.toBinaryString(num)을 통해 입력받은 값을 2진수로 변경해주어 출력함
8,16진수의 경우 지시자가 존재하므로 printf를 통해 출력
public class Week3Problem1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//10진수를 2,8,16 진수로 바꿔 출력하기
Scanner sc = new Scanner(System.in);
int decimalNum = sc.nextInt();
System.out.println(Integer.toBinaryString(decimalNum));
System.out.println(Integer.toOctalString(decimalNum));
System.out.println(Integer.toHexString(decimalNum));
}
}
두 번째 방법:
2,8,16 진수 모두 'Intger.to~String(num)' 형식으로 변환하여 출력하도록 하였음.
'Java > 실습' 카테고리의 다른 글
[Java] 케이크 나누기 (1) | 2022.05.14 |
---|---|
[Java] 2진수를 10진수로 바꾸기 (0) | 2022.05.14 |
[Java] 상수를 이용한 수식 계산 (0) | 2022.05.14 |
[Java] 변수 값 변경하기 (0) | 2022.05.14 |
[Java] JAVA의 시작 (0) | 2022.05.14 |