2012-02-27 9 views
0

IN RUBY、 たとえば、最初の25個の整数を出力し、出力の最初と最後の整数の間に "、"を入れたい場合(少し上書きする)、コードのように書くことができますか?以下? (私は故意にしばらく/ループのために使用していませんでした。)Rubyの "Nx {}"括弧の中に "if文"を入れることは可能ですか?

N = 25 

N.times{|i| print("#{i}") 
if i > 0 and i < 25 
    print ", " 
} 

を、これは既に回答されている場合は、古いポストに私をリダイレクトしてください?ありがとう:)

+7

これは、文字通り質問を投稿するよりも時間がかかります。 – sosborn

答えて

1

はい。これらの質問に答える最も簡単な方法は、irbで試してみることです。カウントロジックにはいくつかの小さな問題があります。私は、これは一例であり実現が、それはあなたが実際にこれを使用したいと思うことはArray#joinであることは注目に値します

25.times do |i| 
    print "#{i}" 
    if i >= 0 and i < 24 
    print "," 
    end 
end 
0

irb(main):001:0> [*0..25].join(", ") 
=> "0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25" 
0

ジョシュY.さんは一例に参加するよりよいですが、ここでは、あなたのメソッドを1行に減らしています。

N.times {|i| print"#{i}#{', ' if i>=0 and i<N-1}"} 
関連する問題