본문 바로가기
[C++] 알고리즘 교육/1~4. 기본기

[알고리즘 2.2.7] 배열 - binary

by 안산학생 2019. 4. 23.

문제

숫자를 입력 받아 이진수로 출력하는 프로그램을 작성하시오.

 

입력

번째 줄에 숫자를 입력 받는다. 숫자의 크기는 1,000보다 작거나 같다.

 

출력

첫째 줄에 숫자를 이진수로 바꾸어 출력한다.

 

예제 입력

14

예제 출력

1110

 

예제 입력

31

예제 출력

11111

 

 

 

 

 

 

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <stdio.h>
 
int main() {
 
  int num,num2, sum=0, i;
  scanf("%d"&num);
  num2 = num;
  while(true){
    if(num == 0){
      break;
    }
    num = num / 2;
    sum++;
  }
  
  int arr[sum];
  for(i=sum-1;i>=0;i--){
    arr[i] = num2%2;
    num2 = num2 / 2;
  }
  
  for(i=0;i<sum;i++){
    printf("%d",arr[i]);
  }
  
  return 0;
}

 

댓글