IN RUBY, 例如,如果你想打印前25个整数,并在输出中的第1个和最后一个整数之间加上“,”(为了清理它一点),你能写下面的代码吗? (我故意不使用while / for循环。)
N = 25
N.times{|i| print("#{i}")
if i > 0 and i < 25
print ", "
}
如果已经回复,请将我重定向到旧帖子?谢谢:))
答案 0 :(得分:1)
是。虽然回答这些问题的最简单方法是在irb中尝试它们。计数逻辑存在一些小问题。
25.times do |i|
print "#{i}"
if i >= 0 and i < 24
print ","
end
end
答案 1 :(得分:0)
我意识到这只是一个例子,但值得注意的是,你真正想要用的是Array#join:
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"
答案 2 :(得分:0)
Josh Y.的加入示例更好,但是这里的方法简化为一行。
N.times {|i| print"#{i}#{', ' if i>=0 and i<N-1}"}