0
0

More than 3 years have passed since last update.

Ruby初心者(私)がやった構文ミス

Last updated at Posted at 2021-05-15

はじめに

はじめまして、Rubyにてプログラミング学習をはじめたkat_logと申します。
学習の中でやった間違いをご紹介いたします💦

一覧

数値指定が必要なのに文字列で指定した

ミス
print_info("USBメモリ", "1200")
正解
print_info("USBメモリ", 1200)

初心者にありがちなミスですかね…

if文のelseに条件式を記載した

別の条件で分岐させる時はelsifが正しいのですがelseとしていたため意図しない結果が出てきました。

ミス
total.rb
total = 50

if total >= 200
    #25円引き
    total -= 25
else total >= 100
    #10円引き
    total -= 10
end

puts total # => 40

100円以上の時に10円引きしたいのに、100円より小さい値でも10円引きされてしまいました。

正解
total.rb
total = 50

if total >= 200
    #25円引き
    total -= 25
elsif total >= 100
    #10円引き
    total -= 10
end

puts total # => 50

2つ目の条件の時はelsifですね!
elseに条件を書いていても実行時にエラーは出ず、実行後に気づきました!💧

メソッド作成時にreturn付け忘れ

※2021/05/19修正、この場合return不要、むしろRubyではreturnは付けないほうが主流とのことです!
@jnchito さんよりご教示いただきました。)

ミス(ではありません)
friday.rb
def sale_day?
    # 金曜日判定
    today = Date.today
    today.friday?
end
正解(とも言い切れません💦)
friday.rb
def sale_day?
    # 金曜日判定
    today = Date.today
    return today.friday?
end

処理が書けて満足してたら忘れてました!
今回の場合忘れてOKです!

おわりに

ここまで読んでいただきありがとうございました。
ミスは他にもあるのですが今回は3つだけご紹介しました。
慣れていないこともありこれだけの記事でも大変だと思いました…!

ランキングに載るような記事をまとめられている方々は知識はもちろん集中力や構成力も持たれているのだと思い尊敬します。

学習の過程ではたくさん間違えますが、間違えたときほど記憶には残っているとポジティブに捉えて今後も学習進めていきたいと思います😅

最後に、記事の投稿が初めてでして技術の面でも、「こうすると見る側に親切だよ」といった記事の面でもアドバイス等ありましたらフィードバックいただけたらと思います。
ありがとうございました!

参考

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0