Tip:
Highlight text to annotate it
X
[Powered by Google Translate] TOMMY MACWILLIAM: Puhutaanpa silmukoita, yksi yhteinen
ohjelmointi rakentaa näemme koko CS50.
Käytämme silmukoita, kun haluamme tehdä
tehtävän useammin kuin kerran.
Esimerkiksi meidän kannattaa tulostaa "hei" 100 kertaa tai tulosta
kaikki aakkosten.
Molemmissa tapauksissa olemme yksi asia haluamme tehdä
useita kertoja, tulostaa jotain.
Mutta se, mitä me tulostaa aina voi vaihdella.
Joten voimme tehdä jotain hieman erilaista kunkin
iteraatio, tai ajaa läpi, on silmukka.
Näemme kolme erilaista silmukoita C, kun taas
silmukoita, silmukoita, ja tehdä samalla silmukoita.
Vaikka nämä kolme silmukoita on erilainen syntaksi,
ideat takana ovat samat.
Me määrittää joitakin koodiosion sisällä aaltosulkeita,
kutsutaan runko silmukan, että haluamme suorittaa
Joissakin monta kertaa.
Muuttamalla muuttujien arvoja käytetään kehon, me
voimme tehdä silmukka tehdä jotain erilaista joka kerta se on ajaa.
Millä tahansa silmukka kirjoitamme, meidän täytyy myös päättää, milloin
silmukka lakkaavat näkymästä.
Jos emme tee sitä, niin meidän luotettava tietokone jatkaa
juosta että silmukka kunnes tapamme ohjelman.
Scratch, voisimme käyttää toista n kertaa
estää luoda silmukan.
Kaikki palaset sisällä lohkon, joka mainittu toistuva 10
olisi ajaa 10 kertaa.
Ja sitten, olimme siirtyä paloja jälkeen silmukka.
Joten meidän pysäkki kunnossa oli yksinkertaisesti tämä lohko on
ajaa 10 kertaa.
Joten uudelleen tätä C. Jotta Scratch varmistetaan
että palaset sisällä toista lohkon suoritetaan
tarkalleen 10 kertaa, Scratch tarvitsee seurata kunkin
suorittamisen toista lohkon.
Voit seurata, kuinka monta kertaa meidän silmukan runko on
toteutetaan, Luodaan muuttuja nimeltä i.
Aloitamme i pois nollasta, koska meidän silmukka
ei ole ajettu vielä.
Kunnossa
Nyt käytämme samalla avainsanan alkajaisiksi meidän silmukka.
Nyt meidän täytyy selvittää, kun meidän silmukka pysähtyy, mutta
katsotaanpa jättää tämän nyt ja sitten palata siihen.
Selvä.
Sisällä meidän silmukan, nyt vain tulostaa viestisi, kuten
"Hei." Voimme käyttää printf toimintoa tämän.
Selvä.
Joten nyt me äänittää että iterointia silmukan rungon on
toteutettu.
Voimme tehdä lisäämällä 1 tai kasvattamalla, meidän laskuri
muuttuja, i.
Voit tehdä, että voimme sanoa on yhtä i sekä 1 tai useampi
yksinkertaisesti, i plus plus.
Suuri.
Joten nyt voimme nähdä, että joka kerta meidän silmukka ajetaan, meidän
laskinmuuttuja nousee yhdellä.
Joten me tiedämme tarkalleen, kuinka monta iteraatiota olemme ajaa toistaiseksi.
Sen jälkeen, kun yksi iteraatio silmukan, arvoamme
i on 1.
Kahden iteraatiota, aion olla 2.
Ja sen jälkeen 10 iteraation, aion olla 10.
Joten, jos haluamme suorittaa tämän silmukan tasan 10 kertaa, sitten
tämä on, kun haluamme lopettaa.
Niinpä haluamme suorittaa tämän silmukan i on pienempi kuin 10, ja
se mitä me kirjoittaa, vaikka olen
on vähemmän kuin 10.
Tämä ehto näyttää aivan edellytykset käytimme jos
muu lohkot.
Kun keho meidän silmukka on suoritettu, meidän ohjelma
ponnahtaa takaisin ylös silmukat kunnossa.
Jos ehto on tosi, silloin rungon
silmukka ajetaan uudelleen.
Jos ehto ei ole enää totta, niin meidän silmukka ei
ajaa enää ja siirtyä seuraavalle koodirivi
alla meidän silmukka.
Selvä.
Joten katsomaan toinen tyyppi
silmukka, ja silmukka.
Vieressä kun avainsanan, suluissa, meillä oli yksi asia,
edellyttäen, että tarpeen olla totta
silmukan runko voidaan ajaa.
Tämä tarkoittaa jouduimme luomme laskinmuuttuja ulkopuolella
silmukan ja muista kasvattaa sitä jossain vaiheessa
sisällä silmukan.
Otsikon meidän varten silmukka, toisaalta, on kolme
osia, joista kukin on erotettu puolipisteellä.
Meidän ensimmäisellä kolmanneksella, voimme julistaa mitään counter tai auttaja
muuttujat haluaisimme käyttää meidän silmukka.
Käytännössä tämä voi olla todella hyödyllinen.
Meillä ei todellakaan tarvitse muuttujan, i, kun meidän taas
silmukka on suoritettu, joten meidän ei olisi tarvinnut julistaa, että se
ulkopuolella silmukan.
Toinen kolmannes on sillä edellytyksellä, että täytyy olla totta
elin voidaan suorittaa uudelleen, kuten
meidän while-silmukka.
Meidän viimeinen kolmannes, voimme ajaa selvitys, joka on
suoritetaan jokaisen iterointia silmukan, joten meillä ei ole
rakentaa sen silmukan runko.
Joten kirjoittaa varten silmukka, joka laskee alas 5-1.
Aloitamme avainsanoilla.
Voimme luoda laskurin muuttujan ensimmäinen, jota me
asetettu 5 tällä kertaa olemme laskee alas,
seuraa puolipiste.
Seuraavaksi on tilamme, jota tulen takaisin.
Kolmanneksi haluaisimme vähentääksesi meidän laskinmuuttuja jälkeen
Kunkin iteraation silmukan.
Joten mieluummin kuin sanomalla i plus plus, me sanon miinus miinus.
Selvä.
Joten me haluamme silmukan runko ajaa kun i on vielä
suurempi kuin 0.
Kehossa silmukan, nyt tulostaa arvon i.
Voit tehdä niin, käytämme printf toimintoa käyttäen% d
paikkamerkki.
Muista, että paikkamerkki korvataan
arvo i.
Lopuksi, lisätään lausunto jälkeen meidän on silmukka.
Kun suoritat tämän silmukka, aloitan pois 5,
joten 5 tulostetaan.
Kun minä saa 0, jatkaminen ehto, i on
suurempi kuin 0, ei enää pidä.
Joten meidän silmukka pysähtyy täytäntöönpanovaltiossa, ja näemme
lausunto jälkeen silmukan.
Joten suorittaa tämän koodin.
Ensinnäkin, me koota
countdown.c kanssa tehdä lähtölaskenta.
Nyt voimme suorittaa tämän koodin kanssa. / Lähtölaskenta.
Molemmissa vaikka silmukoita ja silmukoita, meidän jatkoa
ehto tarkastetaan ennen ruumiin
ja silmukka suoritetaan.
Tämä tarkoittaa, että jos meidän ehto ei aluksi
totta, niin ruumis meidän silmukka koskaan ajaa.
Joten se on joskus hyödyllistä tarkistaa kunto jälkeen
elin silmukan pikemminkin kuin ennen sitä.
Joten kirjoittaa silmukan pyytää käyttäjältä numero
kunnes positiivinen numero syötetään.
Jos käyttäjä syöttää negatiivisen luvun, me haluamme pyytää heitä
toiseen numeroon.
Joten me haluamme tämä kehote olla sisällä
runko pois silmukka.
Kuitenkin, kun silmukka suoritetaan ensimmäisen kerran, käyttäjän
ei ole antanut meille numero vielä.
Joten se ei ole järkevää tarkistaa, jos se on positiivinen.
Sen sijaan me haluamme tarkistaa numero jälkeen ruumis
silmukka suoritetaan.
Voimme tehdä tämän tehdä, kun silmukka.
Ensin luomme muuttujan, n, jotka pitävät
käyttäjän syöttää.
Nyt käytämme tehdä avainsanan, jonka jälkeen aaltosulkeita että
alkaa pois kehosta meidän silmukan.
Kehossa voimme pyytää käyttäjältä numero
GetInt toiminto.
Nyt, me haluamme kehon Tämän silmukan suorittaa uudelleen, jos
käyttäjä kirjoitettu negatiivinen luku, joten sanomme taas n
on pienempi kuin 0.
Huomaa puolipiste täällä sen jälkeen, kun ilmoitus.
Joten suorittaa tämän koodin.
Ensinnäkin, me koota tätä tehdä positiivisia.
Nyt voimme ajaa ohjelman. / Positiivinen.
Jos annamme tämän ohjelman negatiivinen luku, kuten negatiivinen
4, sitten me kysytään uudelleen numero, koska
edellytys meidän tehdä kun silmukka oli totta.
Kun annamme positiivinen luku, kuten 8, sitten
edellytys meidän tehdä kun silmukka enää totta.
Joten silmukka ei suoriteta uudelleen.
Ja se on siinä kolme silmukkaa käytämme in C
Nimeni on Tommy, ja tämä on CS50.