難易度
推測:☆☆
立式:☆☆
ヒント
Δ7=7, Δ8=10, …, Δ15=17, Δ16=20, …, Δ63=77, Δ64=100
THE FUNCTION CONVERTS DECIMAL TO BASE 8.
WHAT DECIMAL NUMBER IS 666 IN BASE 8.
この関数は10進数を8進数に変換している。
8進数で666となる数は何か?
条件
- Δx:xを小数点以下切り捨てし、8進数表記にした値。
- Δ0 = 0
- Δ8 = 10
- Δ70 = 106
解説
Δが行っているのが8進数への変換と分かれば、備え付けの通常の電卓やネット上の進数変換ツールなどを使って8進数表記で666となる10進数表記の整数を調べるだけでよい。
Xをn桁の8進数整数とし、Xのi桁目の数字をx(i)とする。すなわち、
X = x(n)#x(n-1)#x(n-2)#…x(2)#x(1)#x(0)
とする。このとき、Xの10進数表記Yは、
Y = x(n)*8^n + x(n-1)*8^(n-1) + x(n-2)*8^(n-2) + … + x(2)*64 + x(1)*8 + x(0)
を計算することで求められる。よって、8進数表記の666は10進数表記で
6*64 + 6*8 + 6 = 438
であることが分かるので、Δ438=666である。
解答例
- Δ438