在Ruby中行内生成随机数

4

我有两个简单动画的计数器,它们将数字放在彼此下面。如何使它们都在同一行上具有相同的功能?感谢您的观看!

1000.times do

    puts "Press Enter"
    gets

        x = rand (0..5)
        y = rand (0..5)

        # "x" counter
        10.times do |xx|

            meter = rand (0..5)
            if xx < 9
                print meter
                print "\r"
                sleep 0.08
                else print x
            end
        end

    puts

        # "y" counter
        10.times do |yy|

            meter = rand (0..5)
            if yy < 9
                print meter
                print "\r"
                sleep 0.08
                else print y
            end
        end

    puts

end
1个回答

5
使用"\b"回退(0x08)字符而不是回车(0x0d)字符。
1000.times do

  puts "Press Enter"
  gets

  x = rand (0..5)
  y = rand (0..5)

  # "x" counter
  10.times do |xx|

    meter = rand (0..5)
    if xx < 9
      print meter
      print "\b"
      sleep 0.08
    else print x
    end
  end

  print ' '

  # "y" counter
  10.times do |yy|

    meter = rand (0..5)
    if yy < 9
      print meter
      print "\b"
      sleep 0.08
    else print y
    end
  end

  puts

end

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接