Page 70 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 70
10진수
10진수(Decimal)는 아래 10종류의 숫자를 사용하여 수를 나타냅니다.
0 1 2 3 4 5 6 7 8 9
이 숫자를 모두 사용하면 자릿수가 한 자리 올라가 10이 됩니다. 2자리의 숫자는 10에서 시작하여 99
까지입니다. 99의 다음 수는 다시 한 자릿수가 올라가 100(3자릿수)이 됩니다. 즉, 아래처럼 됩니다.
1의 자리 … 0부터 9까지 10종류의 수를 나타냅니다.
~ 2의 자리 … 0부터 99까지 100종류의 수를 나타냅니다.
~ 3의 자리 … 0부터 999까지 1,000종류의 수를 나타냅니다.
0
1
2
10진수의 각 자리는 아랫자리부터 10 , 10 , 10 , … 으로 10의 거듭제곱 값을 갖습니다. 그러므로
1234는 아래처럼 풀어 쓸 수 있습니다.
1
2
3
1234 = 1 × 10 + 2 × 10 + 3 × 10 + 4 × 10 0
0
0
0
10 은 1입니다(2 도 8 도 어쨌든 0 제곱의 값은 1입니다).
8진수
8진수(Octal)는 아래 8종류의 숫자를 사용하여 수를 나타냅니다.
0 1 2 3 4 5 6 7
이 숫자를 모두 사용하면 자릿수가 한 자리 올라가 10이 되고, 그 다음 수는 11이 됩니다. 2자리의 숫자는
10부터 시작하여 77까지입니다. 이 2자리의 수를 모두 사용하면 그 다음 수는 100이 됩니다. 즉, 아래처
럼 됩니다.
1의 자리 … 0부터 7까지 8종류의 수를 나타냅니다.
~ 2의 자리 … 0부터 77까지 64종류의 수를 나타냅니다.
~ 3의 자리 … 0부터 777까지 512종류의 수를 나타냅니다.
0
2
1
8진수의 각 자리는 아랫자리부터 8 , 8 , 8 , … 으로 8의 거듭제곱 값을 갖습니다. 그러므로 8진수
5306(정수 상수로는 05306으로 표기)은 아래처럼 풀어 쓸 수 있습니다.
3
1
2
5306 = 5 × 8 + 3 × 8 + 0 × 8 + 6 × 8 0
70 C 알고리즘