10進数123を,英字A~Zを用いた26進数で表したものはどれか。ここで,A=0,B=1,…,Z=25とする。

ア  BCD

イ  DCB

ウ  ET

エ  TE

10進数の123を26進数に変換せよ、という問題。

スポンサーリンク

262 = 676 > 123 であるから、26進数に変換すると2桁の値になる。したがってアとイは不適。202が400であることを考えれば、すぐにわかる。

123を26で割ると、4.730… となるので、2桁目は4に相当する値となる。「4.730…」という細かい値を求める必要はなく、「26×4 < 123 < 26×5」ということがわかれば十分。暗算でもすぐにわかる。

10進数の4に対応するアルファベットはEなので、正解はウのET。

10進数と26進数の対応表は、次のようになる。

26進数10進数
A0
B1
C2
D3
E4
F5
G6
H7
I8
J9
K10
L11
M12
N13
O14
P15
Q16
R17
S18
T19
U20
V21
W22
X23
Y24
Z25

 

この対応表を用いて、ア~エの値を計算してみる。

ア: BCD = 1×262 + 2×261 + 3×260 = 731

イ: DCB = 3×262 + 2×261 + 1×260 = 2081

ウ: ET = 4×261 + 19×260 = 123

エ: TE = 19×261 + 4×260 = 498

となる。つまりx桁のn進数を10進数に変換する場合、次のように計算すればいい。

n進数を10進数に変換する公式

(x桁目を10進数に直した値)×nx-1 + (x-1桁目を10進数に直した値)×nx-2 + (x-2桁目を10進数に直した値)×nx-3 + ・・・ + (1桁目を10進数に直した値)×n0

これで多少出題形式が変わっても対応できる。