Web系のこととかー。

というわけで、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」を使って数値に。

とりあえず最初はこんなものかな。

§100 · 1月 27, 2010 · プログラミング_Ruby · · [Print]

Leave a Reply