кодесурса

Ruby Loops - пока, пока, не сломай, повтори и повтори

script1adsense2code
script1adsense3code

Руби Лупс

Например, вы хотите напечатать строку десять раз. Вы можете набрать десять операторов print, но проще использовать цикл. Единственное, что вам нужно сделать, это настроить цикл для выполнения одного и того же блока кода указанное количество раз. Здесь мы обсудили операторы цикла, поддерживаемые Ruby.

Рубиновый оператор

Оператор while прост, он выполняет код многократно, пока выполняется условие. Условный цикл while отделяется от кода зарезервированным словом do, символом новой строки, обратной косой чертой / или точкой с запятой.

Синтаксис:

 пока условно [до]
   код
конец

Пример:

В следующих кодах печатаются числа от 0 до 10. Условие a <10 проверяется перед вводом цикла, затем выполняется тело, затем снова проверяется условие. Когда условие приводит к ложному, цикл прерывается.

x =  1
y =  11
while x <  y  do
  print  x ,". Ruby while loop.\n"
  x +=1 
  end

Выход:

 1. Рубиновый цикл.
2. Рубиновый цикл.
3. Рубиновый цикл.
4. Рубиновый цикл.
5. Рубиновый цикл.
6. Рубиновый цикл.
7. Рубиновый цикл.
8. Рубиновый цикл.
9. Рубиновый цикл.
10. Рубиновый цикл.

В операторе while ключевое слово do является необязательным. Следующий цикл эквивалентен вышеуказанному циклу:

x =  1
y =  11
while x <  y
  print  x ,". Ruby while loop.\n"
  x +=1 
  end

Ruby while модификатор:

Как если и если, в то время как можно использовать в качестве модификаторов.

x = 0
x += 1 while x < 10
p  x     # prints 10

Вы можете использовать начало и конец, чтобы создать цикл while, который запускает тело один раз перед условием:

x = 0
begin
  x += 1
end while x <10
p  x  # prints 10

Рубин до Заявления:

Цикл till выполняется, пока условие ложно. Условный цикл до конца отделяется от кода зарезервированным словом «до», новой строкой, обратной косой чертой / или точкой с запятой. Как цикл while, do является необязательным.

Синтаксис:

 до условного [сделать]
   код
конец

Пример:

Следующий скрипт печатает числа от 1 до 10. Подобно циклу while условие x> 11 проверяется при входе в цикл и каждый раз, когда выполняется тело цикла. Если условие ложно, цикл продолжит выполняться.

x =  1
y =  11
until x > y  do
  print  x ,". Ruby while loop.\n"
  x +=1 
  end

Выход:

 1. Рубиновый цикл.
2. Рубиновый цикл.
3. Рубиновый цикл.
4. Рубиновый цикл.
5. Рубиновый цикл.
6. Рубиновый цикл.
7. Рубиновый цикл.
8. Рубиновый цикл.
9. Рубиновый цикл.
10. Рубиновый цикл. 

Руби до модификатора:

Как если и если, пока не может быть использован в качестве модификаторов.

Синтаксис:

 код до условного
ИЛИ ЖЕ
начать
   код
конец до условного

Пример:

x = 0
x += 1 until x > 10
p x   # prints 11

Это даст следующий результат:

Вы можете использовать начало и конец, чтобы создать цикл, который запускает тело один раз перед условием:

x = 0
begin
x += 1
end until x <10
p  x  # prints 1

Рубин для Заявления:

Как и большинство других языков, в Python есть циклы for, цикл for состоит из for, за которым следует переменная, содержащая аргумент итерации, за которым следует in, и значение, которое нужно перебирать, используя каждый из них.

  • Как в то время как и до, делать необязательно.
  • Цикл for похож на использование каждого из них, но не создает новую область видимости переменной.
  • Результатом цикла for является значение, повторяемое до тех пор, пока не используется break.
  • Цикл for редко используется в современных программах ruby.

Синтаксис:

 для переменной [, переменной ...] в выражении [do]
   код
конец

Пример:

for x in [1, 2, 3, 4] do
  puts x
end
for x in 0..4
  puts "Value of x is :  #{x}"
end

Выход:

 1
2
3
4
Значение х: 0
Значение х составляет: 1
Значение х составляет: 2
Значение х составляет: 3
Значение х составляет: 4

Ruby Break Заявление:

Оператор break используется для досрочного завершения блока. Вы также можете завершить время, для циклов, используя разрыв.

Синтаксис:

 заявление о нарушении

Пример:

Следующий пример прерывает цикл while:

x  = 0
while true do
  puts  x
  x += 1
  break if  x > 5
end

Выход:

 0
1
2
3
4
5

Пример:

В следующем примере сломайте цикл for:

Пример:

Следующий пример прерывает цикл while:

for  x  in 0..5
         if  x > 2 then
            break
         end
         puts  "Value of  x is  #{x}"
end

Выход:

 Значение х равно 0
Значение х равно 1
Значение х составляет 2 

Рубин Следующее заявление:

Следующий оператор используется для пропуска оставшейся части текущей итерации. Завершает выполнение блока, если вызывается внутри блока.

Синтаксис:

 следующее заявление

Пример:

for x  in  0..6
         if  x < 3 then
            next
         end
         puts "Value of x is : #{x}"
      end

Выход:

 Значение х составляет: 3
Значение х составляет: 4
Значение х составляет: 5
Значение х составляет: 6

Ruby Redo

Оператор redo используется для повторения текущей итерации:

Синтаксис:

 повторить заявление

Пример:

restart = false
for x in 1..15
    if x == 10
        if restart == false
            puts "Re-doing when x =" + x.to_s
            restart = true
            redo
        end
    end
    puts x
end

Выход:

 1
2
3
4
5
6
7
8
9
Повторное выполнение, когда х = 10
10
11
12
13
14
15

Рубиновый флип-флоп:

Триггер используется для обработки текста из однострочных программ ruby, используемых с ruby -n или ruby -p. Форма триггера - это выражение, которое указывает, когда триггер включается, .. (или ...), а затем выражение, которое указывает, когда триггер выключится. Пока включен триггер, он по-прежнему будет иметь значение true, а при выключенном - false.
Триггер должен использоваться внутри условия, например, если, пока, если, до и т. Д.

Пример:

В следующем примере условие on равно n == 12. Триггер изначально выключен (false) для 10 и 11, но включается (true) для 12 и остается включенным до 18. После 18 он выключается и остается выключенным в течение 19 и 20.

selected = []
10.upto 20 do |value|
 selected << value if value==12..value==18
end
p selected 

Выход:

 [12, 13, 14, 15, 16, 17, 18] 

Предыдущий: Рубиновый случай
Далее: Ruby Methods

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code