'while'循环计数

时间:2015-02-22 23:11:30

标签: ruby while-loop

我正在练习红宝石。在其中一个练习中,它要求我尝试使用' while'循环打印数字1到50包含。 (向上计数) 我还有一个倒计时的代码。

    i = 50
    while i > 0 do
      print i
      i -= 1
    end

无论如何,您可以将上面的代码计算在内吗?

由于

5 个答案:

答案 0 :(得分:6)

尝试下面简单的Ruby Magics:)

(1..50).each { |n| puts n }
50.times { |n| puts n }
1.upto(50) { |n| print n }

这里的计数正在ruby库中自动进行,所以不要担心

答案 1 :(得分:1)

您正在倒计时,从i = 501。您必须从i = 1转到50,并在每个循环中增加i += 1

将其更改为:

i = 1
while i <= 50 do
  print i
  i += 1
end

答案 2 :(得分:1)

只是为了帮助您了解您输入的内容:

键入:i -= 1时,与键入:i = i - 1

相同

键入:i += 1时,与键入:i = i + 1

相同

然后,您应该很容易理解为什么,当您想要减少变量i时,首先在50处(在while循环开始之前)初始化i。 当你想增加变量i时,首先将i初始化为1或0。

答案 3 :(得分:1)

有点简化:

(1..50).each { |number| puts number }

答案 4 :(得分:1)

尝试

    $i = 1
    $num = 51

    while $i < $num  do
       print("#$i" )
       $i +=1
    end

这会有所帮助..

并转到此处获取更多帮助 http://www.tutorialspoint.com/ruby/ruby_loops.htm