Come creare un While Loop in Ruby

April 11

Quando si crea un ciclo while in Ruby, si sta sostanzialmente dicendo ", mentre X è vero, fare Y" o anche "fino a quando X è falsa, fare Y." I programmatori di creare un ciclo while in Ruby in situazioni in cui vogliono un blocco di codice per eseguire un ciclo fino a quando una particolare condizione è vera. C'è anche una funzione di Converse, il ciclo until, che eseguirà fino a quando le Esamina condizionali true. Non appena la condizione è vera, il ciclo fino a quando finirà.

istruzione

Creare un While Loop

1 Creare un'istruzione condizionale, come ad esempio:
i = 10
while i > 0

2 Determinare il tempo di eseguire il ciclo. Questo a volte comporta la creazione di un esterno variabile del ciclo while per monitorare i suoi progressi. In questo esempio, il ciclo while viene usato per sottrarre dalla variabile "i":
i = 10
while i > 0
# block of code containing subtraction will be added here
end

3 Creare il blocco. Il blocco è un pezzo di codice che viene eseguito ogni volta che il ciclo viene eseguito. Nella maggior parte dei casi, il blocco modifica anche la condizione. In questo esempio, l'intento è quello di sottrarre dalla variabile "i". Questo ciclo legge i numeri dalla tastiera e li sottrae "i". A causa della dichiarazione condizionale nel ciclo while, se alla fine del ciclo "i" è 0 o inferiore, il ciclo terminerà:
i = 10
while i > 0
i = i--gets.chomp.to_i
puts "i is now #{i}"
end

Crea un Fino Loop

4 Scegliere un ciclo while.

5 Sostituire "mentre" con "fino". Sebbene fino serve allo stesso scopo, mentre, nel precedente esempio, nulla accadrebbe come i> 0 restituisce true non appena il ciclo viene eseguito. Questo significa che il blocco non verrà eseguita nemmeno una volta. Tuttavia, in alcuni casi è chiaro.

6 Consideriamo i seguenti due esempi. Utilizzando fino a quando è un modo più conciso di restituire il risultato.
1. while not is_ready()
wait_until_ready()
end
while not is_ready()
wait_until_ready()
end

2. until is_ready()
wait_until_ready()
end
until is_ready()
wait_until_ready()
end

Consigli e avvertenze

  • Quando si leggono i blocchi di codice, essere sicuri di non interpretare nulla dopo che l'operatore "#" come parte del codice. Se qualcosa è stato scritto dopo questo punto, è destinato ad essere una linea guida per i programmatori.
  • Se la tua condizione non è falsa, il ciclo andrà avanti e avanti. Questo è un bug chiamato "ciclo infinito." Il più delle volte, si tratta di un errore. Se accade a voi, il vostro programma sembrerà a stagnare all'infinito. Questo può essere fermato premendo "Control-C".

Articoli Correlati