정수(최대 2자리)를 2진수로 변환하여 출력하는 프로그램을 작성해보자
--- 입력 값 ---
정수: 127
--- 출력 값 ---
127: 1111111 --> 문제 오류로 입력값 정수 최대 99로 진행하였음
--- Hint ---
/, % 만 이용하여 진행할 것
Integer.toBinaryString(value) 사용하지 말 것
루프문 사용 하지 말 것
음수 제외
package day0328;
import java.util.Scanner;
public class Practice9 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("정수: ");
int inputValue = sc.nextInt();
if (inputValue<0) {
System.exit(0);
}
char[] binary = new char[7];
binary [0]='0';
binary [1]='0';
binary [2]='0';
binary [3]='0';
binary [4]='0';
binary [5]='0';
binary [6]='0';
int inputValueBack=inputValue;
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[6] = '1';
}
inputValue = inputValue/2;
}
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[5] = '1';
}
inputValue = inputValue/2;
}
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[4] = '1';
}
inputValue = inputValue/2;
}
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[3] = '1';
}
inputValue = inputValue/2;
}
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[2] = '1';
}
inputValue = inputValue/2;
}
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[1] = '1';
}
inputValue = inputValue/2;
}
if(inputValue >=1) {
if(inputValue %2 == 1) {
binary[0] = '1';
}
inputValue = inputValue/2;
}
// 문자열 이어 붙이기
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(inputValueBack +": "+ binary[0]).append(binary[1]).append(binary[2]).append(binary[3]).append(binary[4]).append(binary[5]).append(binary[6]);
System.out.println(stringBuilder);
}
}
반응형
'알고리즘 문제 풀이 > Power JAVA' 카테고리의 다른 글
p128)5번 문제, 두 개의 주사위 (0) | 2022.03.30 |
---|---|
p128)문제 3번 369 게임 (0) | 2022.03.30 |
(Power JAVA) p85 - 8번 문제 (0) | 2022.03.07 |
(Power JAVA) p85 - 7번 문제 (0) | 2022.03.05 |
(Power JAVA) p84 - 6번 문제 (0) | 2022.02.26 |
댓글