정수를 십진수 시스템(base-10)에서 이진수 시스템(base-2)으로 변환합니다. 정수의 크기는 32비트로 가정하므로 숫자를 밑수로 나누어야 합니다. 컴퓨터에서 정수 값을 컴퓨터인 바이트로 변경하는 데 사용됩니다.
Input:10 Output:1010
설명
10진수가 10인 경우
-
10을 2로 나누면 나머지는 0입니다. 따라서 0.
-
10을 2로 나눕니다. 새 숫자는 10/2 =5입니다.
-
5를 2로 나누면 나머지는 1입니다. 따라서 1입니다.
-
5를 2로 나눕니다. 새 숫자는 5/2 =2입니다.
-
2를 2로 나눌 때 나머지는 0입니다. 따라서 0.
-
2를 2로 나눕니다. 새 숫자는 2/2 =1입니다.
-
1을 2로 나누면 나머지는 1입니다. 따라서 1입니다.
-
1을 2로 나눕니다. 새 숫자는 1/2 =0입니다.
-
number =0이 됩니다. 배열을 역순으로 인쇄합니다. 이에 상응하는 이진수는 1010입니다.
예시
#include <iostream> using namespace std; int main() { long n, d, r, binary = 0; n=10; d = n; int temp = 1; while (n!=0) { r = n%2; n = n / 2; binary = binary + r*temp; temp = temp * 10; } printf("%ld", binary); return 0; }