[Baekjoon] 10829. 이진수 변환[B2]

yunh·2022년 1월 20일
0
post-thumbnail

📚 문제

자연수 N이 주어진다. N을 이진수로 바꿔서 출력하는 프로그램을 작성하시오.

입력: 첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 100,000,000,000,000)

출력: N을 이진수로 바꿔서 출력한다. 이진수는 0으로 시작하면 안 된다.

예제 입력1

53

예제 출력1

110101

재귀함수를 사용해서 해결해보았다.

10진수를 2진수로 바꾸기 위해 2로 나눌 때마다 나머지 값을 저장하면 된다.

함수를 다시 호출 할 때마다 자릿수를 바꾸어줘야 하므로, 함수에 10을 곱해 다시 호출한다.

마지막 1이 남을 때는 맨 끝 자리에 붙여주면 되므로 1로 return 한다.

📒 코드

N = int(input())

def jinsu2(num):
    if num == 1:
        return 1
    else:
        return num % 2 + 10 * jinsu2(num//2) 

print(jinsu2(N))

🔍 결과

profile
passionate developer

0개의 댓글