Selvä.
Joten Nyt puhua jostain todella hyödyllinen programming--
ehtolauseet.
Niin ehdollinen ilmaisuja anna ohjelmat
tehdä päätöksiä ja ottaa eri haarukat tiellä, jotain
Viittasin hieman aiemmin, riippuen muuttujien arvot,
tai sen perusteella, mitä käyttäjä tuotantopanoksia ohjelmoija, komentoriviltä,
tai jos sinulla on nopea tai jotain sellaista.
C on pari eri tapoja ilmaista ehdollista ilmaisuja, jotka
me myös joskus soittaa ehdollinen haara omien ohjelmiensa.
Ja jotkut näistä ovat menossa katsomaan melko tutulta tyhjästä,
joten me jopa vetää ne ylös vierekkäin, vain
voit tehdä että vastaavasti päähäsi.
>> Joten, if-- jos on melko yksinkertainen ehdollinen.
Jos muistatte alkaen naarmu täällä
voit täyttää että on Hexagon sininen ilme jos hiiri alas
tai jos x on pienempi kuin 10, tai jotain sellaista.
Ja sitten, jos x on pienempi kuin 10, tai jos hiiri oli itse asiassa, alas,
kaikki koodi sisällä palapelin pala olisi toteuttaa.
Kaikki asiat, jotka sopivat sisällä että C muoto.
>> Samoin meillä on jos vasemmalla siellä.
Jos ehtolauseke, joissa minulla vain käyttämällä
korvikkeena yhden Boolen ilmaisuja me aiemmin keskusteltu,
avoin kihara ahdin, lähellä kihara ahdin.
Niin ajattele avoin kihara ahdin ja suljettu kihara ahdin
koska eräänlainen analoginen sandwich vaikutus, jos palkin
tyhjästä.
>> Jos Boolen lauseke if-lauseessa on totta,
sitten kaikki riviä koodia välillä aaltosulkeiden
tulee suorittaa jotta ylhäältä alas.
Jos Boolen lauseke on väärä, käymme
ohittaa kaikkea siltä väliltä aaltosulkumerkkien, koska me vain
halua mennä alas, että tienhaarasta jos Boolen lauseke on tosi.
>> Voimme ottaa tämän askeleen edelleen, jos muuta.
Joten tämä Scratch lohko on melko samanlainen kuin
näimme vain toinen sitten, paitsi se kestää kaksi eri polkuja perustuu
mitä tapahtuu.
Joten jos hiiri oli alas, tai jos x on pienempi kuin 10,
teemme kaiken, joka on siltä väliltä että ensimmäinen haarukka, että ensimmäinen C,
>> Muussa tapauksessa, jos hiiri on ylös tai x ei ole pienempi kuin 10,
teemme kaiken toisesta.
Ja se analogisia mitä näet täällä C. Jos ehtolauseke,
tehdä juttuja välillä ensimmäiset aaltosulkeita.
Else, tehdä juttuja välillä toinen joukko aaltosulkeita.
Joten jos Boolen lauseke on tosi, käymme
tehdä mitä on ensimmäisen sarjan.
Jos Boolen lauseke on väärä, että johtaisi muuta,
ja haluamme tehdä mitä n toinen joukko aaltosulkeita.
Jälleen ylhäältä alas, kaikki linjat välillä olkaimet.
>> C, on mahdollista luoda jos-else if-else ketju.
Itse voit olla if-else if-else jos-else, jos, ja niin edelleen ja niin edelleen ja niin
päälle.
Scratch Tämä edellytti pesivät lohkot.
Lisäät if-else, ja sinun piti laittaa toinen sisällä muuta,
ja niin edelleen, ja se sai laji sisäkkäisiä ja monimutkainen.
Mutta C, meidän ei tarvitse tehdä sitä.
Voimme oikeastaan ​​vain olla se ketju näin.
Jälleen, kuten arvata saattaa, kaikki nämä oksat ovat toisensa poissulkevia.
Voit aina vain mennä alas yksi haara.
Jos tämä on totta.
Muuten, jos tämä on totta.
Muuten, tehdä tämän.
Joten kaikki neljä oksat tässä Esimerkiksi ovat toisensa poissulkevia.
Se jos-else if-else ketju.
>> Se on kuitenkin mahdollista, ja joskus erittäin hyödyllinen,
luoda ketju ei toisensa poissulkevia oksat.
Tässä esimerkissä, vain kolmas ja Neljäs oksat ovat toisensa poissulkevia.
Voi olla, että voisit täytä ensimmäistä kunnossa,
ja voit tyydyttää Toisen edellytyksen,
ja voit täyttää kolmas condition-- jolloin
menisit alas ensimmäinen haara, sitten mennä alas toinen haara,
niin voisitte mennä alas kolmas osa.
Tai ehkä täytä ensimmäistä kunnossa, ja toinen edellytys,
mutta et täytä kolmas edellytys.
Tässä tapauksessa mennä alas ensimmäinen haara ja toinen haara,
ja sitten neljäs haara,
>> Syynä tähän on se, että muu sitovat vain lähimpään jos.
Joten vaikka siellä muu täällä, että
ei välttämättä luotava molemminpuolisesti yksinomainen ketju kaiken.
Se on vain ilmaus siellä Boolen
ilmaisu 3-- se sulkevat toisensa pois muuta.
Joten on mahdollista, ja joskus varsin hyödyllinen,
kuten sanoin, luoda ketju ole toisiaan poissulkevia oksia.
Katsotaanpa katsomaan eri jonkinlaisen ehdollisen, joka
et ole ennen nähty Scratch.
Siinä on jotain kutsutaan kytkin selvitys.
Kytkin selvitys on sellainen siisti, koska se on
ehdon, jonka avulla voit määrittää eri tapauksissa
sijaan, että turvaudutaan Boolen ilmaisuja tekemään päätöksiä puolestasi.
Niinpä esimerkiksi, sanokaamme että minulla on tämä ohjelma,
ja olen pyytänyt käyttäjä tarjota aineksia minulle.
Siksi sanon, int x = Get Int (), ja jos et tunne vielä,
saada int on toiminto, joka on sisältyy myös CS50 kirjasto,
joten jos #include CS50.H joudut pääsy Get Int () ja kaikki sen
cousins-- GetFloat, GetString, ja niin edelleen.
Periaatteessa yksi saat toiminto jokaista tietotyyppi, että olemme jo keskustelleet.
>> Joten Int X vastaa GetInt.
Periaatteessa mitä tapahtuu on olen terminaalissa.
Pyydän käyttäjä kirjoittaa numero.
>> Ja tässä olen kytkentä mitä teen, riippuen
mitä käyttäjä kirjoittanut kehoitteeseen.
Joten jos he kirjoitit yksi, minä tulostaa yksi.
Ja sitten rikon.
Jos he kirjoittavat kaksi, minä tulostaa kaksi.
Ja sitten rikon.
On tärkeää tauko kulloinkin
koska muuten putoat läpi.
Joten jos minulla ei ollut mitään taukoja siellä, ja käyttäjä
konekirjoitettu yksi, mitä tapahtuisi on se tulostaisi yksi, kaksi, kolme, sorry.
Se on outoa käyttäytymistä, eikö?
Saatat ajatella niin.
Mutta on todella joitakin tapauksia, joissa tämä voisi olla melko hyödyllinen asia.
Joten tässä on toinen esimerkki kytkimen selitystä, jos minä jättää taukoja.
Mutta teen sen tahallani.
>> Joten mitä täällä tapahtuu?
Usko, että toinen.
Saatat jopa haluta keskeyttää videon.
>> Mitä täällä tapahtuu, jos käyttäjä tyypit neljä?
Joten olen pyytänyt käyttäjä syöttää.
Ja ne tarjoavat arvo 4.
Mikä saa tulostaa, kun minä, että?
Edellisestä dia oli taukoja välillä kaikissa tapauksissa.
Ja niin se olisi vain tulostaa neljä ja sitten lopettaa.
Mutta tässä tapauksessa, se ei.
Mitä tapahtuu on sinulle putoavat läpi tapauskohtaisesti.
>> Joten tässä tapauksessa olen järjestellyt tapauksissa siten, että jos käyttäjä kirjoittaa 4,
Minä tulostaa neljä, kolme, kaksi, yksi, blast pois.
Ja jos he kirjoitit 5, haluan aloittaa viiden ja tehdä samoin.
Jos ne kirjoitetaan 1, olisin vain tehdä yksi, blast pois.
>> Joten tässä tapauksessa, olen käyttäen kytkin eräänlainen taitavasti niin
että en aio laskea läpi kaikki tapaukset.
Mutta yleensä olet todennäköisesti aio halua rikkoa välillä ne kaikki,
ellei sinulla ole tilanne kuten tämä, jos olet
Tällainen hyödyntämällä sitä, että sinun kuuluvat läpi tapauksissa ilman taukoa.
Niin, että toinen tärkeä tyyppisiä ehtolauseet.
Joista viimeinen on?: Olen siis on kaksi katkelmia C-koodia tässä.
Toinen vasemmalla ja toinen oikealla.
Yksi vasemmalla pitäisi todennäköisesti melko tuttu.
>> Minulla on Int x.
Ja minun olisi ovat pyytäneet käyttäjä
for-- tämä olisi todennäköisesti Int x vastaa GetInt, tai jotain sellaista.
Ja sitten olen tekemässä päätöstä.
Jos jotkut ehtolauseke on totta, määrittää x arvo 5.
Muuten, antaa X arvo 6.
>> Että vasemmalla pitäisi luultavasti tuttuja meidän keskustelu
If Else vain hetki sitten.
Olisitko yllättynyt tietää että linja oikealla
tekee täsmälleen sama asia?
>> Niin tätä kutsutaan?: Tai joskus kutsutaan kolmen komponentin operaattori.
Ja se on aika siistiä.
Se on yleensä käytetään söpö temppu.
>> Mutta mitä sen avulla voit tehdä on simuloida Jos Else todella pieni,
todella triviaalisti lyhyt ehdollisen oksat.
Sinun yleensä ei käytä?: Jos oli kuusi riviä koodia jokaisen sarjan
kihara housunkannattimet.
Mutta jos olet vain joten nopea päätös,
jos aiot tehdä yksi asia tai muut ja se on hyvin yksinkertainen,
Tämä saattaa olla esimerkki siitä, miten tehdä sen kanssa?: kolmen komponentin operaattori.
Joten Int X vastaa ilmaisu?
Asia jälkeen kysymys merkki on mitä x arvo
on jos lauseke on tosi.
>> Asia jälkeen paksusuoli on mitä X: n arvo
olisi, jos lauseke oli väärä.
Joten pyydän itseltäni, on ilmaus totta?
Jos se on, antaa X arvo 5.
Jos se ei ole, määrittää x arvo 6.
Jälleen kuten sanoin.
Tämä on yleensä vain söpö temppu.
Ja joskus, jos tulet todella mukavalta,
voit tehdä tämän, koska se näyttää eräänlainen jäähtyä omien ohjelmiensa.
Yleensä olen sen esittämistä nyt niin olet perehtynyt se
jos näet sen.
Mutta varmasti tietää sinun ei tarvitse kirjoittaa sitä millään koodistasi.
Mutta se on jotain olla tuttuja, koska sinun ehdottomasti kohtaavat
koodinpätkää täällä ja siellä missä tämä?: syntaksi,
AKA ternäärinen operaattori, käytetään.
>> Niin nopea yhteenveto mitä conditionals ovat,
ja mitä vaihtoehtoja on tarjolla sinulle C. Sinulla on Jos ja jos-else,
ja jos if, jne.
Voit käyttää Boolen operaattoreilla niille tehdä päätöksiä.
>> Kytkimellä lausunnoista käytät diskreetti tapauksissa tehdä päätöksiä.
Sinun olisi nimenomaan sanoa, jos se on yksi, tai jos se on kaksi, tai jos se on kolme,
Teen tätä asiaa, tai tämä asia, tai tämä asia.
Ja?: Voi olla käyttää korvaamaan hyvin yksinkertainen, jos-else oksat,
tai jos-else ketjut tehdä koodi näyttää hieman fancy.
>> Olen Doug Lloyd.
Ja tämä on CS50.