SPEAKER 1: Spregovorimo o vodi. V ta problem, bomo od uporabnika zahteva, da povem nas, kako dolgo v nekaj minutah je bil njihov tuš nato pa smo izračunali enakovredno število steklenic vode ki se uporablja njihova tuš. Torej, kaj so naši do-do je za ta problem? Najprej smo želeli da zahteva in nato potrditi vhod, ki nas je uporabnik daje. Ko smo zagotovili, da bomo ima veljaven vnos uporabnika, bomo za izračun enakovredno število steklenic vode da ima uporabnik med njihova tuš, nato pa smo dogaja, da jim povem, s tiskanje to številko. Torej, kaj je, saj je naša prva naloga, zaradi česar in potrjevanje uporabnik vhod. Za to smo napisali Funkcija za vas imenuje get_int nahaja v CS50 knjižnici. get_int zagotavlja, da uporabnik vhodov celo število, tako pozitivnimi številkami, negativne številke, ali nič so vsi sprejeti. Ampak, če uporabnik vnese ničesar drugega, zato bo vsaka kombinacija črk ali številk ali decimalno število, potem Uporabnik bo zahteval, da poskusite znova in funkcije ne bodo sprejeli ničesar dokler uporabnik jim daje celo število. Torej, kako bomo uporabili get_int? Če odprete svoj delovni prostor in ustvariti datoteko z imenom integer.c dovolimo vnesite naslednje. Hashtag vključujejo cs50.h. To je potrebno zato, ker get_int je funkcija CS50 knjižnica, zato moramo oznako teme vključiti svojo izjavo, da Za uporabo funkcije. In potem v moji glavnega deloval sem le, da bo preprosto pokličete funkcijo get_int. Torej, kaj je teči to in videli, kako deluje. Sem že pripravljeni, tako da je samo pojdi naprej in zagon tega programa, ./integer. Tukaj imam hitro in tukaj, kjer sem vhodna vrednost. Da sem dal v samo nekaj celo, 50, program excepts in zapre in to je to. Ampak pravijo, enkrat sem ga vodijo in Vnesel sem nekaj drugega. Morda, zdravo svet. To ni celo tako Program me bo vprašal za ponovni poskus. Poskusimo znova z morda decimalno tokrat. 0,5, spet ne celo tako program ne bo sprejeti in mi bo povedal, da poskusite znova. Torej, kaj je njeno drugo številko. Program sprejme, zapre, in smo končali. Torej, zdaj imamo funkcijo da nas in zagotavlja omogoča da uporabnik vložki celo, ampak kako smo lahko dejansko slediti od celo vnesene s strani uporabnika? No, vse bomo naredili, je trgovina ta vrednost v spremenljivko, recimo n. Torej, če Izjavljam celo število n, in sem nastaviti to vrednost na get_int, potem je n nato shranjuje karkoli vrednost uporabnika vneseno. Dobro, zdaj smo zagotovili, da uporabnik nam bo dala celo število in vemo, kako slediti na celo število, vendar ne pozabite, cela števila so tako pozitivne kot negativne. Torej ne res ni smiselno V okviru tega problema da uporabnik sprejme prho od reči negativne 12 minut. Zato moramo zagotoviti, da uporabnik pravzaprav nam daje pozitivno celo število. Zdaj nimamo le eno funkcijo za to, tako da bomo imeli za ustvarjanje, da sami. Zato želimo, da nenehno poziv uporabniku dokler se nam pozitivno celo število. Če delam nekaj nenehno nato to je podobno zanko, ponovitev. Tako eden izmed konstruktov, ki jih uporabljamo vc za izvajanje ponovitev in zanke je medtem zanka. Torej, medtem ko je zanka, saj prikazano tukaj, se izvrši kar je v telesu zanki Dokler danih stanju ovrednoti na true. Takoj, ko ta pogoj neresničen, potem Program se bo nadaljevala na kakršen koli prihaja po telesu zanke. Torej, zanke, medtem ko se bodo je zelo uporaben v CS50. Toda v tem zlasti primer, vemo, da smo bo vsaj poziv uporabniku enkrat, nato pa le zanka, če je potrebno. Torej, tukaj smo prišli k Posebna konstrukt in da je Zelo podobna časa zanka imenovano do-while zanko. Torej do-while zanko izpolnjuje tu Telo zanke vsaj enkrat in potem preveri, ali je treba izvesti, v nasprotju z while, ki bo preveril stanje in nato izvedbo telo. Torej, v do-while, kar smo morda storiti, je poziv uporabniku za celo število, in potem preveri, če je veljavna ali ne. Če je neveljavna, potem bomo ponovite postopek uporanikove da nam še celo število, in nato samo takrat, ko je to celo velja, bomo še naprej kar pride kasneje. Zdaj boste opazili, da je izjava celo število n je nekoliko drugačen, kar smo si prej v prejšnjem primeru in to zato, ker obsega. Če smo imeli znotraj razglasili celo število n telesa naredi medtem ko zanke, potem ne bi mogli dostopati da vrednost n izven teh Curly naramnice z navedbo organa zanke. Ampak mi v resnici želijo dostop do vrednost n kasneje v našem programu. OK, zdaj pa govorimo o kaj naj bi ta pogoj. Želimo reprompt le Uporabnik tako dolgo, kot je n neveljavna. Tako da mislim, da si kaj neveljavno celo vrednost bi izgledal in nato ustvarite Boolean izraz, izraziti, da je. Skoraj smo končali z našim Podopravilo iz česar in potrjevanje uporabnik vložek. Torej, kaj je, da je to malo malo bolj prijazen do uporabnika in daje uporabniku malo bit več informacij tega, kar smo jih zaradi česar za. Torej, kaj je poziv uporabniku, na spec, z nizom minut. Torej, z uporabo svoje printf izjave, da prepričani, da se ujemajo prav to. V redu. Torej, zdaj imamo veljavno uporabnika vhod, pozitivno celo Vrednost za koliko minut so preživeli pod prho. Torej, kaj je zraven je za izračun enakovredno število steklenic. Kaj se bomo na tem mestu lahko je zelo očitno, da vas na prvi, in da je v redu. Kaj želimo narediti je, da smo želim začeti vaditi Ideja za odkrivanje vzorcev in razvoj formule za problem. Tako smo povedali na spec da je ena minuta pod prho približno ustreza 12 steklenic vode. Torej dve minuti bi enakovredna 24, in pet minut bi enakovredna 60. Zdaj, če menite, ste ga dobili, potem pa poglej, če lahko pride do z vzorcem ali s formulo izraziti, če rečemo, n minut, koliko steklenic vode bi, da se izrazi v n? Ponovno, čeprav to je lahko preprosta na prvi, kasneje, ko smo prišli do bolj zapletene težave bomo želeli priti v Praksa ugotavljanja vzorci in razvoju formule ugotoviti te stvari. V c imate dostop do standardne aritmetične operacije, seštevanje, odštevanje, množenje in deljenje. Torej bom pustimo, da zdaj, da ugotovimo, kako se izražajo enakovredno število steklenic da uporabnik porabljene med prho. Vse je v redu, smo že skoraj pri koncu. Mi smo poziv uporabniku za njihov prispevek, smo zagotovili, da je veljavna vhod, in potem smo ugotovili, kako za izračun ekvivalenta število steklenic, ki jih zaužijejo. Torej, zadnja stvar je, da izhod enakovredno število steklenic in upajmo, da spodbujajo jim za ohranitev nekaj vode. Prikazovanje vrednosti bo je izjava printf. Če bi želeli, da vam povem, da sem imajo tri živali, na primer, Lahko bi uporabili izjavo printf ki izgleda nekako takole. Imam tri hišne ljubljenčke, in novo linija za lepo oblikovanje. Zdaj ne želimo, da preprosto težko koda stvari. Povejte, da število mojih živali spreminja skozi čas. Potem bom izkoristiti ograd v moji printf izida. Torej, tukaj moja številka je celo število. Torej, jaz bom, da bo ogrado za celo uporabo% i. Bom napisati niz, in nato po nizu Pišem vejico in nato spremenljivka, ki ga želim natisniti. Tako se bo ta vrednost tiskani namesto te ograde,% i. Lahko uporabite ograde, kot dobro, za boje z% f. Lahko tudi večkratni ograd v nizu. Na primer, če imam številko psov in nekaj več mačk, Sem dal dva ograde tukaj in nato moji dve spremenljivki v posamezni vrstnem redu. Zdaj, ko vemo, kako tiskati shranjene vrednosti spremenljivk, zelo zadnja stvar storiti, je, da bomo tiskanje vrednost v natančno obliko navedeno v specifikaciji. S tem smo spodbudili Uporabnik in potrditi njihov prispevek. Smo nato izračuna protivrednost število steklenic vode da porabijo med prho, in smo na izhodu to vrednost do njih. In tako smo zaključili z vodo. Ime mi je [? Zamila,?] in to je CS50.