Kako uporabljati zanke v Ruby programiranju

click fraud protection

Računalniški programi morajo pogosto izvajati dejanja večkrat, ne samo enkrat. Na primer, program, ki natisne vso vašo novo e-pošto, bo moral natisniti vsako e-pošto s seznama, ne samo enega. Če želite to narediti, se uporabljajo konstrukti, imenovani zanke. Zanka bo ponovila izjave znotraj njega večkrat, dokler ni izpolnjen neki pogoj.

Medtem ko zanke

Prva vrsta teh zank je zanka za čas. Čeprav bodo zanke izvajale vse stavke, vsebovane v njih, dokler pogojna izjava ostane resnična. V tem primeru zanka nenehno povečuje vrednost spremenljivke jaz za enim. Dokler pogojna izjava i <10 je res, zanka bo nadaljevala z izvajanjem izjave i + = 1 ki doda eno spremenljivko.

#! / usr / bin / env rubin
i = 0
medtem ko i <10
i + = 1
konec
postavlja i

Dokler zanke

Dokler zanke skoraj niso enake z zankam, razen da se zanke, dokler je pogojni stavek lažno. Medtem ko je zanka zanka, ko je pogoj resničen, se zanka do zanke dokler pogoj je resničen. Ta primer je funkcionalni ekvivalent primera zanke while, razen uporabe zanke do,

instagram viewer
dokler i == 10 . Spremenljivka se poveča za eno, dokler njena vrednost ni enaka desetim.

#! / usr / bin / env rubin
i = 0
dokler i == 10
i + = 1
konec
postavlja i

Loops "Ruby Way"

Čeprav so bolj običajne, medtem ko se zanke v programih Ruby uporabljajo in dokler se zanke ne uporabljajo, so zanke, ki temeljijo na zapiranju, pogostejše. Sploh ni treba razumeti, kaj so zapore ali kako delujejo, da bi uporabili te zanke; v resnici jih gledamo kot običajne zanke, čeprav se pod pokrovom zelo razlikujejo.

Times Loop

The krat zanka se lahko uporablja za katero koli spremenljivko, ki vsebuje številko, ali pa se uporablja za samo število. V naslednjem primeru je prva zanka zagnana 3-krat, druga zanka pa se izvaja večkrat, vendar uporabnik vnese večkrat. Če vnesete 12, bi se to izvajalo 12-krat. Opazili boste, da časovna zanka uporablja piko skladnja (3.das), ne pa sintakso ključne besede, ki jo uporabljata zanka while in do. To je povezano s tem, kako časovna zanka deluje pod pokrovom, vendar se na enak način uporablja ali dokler zanka ni uporabljena.

#! / usr / bin / env rubin
3. krat
stavi "To bo natisnjeno 3-krat"
konec
natisni "Vnesite številko:"
num = dobiva.chomp.to_i
število.times
postavi "Ruby je super!"
konec

Vsaka zanka

The vsak zanka je morda najbolj uporabna od vseh zank. Vsaka zanka sprejme seznam spremenljivk in zažene blok stavkov za vsako od njih. Ker skoraj vsa računalniška opravila uporabljajo sezname spremenljivk in morajo z njimi narediti nekaj na seznamu, je vsaka zanka daleč najpogostejša zanka v Koda Ruby. Pri tem je treba opozoriti, da je trditev o bloku izjav zanke. Vrednost trenutne spremenljivke, ki jo zanka gleda, je dodeljena imenu spremenljivke v znakih cevi, kar je | n | v primeru. Ko se zanka prvič zažene, n spremenljivka bo enaka "Fred", drugič, ko zanka teče, bo enaka "Bob" in tako naprej.

#! / usr / bin / env rubin
# Seznam imen
imena = ["Fred", "Bob", "Jim"]
imena.each do | n |
postavi "Pozdravljeni {{n}"
konec
instagram story viewer