ruby中的循环(noob) n=0 m=40 o=0 而n
有了这段代码,什么是最好的方法,使它一旦通过第二个循环,就会回到第一个循环ruby中的循环(noob) n=0 m=40 o=0 而n,ruby,loops,while-loop,Ruby,Loops,While Loop,有了这段代码,什么是最好的方法,使它一旦通过第二个循环,就会回到第一个循环 欢迎对此初学者提供任何帮助。:) 你在找这样的东西吗 n = 0 m = 40 o = 0 while n < m n = n + 1 end while n = m o = o + 1 n = 0 end n=0 m=40 o=0 而n
欢迎对此初学者提供任何帮助。:) 你在找这样的东西吗
n = 0
m = 40
o = 0
while n < m
n = n + 1
end
while n = m
o = o + 1
n = 0
end
n=0
m=40
o=0
而n
可能是嵌套循环?
你在找这样的东西吗:
n = 0
m = 40
o = 0
while n < m
n = n + 1
if (n == m) {
o = o + 1
n = 0
}
// as pointed out by Samir, you might want to put
// termination condition here, else it will loop infinitely
end
根据您的喜好调整循环边界…不完全确定您是否为我们提供了足够的信息来解决此问题。我不知道你想做什么 在Ruby中这样使用是不寻常的。有很多更好的迭代方法。例如,如果在阵列中漫游,可以执行以下操作:
(0..2).each do |o|
(0..4).each do |n|
p [o, n]
end
end
my_array.each do |e|
# e is the next element of my_array
end
如果正在穿过一根绳子,可以执行以下操作:
(0..2).each do |o|
(0..4).each do |n|
p [o, n]
end
end
my_array.each do |e|
# e is the next element of my_array
end
如果确实需要计数器,则可以将每个_与_索引一起用于数组或字符串:
my_string.each_char do |c|
# c is the next character in my_string
end
我承认,这不是对你问题的直接回答,但DJ&DigitalRoss是正确的,你似乎正在朝嵌套循环方向努力。你的意思是,就像把第一个循环的代码放在第二个循环的后面一样?是的——减去复制和粘贴。你能解释一下你想做什么吗?(代码看起来很奇怪,有一个while循环,而不是依赖于m,但将n设置为0。似乎您希望将其分解为一个函数,并从两个位置调用它。您能说一下为什么要这样做,而不是如何尝试这样做吗?如果我们能够做到这一点,可能有一种Ruby方法可以消除混乱,让语言完成大部分工作知道目标。代码将无限循环。你确定这就是你想要的吗?