んなまにのメモ帳

気が向いたときに更新されます。

Rubyにざっくり入門する

FizzBuzzを書くまでRubyの構文をざっくり勉強した時のメモです。

まずは、Hello world

print メソッドで標準出力に出力します。

print "Hello ruby world.\n"

変数

代入すれば、変数になります。
頭に$がつくとグローバル変数になります。

# 変数
#####################
$msg = "Hello ruby world.\n" # グローバル変数
msg = "Hello ruby world.\n" # ローカル変数

# 変数を出力する
#####################
print "#{$msg}"
print "#{msg}"
print $msg, "------\n", msg

条件分岐

if "条件" then "条件がtrueの時の処理" endの形で書きます。
複数の条件を指定する場合は、次の条件をelsifで繋げて書きます。
thenは省略できます。

# 条件分岐
#####################

# if
if true then
  print "if true.\n"
end


# elseを通る時
if false then
  #通らない
else
  print "if false.\n"
end

# 複数の条件を設定した時
if false     # thenは省略できる
  #通らない
elsif true
  print "else if true.\n"
else
  #通らない
end

繰り返し処理

while文は条件がtrueの間繰り返します。

# while文
sum = 0
count = 1
while count <= 10
  sum = sum + count
  count += 1
end
print "1~10の合計は#{sum}です。\n"

FizzBuzzしてみる

ここまでわかるとFizzBuzz問題が書けます。

# FizzBuzz
#####################

# 1から始まるnまでの数字を以下のルールで出力する
# 3で割り切れるならFizz
# 5で割り切れるならBuzz
# 3と5両方で割り切れるならFizzBuzzを出力する

n = 100
i = 1

while i <= n
  if i % 15 == 0
    print "FizzBuzz"
  elsif i % 3 == 0
    print "Fizz"
  elsif i % 5 == 0
    print "Buzz"
  else
    print i
  end

  if i != n
     print ","
  end
  i += 1
end
print "\n"

おわり