Ako používať slučky v programovaní Ruby

click fraud protection

Počítačové programy musia často vykonávať činnosti viackrát, nie iba raz. Napríklad program, ktorý tlačí všetky vaše nové e-maily, bude musieť vytlačiť každý e-mail zo zoznamu, nielen z jedného e-mailu. Na tento účel sa používajú konštrukty nazývané slučky. Slučka bude opakovať Vyhlásenia vo vnútri toľkokrát, kým nie sú splnené niektoré podmienky.

Zatiaľ čo slučky

Prvý typ týchto slučiek je slučka while. Kým slučky vykonajú všetky príkazy, ktoré sú v nich obsiahnuté, pokiaľ podmienené vyhlásenie zostane pravdivé. V tomto príklade slučka neustále zvyšuje hodnotu premennej ja jedným. Pokiaľ je podmienečné vyhlásenie i <10 je pravda, slučka bude pokračovať vo vykonávaní príkazu i + = 1 ktorý pridá jednu do premennej.

#! / usr / bin / env ruby
i = 0
zatiaľ čo i <10
i + = 1
koniec
kladie i

Až do slučiek

Pokiaľ nie sú slučky takmer rovnaké ako slučky, s výnimkou toho, že sa budú opakovať, pokiaľ je podmienený príkaz nepravdivý. Slučka while sa bude opakovať, kým je podmienka splnená, slučka till sa bude opakovať

instagram viewer
kým podmienka je pravdivá. Tento príklad je funkčným ekvivalentom príkladu while while, s výnimkou použitia cyklu while, do i == 10 . Premenná sa zvyšuje o jednu, až kým sa jej hodnota rovná desiatke.

#! / usr / bin / env ruby
i = 0
do i == 10
i + = 1
koniec
kladie i

Slučky „Ruby Way“

Aj keď sa v programoch Ruby používajú tradičnejšie cykly, kým a kým sa slučky nepoužívajú, slučkové slučky sú bežnejšie. Na použitie týchto slučiek nie je ani potrebné pochopiť, čo sú uzávery alebo ako fungujú; v skutočnosti sú považované za normálne slučky napriek tomu, že sa pod kapotou veľmi líšia.

The Times Loop

doba slučku je možné použiť na ľubovoľnú premennú obsahujúcu číslo alebo použiť na samotné číslo. V nasledujúcom príklade je prvá slučka spustená trikrát a druhá slučka je spustená, užívateľ však mnohokrát vstupuje. Ak zadáte 12, spustí sa 12-krát. Všimnite si, že časová slučka používa bodku syntax (Trikrát), nie ako syntax kľúčového slova používaná v slučke while a till. To súvisí s tým, ako časová slučka funguje pod kapotou, ale používa sa rovnakým spôsobom chvíľu alebo do doby, kým sa nepoužije slučka.

#! / usr / bin / env ruby
3x
vloží „Toto sa vytlačí 3-krát“
koniec
tlač "Zadajte číslo:"
num = gets.chomp.to_i
num x x
kladie „Ruby je skvelé!“
koniec

Každá slučka

každý Slučka je pravdepodobne najužitočnejšia zo všetkých slučiek. Každá slučka vezme zoznam premenných a pre každú z nich spustí blok príkazov. Pretože takmer všetky výpočtové úlohy používajú zoznamy premenných a musia s každou z nich v zozname urobiť niečo, každá slučka je zďaleka najbežnejšou slučkou v Ruby kód. Jedna vec, ktorú treba poznamenať, je argument bloku slučiek. Hodnota aktuálnej premennej, ktorú slučka sleduje, sa priradí názvu premennej v znakoch kanálu, čo je | N | v príklade. Pri prvom spustení slučky, n Premenná sa bude rovnať "Fred", pri druhom spustení slučky sa bude rovnať "Bob" a tak ďalej.

#! / usr / bin / env ruby
# Zoznam mien
names = ["Fred", "Bob", "Jim"]
names.each do | n |
kladie „Ahoj # {n}“
koniec
instagram story viewer