というわけで、Rubyを使ってプログラミング練習問題をこなしていきたいと思う。練習問題は、検索してたら出てきたこれを使う。不慣れなRubyなので色々と調べて試行錯誤しながらやっていこう。
プログラミング練習問題1「ループ練習」
Hello World![改行]を5回表示させてください。
print(或いはprintf,cout等)を5回コピーすれば当然可能ですが、
ループ構文(for,while等)を利用して、print等は1回の使用にとどめてみてください。可能ならコマンドラインから入力を受け取って、n回表示するように改造してください。
何回目のHello World!かも表示してみてください。
回答1
#!/usr/bin/ruby 5.times do puts "Hello World!\n" end
#!/usr/bin/ruby for i in 1..5 puts "Hello World!\n" end
実行結果
$./1.rb
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
for文とかは、あまり使わないだろうけど。一応イテレータで。
回答2
#!/usr/bin/ruby max = ARGV[0] 1.upto(max.to_i) do |i| puts "Hello World! " + i.to_s + "\n" end
#!/usr/bin/ruby max = ARGV[0] i=1 while i<=max.to_i puts "Hello World! " + i.to_s + "\n" i = i + 1 end
実行結果
$./1.rb 10
Hello World! 1
Hello World! 2
Hello World! 3
Hello World! 4
Hello World! 5
Hello World! 6
Hello World! 7
Hello World! 8
Hello World! 9
Hello World! 10
コマンドラインからの引数は、「ARGV」に格納される。受け取ると、文字列になってしまうので「to_i」を使って数値に。
とりあえず最初はこんなものかな。