ループメニュー2】> 【約数の列挙】STEP: 5 10 進数から 2 進数に変換 (paizaランク D 相当) [難易度: 1272 ±27]

※リンク先へ移動するためには[paiza]へのログインが必要です。

09-02-05-01
問題文

10 進数で表された整数 N が与えられます。
N を 2 進数に変換して出力してください。

入力値(例)
4

出力値(例)
100

解答例

09-02-05-02

解説

整数の10進数を2進数に変換するには、変換したい10進数を商が0になるまで2で割り続け商と余りを求めます。

60の場合 → 111100
60÷2=30...0
30÷2=15...0
15÷2=7...1
7÷2=3...1
3÷2=1...1

これで、001111(最後の1は3÷2=1の1)が得られます。ただ、このままだと逆なので配列に格納してarray_reverse()で順番を逆にして、foreach()で一つずつ値を取り出します。

おすすめの記事
スポンサーリンク