Как мне написать цикл в Ruby с обратным отсчетом, похожий на следующий цикл в стиле C for?
for
for (i = 25; i >= 0; i--) { print i; }
Существует множество способов выполнить убывающий цикл в Ruby:
Первый способ:
for i in (10).downto(0) puts i end
Второй способ:
(10).downto(0) do |i| puts i end
Третий путь:
i=10; until i<0 puts i i-=1 end
В одну сторону:
25.downto(0) do |i| puts i end
downto хорошо, но есть и более общий step.
downto
step
25.step(0, -1){|i| puts i}
Попробуйте это:
25.downto(0) { |i| puts i }
На случай, если вы уже работаете с диапазоном:
rng = 0..6 rng.reverse_each { |i| p i }
РЕДАКТИРОВАТЬ - более кратко:
puts(rng.to_a.reverse)
Вот более простой:
(0..25).reverse_each { |i| print i }