이진수의+출력

= 헬로월드 문제 5 - 이진수의 출력 = 입력되는 10진수를 2진수로 출력하라

입력
첫번째 정수 T 는 테스트 케이스의 개수를 의미한다. 각각의 정수 n 은 10진수로 가정한다.

출력
출력되는 문자열은 0과1로 이루어진 이진수의 문자열이다. 이진수는 상위0비트는 모두제거된 형태로 예를들어 0011 이면 11만 출력한다.(단 0은 제외)

입력 예
3 7 76 0

출력 예
111 1001100 0

출처
[]

Source Code code format="java5" import java.util.Stack;

public class BinString { public static void main(String[] args) { int dec = Integer.parseInt(args[0]);

// 0은 제외 if(dec == 0) { System.out.println(dec);

return; }

Stack stack = new Stack;

// 스택에 나머지를 넣는다. while(dec > 0) { stack.push(dec % 2);

dec /= 2; }

while(!stack.empty) { System.out.println(stack.pop); }   } } code Python code format="python" def binary(n):

if n == 0: return

binary(n // 2)

print(n % 2, end='')

binary(8) code

Comment 진법 변환 알고리즘을 스택을 이용해서 구현하였다. 재귀 구현도 하였음.