Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

10進数から2進数に変換する際の注意点

はじめに

プログラミング初学者です。今回初めて記事を書きます。
今後アウトプットすることを習慣にするため、練習も兼ねて短いものから、徐々に書いていきたいと思います。

今回は、某スキルチェックサイトで勉強している際に少し混乱したので自分の備忘録も兼ね書きます。

変換する際の注意点

10進数からn進数、n進数から10進数にそれぞれ変換する場合、使うメソッドが変わります。

10進数をn進数に変換する場合 to_sメソッドを使う

to_sメソッドに引数を渡すことでそれぞれ2〜36進数までの文字列をかえしてくます。

p 255.to_s(2)    # => "11111111" 10進数 →  2進数
p 255.to_s(8)    # => "377"      10進数 →  8進数
p 255.to_s(16)   # => "ff"       10進数 → 16進数
p 255.to_s(32)   # => "7v"       10進数 → 32進数
p 255.to_s(36)   # => "73"       10進数 → 36進数

n進数を10進数に変換する場合 to_iメソッドを使う

先ほどの逆でn進数を10進数に変換したい場合は、to_iメソッドに引数を渡します。

p "111000".to_i(2)  # => 56         2進数 → 10進数
p "111888".to_i(8)  # => 73         8進数 → 10進数
p "111fff".to_i(16) # => 1122303   16進数 → 10進数
p "111vvv".to_i(32) # => 34668543  32進数 → 10進数
p "111zzz".to_i(36) # => 62239103  36進数 → 10進数

最後に

今後も少しずつですが、記事を書いてアウトプットし私と同じような初学者の方のお力になれたら幸いです。
また、間違っている点などございましたら、遠慮なくご指摘下さい。よろしくお願い申し上げます。

curtaincall888
プログラミング初学者です。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away