Ruby:◇繰り返し1:times ・・・ 【Ruby:7.0歩目】
◇繰り返し1:times
プログラムを行うにあたって「条件分岐」と2本柱ともいえる
制御構造のひとつである「繰り返し」
逆に言えば、基礎的な四則演算他の組み込み関数と
この「条件分岐」「繰り返し」構文をマスタしてしまえば
たいがいのプログラムは作れる?
さて、Ruby。
繰り返す方法はいくつかある(他の言語でも同じ
+++++++++++++++++++++
・timesメソッド
+++++++++++++++++++++
任意回数の場合は、この「timesメソッド」を利用するのが便利
のようです。
(例)
例えば同じ処理を10回繰り返すのであれば
10.times do
(繰り返される処理)
ens
正直やっと新鮮な構文が現れてきたぞ。これはなかなか簡単に使え
そうだ。
+++++++++++++++++++++
・do〜end(ブロック)
+++++++++++++++++++++
この「do〜end」の部分をRuby では「ブロック」と呼ぶ。
! またこれは
「{ 〜 }」で書き直すことができる!
これはいい。もっと簡潔になった。
(例)
例えば同じ処理を10回繰り返すのであれば
10.times {
(繰り返される処理)
}
わかりやすくていいなぁ。{ から } を
10回繰り返す
・・・ そのまんま。
じゃぁ、この中で繰り返し回数を取得したい場合は・・・?
単純に
変数を用意して
cnt =0
10.times {
(繰り返される処理)
cnt++
}
とか、するのかな と思ったらこれも簡単
puts i
}
でいいのだと。 > 確認した。
例えば文字列と結びつけて表現したい場合
(文字列の中に 変数の値を入れ込む場合は
#{変数} とする
※ $ でなく # なのだな)
(例)前につくったじゃんけんロボ! が登場
r = rand(3) + 1 # 0 以上 3 未満の範囲の整数の乱数を発生
# その上で、+1 する
case r
when 1
puts "#{i + 1}回目:グー"
when 2
puts "#{i + 1}回目:チョキ"
when 3
puts "#{i + 1}回目:パー"
end
}
これは「改行しない printメソッド」と組み合わせて
r = rand(3) + 1 # 0 以上 3 未満の範囲の整数の乱数を発生
# その上で、+1 する
print "#{i + 1}回目:"
case r
when 1
puts "グー"
when 2
puts "チョキ"
when 3
puts "パー"
end
}






