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.