目安時間:約
7分
本日の勉強は、ループ文を使ったRubyプログラミングです。
前回は、「IF文」を使ったプログラミングでした。
Rubyのループには、9通りの方法があります。
1.for
2.while
3.until
4.each
5.each do
6.times do
7.upto(5) do
8.downto(1) do
9.loop do
この9通りの方法について、説明を致します。
sampleloop.rb
#LOOP1 print("LOOP1 START\n") for i in 1..3 do print("i = ", i, "\n") end print("LOOP1 END\n\n") #LOOP2 print("LOOP2 START\n") strs =["a", "b", "c"] for str in strs puts str end print("LOOP2 END\n\n") #LOOP3 print("LOOP3 START\n") fruits = {:apple => "アップル", :orange => "オレンジ", :grape => "グレープ"} for key, value in fruits puts "KEY:#{key} VALUE:#{value}" end print("LOOP3 END\n\n") #LOOP4 print("LOOP4 START\n") num = 0 while num < 2 do print("num = ", num, "\n") num = num + 1 end print("LOOP4 END\n\n") #LOOP5 print("LOOP5 START\n") num = 2 until num <= 0 do print("num = ", num, "\n") num = num - 1 end print("LOOP5 END\n\n") #LOOP6 print("LOOP6 START\n") range = 5..10 range.each{|num| print("num = ", num, "\n") } print("LOOP6 END\n\n") #LOOP7 print("LOOP7 START\n") range = "Ax".."Bb" range.each do |str| print("str = ", str, "\n") end print("LOOP7 END\n\n") #LOOP8 print("LOOP8 START\n") 5.times do |i| puts "#{i}回目" end print("LOOP8 END\n\n") #LOOP9 print("LOOP9 START\n") 1.upto(5) do |i| puts "#{i}回目" end print("LOOP9 END\n\n") #LOOP10 print("LOOP10 START\n") 5.downto(1) do |i| puts "#{i}回目" end print("LOOP10 END\n\n") #LOOP11 print("LOOP11 START\n") i = 0 loop do i += 1 puts "アイウエオ" if i == 5 break end end print("LOOP11 END\n")
実施結果
ruby sampleloop.rb
LOOP1 START i = 1 i = 2 i = 3 LOOP1 END LOOP2 START a b c LOOP2 END LOOP3 START KEY:apple VALUE:アップル KEY:orange VALUE:オレンジ KEY:grape VALUE:グレープ LOOP3 END LOOP4 START num = 0 num = 1 LOOP4 END LOOP5 START num = 2 num = 1 LOOP5 END LOOP6 START num = 5 num = 6 num = 7 num = 8 num = 9 num = 10 LOOP6 END LOOP7 START str = Ax str = Ay str = Az str = Ba str = Bb LOOP7 END LOOP8 START 0回目 1回目 2回目 3回目 4回目 LOOP8 END LOOP9 START 1回目 2回目 3回目 4回目 5回目 LOOP9 END LOOP10 START 5回目 4回目 3回目 2回目 1回目 LOOP10 END LOOP11 START アイウエオ アイウエオ アイウエオ アイウエオ アイウエオ LOOP11 END
この様にループ文には特徴があり、どのような処理を行うかで選択してください。
50歳の私と一緒にプログラミングの勉強を始めませんか?
コメントフォーム