2019年 秋期 基本情報技術者 午前 問1

次の流れ図は、10進整数j (0 < j < 100)を8けたの2進数に変換する処理を表している。
2進数の下位から順に、配列の要素NISHIN (1)からNISHIN (8)に格納される。
流れ図のa及びbに入る処理はどれか。
ここで、j div 2はj を2で割った商の制す部分、j mod 2はj を2で割った余り表す。

a b
j j div 2 NISHIN (k ) ← j mod 2
j j mod 2 NISHIN (k ) ← j div 2
NISHIN (k ) ← j div 2 j j mod 2
NISHIN (k ) ← j mod 2 j j div 2


答え エ


解説
10進数x n 進数に変換する場合、x n で割った余りをn 進数の最下位のけたに入れ、x n で割った商をさらにn で割り余りを下位から2番目のけたに、さらにn で割った商をn で割りった余りを下位から3番目のけた…と計算する。
すなわち、
 x mod n → 最下位のけた
 (x div n ) mod n → 下位から2番目のけた
 ((x div n )div n ) mod n → 下位から3番目のけた
 …
である。

これを、x j n を2として考えると、
 aは、NISHIN (k ) ← j mod 2
 bは、j j div 2
(エ)になる。


キーワード
・2進数

キーワードの解説

戻る 一覧へ 次へ