PS/CodeUp
CodeUp / Recursion(재귀) /1920번 / 2진수 변환 /C++
KimMinJun
2020. 9. 13. 11:53
문제 설명
어떤 1010진수 nn이 주어지면 22진수로 변환해서 출력하시오.
예)
10 -----> 1010
0 -----> 0
1 -----> 1
2 -----> 10
1024 -----> 10000000000
이 문제는 반복문을 이용하여 풀 수 없습니다.
금지 키워드 : for while goto
입력
1010진수 정수 nn이 입력된다.
(0<=n<=2,100,000,000)(0<=n<=2,100,000,000)
출력
22진수로 변환해서 출력한다.
입력 예시
7
출력 예시
111
#include <iostream>
using namespace std;
void binary(int k) {
if(k != 0) {
if(k % 2 == 0) { // k가 짝수일때
binary(k / 2);
cout << 0;
}
else if(k % 2 == 1) { // k가 홀수일때
binary(k / 2);
cout << 1;
}
}
}
int main() {
int k;
cin >> k;
if(!k) cout << 0 << endl; // k가 0일경우 0만 출력
else {
binary(k);
cout << endl;
}
}