>> LUCAS Freitas: OK, mwen devine kounye a nou ap viv.
Byenveni nan CS50 Supersection.
Nou mwens konfòtab.
Non mwen se Lucas Freitas.
Mwen se yon CS50 tèt TFs.
Sa a se Lauren.
>> Lauren CARVALHO: Hi, Mwen Lauren.
Mwen menm tou Head TF pou CS50.
>> LUCAS Freitas: Jodi a nou ap jis ale bay yon BECA de ki sa tout sa ou
mesye te aprann nan semèn yon sèl, èspere ke l 'ban nou mesye yon bon
sans nan sa ki ou ta dwe konnen pou pwoblèm mete yon sèl.
>> Jis yon koup anons.
Premye a tout, lè biwo.
Lè biwo yo ap pase nan Lendi Jedi nan kay diferan nan
Annenberg chak jou.
Yo ap yon resous trè bon pou ou mesye yo vini epi poze yo kesyon, ak
pale ak TFs, e menm echanj ide ak lòt elèv yo.
Se konsa, asire w ke ou sèvi ak sa resous an favè ou.
>> Bagay la se dezyèm nan CS50 Aparèy.
Pou dènye [fèbl a]
ou nèg pa t 'gen aktyèlman gen yon aparèy.
Ou jis te fè tout bagay nan òdinatè pèsonèl ou.
Men, pou pwoblèm sa a, ou gen aktyèlman gen yon machin vityèl, se konsa se pou
asire w ke ou rale dosye CS50 nan Aparèy li plante l '.
>> Apre sa, se bagay ki twazyèm asire w ke ou kòmanse pwoblèm nan mete ASAP jis
paske li nan anpil pi fasil jwenn ede lè w ap nan la
kòmanse nan semèn nan.
Paske moun yo gen tandans rete tann jiskaske la dezyèm dènye yo kòmanse pwoblèm seri a,
ak Lè sa a, ou ale nan lè biwo louvri, ak gen nan yon anpil nan moun.
Ki kote si ou ale nan Lendi, w ap ale yo wè ke ou ka pale ak TFs
bèl anpil pou nwit la la tout antye, epi yo ap ale gen plis pase
kontan ede ou.
>> Lauren CARVALHO: Èske mwen ka jis sispann ou pou jis yon dezyèm?
Èske tout moun te kapab telechaje CS50 Aparèy la?
Èske moun ki te eseye?
>> LUCAS Freitas: Pou download, pa la fason sa a, ou ka jwenn enstriksyon nan
cs50.net/appliance.
>> Lauren CARVALHO: Dwa.
Apre sa, li fè sa pran yon ti tan pou nou du sistèm fè ou jwenn yon lisans
kle, se konsa enskri pou la gratis jijman an premye.
Nan fason sa a ou pral gen li pou 30 jou, , epi tann pou kle lisans ou
ki ta dwe bay li ou pou yon ane.
>> LUCAS Freitas: Premye a tout, kite nan pale yon ti kras
sou CS50 Aparèy la.
CS50 aparèy la se aktyèlman yon vityèl machin ki w ap ale nan
kouri nan òdinatè pwòp ou a ki se fondamantalman kouri yon lòt òdinatè
andedan òdinatè pwòp ou yo.
Ki se trè fre.
Ak aktyèlman li nan itilize toupatou.
Moun ki teknoloji ta renmen konnen ki sa a se itilize tout tan tout tan an.
ou?
Ka gen plizyè òdinatè nan yon sèl aparèy.
>> Se pou yo aktyèlman pran yon gade nan Aparèy la.
Lè ou ale nan aparèy la apre yo fin enskri, w ap ale nan gen
mete non ou ak antre nan Harvard pou nou ka fè ou jwenn tout anrejistre.
Ou pral wè fondamantalman jis yon D ', ak Lè sa a, Kay, ak fatra,
ak Lè sa a, sa yo ikon ti kras.
Sa a twa ikon yo aktyèlman pi plis la bagay enpòtan ke ou ka gen nan
Aparèy ou.
>> Yon sèl an premye se jdi, ki se yon tèks editè, jis tankou Notepad oswa tankou
nenpòt ki kalite editè tèks.
Se jis nan yon bagay ke nou itilize yo ekri Kòd ak Lè sa a, fè bagay avèk li.
>> Bagay la dezyèm ke nou gen isit la se Chrome.
Se konsa, si ou bezwen sèvi ak entènèt la nan aparèy la, ki nan
ki sa ou ka sèvi ak yo.
>> Epi bagay la twazyèm se tèminal la, ki se aktyèlman trè dous.
Moun ki anjeneral yo se kalite pè a tèminal la paske li nan sa a trè
fin vye granmoun aplikasyon alamòd nan kote ou jis fondamantalman tape tout bagay ak
klavye ou.
Gen se pa yon anpil nan entèraksyon ak sourit ou.
Men, aktyèlman tèminal nan fè trè bon bagay sa yo.
>> Premye a tout, kite yo jis ale nan kèk kòmandman ke ou
ka itilize nan tèminal la.
>> Lauren CARVALHO: Apre sa, santi yo lib yo sispann nou si ou gen nenpòt kesyon.
>> LUCAS Freitas: Yeah.
Se konsa, lòd nan premye ke nou gen pou tèminal la se ls.
ls fondamantalman vle di lis tout bagay, tout dosye yo ak tout direktè yo,
ke mwen gen nan plas la se mwen menm ki nan.
Se konsa, si m 'fè ls isit la, mwen pral wè ke mwen gen kèk repèrtwar.
Mwen gen Desktop a, downloads yo, mòso bwa yo, epi vost yo.
Sa yo se nan twal ble, paske yo yo tout repèrtwar.
>> Lè sa a, ou gen kèk lòt dosye.
Ou gen tankou bonjou ak hello.c, ki yo se jis dosye, epi yo ap nan
koulè diferan.
Se konsa, sa a se yon lòd ki enpòtan anpil jis ou ka wè ki sa yo dosye yo
ak repèrtwar ki di ou gen nan anyè a ki
ou nan nan tèminal la.
Lè ou wè jharvard @ aparèy ak Lè sa a, ti kras senbòl la a, nan
tild, ki jis vle di ke sa a, se la anyè ke ou se nan moman sa a.
>> Lauren CARVALHO: Se konsa, sezisman ls se prèske tankou klike sou folder nan
ki se yo ki nan lis dwa gen, nan li montre nou tout nan kontni an ki
nan ki folder.
>> ODYANS: Èske gen tèks apre hello.c a?
>> Lauren CARVALHO: Oh, ou pa kapab wè ke, paske li nan ble.
>> LUCAS Freitas: Li di mòso bwa ak vost.
>> Lauren CARVALHO: Sa yo se jis lòt dosye.
Mwen regrèt, li vrèman difisil wè.
Petèt si nou te etenn limyè yo?
Colton, ou vle eseye, ak jwenn switch-la limyè?
M regrèt sou sa.
Mwen pa t 'panse sou sa.
>> LUCAS Freitas: Men, li la fondamantalman -
wi, si ou te kapab -
>> Lauren CARVALHO: Zoom nan ekran an.
>> LUCAS Freitas: mwen pa fè sa genyen ki prezante.
>> Lauren CARVALHO: [fèbl].
OK.
Oke, gen nan jis yon anpil nan natirèl limyè nan sal sa a tou.
>> LUCAS Freitas: Se pou nou jis asime ke ki te gen de lòt repèrtwar la.
>> Lauren CARVALHO: Jis pote avèk nou.
Sa a se pati a sèlman ki ou pral rete la ap gade nan tèminal la.
>> LUCAS Freitas: bay lòd la pwochen se fondamantalman petèt ou vle òganize
dosye ou -
pou egzanp, tout dosye C ou an nan youn anyè-men ou pa gen yon
anyè jis pou C depoze ankò.
Ou ka fondamantalman kreye yon anyè lè l sèvi avèk tèminal la kòm byen, ki se
menm bagay la kòm klike dwa yo t'ap di konsa New Dosye.
Se lòd nan fè anyè, ki se mkdir, se konsa fondamantalman "fè" ak
"Anyè."
>> Lè sa a, ou ka mete an Non anyè a.
Se pou nou di ke mwen te vle yo dwe rele, Mwen pa konnen, se pou yo di pset1 Lè w fè
sa a, mwen jis te kreye yon anyè.
Se pou nou jis tcheke ke li se la.
Se konsa, si m 'fè ls, koulye a mwen wè mòso bwa, ak Lè sa a, pset1, ak Lè sa a, vost.
Se konsa, mwen gen anyè nan nouvo a.
>> Lè sa a, apre ou fin gen yon nouvo anyè, petèt ou vle navige
nan li, se konsa lòd nan pwochen CD sa a, ki jis fondamantalman vle di ale nan yon
anyè espesifik.
Se konsa, si mwen vle pou yo ale nan pset1, Mwen ka jis fè CD pset1.
>> Lauren CARVALHO: CD kanpe pou yon chanjman anyè, [fèbl] kapab
sonje ke.
>> LUCAS Freitas: Epi, koulye a ou wè ke olye pou yo jis ki gen jharvard
aparèy, mwen te jharvard aparèy, ak Lè sa a, pset1, paske li nan ki montre
m 'ki kote mwen menm mwen nan òdinatè sa a.
>> Koulye a, si mwen vle pou tounen nan la anyè ki te wa anvan yon sèl sa a, mwen
kapab fè yon dot CD dot, ki jis vle di ale anyè a pou m 'te ye anvan an,
tankou paran an nan sa a anyè, fondamantalman.
Epi, koulye a mwen wè ke mwen se tounen nan jharvard.
>> Bagay nan pwochen ke mwen kapab fè li se RM, ki se retire yon dosye.
Pou egzanp, kite a premye fè ls yo wè sa m 'genyen isit la.
Mwen gen bonjou ak hello.c.
Se pou nou di ke mwen vle retire yo.
Mwen kapab fè RM hello.
Li pral di "retire dosye regilye alo? "Apre sa, mwen di" wi. "Epi, koulye a si mwen
fè ls, mwen wè ke li nan pa gen ankò.
>> Si m 'eseye sèvi ak RM pou yon anyè, menm si, li pa k ap pase
Li pral kite nou fè anyen.
Li pral vle di, hey, ou pa ka retire yon anyè.
Se konsa, nou gen sa a lòt vin rele rmdir, ki jis fondamantalman vle di
retire anyè.
Mwen ka, pou egzanp, retire pset1.
Men, si m 'fè ls, mwen pa fè sa genyen li ankò.
>> Nenpòt kesyon sou sa a?
Pa gen okenn?
Yeah?
>> ODYANS li: Eske se enpòtan pou w kite yon espas apre - chak fwa ou
kòmanse sezisman yon bagay nan?
>> LUCAS Freitas: Yeah.
Si m 'fè renmen CD ak anyè a, Mwen gen yo mete yon espas.
Ki sa ki espas w ap pale?
>> Lauren CARVALHO: espas ki la ant CD ak [fèbl].
>> LUCAS Freitas: Yeah, ou pral gen mete espas yo paske CD se la
lòd, ak Lè sa a, fisèl la pwochen ki ou di ki kalite se fondamantalman anyè a.
Se konsa, li tankou yon diskisyon.
Yeah?
>> ODYANS: Lè w fè lis, tout moun sa yo yo repèrtwar diferan, dwa?
>> LUCAS Freitas: Yeah, yo yo nan anyè a.
>> ODYANS: Ki sa ki diferans ki genyen nan mitan repèrtwar yo?
>> LUCAS Freitas: Yo ap jis diferan dosye.
Anyè a se yon katab nan òdinatè ou.
>> ODYANS: Louvri folder.
>> LUCAS Freitas: Yeah, li nan jis yon katab louvri.
>> Lauren CARVALHO: Plis pase isit la, yo menm ki yo ki nan ble yo aktyèl
repèrtwar ke ou kapab jwenn nan ak Lè sa a, wè yon pakèt moun sou bagay ki
nan sa, ki se malere paske ou pa ka aktyèlman li a
yo menm nan ble.
Apre sa, yo menm ki tout an blan yo se jis dosye ki nan anyè aktyèl la.
>> LUCAS Freitas: Se konsa, repèrtwar yo se dosye.
Lòt moun yo se dosye.
>> ODYANS: Ki sa ki nan yo lòd, ki Reyajiste li oswa ki klè li?
LUCAS Freitas: Pou ki klè?
Lauren CARVALHO: Pou ki klè?
LUCAS Freitas: Mwen panse ke li nan "klè." Yeah.
Se konsa, ou jis tape klè si ekran ou a twò lèd.
Nenpòt lòt kesyon?
Apre sa, ou pral aprann yon pakèt moun sou lòt kòmande jis natirèlman pandan la
semès paske yo ap trè itil.
>> Se konsa, kounye a kite a pale sou konpile.
Nou te pale de pseudocode ak Kòd sous ak kòd objè.
Apre sa, gen nan yon anpil nan kòd, ak petèt Ou mesye yo ap konfonn sou sa.
Se pou nou pale yon ti kras sou sa ki k ap pase lè w ap ekri yon pwogram nan,
epi ou konpile l ', epi li vin yon dosye ègzèkutabl.
Sa yo se tout mo ke ou nèg pwobableman tande, ak petèt ou pa fè sa
reyèlman asire w ke sa k ap pase.
>> Se pou nou di, pou egzanp, ke mwen vle ekri yon pwogram ki di "alo". Nan
premye bagay ki vini nan tèt ou se ou kalite eseye panse a ki jan w ap
pwal fè sa nan tèt ou, ak w ap pwobableman panse nan lang angle oswa
kèk lòt lang, tankou natirèl lang, pwobableman.
Lè sa a, ou panse, byen, si mwen vle, pou egzanp, ekri yon pwogram ki
di "hello," Mwen ta kòmanse yon pwogram nan, Mwen pral ekri ak lèt ​​detache hello, ak Lè sa a, mwen pral
kite pwogram nan.
Sa a se pseudocode.
Sa a se jis fondamantalman w ap eseye vini ak yon sekans evènman
ke w ap pral fè yo dwe kapab ekri yon pwogram.
>> Lè sa a, ou gen kòd la sous, ak kòd la sous pa bezwen
espesyalman dwe nan C. Nou ap pale sou kòd sous nan C paske se sa
lang nan nou ap aprann, men kou Kòd ka bèl anpil nenpòt ki
lang programmation ki di ou gen.
Pita nan semès la, w ap ale yo aprann lòt lang.
Sa a tou Kòd sous.
>> Pou egzanp, isit la, sa a se sous mwen Kòd, ak Lè sa a, mwen ki gen ladan yon
bibliyotèk, ak Lè sa a, mwen kòmanse prensipal yo, ak Lè sa a, mwen ekri ak lèt ​​detache.
Apre sa, Laura se ale nan pale yon ti kras ti jan sou tout bagay sa yo.
Se konsa, sa a se kòd la sous.
>> Ak sa ki se kòd la objè?
Objè a se yon pakèt moun sou zewo ak moun yo, fondamantalman.
Kisa k ap pase se ou okòmansman gen pseudocode, ki se tout nan lang angle.
Apre sa, mwen vle di, ou konprann li.
Pwobableman zanmi ou konprann li, epi pifò moun ta
konprann lide la.
Men, òdinatè yo se reyèlman bèbè, epi yo pa konprann angle, kidonk, ou
yo te tradui ki nan yon bagay, anjeneral tradui nan kèk
lang programmation.
>> Apre sa, ou ka panse a yon pwogram lang kòm kalite tankou yon lang
ke ou di kijan òdinatè w lan pale ak yo konprann.
W ap fondamantalman ekri yon bagay nan yon lang ke tou de nan ou menm ak ou
òdinatè konprann.
Sa a kòd la sous.
Se konsa, ale fòm pseudocode nan sous Kòd, li moute nan ou.
Li nan fondamantalman ou ap fè pwogram ou an.
>> Men, pwoblèm nan se ke an òdinatè pa fè menm
konprann lang programmation.
Li pa konprann Kòd sous ki sòti nan tout.
Li aktyèlman jis konprann zewo ak moun yo.
Se konsa, nou gen bagay sa a trè majik rele yon du, ki fondamantalman se
ale nan jwenn sous la rele ke ou te ekri nan yon lang tou de ou a
ak òdinatè w lan pale, e kounye a, w ap ale nan transfòme ke nan
zewo ak moun yo.
Se konsa, fondamantalman sa du a fè se li vin Kòd sous, nan ka sa a C,
li pral transfòme li nan zero ak moun yo ki òdinatè a
konprann epi ka fè yon ègzèkutabl dosye soti nan li.
>> ki fè sans?
Ou ka jis panse a du a kòm kèk kalite tradiktè se sa ki
ede ou eksplike nan òdinatè a ekzakteman ki sa li la sipoze fè.
>> Men, ki jan mwen konpile.
Se pou yo tounen nan aparèy la, ak kite a di ke m ap fè pwogram sa a.
Premye Mwen pral kreye yon anyè isit la, ak mwen pral yo rele li
"Pratik." Koulye a, mwen pral navige anyè a, se konsa pratik CD.
Koulye a, mwen andedan pratik.
>> Koulye a, mwen vle kòmanse jdi, Se konsa, kouman mwen fè sa?
Mwen ka swa klike isit la, oswa mwen ka jis literalman tape "jdi", epi li pral
yo louvri pou mwen.
>> Koulye a, mwen pral tape pwogram mwen an, se konsa ekzakteman ki sa mwen te ekri nan glise la.
Mwen deklare yon bibliyotèk.
M ap fè Int prensipal yo, anile.
Epi, koulye a m ap fè printf, hello.
Koulye a, mwen pral pou konsève pou sa a.
Kite m 'mete l' an pratik, ak Mwen pral rele hello.c sa a.
Se konsa, koulye li nan sove.
>> Si m 'vle konpile li, mwen aktyèlman ka fè li nan de kote diferan.
Mwen ka swa fè l 'nan yon fenèt tèminal, Se konsa, yon gwo sa a, oswa ou kapab
sèvi ak jdi ki aktyèlman gen yon fenèt tèminal dwa isit la.
Se konsa, ou ka trè bon jis fè Kòd ou, ak Lè sa a, ou ka jis tape
tou sa isit la, epi eseye konpile li.
>> Se konsa, kouman mwen konpile Kòd?
Fason ki pi fasil ke nou gen se pa lè l sèvi avèk fè, ki se yon fonksyon ki
se fondamantalman ale nan konpile Kòd ou.
Ou jis bezwen di fè bonjou, se konsa "Fè" ak non an nan pwogram nan.
>> Wouch.
Sa a se gòch.
>> Lauren CARVALHO: ou ka [fèbl]?
>> LUCAS Freitas: M regrèt.
Mwen pa t 'delivre l' nan an dwa anyè.
Vini non yo pratike, epi kounye a sove li kòm hello.c.
Mwen regrèt.
Koulye a, li la sove.
>> Kite m 'jis fè ls yo epi yo dwe asire w ke li la isit la.
OK, kounye a li nan isit la.
Se konsa, koulye a si m 'fè fè hello, li krache yon anpil nan bagay yo, men Lè sa a, li jis bay
m 'yon lòt liy pou tèminal la, ki vle di ke li te gen siksè.
Se konsa, koulye a si m 'fè yon ls ankò, mwen aktyèlman wè sa a ranpli nan vèt, ki se nan
ègzèkutabl dosye-a.
>> Lè sa a, si mwen vle kouri li, tout sa ki Mwen gen fè se dot koupe hello.
Li pral di bonjou dwa isit la, se konsa li nan ekzakteman ki sa mwen mande l 'bay.
>> Gen yon sèl plis fason pou konpile, ki se lè l sèvi avèk sonnen.
Sonnen se jis yon du ke nou genyen, ak li nan yon ti kras pi plis sil
konpile li.
Men, li travay jis kòm byen.
Se konsa, si m 'fè rezone, ak Lè sa a,-o, ak Lè sa a, Non a ke mwen vle pou m 'bay
dosye a ègzèkutabl, se konsa kite a di "Hello." Lè sa a, dosye a ke mwen vle
te rekeyi, hello.c.
Li la tou ale nan konpile.
Apre sa, ou gen dosye a isit la, ak Mwen ka jis li tou.
Se konsa, tou de peyi yo travay.
>> ki fè sans?
Nenpòt kesyon?
>> ODYANS: Èske ou ka rale nan yon ti kras?
>> LUCAS Freitas: M regrèt?
>> ODYANS: Zoom an?
>> Lauren CARVALHO: Mwen panse ke ou ka jis bay lòd plis.
>> LUCAS Freitas: Bay ki sa?
>> Lauren CARVALHO: Kòmandman plis.
>> LUCAS Freitas: No
>> Lauren CARVALHO: Oh, sa a pa ale nan travay paske -
li nan paske nou mete rezolisyon an pou bagay sa a.
>> LUCAS Freitas: mwen pa fè sa panse ke nou ka rale pous
Yeah, nou pa ka rale.
ou gen yon lòt kesyon?
M regrèt.
>> ODYANS: Èske ou ka repete sonnen?
>> LUCAS Freitas: sonnen nan?
Sonnen se menm bagay la kòm fè, men nan diferans se ke premye Mwen pral
yo ekri sonnen, ki se bay lòd la, Lè sa a, mwen pral fè -0 yo, tout, ki se
jis ki sa nou ap ale nan aprann pita kòm yon drapo.
Se konsa, jis panse ke ou toujou gen yo mete o la-.
>> Lè sa a, premye, w ap ale nan mete non an nan dosye a ègzèkutabl,
fondamantalman dosye a ke w ap ale nan kreye.
Se konsa, mwen ka di, pou egzanp, hello2 ak Lè sa a, dosye a ke mwen vle konpile,
ki se dosye a c..
Se konsa, sa a, se hello.c.
ki fè sans?
>> ODYANS: Hello ki sa?
Ki sa ki se sa?
>> LUCAS Freitas: Hello.c.
Men, si mwen konpile li, epi si Mwen ls, mwen gen tou yon
hello2 ke mwen jis konpile.
Men, si mwen eseye kouri li, li ale nan fè egzakteman menm bagay la kòm hello,
jis ekri ak lèt ​​detache hello.
>> ODYANS: Ki jan vini pou fè a ou ka mete hello.c apre?
>> LUCAS Freitas: Nan fè, ou pa gen yo mete. c la.
Nan fè, ou jis di a Non pwogram lan.
Ou pa bezwen di. C.
Men, pou rezone, ou ta dwe.
>> ODYANS: Ak sonnen fè nou menm tou nou gen ajoute [fèbl a]
>> Lauren CARVALHO: Yeah.
Se konsa, ou yo te genyen tou nan bibliyotèk.
>> LUCAS Freitas: Yeah, sa a, se yon bagay nou pral sèvi ak pita.
Sa yo rele li ki lye ak, e mwen panse nou ap pwal pale osijè li pita.
Yon lòt kesyon?
>> ODYANS: ou mete yon sonnen koupe dot?
>> LUCAS Freitas: No
Koupe a dot se jis yo louvri dosye a ègzèkutabl.
Se konsa, rezone, ou jis ekri "sonnen," ak Lè sa a, si ou vle a yo louvri nan
ègzèkutabl dosye ke ou jis konpile, lè sa a ou dot
koupe ak non an.
ki fè sans?
>> ODYANS: Si nou te nan chanjman jis [Fèbl] nan mond hello, èske ou
gen compile li?
>> LUCAS Freitas: Yeah.
si mwen vle di, pou egzanp, "alo la, "mwen ka jis sove li kounye a, epi mwen
jis konpile l 'ankò.
Se konsa, kite m 'fè yon fè hello.
Men, si m 'fè hello, li nan ale nan di "alo la." Fè sans?
Nenpòt lòt kesyon?
>> ODYANS: ou gen yo mete nan estanda Mwen / O yo ka kowòdone travay la?
>> LUCAS Freitas: Yeah.
Estanda Mwen / O a se fondamantalman bibliyotèk la ki gen yon
aplikasyon pou printf.
Se konsa, ki dwat bagay sou la tèt gen ladan stdio.
Sa se ki gen ladan yon bibliyotèk ki fondamantalman gen yon pakèt moun sou diferan
zouti ke ou ka itilize.
youn?
Nan yo se printf ki se yon fonksyon ki fondamantalman simagri
pou bay mesaj pou ekran an.
>> Nenpòt lòt kesyon?
Pa gen okenn?
OK.
Se konsa, kounye a kite a pale sou -
>> Lauren CARVALHO: Se pou nou jis ale nan gid-la style.
ou vle jis jwenn li nan isit la?
>> LUCAS Freitas: Se konsa, nou ap ale pale sou style.
>> Lauren CARVALHO: Oh, David pa t 'fini.
OK.
Poukisa nou pa nou tounen vin jwenn style nan fen an trè?
Li nan aktyèlman te mete ajou kòm nou pale.
>> LUCAS Freitas: Yeah.
Se pou fason a pou David fini sa a.
>> Lauren CARVALHO: Èske nou chanje aktyèlman?
>> Se konsa, mwen espere ke tout moun te jwi grate.
Malerezman, li lè yo avanse pou pi lwen sa a -
malerezman li nan tan pou avanse pou pi lwen soti nan sa yo blòk pwogram trè
sou C. Men, Chans pou yo, tout nan la pwogram konstwi ke ou te
te travay ak nan reyur yo dirèkteman tradwir C, ak nou ap
pral kòmanse yo aprann sou kèk nan yo kounye a.
Se pou yo premye pale sou kondisyon nan ekspresyon Boolean.
>> Sa a se kouri sou rezèv batri pouvwa.
>> LUCAS Freitas: Ki jan se ki pa travay?
OK.
Ou ale la, mwen pral jwenn la -
>> Lauren CARVALHO: Se konsa, kondisyon yo enpòtan paske yo pèmèt nou
prezante lojik nan pwogram nou yo.
Isit la nan yon egzanp nan yon kondisyon ki nan yon pwogram C.
Se pou nou sonje ki jan sa a -
Se konsa, sa a blòk kondisyon dwa isit la, sa a deklarasyon printf pa pral egzekite
sof si kondisyon nan lespas la parantèz, n pi gran pase 0,
evalye vre.
>> Koulye a, tout nan kondisyon sa yo nan f deklarasyon yo se ekspresyon Boolean,
ki vle di ke gen yo, se sèlman de chwa.
Yo te kapab swa evalye vre, oswa yo kapab evalye ak fo.
Se konsa, isit la, kidonk sa a fè sans, dwa? n pi gran pase 0, sa vle di li se yon pozitif
nimewo, ki vle di ke li pral ekri an lèt detache soti "ou pran yon chif pozitif."
>> Gen anpil bagay nan ekspresyon Boolean ki ka fòme kondisyon an ak yon
ini deklarasyon.
Nou gen mwens a pase.
Sa a se mwens pase oswa egal a.
Sa a se jis yon komik [fèbl].
Si ou vle printf a rive si li nan pi gran pase oswa egal a 0, Lè sa a,
ou ta chwazi sa a.
Se konsa, egal a jis jwen dwa apre pi gwo a pase mirak.
>> Egal egal, ki se diferan de sèlman yon sèl egal siy, egal egal
aktyèlman vle di ke kèlkeswa sa a sou la bò men gòch nan sa a se menm bagay la tou kòm
sa ki sou bò nan men dwat nan sa a kote yon siy egal a se ki sa?
Ki sa ki se jis youn egal mirak konsa?
Plasman.
>> LUCAS Freitas: Ki moun ki te di ke?
Eske se sa ke sirèt?
Oh, pa gen okenn.
M regrèt.
Ou tou de jwenn sirèt.
Oh, OK!
Twa moun jwenn bonbon!
>> Lauren CARVALHO: Se konsa, yon sèl sa a dwa isit la se operatè a Bang ki vin anvan
siyen an egal, kidonk sa a, se pa egal a.
Se konsa, si sa a te nan kondisyon m 'yo, kò a nan kondisyon an ta
egzekite sèlman si tou sa a nan bò gòch la se pa menm bagay la tou kòm
sa ki sou bò dwat la.
>> Mwen ka gen tou jis nan entewogasyon, pwen eksklamasyon.
Aktyèlman nou pral wè nan yon karakteristik glise ki jan sa a ta dwe itilize.
>> LUCAS Freitas: Nenpòt kesyon?
Pa gen okenn?
>> Lauren CARVALHO: Nou ka konbine sa yo Ekspresyon Boolean yo konstwi plis
konplike deklarasyon kondisyonèl.
Se konsa, isit la, si tou sa la sou bò gòch la bò men nan lamen ba yo doub oswa
tou sa ki sou bò nan men dwat Bondye ki gen kenbe travès yo doub evalye vre,
Lè sa a, nou pral enprime soti valab.
Lè sa a, desann isit la, si tou sa a sou bò men gòch nan de moun
ampersands ak tou sa la sou bò dwat la bò men nan de ampersands yo
evalye vre, Lè sa a, nou pral enprime soti ki valid.
Kenbe travès yo doub yo rele yo ki lojik la OSWA operatè ampersands yo doub yo
rele operatè a ki lojik e.
Wi?
>> ODYANS: moun sa yo ki jis pi ba ka l'a?
>> Lauren CARVALHO: No
Yo ap aktyèlman -
èske w konnen repèkisyon a, tankou pi wo a kle Retounen ou a?
ou wè sa?
>> LUCAS Freitas: Li aktyèlman yon bar.
>> Lauren CARVALHO: Se aktyèlman jis de ba.
>> ODYANS: Èske ou ka sèvi ak nan egal egal pou strings?
>> LUCAS Freitas: No
Nou pral aprann pita yon bagay sou sa.
>> Lauren CARVALHO: Genyen yon fonksyon ke ou ka itilize.
Men, ou pa bezwen enkyete ke jis ankò.
>> E si mwen bay pwogram sa a nimewo a 5?
Ki sa ki pral enprime soti?
>> ODYANS: [fèbl]
ki valid.
>> Lauren CARVALHO: Valid?
Yeah.
Mwen pa konnen ki te resevwa sa.
>> [Ri]
>> Lauren CARVALHO: Sa se kalite nan pè [fèbl].
>> ODYANS: Se konsa, doub a, epi, ki jis vle di ak?
>> Lauren CARVALHO: Yeah.
Se konsa, nimewo 5 se toude ki pi konsekan pase 0 ak mwens pase 100.
>> ODYANS: Poukisa li ta kapab pran youn?
>> Lauren CARVALHO: Youn komersyal se aktyèlman yon bagay diferan, epi li
yon operatè lojik, ki ou pral aprann sou pita.
Men, li la yon bagay ki aktyèlman ap travay ak Bits yo nan yon kantite bay yo.
>> LUCAS Freitas: Sèlman panse yo pa fè sa gen enkyete sou li pou kounye a.
>> Lauren CARVALHO: Mwen panse ke li la pwobableman vini semèn pwochèn.
>> LUCAS Freitas: Nenpòt lòt kesyon?
Pa gen okenn?
>> Lauren CARVALHO: Se konsa, nou te wè ke yon li bloke ka kanpe pou kont li, men li kapab
tou ap pè ak ak lòt moun blòk.
Se konsa, nan ka sa a, si n pi gran pase 0, nou pral enprime soti "Ou
pran yon chif pozitif. "lòt moun, sa vle di si li se 0 oswa si li nan mwens
pase 0, nou ap ale nan ekri ak lèt ​​detache soti, "Ou te chwazi yon chif negatif."
>> Bagay la enteresan isit la se ke sa yo se san konte lè youn ak lòt.
Gen pa janm k ap pase yo dwe yon ka nan ki sa a epi sa a
kapab ni ekri ak lèt ​​detache soti.
>> Mwen si ou te travay ak si / lòt moun an bwat nan grafouyen, kidonk sa a yo ta dwe
trè yo konnen yo.
Wi?
>> ODYANS: nou bezwen espas ki la ant Int n egal GetInt Lè sa a, espas nan la
si deklarasyon?
Menm jan ak nou itilize yon liy [fèbl]
>> Lauren CARVALHO: Oh, espas ki la isit la?
>> ODYANS: Menm jan ak sa, men ou double espas.
Pa gen, moute lavil Jerizalèm.
Moute lavil Jerizalèm.
>> LUCAS Freitas: Jis liy lan?
>> ODYANS: Yeah.
>> LUCAS Freitas: Jis liy vid la?
>> ODYANS: Yeah.
>> Lauren CARVALHO: liy vid?
No
Se jis yon bagay stylistic.
>> LUCAS Freitas: Se jis tankou pafwa ou jis sote kèk liy pou
ki kòd la pa sanble yon blòk gwo tèks.
>> Lauren CARVALHO: Mwen panse ke sa ki te pase te ke nou te gen yon kòmantè isit la, men mwen
pran l 'soti pou ke ou nèg ta gen yo reflechi sou kòd la olye
pase jis li kòmantè mwen.
An jeneral, espas pa pral reyèlman afekte fason an pwogram ou an kouri.
Li nan plis nan yon bagay stylistic.
Men, lè nou gen gid-la style mete ajou ak pare ale nan fen
supersection, nou pral pale sou sa ankò.
>> Genyen yon bagay mal ak pwogram sa a, dwa?
Paske 0 se pa reyèlman yon chif negatif.
Se konsa, kite a wè si nou ka ranje sa.
>> Ou ka pwobableman imajine ak sa a di, dwa?
Si n se pi gran pase 0, nou ekri ak lèt ​​detache, "Ou pran yon chif pozitif. "Lè sa a, lòt moun
si n se pi piti pase 0, "Ou te chwazi yon chif negatif. "lòt moun," Ou te chwazi
0. "
>> Koulye a, bagay la enteresan an se ke sa a te kapab ale sou pou tout tan.
Ou ka gen yon si blòk, yon lòt moun si blòk, yon lòt lòt moun si blòk, lòt moun si,
lòt moun si, lòt moun si, lòt moun, fondamantalman osi lontan ke ou vle.
Men, lè konstwi tankou sa a, sa yo, yo tout pral fè
san konte lè youn ak lòt.
Wi?
>> ODYANS: Se konsa, poukisa pa ka ou jis sèvi ak yon lòt si olye pou yo [fèbl]?
>> Lauren CARVALHO: Nan ka sa a, repons lan se wi mwen te kapab itilize yon lòt si, epi li ta ka
absoliman amann paske nan kondisyon yo menm, yo
san konte lè youn ak lòt.
Men, si kondisyon yo pa t 'san konte nan chak lòt, sa a ta
fòse yo pa janm tou de evalye, si sa fè sans.
>> ODYANS: Nan ka sa a, te kapab nou fè nich dezyèm lan si nan premye a si?
>> Lauren CARVALHO: Si - ki sa ou vle di?
>> ODYANS: Si de kondisyon sa yo yo pa mityèlman eksklizif?
>> Lauren CARVALHO: Si kondisyon sa yo yo pa mityèlman eksklizif?
Men, ou vle se sèlman youn nan yo kouri?
>> ODYANS: Ou vle jis si olye pou yo lòt moun.
>> Lauren CARVALHO: Yeah.
Gen toujou pral fè anpil nan fason ke ou ka fè sa.
Ou kapab definitivman fè nich yo.
Apre sa, ou pral wè nan yon glise lavni ki ou ka gen plizyè ifs, jis yon sèl
apre lòt.
Men, sa a se yon fason pou lojikman òganize koule nan pwogram ou an.
>> LUCAS Freitas: Apre sa, gen nan yon sèl plis bagay, se ke ou te mande sou mete
si ak Lè sa a, yon lòt si.
Sa ta ka travay parfe, men li la move konsepsyon paske fondamantalman si ou
tcheke premye si a, epi ou remake ke nimewo a se pi gran pase 0, ou
ka jis fini pwogram lan.
Ou pa bezwen tcheke si li nan pi piti pase 0, dwa?
>> Men, si ou si si, li pral yo tcheke tou de, pandan y ap si mwen fè si lòt moun se,
li nan ale nan tcheke si li nan pi gran pase 0.
Si li se, li pa nan ale nan menm gade nan lòt liy ki nan kòd la.
Se konsa, w ap fondamantalman tcheke li tankou de fwa san nesesite, se konsa ke poutèt sa nou
fè si lòt moun si.
Nenpòt lòt kesyon?
>> ODYANS: Se konsa, fonksyonalite a nan lòt bagay la si se menm bagay la kòm
si li te jis si?
>> Lauren CARVALHO: No
Ou ap aktyèlman pral wè nan pwochen mwen glise yon egzanp nan ki li kapab
kapab diferan.
Nan ka sa a, li nan prèske menm bagay la.
>> Se konsa, isit la, nou gen yon egzanp sou plizyè si deklarasyon, ak nan
fonctionnalités se pa menm bagay la tou tankou si m 'te fèk di si
lòt moun, si lòt moun, si lòt moun.
Se pou nou jis panse sou sa ki ta ekri ak lèt ​​detache konnen si mwen antre nan nimewo a 95
nan pwogram sa a.
>> ODYANS: [fèbl]
>> Lauren CARVALHO: Lè sa a,?
>> ODYANS: [fèbl]
>> Lauren CARVALHO: Yeah.
Se konsa, nan ka sa a, kondisyon sa yo, se pa mityèlman eksklizif nan youn ak lòt.
Epi paske gen nan pa gen anyen kanpe kondisyon sa a soti nan evalye si sa a
yon sèl deja gen, yo ap jis tout ale nan ekri ak lèt ​​detache soti.
Se konsa, kouman kapab mwen ranje sa a?
>> ODYANS: ifs lòt moun?
>> Lauren CARVALHO: Ou kapab sèvi ak ifs lòt moun.
Mwen te kapab chanje lòd la nan sa yo fè, dwa?
Si m 'te fè yon sèl sa a an premye?
Oke, aktyèlman, pa gen.
Sa pa ta travay pou 95.
>> LUCAS Freitas: Non, jis ifs yo lòt moun.
>> Ifs lòt moun nan: Lauren CARVALHO ta gen fiks sa a.
ki klè moute konfizyon a ant ifs ak lòt moun ifs?
>> ODYANS: Mwen jis te vle mande w, si ou t 'sèvi ak lòt moun si, li ta sispann?
>> Lauren CARVALHO: Dwa.
Se konsa, yon sèl sa a an premye.
Si m 'te antre nan nimewo a 95, se sèlman sa a ta gen enprime soti, li li pa janm
ta gen ap pwogrese lòt moun la.
>> LUCAS Freitas: Jis kalite panse a li kòm si sa rive, fè sa.
Lòt moun nan, se tankou si se pa, chèk pou sa a, ak Lè sa a, fè sa.
Se konsa, tankou yo ap tout mityèlman san konte.
Ou pa ka jwenn an de sou sa yo.
>> ODYANS: Èske ou ka sèvi ak yon lojik Ak pou sitiyasyon sila a?
>> Lauren CARVALHO: Yeah.
Sa a yon lòt fason ke nou te kapab yo te fiks pwoblèm sa a.
Nou ap te kapab defini chenn, dwa?
Se konsa, mwen te kapab di si n pi gran pase 90 ak mwens pase -
byen, mwen devine yon sèl sa a pa fè sa vrèman gen pwoblèm, men isit la mwen te kapab yo te di ke si
n pi gran pase 80 ak mwens pase 90.
Pi plis pase 70, mwens pase 80.
Sa ta gen tou te travay.
>> [Ri]
>> LUCAS Freitas: Li se pè.
>> Lauren CARVALHO: pa bezwen pè.
>> LUCAS Freitas: Se pa ke li pral sa ki mal.
Se jis ke li nan san nesesite sil.
Menm jan ak nan syans òdinatè, youn ta dwe dwe kòm senp tankou sa posib osi lontan ke
ou gen fonctionnalités la.
ou vle sirèt la?
>> ODYANS: pa bezwen li.
>> Lauren CARVALHO: Ou ap sikatris tout moun, Lucas.
>> LUCAS Freitas: M regrèt.
>> Lauren CARVALHO: David tou mansyone sa yo chanje deklarasyon nan klas la.
Fondamantalman sa a pral sou se switch la deklarasyon pran yon varyab.
Nan ka sa a, nou ap pran yon nonb antye relatif.
>> Si nonb antye ki pè a se 1, nou ap ale nan enprime soti, "Ou pran yon ti
nimewo. "Si nonb antye ki pè a se 1," Ou pran yon kantite mwayen an. "Si nan
nonb antye ki pè se 3, "Ou te chwazi yon gwo nimewo. "Apre sa, mwen menm tou te gen yon ka default
desann isit la, men li pa nan ki montre moute, ki se twò move.
>> Fondamantalman, sa a se jis yon lòt sentaks.
Nou te kapab te aplike sa a egzak menm bagay ak si ak lòt moun si
deklarasyon.
Men, lè gen anpil nan diferan kondisyon ak anpil diferan
varyasyon sou sa ou vle pou fè pou chak antre, sa a se yon opsyon.
Se konsa, li nan jis yon bon sentaks yo konnen.
Wi?
>> ODYANS: Poukisa gen pa yon antislach n nan yon sèl la an premye?
>> Lauren CARVALHO: Pou moute a?
Gen nan pa gen antislach n 'kanpe paske GetInt la -
si ou eseye sa a, li pral ba ou èd memwa sa a.
Ban m 'yon nonb antye relatif ant 1 ak 3.
Men, si mwen mete n an repèkisyon, li ta pran m 'nan liy ki vin apre a, men mwen jis
te vle yo tape nonb antye ki pè a dwa apre kolon an.
Ou te kapab ou te mete n an repèkisyon.
Li pa yon kontra gwo.
Yeah?
>> ODYANS: Pou Kòd sa a, se sa a ka yon sèl, se pou sa paske
li nan ka a an premye?
Paske -
>> Lauren CARVALHO: Non, pa gen okenn, pa gen.
Se konsa, sa a se ban m 'yon nonb antye relatif ant 1 ak 3.
Si n se 1, mwen ekri ak lèt ​​detache sa a.
Si m 'te mande l' pou lèt, mwen te kapab gen di ban m 'yon lèt ant A
ak C. Lè sa a, sa a ta ka ka A.
>> ODYANS: [fèbl].
Ka sa a ta ka jis [fèbl]
>> Lauren CARVALHO: Yeah, dwa.
Yeah?
>> ODYANS: E si ou te vle gen plis nan yon ekspresyon relasyon?
Se konsa, olye pou yo di n egal 1, [fèbl]
n pi gran pase 1 nan ka a an premye?
>> Lauren CARVALHO: Aktyèlman, si mwen pa fè sa defini kèk nan ka sa yo, sa a ta
dwe pote desann.
Se konsa, aktyèlman, petèt sa a se pa ki sa w ap mande.
>> LUCAS Freitas: Mwen panse ke li te mande w si ka a te n pi gran pase 0, ka
pi piti pase 0.
>> Lauren CARVALHO: Petèt chanjman an deklarasyon ki se pa reyèlman sa ou vle
yo sèvi ak nan ka sa a.
>> LUCAS Freitas: Deklarasyon an switch se jis pou valè, se konsa w ap tcheke nan
valè a se tankou sa a oswa ki.
Se konsa, ou pa kapab aktyèlman mete kondisyon.
>> ODYANS: E si moun nan kalite ak [fèbl]?
>> Lauren CARVALHO: Sa ta gen ka default mwen an, ki malerezman
ou pa kapab wè.
>> LUCAS Freitas: [fèbl] fè yo wè.
>> Lauren CARVALHO: Aktyèlman, èske w konnen ki sa?
Se pou nou jis ale nan etidye 50, m'a jis rale nan sou glisad yo sou etid
50, paske sa a se jis anmèdan.
Se konsa, kite m 'aktyèlman ale nan kondisyon.
Sa a se jis ale nan pran yon ti tan.
>> Tout dwa.
Se konsa, mwen regrèt.
Omwen koulye a nou pral kapab wè tout bagay san yo pa li koupe.
Tout dwa.
>> Se konsa, si yo mete nan yon 10, nou ta default isit la yo ka default mwen, mwen menm
ta jis ekri ak lèt ​​detache valab paske mwen mande yo antre nan yon nonb antye relatif
ant 1 ak 3.
Nenpòt lòt kesyon?
Yeah?
>> ODYANS: Se pou nou di pou ka yon sèl, ka twa, di ou te vle li nan dwe nan tout
menm bagay, se konsa ou pran yon nimewo sa a pa yon kantite mwayen.
Nan ka sa a, li ta kapab pran redondants?
Èske ou ta jis chanje tèks la nan tou de nan yo, oswa ou ta gen kèk
èkse?
Èske gen nenpòt fason li konbine [Fèbl]?
>> Lauren CARVALHO: Gen fason yo konbine yo, men mwen kwè ou kapab
sèlman konbine yo menm akote.
Se konsa, si mwen pa t 'defini anyen pou ka de, sa a ta
aplike nan tou de ka.
Oh, si mwen pa t 'mete anyen pou ka yon sèl, sa a ta aplike a tou de
ka youn ak de.
Si sa fè sans.
>> ODYANS: Èske ou ka repete ke yon moun?
>> LUCAS Freitas: OK.
Si ou te fè fondamantalman, tankou, ou gen menm bagay la, men ou pa mete
anyen isit la, ou ta dwe swa pou ka youn oswa ka de, fè sa.
Dwa?
Lè sa a ti repo vle di si w ap resevwa nan ka sa a, jis kite.
Se konsa, se sa ki fren an vle di.
Se konsa, si mwen jis te fè sa a, ou gade, li nan yon sèl ka, epi ou ta jis fè sa.
Si li te ka de, li ta tou jis vin isit la ak fè sa.
>> ODYANS: Men, ou ka fè li?
Si gen nan yon bagay pou ka de [fèbl]
>> Lauren CARVALHO: Mwen pa kwè ou ka fè sa.
Mwen pa panse ou ka sote alantou.
Èske ou ka fè sa, Rob?
Mwen pa panse sa.
>> ODYANS: Se konsa, yon sèl nimewo ka ale apre yon ka, dwa?
Gen pa ka ka yon sèl, vigil, de?
>> LUCAS Freitas: Non, ou pa kapab.
Ou definitivman pa kapab.
>> Lauren CARVALHO: Mwen vle di, pwen an se sa a se yon opsyon, ak sa a pa ta ka
anfòm ka sèvi ak ou, se konsa Lè sa a, ou ta sèvi ak si nan kondisyon.
>> ODYANS: Se konsa, poukisa ou ta fè sa?
Chanjman an?
>> Lauren CARVALHO: Mwen ta itilize sa a si ou te trè defini -
aktyèlman, Lucas, se w ap bloke.
>> LUCAS Freitas: Oh, regrèt.
>> Lauren CARVALHO: Si ou gen anpil konpòtman yo defini ke ou vle pou
chak ak tout D ', sa a ta kapab yon ti kras pi plis kout pase ekri soti
yon si deklarasyon pou chak yon sèl.
>> ODYANS: Ki sa a kraze vle di ankò?
>> Lauren CARVALHO: repo a vle di sispann.
Sonje byen, si mwen pa t 'gen sa a ti repo isit la, nou ta gen sèlman tonbe
nan ka a kap vini an.
>> LUCAS Freitas: Pak vle di yo ka resevwa soti nan deklarasyon an switch.
Paske si li nan 1, mwen vle ekri ak lèt ​​detache sa a, epi kite kay la.
Mwen pa vle yo tcheke nenpòt lòt bagay.
>> ODYANS: Ou pa vle ekri ak lèt ​​detache nenpòt lòt bagay.
>> LUCAS Freitas: Yeah.
Paske li nan mityèlman eksklizif.
>> ODYANS: Lè sa a sèlman kontinye nan dosye a pwochen si ka a an premye
se pa vre?
Oswa li teste tout ka yo an menm tan an?
>> LUCAS Freitas: Non, li chèk sekans.
Sekans, yeah.
Youn nan pi plis kesyon, lè sa a nou te gen deplase sou pou nou ka kouvri tout bagay.
Yeah?
>> ODYANS: Se konsa, pou ka a, te kapab gen fè yon bagay san konte sèlman yon sèl la?
Èske ou ta kapab ba li yon ranje?
>> LUCAS Freitas: No
>> Lauren CARVALHO: Mwen pa panse ou ka ba li yon ranje.
>> LUCAS Freitas: Ou pa kapab ou pa kapab bay li yon seri.
>> ODYANS: ka a se espesifik [Fèbl].
>> LUCAS Freitas: Bouton se sòt de valè.
Ou fè bagay diferan depann sou yon valè, se yon valè espesifik.
Ou pa ka fè ranje, ou pa kapab fè nenpòt lòt bagay.
Se jis nan yon lòt zouti yo wè.
>> Lauren CARVALHO: Pifò moun ki pa sèvi ak chanje deklarasyon anpil nan CS50,
men li la a.
>> Tout dwa.
Se konsa, bagay la pwochen nou pral pale sou se operatè a tèrsyèr.
Sa a se jis yon lòt kalite nan kondisyonèl.
Fondamantalman sa a pral sou isit la se mwen se mande pou yon nonb antye ki pè, epi si n se
pi gran pase 100, mwen pral enprime soti "Segondè." Si li pa, mwen pral
ekri ak lèt ​​detache soti "ki ba."
>> Se konsa, sa li a fè se kondisyon an ki isit la nan parantèz yo, epi ou
ka kalite panse a kesyon an tankou mwen mande si wi ou non
sa a se laverite oswa ou pa.
Si li se verite, mwen pral fè sa premye bagay, epi si se pa vre, mwen se
pral fè dezyèm bagay sa a.
>> Nenpòt kesyon sou la tèrsyèr operatè?
>> LUCAS Freitas: Jis vle sonje soti nan David se ke chak fwa ou gen yon
kondisyon -
>> Lauren CARVALHO: Mwen devine David la l ap gade atravè kouran an ap viv la.
>> LUCAS Freitas: Li te fè lavi kouran kounye a.
Se konsa, chak fwa w gen yon pwoblèm, w ap sipoze mete aparèy òtopedik Curly,
jis tankou nou genyen nan yon switch deklarasyon isit la.
Nou gen aparèy òtopedik Curly isit la.
Pou tou sa kondisyon, w ap sipoze tou mete sa a.
>> Lauren CARVALHO: Ou pral wè sa a nan gid-la style.
Nou pa gen a aktyèlman gid style kounye a.
Mwen panse ke David la toujou ap travay.
>> LUCAS Freitas: Li te di ke li jis ap travay kounye a.
>> Lauren CARVALHO: Oh, se li k ap travay kounye a?
OK.
Se konsa, aparamman ane sa a nan style la gid, menm si ou jis gen yon sèl liy,
ou te gen yo mete sa yo aparèy òtopedik Curly pous
Ou pa nesesèman bezwen pou la fonctionnalités nan pwogram nan.
E petèt nou ta dwe jis pran yon ti repo apre kondisyon sa yo ak ale tou dwat
gid-la style klè moute kèk nan bagay sa yo?
>> LUCAS Freitas: Yeah.
ou gen yon kesyon?
>> ODYANS: Non, mwen pral jis rete tann jouk gid-la style.
>> ODYANS: Èske ou ta kapab ale tounen operatè a tèrsyèr?
>> Lauren CARVALHO: externer, wi.
>> LUCAS Freitas: externer operatè se fondamantalman yon deklarasyon si lòt moun, men
olye pou yo gen gen de liy ki nan tcheke yon si ak Lè sa a, nan
lòt moun, ou jis gen yon sèl liy.
Se konsa, fondamantalman si mwen vle bay yon fisèl yon valè de wo oswa ba, epi mwen
vle fè yon gwo si n pi gran pase 100 oswa ki ba li si li nan mwens, ki sa mwen kapab fè
se sa a [fèbl]
fisèl la a pwal, ak Lè sa a, mwen mande pwogram lan se n pi gran pase 100?
>> Se konsa, Se poutèt sa mwen gen ekspresyon sa a nan parantèz ak Lè sa a,
make la kesyon.
Mwen mande se li ki pi konsekan pase 100?
Si li se, li la pral fè segondè.
Si li pa, li te pral fè ki ba.
>> Se konsa, fondamantalman ki sa ou panse se ou mande yon kesyon, kidonk, ou mete nan parantèz
kondisyon an.
Lè sa a, ou mete make la kesyon paske ou ap mande li.
Men, si sa a se laverite, li pral fè nan valè a an premye [fèbl] isit la.
Si li pa, mwen pral mete a valè ki se apre kolon an.
Èske li fè sans?
>> Li la tou yon bagay ki se tankou yon zouti nan C men ou pa oblije
espesyalman sèvi ak li.
Men, CS gen moun ki konn renmen sa paske li jis sove liy yo.
>> Lauren CARVALHO: Li trè elegant.
Li fè yon anpil nan jis yon sèl deklarasyon.
>> ODYANS: Se konsa, siy ki pousan se jis tou sa rezilta yo sou
liy lan anvan?
>> Lauren CARVALHO: Oh, mwen regrèt.
Siy pousan Sa a se aktyèlman yon kontneur pou sa a s.
Nan yon deklarasyon printf, ou te gen sa a fisèl isit la, ki se sa k ap pase
ekri ak lèt ​​detache soti, men ou kapab pa jis mete sa a s an la.
Sinon li ta ekri ak lèt ​​detache soti nan yo literalman.
Se konsa, nou mete yon pousan isit la kenbe kote sa a ki te fèt pou tou sa
vini apre vigil la.
>> Se konsa, pou yon fil, ou te gen pousan an.
Pou yon nonb antye ki pè, pousan mwen.
Pou yon flote, pousan f.
Ou pral wè sa yo jan nou wè plis egzanp.
Men, petèt ou ta dwe pale sou la gid style pou yon ti tan, kounye a
ke li nan yo.
>> LUCAS Freitas: Si ou ale nan cs50.net/style, w ap ale nan wè
gid-la style.
Pou kouche pwoblèm, nòt ou pou la se pwoblèm seri ki konpoze de sijè ki abòde,
ki fondamantalman vle di si ou te fè tout pati pyès sa yo nan pwoblèm mete oswa si w
eseye fè yon bagay.
Bagay la se dezyèm Correct, ki vle di se pwogram ou an ap fè sa li
te sipoze ap fè, oswa fè li gen pinèz, oswa gen li pa fè sa
li nan te sipoze fè.
>> Bagay la twazyèm se konsepsyon, ki vle di w ap mete ann aplikasyon byen sa a, oswa yo
ou lè l sèvi avèk deklarasyon nesesè?
Se konsa, pou egzanp, si ou vle repete yon nimewo 10 fwa, ou menm ki ekri yon
pou bouk oswa yo ou jis ap fè 10 fwa deklarasyon an menm, jis ap fè
kopi ak keratin.
Se konsa, konsepsyon se pou sa.
>> Epi finalman, ou gen style.
Style se jis tankou nou jije si Kòd ou sanble
lizib ak kalite bèl.
Li jis fondamantalman vle di se kòd ou lizib?
Èske yon lòt moun ki te kap yo Kòd ou pral kapab konprann ki sa
li nan fè la a?
li gen kòmantè ak renmen an?
>> Se pou nou pale sou style la ki w ap sipoze sèvi ak yo.
Premye bagay la se kòmantè.
Kòmantè yo trè enpòtan pou ou Kòd paske pafwa w ap fè
pwogram ou an, epi ou konnen ekzakteman ki sa ou vle fè sa ou jis kòmanse
kodaj, jis tape moute yon pakèt moun sou C. Men, Si yon lòt moun se kap yo w ap
Kòd yo, yo pa pwal pou kapab konprann li paske yo pa konnen
sa ki pou nan tèt ou, tankou pesudocode a, se konsa petèt yo pral
gen yon tan difisil yo konprann sa Kòd la ap fè.
>> Se konsa, kòmantè yo se reyèlman itil yo eksplike nan yon moun ki nan kap nan
Kòd ou ki sa li ap fè, ak aktyèlman menm pou ou,
yo ap trè itil.
Kòm ou ale nan pi rèd epi yo ka difisil Psets, w ap ale nan wè ke Kòd la vin
pi long, ak Lè sa a, kòmantè yo se reyèlman enpòtan pou ou sonje ki sa chak
yon pati nan pwogram ou an ap fè.
>> Pou mete yon kòmantè, ou ka jis fè yon koupe koupe ak Lè sa a, ekri yon kòmantè.
Apre sa, liy an antye se yon pati nan yon kòmantè, Tou sa ou ekri,
li pa pral fè itilize pou kòd ou a.
Li nan fondamantalman tankou du a ki pral inyore sa.
ki fè sans?
>> ODYANS: Kisa ou fè ankò ekri yon kòmantè?
>> LUCAS Freitas: Sa a?
Koupe a koupe?
Chak fwa ou tape koupe koupe, tou sa se nan ki liy pa pral
yo dwe konsidere kòm yo dwe C. Yeah?
>> ODYANS: Se konsa, apre kòmantè a, ou jis antre nan epi yo kòmanse yon liy nouvo?
>> LUCAS Freitas: Yeah, egzakteman.
>> Lauren CARVALHO: koupe a koupe se pou yon sèl kòmantè liy.
>> LUCAS Freitas: Pou egzanp, isit la nou genyen -
kite m 'rale nan -
pou egzanp, isit la mwen deklare yon flote, men petèt si ou jis mete sa a
nan kòd ou a, tankou ou pa gen okenn lide ki sa sa a ap fè, tankou aktyèlman
yon moun ki nan kap nan Kòd sa a a pwal, tankou, ki sa ki la
èk k ap pase?
>> Si ou mete yon kòmantè li di: "konvèti Farennayt Sèlsiyis, li fè anpil
plis sans.
Ou se, tankou, OK, w ap fè yon konvèsyon.
ki fè sans?
Se konsa, li nan jis yon bagay ki ede moun pare Kòd ou ak tou fè
ou pral kapab òganize Kòd ou pi byen.
>> Bagay la dezyèm se ke ou ka fè milti-liy kòmantè, se konsa gen yon sèl
kòmantè pou yon pakèt moun sou liy yo.
Olye pou yo gen yo mete koupe koupe, kòmantè yo an premye liy, koupe koupe,
liy, dezyèm lan, ak sou sa, ou ka sèvi ak zetwal nan koupe.
Fason ke ou fè li se ke pou la premye liy nan kòmantè a, w ap
pral fè yon etwal etwal koupe, Se konsa, jis tankou sa.
Jis tankou isit la nou gen nan konmansman an nan yon pwogram, anjeneral, ou mete ki moun ou
yo, ki sa ki pwogram sa a fè, ak lòt bagay tankou sa.
Li nan kalite tankou yon header pou pwogram lan.
>> Yon fwa ankò, li nan pa yon bagay ki yon du ki pral pran swen sou, men
li enpòtan pou ou pou w konnen ki sa sa a pwogram fè oswa pou lòt moun
konnen ki sa pwogram ou an ap fè.
Se konsa, ou koupe zetwal zetwal, ak Lè sa a, nan dènye liy w ap ale nan fè zetwal
koupe pou kapab fèmen ki kòmantè.
Se konsa, fondamantalman pou tout lòt liy ki, ou ka jis ekri tou sa, ak sa a
se tout yo pral inyore.
>> Epi tou, menm jan style, ou wè chak nan liy ki gen yon zetwal, ak tout
zetwal yo deskriptè sa yo konfòm.
Sa yo se bagay enpòtan pou ki Kòd ou sanble bèl.
Son bon?
>> Koulye a, kondisyon.
Kisa mwen menm David te di ke nou ta dwe aktyèlman mete nan sa yo glisad, se ke
lè ou gen nenpòt kalite si deklarasyon oswa nenpòt ki kalite kondisyon,
ou ta dwe itilize aparèy òtopedik Curly yo fè montre ke sa a se sa ki te pral rive
lè ou gen kondisyon an.
Teknikman, lè w gen yon pwoblèm ak Lè sa a, liy ki vin apre a se jis yon sèl
liy, ou pa teknikman gen yo mete aparèy òtopedik yo Curly.
>> Fondamantalman du a ta konprann li kanmenm kòm enplisit.
Men, pou CS50, nou mande w mesye yo mete aparèy òtopedik yo Curly jis pou ke ou
Kòd se pi plis òganize ak plis ankò lizib.
Paske, se Kòd li vin pi long si ou pa gen aparèy òtopedik Curly ak sa yo.
Li vin reyèlman sal.
>> Lauren CARVALHO: Sa a se egzakteman sa David jis vize deyò
nan glisad anvan m 'yo.
Li definitivman ap travay san yo pa Curly a aparèy òtopedik, men pou rezon stylistic
nou pral mande pou ou mete sa yo pous
>> Men, lè ou kòmanse kouri style50, ki se kalite chèk la 50 pou
style, li pral fè ou sonje fè sa.
>> LUCAS Freitas: Ak yon lòt bagay se sonje yo mete aparèy òtopedik yo Curly ansanm
nan chak liy.
Se konsa, ou fè, pou egzanp, l'a.
Ale nan liy ki vin apre a, louvri Curly a atèl, lè sa a ou ale nan liy kap vini an.
Dekoupaj, ki se kat espas.
Lè sa a, ou ekri tou sa, lè sa a yon lòt liy, epi fèmen atèl a Curly.
Se konsa, asire w ke tou de sa yo Curly aparèy òtopedik yo nan liy diferan.
>> ODYANS: Se konsa, si Kòd sa a te gen tankou 10 ifs lòt moun, sa a ta dwe
gen 10 kouche nan parantèz?
>> LUCAS Freitas: Yeah, pou chak nan yo.
Yeah.
Se konsa, si, lòt moun si, ak sou sa.
>> ODYANS: Èske ou ka pa peze Tab indent?
>> LUCAS Freitas: Nou ap mande ou mesye yo sèvi ak kat espas.
Gen kèk editè tèks tradui tab kòm kat espas otomatikman.
jdi pa fè sa, se konsa ou gen fè space space space space.
Sa a se tou yon bagay ki gen kèk pwogramasyon sèlman fè onglè, gen kèk
pwogramasyon sèlman fè kat espas, ak kèk lòt moun ki menm fè
de oswa twa espas.
Se yon bagay ki isit la nou ap mande ou nèg fè kat espas.
>> ODYANS: Genyen prèske definitivman te rive nan gen yon fason pou jdi
otomatikman [fèbl].
Tankou pa gen [fèbl] fè sa.
>> LUCAS Freitas: Yeah.
Mwen panse ke ou ka ale nan Anviwònman.
>> ODYANS: Li deja fè nan tout sa.
>> LUCAS Freitas: Li deja fè?
OK.
Se konsa, jis asire w ke ou gen kat espas.
>> ODYANS: nou gen yo mete Curly a parantèz an pou pasan kòm byen?
>> LUCAS Freitas: Wi.
>> Lauren CARVALHO: Chak fwa ou ankapsule yon blòk nan kòd, jis
tanpri itilize aparèy òtopedik yo Curly.
Apre sa, ou anvan ou panse ke nou ap jis yo te sticklers sou sa yo pa bon menm
rezon ki fè, si ou nèg ale sou yo ka resevwa estaj teknoloji nan konpayi gwo,
yo pral ba ou yon gid style, ak yo pral di w sa a se sa ou
Kòd bezwen sanble.
Apre sa, menm si, ou te aprann Kòd tankou sa a, petèt nan estaj ou
ou pral gen fè yon bagay konplètman diferan.
Yo espere ou nan konfòme a style yo.
>> LUCAS Freitas: Apre sa, yon sèl plis bagay se ke ou remake ki jan mwen gen tankou x,
espas, mwens, espas, 0?
Chak fwa ou gen yon operatè -
li kapab tankou plis, mwens, fwa, mwens, pi gwo, kèlkeswa sa operatè -
ou gen yo mete yon espas sou bò gòch la e yo gen dwa a nan operatè a.
>> Lauren CARVALHO: Sa yo se rele operands binè.
Senpleman asire w ke ou toujou espas soti operands binè ou.
>> LUCAS Freitas: Sa a se pa yon operands binè.
>> Lauren CARVALHO: Sa se paske li pran de.
>> LUCAS Freitas: Oh, wi.
>> OK, switch yo.
Premyèman, ou gen yo wè ke jis tankou nan yon deklarasyon si oswa lòt moun, ou gen
yo mete atèl a Curly sou liy pwòp li yo ak anba aparèy la Curly isit la.
Avi ki di ke gen yon espas sèl apre chanje, jis tankou nan si ak lòt moun
nou te gen yon espas sèl ant ki ak parantèz yo.
Se konsa, ou gen yo mete sa.
>> Apre sa, gen nan pa gen espas dwa yo apre chak nan parantèz yo oswa anvan nan fen
nan parantèz yo.
Se konsa, ou wè ke li nan tout ansanm, epi tou li renmen moute isit la.
>> Yeah?
>> Lauren CARVALHO: Mwen panse ke nou bezwen pou avanse pou pi sou.
>> LUCAS Freitas: Se konsa, sa a se yon pati nan la style gid ki di ou gen pou CS50.
Asire ou ke ou ale nan cs50.net/style ak pran yon gade nan sa a.
Sa yo se tout bagay ki enpòtan anpil pou nòt style ou.
>> Kite m 'ale tounen nan deklarasyon an.
>> Lauren CARVALHO: Mwen ta pito jis itilize style50.
Nou jis ap pwal ale tou dwat nan pasan.
Tout dwa.
>> Se konsa, kite a jwenn tounen nan kontni a, kounye a ke nou te ale sou gid-la style.
Pasan, ou te wè yo nan grafouyen, ak nou pral pale de yo nan
C.
>> Nan yon pou bouk, gen twa pòsyon an
deklarasyon sa a pou bouk.
Ou te gen inisyalizasyon ou a nan kote ou mete varyab ou.
Ou te gen eta sante ou yo, ki se tcheke yo wè si wi ou non yon bagay ki
vre oubyen fo ak si wi ou non nan bouk ta dwe kontinye.
Apre sa, ou te gen aktyalizasyon ou a, ki se à varyab ou.
>> Se pou yo jis pran yon gade rapid nan kèk C Kòd sa a pou bouk nan aksyon.
Sa a pral sou se isit la nan la inisyalizasyon, nou mete mwen nan 0.
Nan kondisyon an n ap tcheke si wi ou non mwen se mwens pase 10.
Ak nan aktyalizasyon a nou ap incrementing mwen.
Se konsa, sa pral lakòz soti nan sa a pou bouk?
>> LUCAS Freitas: Aktyèlman, premye nan tout, ou nèg konnen sa m + + ye?
>> ODYANS: ogmante pa 1.
>> LUCAS Freitas: ogmante pa 1, repons lan se wi.
Se konsa, sa a se menm bagay la kòm fè mwen egal mwen plis 1.
Apre sa, remake ke nou pa gen yon espas ant mwen an ak + + la.
>> Se konsa, ou nèg konnen ki sa sa a pral fè?
Èske yon moun di m 'konsa?
E petèt jwenn kèk sirèt paske yo te sa?
>> ODYANS: [fèbl]
>> LUCAS Freitas: OK.
[Fèbl]
montre tout moun pita [fèbl].
Yeah, li nan pral montre "Sa a se CS50 "10 fwa.
>> Lauren CARVALHO: Mwen devine li te nan tit la nan glise la.
>> LUCAS Freitas: Oh, wi.
>> [Ri]
>> LUCAS Freitas: Sa ede.
>> Lauren CARVALHO: Se konsa, moun yo se pou pasan.
Nou pral wè kèk egzanp plis nan pou pasan pita sou.
Men, kite a aktyèlman pran yon gade nan la dezyèm di ki kalite bouk ou pral rankontre
nan C, ak sa yo rele li bouk la pandan y ap.
>> Nan yon bouk ti tan, ou te jis te resevwa yon kondisyon.
Se kondisyon an tcheke nan nan kòmanse, epi si ke kondisyon
evalye vre, Lè sa a, kòd la nan kò a nan blòk la pandan y ap
ap egzekite.
Apre sa, kòd la ap kontinye egzekite toutotan ke
kondisyon rete vre.
>> Isit la nan yon egzanp nan yon bouk pandan ke yo nan C. Nou pral mete konte a 10
kòmanse avèk yo.
Osi lontan ke konte a se pi gran pase 0, nou pral kenbe enprime soti sa a
varyab isit la.
Nou pral dekrwasans konte ak Lè sa a, tcheke kondisyon an ankò.
Ekri an lèt detache, dekrwasans, chèk kondisyon la ankò.
>> Isit la nou gen yon egzanp ki konsène nan kesyon ou pi bonè.
Nou te gen s la pousan lè nou te enprime soti yon kòd, epi kounye a ke
nou ap enprime soti yon Int, nou gen yon pousan mwen kòm kontneur nou pito.
Lèt yo ta dwe tout dwe trè entwisyon, s pou fisèl, mwen pou Int.
>> Se konsa, si Kòd sa a ègzekutra, ou ta dwe konte desann soti nan 10 a 0, enprime soti
chak nonb antye ki pè.
>> LUCAS Freitas: Apre sa, ou ka panse a nan pousan jan li santi l tankou yon vid
espas, ak Lè sa a, w ap mete sa a varyab isit la nan espas sa a vid.
Se konsa, pou egzanp, isit la mwen pral gen jis yon vid, ak Lè sa a, mwen mete nan
konte dwa la, nan valè de konte a.
ki fè sans?
>> Te kapab mwen jis fè tankou printf ak Lè sa a, quotes, konte?
T 'vle travay?
>> ODYANS: No
>> LUCAS Freitas: Non, paske li pral aktyèlman ekri ak lèt ​​detache pawòl Bondye a "konte"
olye pou yo enprime valè an.
Sa a se fason ou fè l 'ekri ak lèt ​​detache valè yo nan direksyon varyab a olye pou yo
jis non an nan varyab la.
Nenpòt kesyon?
>> ODYANS: Poukisa ou itilize pou kòm yon opoze a pandan y ap?
>> Lauren CARVALHO: Mwen ta sèvi ak yon pou bouk si mwen konnen egzakteman ki jan anpil
itérations mwen vle bouk m 'nan kouri.
Nan ka sa a, li pa gen pwoblèm paske, Mwen vle di, mwen te jis ap eseye
panse a yon vrèman senp egzanp pou glise sa a.
Men, kite a di ke ou vle yon bagay kenbe pral pandan y ap -
>> LUCAS Freitas: Pou egzanp, w ap mande pou D 'jouk moun nan
ba ou opinyon a dwat.
Se konsa, tankou pandan y ap D 'a se pa OK, kontinye mande sa pou li.
Oswa tankou pandan w ap paran yo pa bay ou lajan, kontinye mande sa pou li.
>> [Ri]
>> Lauren CARVALHO: Ou pa konnen ki jan anpil fwa ou pral gen fè li.
>> LUCAS Freitas ou: Paske ou pa fè sa konnen ki jan anpil fwa sa a, se
ale nan kenbe prale.
>> Lauren CARVALHO: Men, nan yon pou bouk, ou bezwen konnen konbyen fwa.
Yeah?
>> ODYANS: Jis klarifye, pousan nan di sa a se yon bagay sou yo
rive, mwen la a pou nonb antye ki pè a, ak n nan antislach -
>> Lauren CARVALHO: Vle di?
Ki moun ki konnen sa ki n an antislach vle di?
New liy, yeah.
Egzakteman.
>> LUCAS Freitas: Ou ka panse nan n kòm nouvo liy.
>> Lauren CARVALHO: Nice.
>> ODYANS: Ki sa ki nan ke konte priz priz [fèbl]?
>> LUCAS Freitas: Konte mwens mwens se menm bagay la kòm plis plis, men
olye pou yo ogmante, li nan diminye pa 1.
>> Lauren CARVALHO: Nenpòt plis pandan y ap kesyon bouk?
Pa gen okenn?
Oh, nou te sipoze te sote sa a.
>> Sa a se yon fè pandan bouk.
Sanble anpil nan yon bouk pandan y ap eksepte nan ka sa a nou tcheke kondisyon an apre
kòd la nan kò a nan la bouk ègzekutra yon fwa.
Se konsa, nou egzekite kòd la premye pa gen pwoblèm sa.
Lè sa a, nou tcheke kondisyon an, egzekite l 'ankò si kondisyon an se verite.
>> Ou pral jwenn tèt ou lè l sèvi avèk sa a lè w ap mande pou opinyon itilizatè.
Paske w ap toujou pral fè yo mande yon fwa, ak Lè sa a depann sou sa ki
D 'nan itilizatè se, ou ka gen reprompt epi mande ankò e ankò si
D 'a pa t' sa ou espere li yo dwe.
>> ODYANS: Se konsa, li tankou yon fòm pou moun ki ranpli.
>> Lauren CARVALHO: Yeah, egzakteman.
Ou ap jwenn, mwen panse, nan trè premye ou a Pset, w ap ale nan gen
sèvi ak yon bouk fè byen yo kolekte D 'soti nan itilizatè a.
>> ODYANS: Tou depan de sitiyasyon an, pasan pandan y ap ou yo ap gen tandans kouri plis
souvan pase pandan y ap pasan, tankou pa youn oswa yon bagay?
>> Lauren CARVALHO: Si li la egzak la -
>> LUCAS Freitas: Yo ta dwe toujou kouri kantite lajan an egzak la fwa ke ou
vle li nan kouri.
Menm jan ak nou sèvi ak fè pandan y ap paske nou vrèman te vle jwenn D 'a omwen yon fwa.
Nan pasan pandan y ap epi, pafwa, ou pa vle al touye li nan tout si li pa
ka a nan egzekite.
Se konsa, li depann sou konsepsyon an.
Mwen vle di, ou ka swa itilize fè pandan y ap oswa pandan y ap osi lontan ke Kòd ou fè sa
li nan te sipoze fè.
>> Lauren CARVALHO: Men, mwen fè panse repons lan nan ou
kesyon se pwobableman repons lan se wi.
Se pou nou di kondisyon an te bay manti.
Nan yon ka li ta kouri yon fwa, ak yon lòt ka li ta kouri zewo fwa.
Se konsa, yeah.
>> Nenpòt kesyon pi plis?
Wi?
>> ODYANS: Eske kondisyon an bouk gen yon pou bouk an tèm de yon lòt varyab
pase [fèbl].
>> Lauren CARVALHO: Yeah, li kapab anyen.
Pwobableman pou kòmanse Psets yo, ou pa pral gen rankontre ka sa a, men
definitivman li kapab anyen.
>> LUCAS Freitas: Mwen panse ke nou ap fè isit la.
>> Lauren CARVALHO: Eske nou kwè nou?
Pa gen okenn?
>> LUCAS Freitas: loup?
Yeah.
>> Lauren CARVALHO: Nou pa ta dwe.
Oh, nou ap fè ak pasan.
OK.
>> Aktyèlman, paske nou te pale konsa anpil, se pou yo aktyèlman tout navige
nan men study.cs50.net/conditions.
Apre sa, w ap ale nan navige desann ak pwoblèm yo widget.
Oke, aktyèlman, pandan y ap moun ki ap resevwa sa a mete kanpe, etid la CS50 se
pral fè yon zouti ki TFs ou pral sèvi ak pou prepare yo pou seksyon e ke
ou nèg ka itilize si ou rate seksyon.
Li nan ale nan gen yon pakèt moun sou glisad, kèk konsèy ak ke trik nouvèl pou chak
sijè, ak kèk pwoblèm pratik ak solisyon yo.
>> Poukisa se pa tout moun jis pran yon gade nan pwoblèm sa a isit la menm.
>> Mwen regrèt sa, mwen ta dwe gen sonje moun yo pote laptops jodi a.
Men, si ou pa gen yon laptop, ke se ok.
Ou ka jis bout sa a desann sou yon moso papye oswa gade
zepòl frè parèy nou.
>> Ann eseye epi ekri yon pwogram ki envit itilizatè a pran yon devine, nan
nimewo mwayèn nan timoun yo pou chak fanmi inite nan peyi Etazini.
Ladan nimewo se 2, bò wout la, jan ou ka wè nan egzanp sa yo.
>> Nou vle enprime soti nimewo mwayèn nan timoun pou chak fanmi nan peyi Etazini an, Lè sa a, nou
vle ki sa?
Nou vle kolekte D ' soti nan itilizatè a.
Lè sa a, depann sou sa ki itilizatè a D 'se, w ap ale nan ekri ak lèt ​​detache soti
swa sa a ki kòrèk oswa sa a se kòrèk.
>> Ak anpil premye bagay ki ou pral wè, si ou klike sou flèch la ti kras nan
anba a nan pwoblèm widget la se yon tach ekrir desann kèk pseudocode.
Se konsa, ou pa ap pwogramasyon ankò.
Ou ap jis ap resevwa ou lide yo nan lòd.
>> nenpòt moun ki vle ede Lucas vini ak dwa pou
pseudocode pou pwoblèm sa a?
>> LUCAS Freitas: Ki sa ki se bagay ki premye ke nou ta dwe pwobableman fè isit la?
Ki sa ou mesye panse?
>> ODYANS: [fèbl]
>> LUCAS Freitas: Yeah, OK.
Se konsa, ekri ak lèt ​​detache.
Jis di ekri ak lèt ​​detache a sa a mwayèn kantite moun ki?
OK.
Ekri an lèt detache kesyon, se pou yo di.
Apre mwen fin ekri ak lèt ​​detache kesyon sa a, kisa pou m fè?
>> ODYANS: Jwenn opinyon.
>> LUCAS Freitas: Jwenn opinyon.
Nenpòt lòt bagay?
>> ODYANS: Condition.
>> LUCAS Freitas: Condition.
>> Lauren CARVALHO: Kisa ou gen kondisyon pral fè?
>> ODYANS: Nimewo a nan [fèbl].
>> Lauren CARVALHO: Dwa.
>> LUCAS Freitas: Se konsa, sa mwen pral yo tcheke nan yon kondisyon ki an?
>> ODYANS: Si li egal 2.
>> Lauren CARVALHO: Si li egal 2.
Egzakteman.
>> LUCAS Freitas: Eske gen yon bagay lòt moun ke mwen ta dwe fè?
>> ODYANS: Konte.
>> LUCAS Freitas: Se konsa, si li nan egal a 2, kite a di -
kite m 'jis ekri si opinyon egal a 2, Lè sa a, sa m pral
fè se ekri ak lèt ​​detache kòrèk la.
Lè sa a, lòt moun, mwen pral ekri ak lèt ​​detache kòrèk.
Nenpòt lòt bagay?
Pa gen okenn?
>> Lauren CARVALHO: Se konsa, ou kapab klike sou - a
tout moun gen sa a desann?
>> LUCAS Freitas: Èske li fè sans?
Se konsa, kounye a kite a eseye Kòd sa a.
>> Lauren CARVALHO: Si ou klike sou ti kras nan flèch, li aktyèlman sove ou
pseudocode, ki se reyèlman enteresan.
Apre sa, ou ka fè sa yo nan kòmantè si ou vle jis fè sonje tèt ou nan
sa yo dwe fè.
>> LUCAS Freitas: Se konsa, pou egzanp, premye Mwen pral ekri ak lèt ​​detache kesyon an, se konsa
ki jan mwen pral fè sa, aktyèlman?
printf.
Se konsa, printf, ak kesyon an se mwayèn kantite timoun pou chak
fanmi nan peyi Etazini.
>> Lè sa a, mwen pral jwenn D 'soti nan itilizatè a.
Se konsa, kouman mwen ka fè sa?
>> ODYANS: Jwenn Int.
>> Lauren CARVALHO: GetInt.
>> LUCAS Freitas: OK.
Se konsa, premye deklare, dwa?
Int, se pou yo rele l 'n egal GetInt.
>> Epi, koulye a kondisyon an.
Se konsa, kite m 'di ke mwen pral isit la repons chèk la.
Se konsa, premye, si D ', ki se n, egal a - ki jan mwen pral yo ekri sa?
>> ODYANS: Egal egal-ego.
>> LUCAS Freitas: pafè.
Se konsa, n.
Apre sa, remake ke m 'fè yon espas, egal, egal, espas, vre.
Koulye a, kisa pou m fè?
Yon bagay trè enpòtan pou style.
Aparèy òtopedik yo Curly.
>> Lè sa a, mwen pral ekri ak lèt ​​detache.
Kouman pou mwen ekri ak lèt ​​detache?
printf.
>> ODYANS: ta ka li dwe pwofite kapitalize?
>> LUCAS Freitas: No
Li sipoze tout miniskil.
Se konsa, ki la kòrèk.
>> Èske sa a sifi pou printf la deklarasyon, oswa m 'manke anyen?
>> ODYANS: New liy.
>> LUCAS Freitas: New liy, yeah.
Epi, koulye a lòt moun.
>> ODYANS: Èske gen yon espas apre printf a, wi ou non?
>> Lauren CARVALHO: Nou ta dwe tcheke gid-la style.
>> ODYANS: Li pa ta dwe.
>> LUCAS Freitas: pa ta dwe, OK.
Se konsa, lòt moun, printf, "Sa se kòrèk."
>> Lauren CARVALHO: Wouch, quotes ou.
>> LUCAS Freitas: OK.
Nenpòt lòt bagay?
li gade sa ki bon?
>> Lauren CARVALHO: Eske se pou nou eseye li?
>> LUCAS Freitas: Yeah, se pou yo kouri li.
Se konsa, li konpile, epi li sanble ke li fonksyone.
Ann eseye de timoun yo.
Sa se kòrèk.
Epi, koulye a kite a kouri ankò, men kounye a olye pou mete de timoun, se pou yo
di ke mwen pral mete tankou senk.
Sa se kòrèk.
Se konsa, li sanble ke li fonksyone.
>> Lauren CARVALHO: Poukisa ou pa montre yo sa k ap pase si ou mete yon bagay
etranj, tankou kèk lèt ​​yo.
>> LUCAS Freitas: Oh, wi.
Se pou yo tcheke sa tou.
E si itilizatè a ap eseye dezòd ak pwogram ou, epi yo jis
ekri, mwen pa konnen de.
Li pral di rekoumanse.
>> Lauren CARVALHO: Se konsa, GetInt ap mande yo nan rekoumanse.
Nou pa t 'dwe pran swen nan ki tèt nou.
>> LUCAS Freitas: Yeah.
Se konsa, sof si mwen aktyèlman mete yon nimewo, li nan ale nan kontinye mande m 'nan rekoumanse.
>> ODYANS: Ki jan ou fè kouri li?
>> LUCAS Freitas: Jis klike sou zetwal sa a bouton.
>> Lauren CARVALHO: Ou ta dwe ale leve.
Gen ou ale.
>> LUCAS Freitas: etwal la bouton ki la a.
Yeah?
>> ODYANS: li pouse [fèbl] ak nimewo desimal tou?
>> Lauren CARVALHO: mwen kwè ke li pral.
>> LUCAS Freitas: Si li fè sa ki sa?
>> Lauren CARVALHO: Si yo tape nan yon nonb desimal, mwen panse ke
li nan ale nan èd memwa.
>> LUCAS Freitas: Ann wè.
>> Lauren CARVALHO: Paske li pa yon Int.
>> LUCAS Freitas: Yeah.
>> Lauren CARVALHO: Se konsa, li li pa yon Int, Jwenn Int ap mande ou a rekoumanse.
>> ODYANS: Se konsa, kote nan ki Kòd ta dwe plas la desimal ki envit la
itilizatè yo ke yo gen antre nan yon nonb antye relatif espesyalman?
>> Lauren CARVALHO: GetInt se aktyèlman fè sa pou nou.
>> ODYANS: Non, mwen vle di si nou te vle antre nan [fèbl]
>> LUCAS Freitas: Ou ka di tankou mwayèn kantite timoun nan peyi Etazini.
Mwen pa konnen.
Nou ka di, pou egzanp, "Tanpri D 'yon nonb antye. "
>> Lauren CARVALHO: Yon nonb antye ki pè egal ak kantite an mwayèn.
Mwen vle di, li nan jis ki jan ou pawòl li, dwa?
>> LUCAS Freitas: Yeah.
Sa a se pa yon pati nan aktyèlman kodaj.
Li nan plis nan tankou sa w ap ale nan vle
ekri nan pwogram ou an.
>> ODYANS: Ki jan nou ta gen kouri li si li te aktyèlman nan jdi [fèbl].
Olye pou yo peze jwe?
>> LUCAS Freitas: Nou pral premye konpile li.
Nou ka fè li pa fè fè ak non an nan dosye a.
Lè sa a, nan kouri li, nou pral fè koupe dot ak non an nan pwogram nan.
>> ODYANS: Mwen devine ki sa mwen vle di te si nou te vle pwogram lan pou reponn a
kòrèk, valab antre yo, ou pa ta dwe mete nan -
>> LUCAS Freitas: Nou pa yo pral kapab fè sa paske kòd la sa a di
rekoumanse soti nan Pran Int ki se yon fonksyon ki deja aplike
pou nou via bibliyotèk la CS50, epi depi li nan deja aplike la, nou
kapab pa jis [fèbl].
>> Lauren CARVALHO: Si ou pa sèvi ak GetInt, lè sa a ou ka fè sa.
>> LUCAS Freitas: Yeah.
Men, si w ap itilize GetInt, ou pa kapab.
Nenpòt lòt kesyon?
>> ODYANS: Èske ou ta kapab te ale avèk tankou GetFloat ak Lè sa a, kapab mete
l 'nan yon desimal?
>> LUCAS Freitas: Yeah.
>> ODYANS: OK.
Lè sa a, ou jis te kapab D ' flote yon egal -
>> Lauren CARVALHO: Yeah.
Ekzakteman menm bagay la, esepte yon flote olye pou yo yon Int.
>> LUCAS Freitas: Jis mete l 'isit la ak Lè sa a, GetFloat la.
>> ODYANS: Kòm ou pral wè oswa te wè -
>> Lauren CARVALHO: nou gen pa vinn gen anyen ankò.
>> ODYANS: - fè inegalite ak flote pa [fèbl]
>> ODYANS: Ki sa ki virgules yo vle di?
>> Lauren CARVALHO: pwenvigil a jis vle di ke deklarasyon sa a se konplè,
e nou pral yo ale sou pwochen glise la.
>> ODYANS: Se konsa, li nesesè chak fwa?
>> Lauren CARVALHO: Yeah.
Oke, OK, Se konsa, pa pou kondisyon sa yo, paske yo ap
ankapsule yon bagay.
Se konsa, fondamantalman si yon bagay ki sa ki lakòz ou a Lè sa a, kreye yon atèl Curly
blòk, pa mete yon pwenvigil nan fen an.
>> LUCAS Freitas: Men, tout bagay lòt moun, repons lan se wi.
Lè ou fini yon deklarasyon, mete pwenvigil la.
Men, si ou ta bliye virgules, nan du a pral jwenn fache sou ou,
ak w ap ale nan gen pou yo eseye fikse li.
>> Lauren CARVALHO: Si m 'mete yon pwenvigil isit la, ki ta ka sispann sa a, epi mwen
pa ta janm jwenn yo egzekite sa ki nan andedan, nan chemen an.
Se konsa, li youn nan moun ki pinèz komen.
>> ODYANS: Toujou egzekite.
>> Lauren CARVALHO: Yeah.
Nan ka sa a, nou ta toujou egzekite ki sa ki la anndan an.
>> ODYANS: style ou [fèbl] tache ki pou ou, panse.
>> Lauren CARVALHO: Oh, sa a, se vre.
>> ODYANS: [fèbl] yon sèl liy bagay [fèbl]
>> ODYANS: Wi?
>> ODYANS: Èske ou ka gen plizyè entrain nan yon sèl liy?
Se konsa, tankou ou ka mande itilizatè ekri ak lèt ​​detache de bagay sa yo?
>> Lauren CARVALHO: Pa lè l sèvi avèk -
>> LUCAS Freitas: No
Se pou nou di ke mwen vle tou jwenn nonb antye ki pè sa a m.
Èske mwen dwe fè l 'nan yon liy diferan.
>> ODYANS: Si ou te kouri sa a, ki jan [fèbl]?
Li ta ekri ak lèt ​​detache èd memwa a gen [fèbl]
ak Lè sa a, ou ta antre nan youn ak -
>> Lauren CARVALHO: Bon, kouri li.
Mwen vle di, pa gen anyen kanpe nou soti nan jis kouri l ', li wè sa ki
ta rive.
>> LUCAS Freitas: Mwen panse ke li nan ale nan plenyen nan nou
paske nou pa ap itilize -
>> Lauren CARVALHO: Wouch.
>> LUCAS Freitas: Li pote plent nan nou dwa kounye a paske nou pa ap itilize sa a
varyab, men si m 'te fè, pou egzanp, n se egal egal a, ak m egal
egal, lè sa a sa ki pral rive nan ka sa a?
Ki sa ki pwogram sa a ap fè?
>> ODYANS: Mwen jis mande li montre kouman li ta -
>> Lauren CARVALHO: Li jis vle yo konnen ki jan li sanble
tankou, mwen panse ke, dwa?
Se konsa, li te pran yonn nan yo, ak Lè sa a, li te pran yon sèl, dezyèm lan.
>> Mwen panse ke nou ta dwe deplase sou li a, paske nou gen yon sèl plis
glise montre yo ale anvan -
ou vle rale moute matematik?
>> LUCAS Freitas: Yeah, matematik.
>> Lauren CARVALHO: Bay m 'jis yon sèl dezyèm fwa.
>> Gen yon nimerik kèk diferan varyab nan C. apwoksimatif done nan C
kapab klase nan kalite diferan, ak sa yo se yo menm ki ou pral
wè pi souvan an.
>> Apre sa, Int se yon nimewo antye.
Ou pa ka gen nenpòt desimal.
Nan aparèy la, li pran 32 Bits nan magazen yon Int.
>> Yon flote ka gen desimal.
Li te tou pran 32 Bits nan magazen yon flote nan Aparèy la.
>> Yon doub se yon nimewo ak yon desimal pwen ki pran 64 Bits nan magazen li,
ki vle di ke ou ka jis gen pi gwo presizyon paske
ou ka gen plis -
sa ou rele li?
>> LUCAS Freitas: Yeah, sa a, se plis ankò.
>> Lauren CARVALHO: Plis kote apre pwen desimal la.
Apre sa, yon long long se yon nonb antye ki pran 64 Bits
li fè mal nan Aparèy la.
>> LUCAS Freitas: Se konsa, li kapab pi gwo pase antye kapab.
>> Lauren CARVALHO: bagay la sou done kalite nan C se yo ke yo di ou ki
kalite done ou ka magazen nan varyab ou.
Yo di ou ki jan ou ka itilize sa a varyab nan pwogram ou an.
Li enpòtan anpil nan jis kenbe tras nan ki kalite done w ap itilize, epi si
ou bezwen jete soti nan yon kalite done nan yon lòt, asire w ke ou konnen
ekzakteman ki sa k ap pase lè ki Distribisyon pran plas.
Apre sa, ou pral wè yon egzanp pita sou nan sa yo glisad nan yon
erè ki ka rive.
>> Ann pran yon gade nan kèk matematik nan C ak reyèlman panse ak anpil atansyon, mwen devine,
sou sa k ap pase sou lè sa a matematik ap pran plas.
Nan liy an trè premye, sa ki nan k ap pase lè m 'fè konnen x?
>> ODYANS: Ou ap pèmèt x yo dwe yon bagay?
>> Lauren CARVALHO: Yeah.
Oke, mwen vrèman ap mandé opere nan sistèm pou 32 Bits nan memwa, dwa?
Nan ki mwen ka magazen yon Int, ak Mwen pral rele ke Int x.
>> LUCAS Freitas: Fondamantalman pral nan memwa epi jwenn yon kote ki gen 32
Bits Yo t'ap di: hey, mwen vle espas sa a, ak li pral yo dwe rele x.
Se konsa, w ap jis bèl anpil konklizyon yon bwat nan memwa ou a
valè magazen an pou x.
>> Lauren CARVALHO: Lè sa a, mwen inisyalize x, ki vle di ke mwen jis magazen an
valè de 2 nan kote sa a, ki moso nan memwa, ke nou te mande opere
sistèm pou.
Apre sa, desann isit la sa n ap fè a se nou ap aktyèlman deklare ak
inisyalizin y nan yon sèl liy olye pou yo nan de liy tankou nou te fè moute isit la,
ki se tou yon parfe amann, Nou ajoute 1 sou x, ak nou ap estoke ki
valè nan y.
>> LUCAS Freitas: Se konsa, fondamantalman ki sa sa a liy fè, li jwenn kounye a yon bwat pou y,
ak Lè sa a, valè li yo, bagay ki w ap ale nan mete andedan kazye a, se
pral fè valè x plis 1.
Se konsa, li gen ti kare sa a pou y.
Li vin valè x, sanble isit la, ak wè ke li nan 2.
Mete l 'la, plis 1, se konsa li mete yon 3 a.
ki fè sans?
Se konsa, y ta dwe 2 nan ka sa a.
>> Lauren CARVALHO: Tout dwa, fre.
Nou te wè kèk de sa, se konsa kite a kounye a panse sou divizyon nan C. Isit la mwen se
deklare ak inisyalizin yon flote rele repons ak divize 1 a 10,
ak Lè sa a, mwen enprime soti repons lan nan de kote desimal.
Apre sa, sonje isit la, nan deklarasyon printf m 'yo, lè m 'vle ekri ak lèt ​​detache yon bagay yo de
kote desimal,% .2 f se sa m 'vle itilize.
Se konsa, pwen an 2 se jis di Mwen bezwen de kote apre a
desimal enprime deyò.
>> Koulye a, sa ki pral rive si mwen kouri Kòd sa a?
nenpòt moun ki gen yon lide?
Ki sa ki ta ekri ak lèt ​​detache soti?
>> LUCAS Freitas: Ki sa ki nou panse ou pral pral jwenn.
>> Lauren CARVALHO: Ki sa ki fè nou vle, premye nan tout?
>> LUCAS Freitas: [fèbl]
>> Lauren CARVALHO: 0.1, yeah.
Men, sa ki pral enprime soti?
>> ODYANS: [fèbl]
>> Lauren CARVALHO: Bon, pa gen okenn, aktyèlman.
Sa a se sa m 'te pale sou rezon ki fè ou bezwen kenbe anpil prekosyon tras nan
kalite done ou.
Se konsa, sa done di ki kalite se sa a?
Se yon Int, dwa?
Gen nan pa gen plas desimal.
10 se tou yon Int.
Gen nan pa gen plas desimal.
>> Si m 'separe yon Int pa yon Int, mwen jwenn yon int ki se pa 0.1, paske antye
pa ka gen kote desimal, men jis 0.
Paske yon Int jis tronk nan tout tanp zidòl yo desimal.
>> LUCAS Freitas: Se konsa, chak fwa ou fè operasyon ak antye, w ap ale nan
jwenn yon Int kòm repons lan.
Se konsa, fondamantalman, ki sa ki òdinatè a ap fè, li la divize 1 pa
10, epi li vin 0.1.
Men, Lè sa a, li a tankou, rete tann, sa a se sipoze yon nonb antye relatif, kidonk, ou jis
inyore 0.1 a, se konsa li a kounye a jis 0.
>> Lauren CARVALHO: Se konsa, lè m 'ekri ak lèt ​​detache sa a soti, mwen jwenn 0.00 olye ke 0.10.
>> LUCAS Freitas: ki fè sans?
>> Lauren CARVALHO: Sa se kalite nan malere, dwa?
>> LUCAS Freitas: Se konsa, ki jan nou ka ranje sa a?
>> Lauren CARVALHO: Se pou yo eseye ak ranje sa a.
Isit la nan yon egzanp sou ki kote mwen se aktyèlman depoze 1 an
ak 10 nan flote.
Se konsa, kounye a, 1 se pa yon Int.
1 se yon flote.
By wout la, sa a se jis sentaks la pou lè ou vle jete soti nan yon
di ki kalite done nan yon lòt.
Ou ka jis mete kalite a done nan parantèz epi yo gen ki jis vin anvan
valè a ke w ap depoze.
>> Se konsa, isit la, mwen divize yon flote pa yon flote yo ka resevwa yon repons flote.
Apre sa, repons lan se wi, sa a ta nan reyalite ekri ak lèt ​​detache 0.10.
ki fè sans?
>> LUCAS Freitas: Se konsa, di ki kalite Distribisyon se jis konvèti soti nan yon kalite nan lòt la.
Se konsa, flote 1 se aktyèlman 1.000.
Pa egzakteman sa a, men li nan yon bagay ak kote desimal
ki se aktyèlman 1.
ki fè sans?
Yeah?
>> ODYANS: E si ou te fè repons flote egal 1.0 divize pa 10?
>> Lauren CARVALHO: Ou ap aktyèlman pral yo wè ke nan pwochen glise la.
Sa a aktyèlman trè pwochen glise nou an.
Sa a se aktyèlman yon joli pase tape Distribisyon, mwen panse ke.
Se konsa, de sa yo, se flote jis pa lanati nan lefèt ke yo
gen kote desimal.
Wi?
>> ODYANS: E si ou te fè [fèbl]
divize pa 10?
>> Lauren CARVALHO: Aktyèlman yon flote divize pa yon Int aktyèlman ba ou yon
flote, se konsa ke ta travay amann.
>> Rete tann, tout moun konprann sa a?
Paske sa a ki pral gen yon vrèman kontra gwo nan Pset1, aktyèlman.
Wi?
>> ODYANS: Èske ou ta kapab jis byen vit ale sou pati nan wouj?
>> Lauren CARVALHO: yon pati nan wouj, yeah.
Lucas, ou vle?
>> LUCAS Freitas: OK.
Se konsa, sonje ke pousan nan se yon kontneur.
Se tankou yon espas vid.
Se konsa, kite a eseye konprann tout bagay ki k ap pase sou isit la.
Pousantaj vle di ke li nan yon kontneur.
Lè sa a, ou gen f a, ki vle di ke kontneur sa a se pou yon flote.
Bagay la pase ke nou gen isit la se yon .2, Ki vle di mwen vle gen de
kote desimal pou flote la.
>> Si mwen jis te gen% f, yo li pral mete yon pakèt moun sou kote desimal.
Se konsa, mwen ka jis mete .2 oswa .1 oswa .5, oswa kèlkeswa sa, epi li pral mete ke
kantite kote desimal.
Bagay la sèlman se ke si ou mete tankou .100 Oswa .1,000, li pa aktyèlman
pral mete tout moun sa yo kote desimal paske li pa gen ase memwa
yo gen ki presizyon.
>> Nenpòt lòt kesyon?
Yeah?
>> ODYANS: Se konsa, flote jis pèmèt ou ale pi lwen pase nonm antye?
>> LUCAS Freitas: Wi.
>> Lauren CARVALHO: Bon, yon flote jis pèmèt ou gen kote desimal.
>> LUCAS Freitas: Li jis vle di ke ou kounye a ka gen nimewo desimal.
>> ODYANS: Poukisa ta nou janm sèvi ak nonm antye?
>> LUCAS Freitas: Poukisa ta ou itilize nonb antye relatif?
Petèt si w ap konte ki ant 0 a 10, ou vle itilize aktyèlman yon nonb antye ki pè.
Ou pa bezwen sèvi ak yon flote.
Nan kèk sitiyasyon, ou pa fè sa gen aktyèlman -
>> Lauren CARVALHO: Petèt ou pa vle desimal.
>> LUCAS Freitas: Petèt ou pa fè sa vle itilize yon flote.
>> Lauren CARVALHO: bagay la lòt se, sonje, tou de mete yon flote ak yon Int
pran 32 Bits nan magazen yo, ak petèt ou pa vle gaspiye Bits sou la
kote desimal.
>> LUCAS Freitas: Yeah.
Se konsa, tankou, jis panse sou sa a.
Ou gen 32 Bits pou tou de yon Int ak yon flote.
Pou yon Int, tout moun sa yo 32 Bits ale nan pati nan nonb antye ki pè.
Si ou itilize yon flote ak 32 Bits, ou gen yon pati nan sa a memwa ki te itilize
pou yon nimewo pou la, pou yon nimewo pou la tout antye, ak lòt pati nan ki te itilize pou la
kote desimal.
Se konsa, ki vle di ke ou pa kapab jwenn nimewo gwo anpil ak flote paske
flote nan deja lè l sèvi avèk yon anpil nan memwa pou tout tanp zidòl yo desimal.
Yeah?
>> ODYANS: Sa premye repons lan, ki sa egzakteman se li ap fè?
Èske li mete valè a nan flote egal ak sa yo ki kontneur ak sa yo ki ou kapab
sonje l 'nan liy lan vini yo?
Li di flote repons lan.
>> LUCAS Freitas: Yeah.
Se konsa, repons flote vle di w ap vin kounye a yon ti kras bokit nan memwa a ki
kenbe yon flote, e ke sa k ap pase yo dwe rele repons lan.
Se konsa, se sa ki repons flote fè.
>> Lè sa a, ou di ke andedan nan sa a, w ap ale nan mete
rezilta a nan sa a.
Se konsa, w ap ale nan fè 1.0 divize pa 10.0, ou jwenn 0.1, ak Lè sa a, ou mete
ki andedan nan repons lan.
>> Lauren CARVALHO: Se konsa, nan yon sèl liy, nou deklare ak inisyalizin flote sa a
rele repons lan.
>> LUCAS Freitas: Enteresan, byenke sa a se sèlman yon sèl liy, li nan fè
plizyè operasyon yo.
Se jis yon fason pou C lès ou sèvi ak mwens kòd.
Li nan menm bagay la kòm tèrsyèr la operatè, ki jan ou ka jis fè yon
[Fèbl] nan yon sèl liy.
Li nan aktyèlman fè menm bagay la kòm fè repons flote, pwenvigil, ak
Lè sa a, repons egal sa a, men olye pou yo fè ou fè de liy pou sa,
li nan tankou yon chemen kout.
Yeah?
>> ODYANS: Se konsa, si ou kouri sa a, li ta 0.10?
>> LUCAS Freitas: Wi.
Yeah?
>> ODYANS: Èske reponn aktyèlman Kòd, oswa se li jis Non a?
>> Lauren CARVALHO: Sa a se aktyèlman kòd.
Sa a se sa nou pral nan non varyab nou an.
>> ODYANS: Se konsa, li jis yon non [fèbl].
>> Lauren CARVALHO: Yeah.
Mwen te kapab yo te di flote x egal 1.0.
>> LUCAS Freitas: Bagay la se ke non an nan varyab la se
yon bagay ke ou itilize.
Li enpòtan pou ou.
Pou pwogram aktyèl la, bagay la sèlman ki zafè ki gen se valè a ke ou
gen andedan nan bokit la.
Rezon an pou kisa ou gen varyab ak non nan varyab se konsa ou ta konnen
ki sa w ap fè fas ak, tankou ki kalite done ou
aksè nan yon tan.
Men, pou kòd nan tèt li, si ou rele li reponn oubyen kesyon oswa yon lòt bagay,
bèl anpil, li pa gen pwoblèm.
Li pa gen pwoblèm.
Osi lontan ke w ap konsistan nan chak ou te rele MINUSTAH li epi li pou ou rele l '
yon lòt bagay.
Yeah?
>> ODYANS: Èske varyab yo ale pi lwen pase fonksyon an?
Menm jan ak si ou te kreye yon bracket [Fèbl], te kapab ou jis
[Fèbl] reponn ankò?
>> Lauren CARVALHO: No
>> ODYANS: [fèbl]
>> Lauren CARVALHO: No
Ki ta ka deyò nan sijè ki abòde lan nan varyab patikilye sa a.
Apre sa, aktyèlman, sa a, se kalite enteresan, paske lè nou gen
bagay sa yo tankou pasan oswa sa yo si kondisyon, si ou deklare yon varyab
nan yon lòt seri aparèy òtopedik Curly, li vrèman sèlman egziste
nan sa yo aparèy òtopedik Curly.
>> ODYANS: Youn nan dènye nòt sou [fèbl] flote yo.
Poukisa ou ta janm vle yo sèvi ak antye?
Sa a se plis nan yon nòt bò pase anyen, men òdinatè w lan se
anpil pi bon nan manyen antye pase sa li se nan cha manyen.
Se tankou yon lòd pou grandè pi vit.
Se konsa, si nou jis okipe sèlman flote, bagay sa yo ta dwe yon anpil pi dousman.
>> Lauren CARVALHO: Aktyèlman, gen sanble yo dwe yon pwoblèm ak flote.
>> LUCAS Freitas: Kalite rezon ki fè yo pou sa, ou ka panse, ki jan nan binè
ou ka reprezante nonm antye pa mete 0 a ak 1 an.
>> Lauren CARVALHO: Sa se bagay nan pwochen an.
>> LUCAS Freitas: OK.
Pè.
>> Lauren CARVALHO: Jis kenbe ki panse.
>> LUCAS Freitas: OK, mwen pral di ou pita.
>> Lauren CARVALHO: Anvan nou jwenn nan sa Lucas te di, operatè
priyorite.
Sa a se sans komen.
Ou mesye te fè sa a ase.
Se konsa, jis si gen yon bagay nan an parantèz yo, li pral rive an premye.
Li nan miltiplikasyon pran priyorite sou de sa,
soustraksyon, bagay sa yo tankou sa a.
Se konsa, aktyèlman, jis nenpòt moun ki vle di m 'sa nimewo yon sèl aktyèlman
evalye a?
>> ODYANS: 27.
>> Lauren CARVALHO: 27?
Yeah.
>> LUCAS Freitas: Kite m 'ba sirèt bay moun.
>> Lauren CARVALHO: Tout dwat.
Ki sa ki sou nimewo de?
>> ODYANS: 22.
>> Lauren CARVALHO: 22, yeah.
Mwen pa konnen ki te resevwa sa.
Nimewo twa?
>> ODYANS: 10.
>> Lauren CARVALHO: 10, wi.
Fre.
Se konsa, modulo.
Lucas, ou vle eksplike modulo?
>> LUCAS Freitas: modulo se operatè sa a ki se aktyèlman trè itil pou yon
pakèt moun sou pwoblèm.
Si m 'fè 55 modulo 10, ki sa li fè sa a kite a di ke mwen vle
divize 55 pa 10.
Ki sa mwen jwenn?
Li santi l menm jan ak si mwen se aktyèlman jis fè divizyon an, ki sa ki la
premye fwa ke mwen te resevwa nonb antye ki pè a?
>> ODYANS: 5.
>> LUCAS Freitas: 5.
Lè sa a, rès la se 5, dwa?
Se konsa, li tankou 5 fwa 10 plis 5.
Fondamantalman, ki sa ki modulo, li ap eseye divize nimewo sa a pa yon sèl sa a, ak
li wè ki sa ki rès la divizyon an.
>> Lauren CARVALHO: Se konsa, li jis retounen rès la.
Se konsa, nimewo a se yon sèl ki sa?
5.
Nimewo de?
>> ODYANS: 3.
>> Lauren CARVALHO: 3.
Nimewo twa?
0.
Ak kat se 1.
Egzakteman.
>> LUCAS Freitas: Senp, dwa?
>> Lauren CARVALHO: Poukisa nou pa nou sote sa a jis paske nou pa reyèlman gen
tan, ak moun ki sanble yo konprann.
Se konsa, isit la nan sa ki Lucas te jis ap pale de.
>> LUCAS Freitas: Yon lòt rezon ki fè mwen ta sèvi ak antye olye pou yo flote se
ki flote yo trè enpresizyon.
Epi poukisa yo yo enpresizyon?
David te di ke ki reprezante yon nonb antye relatif, pou egzanp, nou itilize 0 a ak
# 1 an, dwa?
Lè sa a, ou fondamantalman fè a miltiplikasyon, fè tout moun sa yo
operasyon konnen ki sa nimewo desimal ou gen olye pou yo binè la.
>> Kisa k ap pase kounye a si mwen eseye yo mete pwen desimal?
Aktyèlman, pou egzanp, si mwen gen nimewo a tankou 3,33333?
Li santi l tankou 10 plis pase 3.
Ki jan mwen pral nan magazen tout nan 3 nan ke mwen gen apre sa?
Li nan vrèman difisil, dwa?
Ou pa ka jis di òdinatè a, hey, mwen gen yon 3, ak
Lè sa a, ou fè sa pou tout tan.
Aktyèlman òdinatè a se pa entelijan ase pou sa.
>> Se konsa, fondamantalman tout òdinatè w lan fè a se ke li ap eseye mete kòm anpil chif kòm
li kapab jiska memwa nan ki di ou gen.
Se konsa, kite a di ke li nan ale nan di 3,3333, epi ki nan li.
Se konsa, li pa kapab aktyèlman eksprime pwesizeman sa ki ki flote se.
>> Lauren CARVALHO: Nou gen yon nimewo fini nan Bits, ki vle di ki pa
chak nimewo desimal a pwal kapab ap reprezante jisteman.
Se konsa, nan egzanp sa a, si nou enprime soti 0.1, nou kounye a enprime
soti 20 kote.
>> LUCAS Freitas: Jis tankou mwen te vle di ou nèg, ou ta ka mete nenpòt kantite.
Men, si ou jis te fè de tout tanp zidòl yo, ou ta jwenn 0.10, men si ou mete 20
kote, li la pral montre w yon pakèt nan 's paske sa a se sa ou ka mete
nan memwa a, dwa?
>> Men, dwa isit la, moute nan 0 a, ak Lè sa a, se jis mete l 'yon
pakèt moun sou nimewo o aza.
Sa a se kalite tankou kèk -
>> Lauren CARVALHO: Sa a se paske nou ap pa kapab reprezante desimal sa a
jisteman avèk nimewo a nan Bits nou genyen.
>> LUCAS Freitas: Lè sa a, nan òdinatè se fondamantalman
ban nou yon nimewo fatra.
Sa a se pa aktyèlman nan valè de nimewo a.
>> ODYANS: Se tankou fèmen ke li ka jwenn [fèbl]
lè l sèvi avèk [fèbl] la.
>> Lauren CARVALHO: Se konsa, enplikasyon a nan sa a se ke kite a di ke olye pou yo
yo te 0.100014, kèlkeswa sa, sa si li te 0,0999 -
byen, OK.
Se pou nou pretann ke repons lan aktyèl sa a te 0,9999999.
Sa a trè pre a 1, men li pa egzakteman 1.
Li nan 0,99999.
>> Sa vle di ke si mwen pran ki 0,999, ak mwen jete l 'bay yon Int, mwen jwenn 0.
Mwen pa jwenn 1.
>> LUCAS Freitas: Paske sonje, Distribisyon soti nan flote Int, ou jis
inyore tout kote yo desimal.
Ou jis inyore-yo.
Genyen okenn bagay tankou awondi moute oswa kouri desann lè ou kataloge.
Aktyèlman, gen fonksyon sa a ki fè awondi, ki se trè
enpòtan, men ou jis panse ke lè ou fè typecasting, li jis
ale nan efase tout bagay.
Se konsa, menm si ou gen 0,99999, li pral jis ba 0 si w kataloge
[Fèbl] yon nonb antye relatif.
>> Lauren CARVALHO: Se konsa, jis dwe reyèlman konnen nan k ap flote pwen nan presizyon,
espesyalman lè ou kòmanse yo sèvi ak flote nan Pset1.
Men, yo mache byen nan ta dwe avèti ou nan ki tou.
>> LUCAS Freitas: Apre sa, aktyèlman li vrèman di, pou egzanp, si m 'te fè
repons flote 1 egal 1.0 sou 10, ak Lè sa a, flote repons 2
egal 10.0 sou 100.0.
Yo se nimewo a menm, dwa?
0.1, dwa?
1 plis pase 10 oswa 10 plis pase 100.
Men koulye a, si mwen eseye wè egalite a, tankou si repons 1 ki egal a reponn 2,
petèt li a pa aktyèlman ale yo dwe menm bagay la.
Se konsa, flote yo se kalite tankou sa.
Yo ap tankou fè egalite.