Ответ 1
... Лучшее, что я мог придумать, это конструктор loop
с break
в конце:
loop do
...
break unless condition
end
Ruby имеет множество условных конструкций, включая if
/unless
, while
/until
и т.д.
Блок while
от C:
while (condition) {
...
}
можно напрямую перевести на Ruby:
while condition
...
end
Однако я не могу найти встроенный эквивалент в Ruby для C-like do ... while
, в котором содержимое блока выполняется хотя бы один раз:
do {
...
} while (condition);
Любые предложения?
... Лучшее, что я мог придумать, это конструктор loop
с break
в конце:
loop do
...
break unless condition
end
Вы можете сделать
i=1
begin
...
i+=1
end until 10==x
(вы также можете применить предложение while до конца begin..end)
см. стр. 128 книги Flanagan/Matz Ruby Prog'g Lang: это то, что может быть удалено в версиях после 1,8
number=3
begin
puts number
number-=1
end while number>0
Вы можете использовать
while condition
...
end