1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Seksyon 4] [Mwens Alèz] 2 00:00:02,000 --> 00:00:04,000 [Nate Hardison] [Inivèsite Harvard] 3 00:00:04,000 --> 00:00:07,000 [Sa a se CS50.] [CS50.TV] 4 00:00:07,000 --> 00:00:10,000 >> Tout dwa, akeyi tounen nan seksyon. 5 00:00:10,000 --> 00:00:13,000 Nan seksyon yo semenn sa a nou ap pral fè yon koup la bagay sa yo. 6 00:00:13,000 --> 00:00:17,000 Nou pral Set premye Pwoblèm rapèl 2, 7 00:00:17,000 --> 00:00:20,000 ki se mete nan pwoblèm Seza tande kòz ak Vigenère. 8 00:00:20,000 --> 00:00:23,000 Lè sa a, nou pral kontinye plonje nan revizyon kwiz 0 9 00:00:23,000 --> 00:00:26,000 ak depanse yon ti kras nan tan recapping ki sa nou te pale sou 10 00:00:26,000 --> 00:00:30,000 nan chak nan konferans yo twò lwen, epi n ap fè tou yon pwoblèm kèk 11 00:00:30,000 --> 00:00:32,000 soti nan ti tès anvan ane a. 12 00:00:32,000 --> 00:00:36,000 Nan fason sa a ou nèg gen yon bon fason pou prepare yo pou sa. 13 00:00:36,000 --> 00:00:40,000 >> Pou yo kòmanse, mwen te demare moute yon koup la solisyon bon 14 00:00:40,000 --> 00:00:45,000 pou mete nan pwoblèm anvan, Pwoblèm Fikse 2, nan espas sa a. 15 00:00:45,000 --> 00:00:48,000 Si ou nèg tout frape lyen sa a, 16 00:00:48,000 --> 00:00:53,000 epi si ou klike sou non mwen, epi klike sou revizyon premye fwa mwen 17 00:00:53,000 --> 00:00:56,000 ou pral wè caesar.c, ki se ekzakteman ki sa m ap gade. 18 00:00:56,000 --> 00:01:00,000 Se pou nou pale sou sa a vrèman byen vit. 19 00:01:00,000 --> 00:01:02,000 Sa a se jis yon solisyon echantiyon. 20 00:01:02,000 --> 00:01:05,000 Sa a se pa nesesèman solisyon an pafè. 21 00:01:05,000 --> 00:01:08,000 Gen anpil fason diferan nan ekri sa a, 22 00:01:08,000 --> 00:01:10,000 men gen yon bagay kèk ki mwen te vle mete aksan sou 23 00:01:10,000 --> 00:01:13,000 ke mwen te wè jan mwen te korije, erè komen ke mwen panse ke 24 00:01:13,000 --> 00:01:18,000 sa a solisyon fè yon trè bon djòb nan manyen. 25 00:01:18,000 --> 00:01:22,000 >> Premye an se gen kèk sòt de kòmantè header nan tèt la. 26 00:01:22,000 --> 00:01:25,000 Sou liy 1 jiska 7 ou gade nan detay yo, 27 00:01:25,000 --> 00:01:28,000 ki sa egzakteman pwogram sa a ap fè. 28 00:01:28,000 --> 00:01:32,000 Yon bon pratik estanda lè w ap ekri C kòd 29 00:01:32,000 --> 00:01:35,000 kèlkeswa si se pwogram ou an genyen nan yon dosye yon selibatè oubyen 30 00:01:35,000 --> 00:01:38,000 si li nan divize sou zafè dosye miltip se genyen kèk sòt de 31 00:01:38,000 --> 00:01:40,000 oryante kòmantè nan tèt la. 32 00:01:40,000 --> 00:01:43,000 Sa a se tou pou moun ki ale deyò epi ekri kòd nan mond lan reyèl. 33 00:01:43,000 --> 00:01:47,000 Sa a se kote yo pral mete enfòmasyon copyright. 34 00:01:47,000 --> 00:01:50,000 Anba a yo se gen ladan nan #. 35 00:01:50,000 --> 00:01:55,000 Sou liy 16 gen nan sa a # defini, ki nou pral tounen vin jwenn nan jis yon ti jan. 36 00:01:55,000 --> 00:01:59,000 Lè sa a, yon fwa fonksyon an kòmanse, kòmanse yon fwa prensipal yo, 37 00:01:59,000 --> 00:02:03,000 paske pwogram sa a yo te genyen nan yo nan tout yon fonksyon sèl 38 00:02:03,000 --> 00:02:09,000 bagay la trè premye ki ap pase-yo ak sa a se trè idyomatik ak tipik nan yon pwogram C 39 00:02:09,000 --> 00:02:14,000 ki pran nan liy lòd agiman-a se ke li imedyatman tcheke 40 00:02:14,000 --> 00:02:18,000 >> pou konte a agiman, arg. 41 00:02:18,000 --> 00:02:24,000 Dwa isit la nou wè ke pwogram sa a ap tann 2 agiman egzakteman. 42 00:02:24,000 --> 00:02:27,000 Sonje byen gen nan ke agiman sa a, se premye yon sèl nan espesyal 43 00:02:27,000 --> 00:02:29,000 sa a, se toujou non an nan pwogram nan ki nan ke yo te kouri, 44 00:02:29,000 --> 00:02:31,000 non an nan dosye a ègzèkutabl. 45 00:02:31,000 --> 00:02:36,000 Se konsa, ki sa sa a fè se li anpeche itilizatè a soti nan kouri pwogram nan 46 00:02:36,000 --> 00:02:42,000 ki gen plis oswa mwens diskisyon. 47 00:02:42,000 --> 00:02:44,000 Rezon ki fè nou vle tcheke pou sa a touswit se paske 48 00:02:44,000 --> 00:02:52,000 nou pa ka aktyèlman jwenn aksè sa a etalaj argv dwa isit la fiable 49 00:02:52,000 --> 00:02:55,000 jiskaske nou te tcheke yo wè ki jan gwo li ye. 50 00:02:55,000 --> 00:02:58,000 >> Youn nan erè yo ki komen, mwen wè te moun ki ta imedyatman ale nan 51 00:02:58,000 --> 00:03:01,000 ak pwan argv [1]. 52 00:03:01,000 --> 00:03:06,000 Yo ta gen tan pwan agiman kle a soti nan etalaj la ak yon mwen tcheke nan sou li, 53 00:03:06,000 --> 00:03:11,000 ak Lè sa a, yo ta fè tès la pou arg kòm byen ke pwochen egzamen an, 54 00:03:11,000 --> 00:03:16,000 si ou pa agiman an premye te depoze yon nonb antye relatif nan menm tan an, 55 00:03:16,000 --> 00:03:20,000 epi ki pa travay paske nan ka a ke pa gen okenn agiman apwovizyone 56 00:03:20,000 --> 00:03:26,000 ou pral arachman gen yon diskisyon ki pa gen oswa eseye gen tan pwan yon sèl ki pa gen. 57 00:03:26,000 --> 00:03:29,000 >> Bagay a lòt gwo ke ou ta dwe voye avi se ke 58 00:03:29,000 --> 00:03:32,000 ou toujou vle enprime soti kèk sòt de mesaj erè itil 59 00:03:32,000 --> 00:03:34,000 itilizatè a oryante yo. 60 00:03:34,000 --> 00:03:37,000 Mwen asire w ou te tout pwogram kouri kote tout nan yon toudenkou li kolizyon, 61 00:03:37,000 --> 00:03:41,000 epi ou jwenn sa a ridikil dyalòg ti kras ki Pops leve e li di 62 00:03:41,000 --> 00:03:44,000 yon bagay oribleman skre e petèt ap ba ou yon kòd erè oswa yon bagay tankou sa 63 00:03:44,000 --> 00:03:47,000 ki pa fè okenn sans. 64 00:03:47,000 --> 00:03:50,000 Sa a se kote ou reyèlman vle bay yon bagay ki itil 65 00:03:50,000 --> 00:03:54,000 ak vize itilizatè a pou lè yo kouri li yo pou y al "O," figi palmis. 66 00:03:54,000 --> 00:03:58,000 "Mwen konnen ekzakteman ki sa yo fè. Mwen konnen ki jan yo ranje sa a." 67 00:03:58,000 --> 00:04:01,000 >> Si ou pa enprime yon mesaj, Lè sa a, ou fini aktyèlman 68 00:04:01,000 --> 00:04:04,000 kite itilizatè a yo ale egzaminen kòd sous ou a 69 00:04:04,000 --> 00:04:07,000 konnen sa ki ale mal. 70 00:04:07,000 --> 00:04:11,000 Genyen tou kèk fwa ke ou pral sèvi ak kòd erè diferan. 71 00:04:11,000 --> 00:04:14,000 Isit la nou jis itilize yon sèl vle di te gen yon erè, 72 00:04:14,000 --> 00:04:16,000 te gen yon erè, te gen yon erè. 73 00:04:16,000 --> 00:04:20,000 Pi gwo pwogram, souvan pwogram ki rele yo pa lòt pwogram yo, 74 00:04:20,000 --> 00:04:25,000 pral retounen kèk sòt de kòd erè espesyal nan senaryo diferan 75 00:04:25,000 --> 00:04:28,000 programe kominike ki sa ou ta otreman 76 00:04:28,000 --> 00:04:32,000 jis itilize yon bèl mesaj angle pou li a. 77 00:04:32,000 --> 00:04:35,000 Fre. 78 00:04:35,000 --> 00:04:37,000 Pandan n ap travay desann, ou ka wè nou rale mete deyò nan kle. 79 00:04:37,000 --> 00:04:40,000 Nou teste yo wè si kle a adapte. 80 00:04:40,000 --> 00:04:42,000 Nou jwenn yon mesaj nan itilizatè a. 81 00:04:42,000 --> 00:04:46,000 Rezon ki fè nou fè l 'nan sa a fè pandan y ap riban-yo ak sa a se yon bagay ke nou pral kouvri 82 00:04:46,000 --> 00:04:50,000 nan yon ti kras ti jan-men li vire soti ke si ou tape kontwòl D 83 00:04:50,000 --> 00:04:54,000 lè ou jwenn ki GetString èd memwa sou tèminal nan 84 00:04:54,000 --> 00:04:59,000 ki sa ki aktyèlman fè, se li voye yon karaktè espesyal 85 00:04:59,000 --> 00:05:01,000 nan pwogram nan. 86 00:05:01,000 --> 00:05:05,000 Yo rele li ELF la oswa nan fen karaktè dosye-a. 87 00:05:05,000 --> 00:05:08,000 Ak nan ka sa a, fisèl mesaj nou an pral nil, 88 00:05:08,000 --> 00:05:14,000 kidonk sa a pa t 'yon bagay nou tcheke pou nan pwoblèm nan mete tèt li. 89 00:05:14,000 --> 00:05:17,000 >> Men, kòm nou ale nan, kounye a ke nou te kòmanse pale sou pwent 90 00:05:17,000 --> 00:05:21,000 ak dinamik memwa alokasyon sou pil wòch la, 91 00:05:21,000 --> 00:05:25,000 tcheke pou nil nenpòt lè w gen yon fonksyon ki ta ka 92 00:05:25,000 --> 00:05:30,000 retounen nil kòm yon valè se yon bagay ki ou pral vle jwenn nan abitid la pou fè a. 93 00:05:30,000 --> 00:05:33,000 Sa a se isit la sitou pou ilistrasyon. 94 00:05:33,000 --> 00:05:36,000 Men, lè ou fè wè GetString nan tan kap vini an, 95 00:05:36,000 --> 00:05:41,000 se konsa soti nan Pwoblèm Fikse 4 sou, ou pral vle kenbe sa a nan tèt li. 96 00:05:41,000 --> 00:05:44,000 Yon fwa ankò, sa a se pa yon pwoblèm pou Pwoblèm Fikse 3 swa depi nou pa t 'kouvri l' ankò. 97 00:05:44,000 --> 00:05:53,000 Finalman, nou jwenn yo nan pati sa a kote nou jwenn yo riban an chifreman prensipal yo, 98 00:05:53,000 --> 00:05:57,000 e gen yon koup nan bagay sa yo pral sou isit la. 99 00:05:57,000 --> 00:06:02,000 Premyèman, nou repekte sou fisèl la mesaj tout tèt li. 100 00:06:02,000 --> 00:06:07,000 Isit la nou te kenbe apèl la strlèn nan kondisyon an, 101 00:06:07,000 --> 00:06:12,000 ki te yon kantite ou vize deyò se pa yon bon fason yo ale. 102 00:06:12,000 --> 00:06:15,000 Li vire soti nan ka sa a li la tou pa gwo, 103 00:06:15,000 --> 00:06:20,000 an pati paske nou ap chanje sa ki nan mesaj la li menm 104 00:06:20,000 --> 00:06:27,000 andedan pou riban, kidonk si nou gen yon mesaj ki nan 10 karaktè long, nan 105 00:06:27,000 --> 00:06:32,000 premye fwa a nou kòmanse ke pou riban strlèn pral retounen ki sa? 106 00:06:32,000 --> 00:06:35,000 10. 107 00:06:35,000 --> 00:06:40,000 >> Men, si nou Lè sa a, modifye mesaj, di nou modifye karaktè 5yèm li yo, 108 00:06:40,000 --> 00:06:46,000 epi nou jete nan yon karaktè \ 0 nan yon pozisyon nan 5yèm, 109 00:06:46,000 --> 00:06:49,000 sou yon iterasyon ki vin apre strlèn (mesaj) pa pral retounen sa li te fè 110 00:06:49,000 --> 00:06:52,000 tan an trè premye nou iteratif, 111 00:06:52,000 --> 00:06:56,000 men li pral olye retounen 5 paske nou jete nan ki nil Terminator, 112 00:06:56,000 --> 00:06:59,000 epi li se longè fil la defini 113 00:06:59,000 --> 00:07:03,000 pa pozisyon sa a nan 0 \. 114 00:07:03,000 --> 00:07:09,000 Nan ka sa a, sa a se yon bon fason yo ale paske nou ap chanje l 'nan plas. 115 00:07:09,000 --> 00:07:13,000 Men, ou remake ke sa a se aktyèlman surprenante senp yo ankripte 116 00:07:13,000 --> 00:07:16,000 si ou kapab jwenn matematik ki kòrèk la. 117 00:07:16,000 --> 00:07:19,000 Tout sa ki nan egzije se tcheke si ou pa lèt la ke w ap chèche a 118 00:07:19,000 --> 00:07:21,000 se majuskul oswa miniskil. 119 00:07:21,000 --> 00:07:24,000 >> Rezon ki fè nou gen sèlman yo tcheke pou ki epi nou pa gen yo tcheke pou 120 00:07:24,000 --> 00:07:27,000 ka a alfa se se paske 121 00:07:27,000 --> 00:07:30,000 si yon karaktè se majuskul oswa si li nan miniskil 122 00:07:30,000 --> 00:07:33,000 Lè sa a, li la definitivman yon karaktè alfabetik, 123 00:07:33,000 --> 00:07:38,000 paske nou pa gen chif majuskul ak miniskil. 124 00:07:38,000 --> 00:07:41,000 Bagay a lòt nou fè-yo ak sa a se yon ti kras difisil- 125 00:07:41,000 --> 00:07:45,000 se nou te modifye estanda Seza tande kòz kalkile fòmil la 126 00:07:45,000 --> 00:07:49,000 ke nou te bay nan spesifikasyon la ansanm pwoblèm. 127 00:07:49,000 --> 00:07:52,000 Ki sa ki nan diferan isit la se ke nou soustrè 128 00:07:52,000 --> 00:07:58,000 nan kapital la ka majuskul A a, epi Lè sa a, nou te ajoute kapital Yon 129 00:07:58,000 --> 00:08:02,000 tounen nan nan fen an. 130 00:08:02,000 --> 00:08:05,000 >> Mwen konnen yon kèk nan sa ou fè a nan kòd ou a. 131 00:08:05,000 --> 00:08:09,000 Èske nenpòt nan ou fè sa nan observation ou a? 132 00:08:09,000 --> 00:08:13,000 Ou te fè sa a. Èske ou ka eksplike ki sa sa a fè, Sahb? 133 00:08:13,000 --> 00:08:18,000 By soustraksyon li soti, paske ou te fè yon Mod dwa apre l ', 134 00:08:18,000 --> 00:08:21,000 ou dwe pran li soti, se konsa ke fason ou jwenn [touse] pozisyon. 135 00:08:21,000 --> 00:08:25,000 Lè sa a, pa ajoute li tounen pita ou deplase sou youn nan ki ou te vle. 136 00:08:25,000 --> 00:08:27,000 Yeah, egzakteman. 137 00:08:27,000 --> 00:08:32,000 Ki sa ki Sahb te di se te ke lè nou vle ajoute 138 00:08:32,000 --> 00:08:36,000 mesaj nou yo ak kle nou yo ansanm 139 00:08:36,000 --> 00:08:42,000 ak Lè sa a, Mod sa, Mod ki pa NUM_LETTERS, 140 00:08:42,000 --> 00:08:50,000 si nou pa echèl mesaj nou an, nan ranje ki apwopriye a 0 a 25 an premye, 141 00:08:50,000 --> 00:08:54,000 Lè sa a, nou ta ka fini ou jwenn yon nimewo reyèlman etranj 142 00:08:54,000 --> 00:08:59,000 paske valè sa yo ke nou ap chèche a lè nou gade mesaj [mwen], 143 00:08:59,000 --> 00:09:03,000 lè nou gade pèsonaj la on nan plenn-tèks mesaj nou an, 144 00:09:03,000 --> 00:09:08,000 se yon valè yon kote nan sa a ranje 65 a 122 145 00:09:08,000 --> 00:09:13,000 ki baze sou valè yo ASCII pou majuskul A jiska miniskil z. 146 00:09:13,000 --> 00:09:18,000 Se konsa, lè nou Mod li pa 26 oswa pa NUM_LETTERS, 147 00:09:18,000 --> 00:09:23,000 depi sa ki te defini # nou an nan dwa nan tèt moute isit la, 148 00:09:23,000 --> 00:09:28,000 ki nan ale nan ba nou yon valè ki nan nan seri a 0 a 25, 149 00:09:28,000 --> 00:09:30,000 epi nou bezwen yon fason yo Lè sa a, echèl ki tounen moute 150 00:09:30,000 --> 00:09:32,000 epi pou yo jwenn li nan ki apwopriye ranje a ASCII. 151 00:09:32,000 --> 00:09:36,000 Fason ki pi fasil fè sa ki jis echèl tout bagay desann 152 00:09:36,000 --> 00:09:39,000 nan seri a 0 a 25 yo kòmanse avèk yo, 153 00:09:39,000 --> 00:09:43,000 ak Lè sa a, chanjman tout bagay tounen moute nan fen an. 154 00:09:43,000 --> 00:09:46,000 >> Yon lòt erè komen ki mwen te wè moun kouri antre nan se ke 155 00:09:46,000 --> 00:09:50,000 si ou pa aktyèlman fè sa a Eskalad touswit 156 00:09:50,000 --> 00:09:53,000 epi ou ajoute mesaj ak kle yo ansanm epi ou ajoute yo, di, 157 00:09:53,000 --> 00:09:58,000 nan yon varyab Char, pwoblèm nan ak ki 158 00:09:58,000 --> 00:10:01,000 se depi mesaj [mwen] se yon nimewo relativman gwo yo kòmanse avèk yo- 159 00:10:01,000 --> 00:10:05,000 sonje ke se byen omwen 65 si li nan yon majuskul karaktè- 160 00:10:05,000 --> 00:10:09,000 si ou gen yon kle gwo, di, yon bagay tankou 100, 161 00:10:09,000 --> 00:10:13,000 epi ou ajoute sa yo 2 ansanm nan yon Char siyen w ap ale nan jwenn yon debòde. 162 00:10:13,000 --> 00:10:17,000 W ap ale nan jwenn yon valè ki nan pi gwo pase 127, 163 00:10:17,000 --> 00:10:22,000 ki se valè a pi gwo ke yon varyab Char ka kenbe. 164 00:10:22,000 --> 00:10:26,000 Yon fwa ankò, sa a, se poukisa ou ta vle fè sa sòt de bagay sa yo kòmanse avèk yo. 165 00:10:26,000 --> 00:10:29,000 Gen kèk moun ki te resevwa alantou ka sa a nan fè yon lòt moun, e si tès 166 00:10:29,000 --> 00:10:33,000 yo wè si li ta debòde anvan yo fè sa, 167 00:10:33,000 --> 00:10:36,000 men fason sa a vin bò kote sa. 168 00:10:36,000 --> 00:10:40,000 Lè sa a, nan sa a solisyon nou soti enprime fisèl la tout antye nan fen an trè. 169 00:10:40,000 --> 00:10:45,000 Lòt moun ki soti enprime yon karaktè nan yon tan. Tou de se pè. 170 00:10:45,000 --> 00:10:51,000 Nan pwen sa a, èske ou nèg gen nenpòt kesyon, nenpòt kòmantè sou sa a? 171 00:10:51,000 --> 00:10:56,000 Bagay sa yo ou renmen, bagay sa yo ou pa renmen? 172 00:10:56,000 --> 00:10:58,000 >> Mwen te gen yon kesyon. 173 00:10:58,000 --> 00:11:01,000 Petèt mwen rate li pandan repons ou, men ki jan fè sa ki nan pwogram sa a 174 00:11:01,000 --> 00:11:07,000 sote espas yo pou konekte kle nan longè a nan tèks la? 175 00:11:07,000 --> 00:11:10,000 Sa a se jis Seza tande kòz kalkile. >> Oh, regrèt sa, yeah. 176 00:11:10,000 --> 00:11:13,000 Yeah, nou pral wè sa. 177 00:11:13,000 --> 00:11:16,000 Nan kalkile nan Seza tande kòz nou te resevwa alantou sa paske 178 00:11:16,000 --> 00:11:18,000 nou sèlman ranvèrse karaktè. 179 00:11:18,000 --> 00:11:27,000 Nou sèlman Thorne yo si yo te majuskul oswa miniskil. 180 00:11:27,000 --> 00:11:32,000 Ou nèg santi trè bon sou sa a? 181 00:11:32,000 --> 00:11:34,000 Santi yo lib a kapab bay kopi sa a lakay ou, pran li, 182 00:11:34,000 --> 00:11:37,000 li konpare l ak sa ou guys te ekri. 183 00:11:37,000 --> 00:11:42,000 Definitivman santi yo lib yo voye kesyon sou li tou. 184 00:11:42,000 --> 00:11:46,000 Epi ankò, reyalize ke objektif la isit la ak pwoblèm ou an kouche 185 00:11:46,000 --> 00:11:50,000 se pa fè ou jwenn nèg yo ekri pafè kòd pou aparèy televisyon HD pwoblèm ou. 186 00:11:50,000 --> 00:11:57,000 Li se yon eksperyans aprantisaj. Yeah. 187 00:11:57,000 --> 00:12:01,000 >> Retounen fè a pandan y ap riban, si li egal nil, 188 00:12:01,000 --> 00:12:06,000 Se konsa nil jis vle di pa gen anyen yo, yo jis frape antre nan? 189 00:12:06,000 --> 00:12:12,000 Nil se yon valè konsèy espesyal, 190 00:12:12,000 --> 00:12:17,000 epi nou itilize nil lè nou vle di 191 00:12:17,000 --> 00:12:23,000 nou gen yon varyab konsèy ki montre pa gen anyen. 192 00:12:23,000 --> 00:12:28,000 Se konsa, anjeneral sa vle di ke sa a varyab, sa a varyab mesaj 193 00:12:28,000 --> 00:12:35,000 a vid, ak isit la, paske nou ap sèvi ak CS50 espesyal kalite nan fisèl, 194 00:12:35,000 --> 00:12:37,000 ki sa ki kalite nan fisèl CS50? 195 00:12:37,000 --> 00:12:42,000 Èske ou te wè ki sa li se lè David rale tounen kapo a nan konferans? 196 00:12:42,000 --> 00:12:44,000 Li se yon fenki-li nan yon konsèy, dwa? 197 00:12:44,000 --> 00:12:48,000 Okay, yeah. >> Li se yon * Char. 198 00:12:48,000 --> 00:12:52,000 Se konsa, reyèlman nou te ka ranplase sa a 199 00:12:52,000 --> 00:12:56,000 dwa isit la ak Char mesaj *, 200 00:12:56,000 --> 00:13:04,000 ak sa fonksyon an GetString, si li pa avèk siksè jwenn yon fisèl soti nan itilizatè a yo, 201 00:13:04,000 --> 00:13:08,000 li pa ka analizan yon fisèl, epi ka-a yon sèl nan ki li pa kapab analizan yon kòd 202 00:13:08,000 --> 00:13:11,000 se si itilizatè a kalite nan fen karaktè dosye, D kontwòl la, 203 00:13:11,000 --> 00:13:17,000 ki se pa yon bagay ou tipikman fè, men si sa rive 204 00:13:17,000 --> 00:13:20,000 Lè sa a, fonksyon an ap retounen sa a valè null kòm yon fason pou li di 205 00:13:20,000 --> 00:13:23,000 "Hey, mwen pa t 'jwenn yon fisèl." 206 00:13:23,000 --> 00:13:27,000 Ki sa ki ta rive si nou pa mete mesaj = nil, 207 00:13:27,000 --> 00:13:30,000 ki se yon bagay ke nou pa yo te fè ankò? 208 00:13:30,000 --> 00:13:32,000 Poukisa ta ke gen yon pwoblèm isit la? 209 00:13:32,000 --> 00:13:38,000 Paske mwen konnen ke nou te pale yon ti kras nan konferans sou fwit memwa. 210 00:13:38,000 --> 00:13:42,000 Yeah, kite la fè sa, e kite yo wè sa ki rive. 211 00:13:42,000 --> 00:13:44,000 >> Kesyon Basil a te kisa k ap rive si nou pa gen aktyèlman 212 00:13:44,000 --> 00:13:48,000 mesaj sa a = nil tès? 213 00:13:48,000 --> 00:13:51,000 Se pou nan woulo liv moute sou tèt la. 214 00:13:51,000 --> 00:13:53,000 Ou nèg ka fè komantè sa a soti. 215 00:13:53,000 --> 00:13:55,000 Aktyèlman, mwen pral sove li nan yon revizyon. 216 00:13:55,000 --> 00:13:58,000 Sa a pral Revizyon 3. 217 00:13:58,000 --> 00:14:02,000 Ki sa ki ou pral gen pou fè pou kouri pwogram sa a se ou pral oblije klike sou icon sa a Kovèti pou moute isit la, 218 00:14:02,000 --> 00:14:04,000 epi ou pral gen ajoute yon diskisyon ak li. 219 00:14:04,000 --> 00:14:10,000 Ou pral oblije bay li agiman kle a depi nou vle pase nan yon diskisyon liy lòd. 220 00:14:10,000 --> 00:14:13,000 Isit la mwen pral bay li nimewo a 3. Mwen renmen 3. 221 00:14:13,000 --> 00:14:19,000 Koulye a, zoum tounen soti, kouri pwogram nan. 222 00:14:19,000 --> 00:14:24,000 Li nan kouri, konpile, bati a. 223 00:14:24,000 --> 00:14:27,000 Isit la nou ale. Li nan ap tann yo dwe pouse. 224 00:14:27,000 --> 00:14:33,000 Si m 'tape nan yon bagay tankou alo kote-t' ki ale? 225 00:14:33,000 --> 00:14:38,000 Oh, pwogram m 'te pran twò lontan nan kouri. Mwen te jawing pou twò lontan. 226 00:14:38,000 --> 00:14:40,000 Isit la li ale. 227 00:14:40,000 --> 00:14:43,000 Koulye a, mwen tape nan hello. 228 00:14:43,000 --> 00:14:46,000 Nou wè ke li chifre kòmsadwa. 229 00:14:46,000 --> 00:14:52,000 Kounye a ki sa k ap pase si nou fè èd memwa GetString retounen nil? 230 00:14:52,000 --> 00:14:57,000 Sonje byen, mwen te di ke nou te fè sa pa peze kontwòl D nan menm tan an. 231 00:14:57,000 --> 00:14:59,000 Mwen pral woulo liv moute isit la. Nou pral kouri l 'ankò. 232 00:14:59,000 --> 00:15:01,000 Bilding nan. Gen li ale. 233 00:15:01,000 --> 00:15:04,000 Koulye a, lè m 'frape kontwòl D 234 00:15:04,000 --> 00:15:12,000 Mwen te resevwa liy sa a ki di opt/sandbox50/bin/run.sh, fòt Segmentation. 235 00:15:12,000 --> 00:15:15,000 Eske ou te wè ki jan nèg ye anvan an? 236 00:15:15,000 --> 00:15:17,000 >> [Elèv] Poukisa gen pa gen okenn->> Padon? 237 00:15:17,000 --> 00:15:20,000 [Elèv] Poukisa gen pa gen okenn pil fatra debaz nan ka sa a? 238 00:15:20,000 --> 00:15:26,000 Pil fatra nan nwayo se-kesyon an se poukisa ki gen la pa gen okenn pil fatra debaz isit la? 239 00:15:26,000 --> 00:15:29,000 Kesyon an se ke gen pouvwa pou yo, men pil fatra debaz la se yon dosye 240 00:15:29,000 --> 00:15:31,000 ki vin ki estoke sou kondwi a difisil. 241 00:15:31,000 --> 00:15:34,000 Nan ka sa a nou te enfim jete debaz 242 00:15:34,000 --> 00:15:37,000 sou sèvè a kouri pou nou pa t 'moun segman frakti 243 00:15:37,000 --> 00:15:40,000 ak bati moute tòn jete prensipal yo. 244 00:15:40,000 --> 00:15:46,000 Men, ou ka jwenn youn. 245 00:15:46,000 --> 00:15:48,000 Jete debaz yo sòt nan de bagay sa ke ou ka souvan enfim, 246 00:15:48,000 --> 00:15:52,000 e pafwa ou fè. 247 00:15:52,000 --> 00:15:55,000 Segmentation fòt la, w ka reponn kesyon ou an, Basil, 248 00:15:55,000 --> 00:16:00,000 ap di ke nou te eseye gen aksè a yon konsèy 249 00:16:00,000 --> 00:16:05,000 ki pa te mete lonje dwèt sou anyen. 250 00:16:05,000 --> 00:16:09,000 Sonje Binky nan videyo a lè Binky ap eseye 251 00:16:09,000 --> 00:16:12,000 ale gen aksè a yon konsèy ki pa nan lonje dwèt anyen? 252 00:16:12,000 --> 00:16:16,000 Nan ka sa a mwen devine teknikman konsèy la ap lonje dwèt a yon bagay. 253 00:16:16,000 --> 00:16:20,000 Li nan lonje dwèt nil, ki se teknikman 0, 254 00:16:20,000 --> 00:16:25,000 men sa yo defini yo dwe nan yon segman ki pa aksesib pou 255 00:16:25,000 --> 00:16:28,000 pa pwogram ou an, kidonk, ou jwenn yon fay segmentation 256 00:16:28,000 --> 00:16:31,000 paske ou pa ap gen aksè nan memwa sa a, se nan yon segman ki valab 257 00:16:31,000 --> 00:16:38,000 tankou segman nan pil oswa segman nan chemine oswa segman done a. 258 00:16:38,000 --> 00:16:40,000 Fre. 259 00:16:40,000 --> 00:16:48,000 Nenpòt kesyon plis sou Seza tande kòz? 260 00:16:48,000 --> 00:16:51,000 >> Se pou nou deplase sou. Se pou yo gade nan Revizyon 2 vrèman byen vit. 261 00:16:51,000 --> 00:17:00,000 Sa a Vigenère. 262 00:17:00,000 --> 00:17:04,000 Isit la nan Vigenère 263 00:17:04,000 --> 00:17:06,000 nou pral mache nan yon sèl sa a trè byen vit, paske, ankò, 264 00:17:06,000 --> 00:17:10,000 Vigenère ak Seza tande kòz ase sanblab. 265 00:17:10,000 --> 00:17:12,000 Kòmantè Header se anvan, 266 00:17:12,000 --> 00:17:17,000 # Defini se anvan pou fè pou evite lè l sèvi avèk nimewo sa yo majik. 267 00:17:17,000 --> 00:17:21,000 Bagay nan bon an di nou te vle pou yo avanse pou 268 00:17:21,000 --> 00:17:23,000 yon alfabè diferan oswa yon bagay tankou sa. 269 00:17:23,000 --> 00:17:26,000 Olye de gen yo ale manuelman chanje tout 26 nan a nan kòd la 270 00:17:26,000 --> 00:17:30,000 nou te ka chanje sa a 27 oswa lage li desann 271 00:17:30,000 --> 00:17:34,000 si nou te lè l sèvi avèk alfabè diferan, lang diferan. 272 00:17:34,000 --> 00:17:38,000 Yon fwa ankò, nou te gen chèk sa-a nan konte a agiman, 273 00:17:38,000 --> 00:17:42,000 ak reyèlman ou kapab pwèske pran sa a kòm yon modèl. 274 00:17:42,000 --> 00:17:46,000 Bèl anpil chak pwogram ou ekri ta dwe gen- 275 00:17:46,000 --> 00:17:50,000 si li pran liy lòd agiman-kèk sekans nan liy 276 00:17:50,000 --> 00:17:55,000 ki li tankou sa a nan konmansman an anpil. 277 00:17:55,000 --> 00:17:59,000 Sa a se youn nan tès yo saniti premye ou vle fè. 278 00:17:59,000 --> 00:18:03,000 >> Isit la ki sa nou t 'te nou te fè asire w ke 279 00:18:03,000 --> 00:18:06,000 mo kle a te valab, epi sa yo ki te chèk la dezyèm ke nou te fè sa. 280 00:18:06,000 --> 00:18:11,000 Avi ankò ke nou separe sa a soti nan arg ak 2. 281 00:18:11,000 --> 00:18:14,000 Remake byen ke nan ka sa a yon sèl bagay ke nou te fè te olye 282 00:18:14,000 --> 00:18:18,000 nan lè l sèvi avèk yon mwen nou te vle valide fisèl la an antye, 283 00:18:18,000 --> 00:18:21,000 ak yo nan lòd yo fè sa ou gen aktyèlman ale karaktè pa karaktè 284 00:18:21,000 --> 00:18:23,000 sou fisèl la. 285 00:18:23,000 --> 00:18:29,000 Gen nan pa gen bon fason yo rele yon bagay sou li 286 00:18:29,000 --> 00:18:31,000 paske menm, pou egzanp, yon mwen pral retounen 0 287 00:18:31,000 --> 00:18:37,000 si li pa ka analizan yon nonb antye relatif, se konsa ke pa menm travay. 288 00:18:37,000 --> 00:18:42,000 Yon fwa ankò, bèl mesaj di itilizatè a egzakteman sa ki te pase. 289 00:18:42,000 --> 00:18:45,000 Lè sa a, isit la, ankò, nou menm tou nou okipe ka a kote 290 00:18:45,000 --> 00:18:50,000 itilizatè a kalite nan yon kontwòl karaktè o aza D. 291 00:18:50,000 --> 00:18:54,000 >> Lè sa a, Charlotte te gen yon kesyon pi bonè sou fason nou jere sote espas 292 00:18:54,000 --> 00:18:57,000 nan fisèl nou isit la. 293 00:18:57,000 --> 00:19:00,000 Sa a te kalite ki sanble ak sa nou te fè ak pwogram sa a Myspace 294 00:19:00,000 --> 00:19:04,000 ke nou te fè nan seksyon, ak wout la sa a te travay 295 00:19:04,000 --> 00:19:08,000 se ke nou Suivi ki kantite lèt ki nou ta wè. 296 00:19:08,000 --> 00:19:13,000 Kòm nou te mache sou fisèl la mesaj, kòm nou te mache sou karaktè nan karaktè, 297 00:19:13,000 --> 00:19:16,000 nou Suivi endèks la kòm yon pati nan nou an pou riban, ak Lè sa a, nou menm tou nou Suivi 298 00:19:16,000 --> 00:19:21,000 ki kantite lèt, se konsa ki pa espesyal karaktè, ki pa chif, ki pa blan espas 299 00:19:21,000 --> 00:19:27,000 ke nou ta wè nan varyab la ki apa a. 300 00:19:27,000 --> 00:19:33,000 Lè sa a, sa a solisyon modifye kle a 301 00:19:33,000 --> 00:19:41,000 jwenn yon vrè nonb antye relatif kle yo, ak li fè sa ki sou vole a, 302 00:19:41,000 --> 00:19:47,000 dwa anvan li Lè sa a, ale nan ankripte pèsonaj la mesaj reyèl. 303 00:19:47,000 --> 00:19:50,000 Gen kèk solisyon ki te parfe gwo tou 304 00:19:50,000 --> 00:19:58,000 ki ta modifye kle a moute lè tès pou validite kle a. 305 00:19:58,000 --> 00:20:01,000 Anplis fè si ke karaktè a ak mo kle a 306 00:20:01,000 --> 00:20:05,000 te yon karaktè alfabetik li tou te vire ki nan yon nonb antye relatif 307 00:20:05,000 --> 00:20:13,000 nan seri a 0 a 25 a Lè sa a, sote gen fè sa sou pita nan sa a pou riban. 308 00:20:13,000 --> 00:20:18,000 Yon fwa ankò, ou wè isit la sa a se reyèlman kòd la egzak menm 309 00:20:18,000 --> 00:20:22,000 ke nou te itilize nan Seza tande kòz nan pwen sa. 310 00:20:22,000 --> 00:20:25,000 Ou ap fè egzak menm bagay la, se konsa jwe fent la reyèl se lè n ap kalkile soti 311 00:20:25,000 --> 00:20:30,000 ki jan yo vire mo kle a nan yon nonb antye relatif. 312 00:20:30,000 --> 00:20:35,000 >> Youn nan bagay ki nou te fè sa isit la ke se yon ti kras dans 313 00:20:35,000 --> 00:20:39,000 se nou repete fraz sa a, mwen devine ou ta ka rele li, 314 00:20:39,000 --> 00:20:45,000 3 fwa apa a, sou, 58 liy 59, ak 61. 315 00:20:45,000 --> 00:20:52,000 Èske yon moun eksplike ki sa egzakteman fraz sa a li fè? 316 00:20:52,000 --> 00:20:55,000 Li nan jwenn aksè yon karaktè, tankou ou te di. 317 00:20:55,000 --> 00:20:59,000 Yeah, li nan [fèbl] yon karaktè nan mo kle a, 318 00:20:59,000 --> 00:21:04,000 ak Se konsa li kantite lèt wè paske w ap sèlman k ap deplase ansanm 319 00:21:04,000 --> 00:21:06,000 mo kle a yon fwa ou te wè lèt la, 320 00:21:06,000 --> 00:21:10,000 pou ke a pral efektivman sote espas ak lòt bagay tankou sa. 321 00:21:10,000 --> 00:21:12,000 Yeah, egzakteman. 322 00:21:12,000 --> 00:21:16,000 Lè sa a, yon fwa ou te wè vid la mo kle ou jis Mod konsa ou deplase tounen alantou. 323 00:21:16,000 --> 00:21:18,000 Egzakteman. Sa a se yon eksplikasyon pafè. 324 00:21:18,000 --> 00:21:23,000 Ki sa ki Kevin di se ke nou vle endèks nan mo kle a. 325 00:21:23,000 --> 00:21:28,000 Nou vle jwenn pèsonaj la num_letters_seen, si ou pral, 326 00:21:28,000 --> 00:21:32,000 Men, si num_letters_seen depase longè nan mo kle a, 327 00:21:32,000 --> 00:21:37,000 wout la nou jwenn tounen nan ranje ki apwopriye a se nou itilize operatè a Mod 328 00:21:37,000 --> 00:21:40,000 nan efektivman vlope alantou. 329 00:21:40,000 --> 00:21:43,000 Pou egzanp, tankou nan kout la, mo kle nou an, se bekonn, 330 00:21:43,000 --> 00:21:46,000 ak li a 5 lèt long. 331 00:21:46,000 --> 00:21:50,000 Men, nou te wè 6 lèt ki nan tèks plenn nou an nan pwen sa a 332 00:21:50,000 --> 00:21:52,000 ak chiffres 6. 333 00:21:52,000 --> 00:21:57,000 Nou pral fini aksè num_letters_seen a, 334 00:21:57,000 --> 00:22:00,000 ki se 6, Mod longè nan mo kle a, 5, 335 00:22:00,000 --> 00:22:04,000 epi pou nou ap jwenn 1, ak pou ki sa nou pral fè se nou pral 336 00:22:04,000 --> 00:22:14,000 aksè nan andedan kay la karaktè premye nan mo kle nou an nan pwen sa a. 337 00:22:14,000 --> 00:22:21,000 >> Tout dwa, nenpòt kesyon sou Vigenère 338 00:22:21,000 --> 00:22:26,000 anvan nou deplase sou? 339 00:22:26,000 --> 00:22:31,000 Ou nèg santi trè bon sou sa a? 340 00:22:31,000 --> 00:22:35,000 Fre, gwo. 341 00:22:35,000 --> 00:22:38,000 Mwen vle asire w ke ou nèg ap resevwa chans pou yo wè kòd 342 00:22:38,000 --> 00:22:48,000 ke nou te panse sanble bon epi yo gen chans nan aprann nan men li. 343 00:22:48,000 --> 00:22:53,000 Sa a se pral fè dènye a nou pral lè l sèvi avèk espas pou tan an ke yo te, 344 00:22:53,000 --> 00:22:59,000 e nou pral fè tranzisyon kounye a, ak mwen pral pou yo ale nan cs50.net/lectures 345 00:22:59,000 --> 00:23:06,000 pou nou ka fè yon ti kras nan revizyon egzamen. 346 00:23:06,000 --> 00:23:10,000 Pi bon fason pou mwen panse ke yo kòmanse ap fè egzamen revizyon 347 00:23:10,000 --> 00:23:15,000 se pou yo vini nan paj sa a Konferans, cs50.net/lectures, 348 00:23:15,000 --> 00:23:20,000 ak anba chak nan tit yo semèn, kidonk si mwen gade isit la nan Semèn 0, 349 00:23:20,000 --> 00:23:27,000 Mwen wè ke nou gen yon lis sijè ke nou kouvri nan Semèn 0. 350 00:23:27,000 --> 00:23:31,000 >> Si nenpòt nan sijè sa yo sanble abitye avèk wout yo ou 351 00:23:31,000 --> 00:23:34,000 ou pral definitivman vle ale retounen lakay yo epi revive nòt yo konferans epi pètèt 352 00:23:34,000 --> 00:23:39,000 menm koudèy nan konferans la, gade yo ankò si ou vle 353 00:23:39,000 --> 00:23:44,000 yo ka resevwa yon santi yo pou sa k ap pase sou ak chak nan sijè sa yo. 354 00:23:44,000 --> 00:23:49,000 Mwen pral di anplis sa a yon ane nan resous ki fre nou te gen 355 00:23:49,000 --> 00:23:55,000 se sa yo bout pantalon ke nou te kreye, epi si ou gade nan Semèn 0, 356 00:23:55,000 --> 00:24:00,000 nou pa gen tout sijè ki kouvri, men nou te gen byen kèk nan yo, 357 00:24:00,000 --> 00:24:03,000 kèk nan yo menm ki Delice, se konsa l ap gade sa yo bout pantalon ankò 358 00:24:03,000 --> 00:24:08,000 se yon bon fason fè ou jwenn jiska vitès. 359 00:24:08,000 --> 00:24:15,000 An patikilye, mwen pral mete nan yon ploge pou 3 a sou anba a, depi m 'te fè sa yo. 360 00:24:15,000 --> 00:24:20,000 Men, si w ap konbat ak binè, Bits, Egzagòn, ki kalite bagay, 361 00:24:20,000 --> 00:24:22,000 binè se yon gwo plas kòmanse. 362 00:24:22,000 --> 00:24:25,000 ASCII se yon lòt yon sèl sa a, se bon wè tou. 363 00:24:25,000 --> 00:24:31,000 Ou ka menm gade m 'nan vitès 1.5x si mwen pral twò lou pou ou. 364 00:24:31,000 --> 00:24:35,000 Depi revizyon li a, santi yo lib fè sa. 365 00:24:35,000 --> 00:24:40,000 >> Jis kòmanse reyèlman byen vit, nou pwal yo ale nan yon koup nan pwoblèm sa yo egzamen 366 00:24:40,000 --> 00:24:44,000 jis byen vit désabonnement nan sa yo. 367 00:24:44,000 --> 00:24:50,000 Pou egzanp, kite a gade nan pwoblèm 16 ki mwen te gen dwa moute isit la sou tablo a. 368 00:24:50,000 --> 00:24:54,000 Nou gen sa nou kalkile sa yo nan binè, 369 00:24:54,000 --> 00:24:56,000 e nou vle montre nenpòt ki travay. 370 00:24:56,000 --> 00:24:59,000 Okay, mwen pral bay sa a yon piki. 371 00:24:59,000 --> 00:25:01,000 Ou nèg ta dwe swiv ansanm ak papye, 372 00:25:01,000 --> 00:25:04,000 epi nou pral fè sa a vrèman byen vit. 373 00:25:04,000 --> 00:25:06,000 Nou vle fè kalkil ki anba la a nan binè. 374 00:25:06,000 --> 00:25:16,000 Mwen te gen 00110010. 375 00:25:16,000 --> 00:25:27,000 Apre sa, mwen pral ajoute nan li 00110010. 376 00:25:27,000 --> 00:25:30,000 Pou matematik la jeni apre ansanm nan kay la, 377 00:25:30,000 --> 00:25:35,000 sa a se efektivman miltipliye pa 2. 378 00:25:35,000 --> 00:25:37,000 Ann kòmanse. 379 00:25:37,000 --> 00:25:39,000 Nou pral swiv algorithm nan adisyon menm ki fè nou byen 380 00:25:39,000 --> 00:25:43,000 lè nou ajoute nimewo desimal ansanm. 381 00:25:43,000 --> 00:25:46,000 Vrèman diferans la sèlman isit la se ke nou riban tounen otou 382 00:25:46,000 --> 00:25:51,000 yon fwa nou gen 1 + 1 olye pou yo yon fwa nou jwenn a 10. 383 00:25:51,000 --> 00:25:53,000 >> Si nou kòmanse soti sou bò dwat la, vrèman byen vit, sa ki nan chif la an premye? 384 00:25:53,000 --> 00:25:55,000 [Elèv] 0. >> [Nate H.] 0. 385 00:25:55,000 --> 00:25:58,000 Great, chif la dezyèm? 386 00:25:58,000 --> 00:26:00,000 [Elèv] 1. 387 00:26:00,000 --> 00:26:02,000 [Nate H.] Èske se yon 1 an? 1 + 1 se? 388 00:26:02,000 --> 00:26:04,000 [Elèv] 10. 389 00:26:04,000 --> 00:26:08,000 [Nate H.] Egzakteman konsa, sa ki se chif a ke mwen ekri dwa anba 2 sa yo ajoute yo ansanm? 390 00:26:08,000 --> 00:26:11,000 [Elèv] 1, 0, oswa 0 ak Lè sa a, pote 1 an. 391 00:26:11,000 --> 00:26:15,000 [Nate H.] 0 epi mache ak yon 1, egzakteman. 392 00:26:15,000 --> 00:26:18,000 Next yon sèl leve, Basil, w ap leve. 393 00:26:18,000 --> 00:26:20,000 Ki sa ki nan twazyèm lan? >> [Basil] 1. 394 00:26:20,000 --> 00:26:23,000 [Nate H.] 1, pafè. Kevin? 395 00:26:23,000 --> 00:26:27,000 [Kevin] 0. >> [Nate H.] 0, Charlotte? 396 00:26:27,000 --> 00:26:30,000 [Charlotte] 0. >> [Nate H.] Yeah, epi ki sa mwen dwe fè? 397 00:26:30,000 --> 00:26:32,000 [Elèv] 1 an. 398 00:26:32,000 --> 00:26:34,000 [Nate H.] Ak sa ki m 'fè? Lè sa a, mwen pote 1 an. 399 00:26:34,000 --> 00:26:36,000 Pafè, Sahb? >> [Sahb] Koulye a, ou gen 1. 400 00:26:36,000 --> 00:26:40,000 [Nate H.] Lè fè m 'fè anyen isit la? 401 00:26:40,000 --> 00:26:43,000 [Sahb] Lè sa a, pou youn nan pwochen ou gen 1 paske ou te pote plis pase 1. 402 00:26:43,000 --> 00:26:49,000 [Nate H.] Gran, se konsa isit la nou kapab fini li. 403 00:26:49,000 --> 00:26:51,000 Fre. 404 00:26:51,000 --> 00:26:54,000 [Elèv] Èske 0 + 0 = 0? 405 00:26:54,000 --> 00:26:56,000 0 + 0 = 0. 406 00:26:56,000 --> 00:27:01,000 1 + 1, tankou ou te di, se 10, oswa 1, 0, olye. 407 00:27:01,000 --> 00:27:07,000 10 se yon pèsonalite misnomer paske m '10 ki vle di kantite a 10, 408 00:27:07,000 --> 00:27:12,000 epi li kapris a nan ki jan n ap reprezante li lè n ap ekri li. 409 00:27:12,000 --> 00:27:20,000 Nou reprezante ki kantite 2 pa 1 0,, ak nimewo a 10 se yon ti kras diferan. 410 00:27:20,000 --> 00:27:23,000 >> Ki sa ki nan kalite bèl sou binè se ke gen reyèlman yo pa ke anpil 411 00:27:23,000 --> 00:27:25,000 ka ou bezwen aprann. 412 00:27:25,000 --> 00:27:30,000 Genyen 0 + 0 = 0, 0 + 1 = 1, 413 00:27:30,000 --> 00:27:34,000 1 + 1 se 0, epi Lè sa a, pote yon 1, 414 00:27:34,000 --> 00:27:37,000 ak Lè sa a, ou ka wè isit la sou kolòn nan twazyèm de dwat a 415 00:27:37,000 --> 00:27:40,000 nou te gen sa a 1, 1, ak 1. 416 00:27:40,000 --> 00:27:43,000 Ak 1 + 1 + 1 se yon 1, 417 00:27:43,000 --> 00:27:45,000 epi ou pote yon lòt 1. 418 00:27:45,000 --> 00:27:48,000 Lè w ap fè binè plis de sa, trè senp. 419 00:27:48,000 --> 00:27:51,000 Mwen ta fè yon pi plis koup la sa yo, saniti tcheke tèt nou 420 00:27:51,000 --> 00:27:54,000 anvan ou ale nan paske sa se 421 00:27:54,000 --> 00:28:00,000 pwobableman yon bagay nou pral wè sou egzamen an. 422 00:28:00,000 --> 00:28:03,000 Koulye a, kite a fè yon sèl sa a pwochen kòm byen. 423 00:28:03,000 --> 00:28:06,000 Se pou nou fè pwoblèm 17. 424 00:28:06,000 --> 00:28:12,000 Nou pral konvèti nimewo a binè yo nan desimal. 425 00:28:12,000 --> 00:28:28,000 Mwen te gen 10100111001. 426 00:28:28,000 --> 00:28:33,000 Sonje nan videyo a binè sa m 'fè 427 00:28:33,000 --> 00:28:36,000 Mwen te mache nan tout yon koup la egzanp, ak mwen te montre ki jan 428 00:28:36,000 --> 00:28:41,000 tout bagay ap travay lè w ap fè l 'nan desimal. 429 00:28:41,000 --> 00:28:45,000 Lè w ap travay nan reprezantasyon desimal mwen panse ke nou ap 430 00:28:45,000 --> 00:28:48,000 nan pwen sa a nan lavi nou se konsa pale nan li ki 431 00:28:48,000 --> 00:28:53,000 li nan trè fasil a enteprete sou mekanik yo nan li montre kouman li aktyèlman ap travay. 432 00:28:53,000 --> 00:28:59,000 >> Men, fè yon rapèl rapid, si mwen gen nimewo a 137 433 00:28:59,000 --> 00:29:06,000 sa a vrèman vle di-yo ak ankò, sa a se nan desimal reprezantasyon- 434 00:29:06,000 --> 00:29:19,000 nimewo a 137 nan desimal vle di ke mwen gen 1 x 100 + 3 x 10 + 7 x 1. 435 00:29:19,000 --> 00:29:22,000 Sa a se tout rete sou ekran an. 436 00:29:22,000 --> 00:29:29,000 Lè sa a, si ou gade nan nimewo sa yo dwa isit la, 437 00:29:29,000 --> 00:29:34,000 100, 10 ak 1, ou wè sa a yo ap aktyèlman tout pouvwa a 10. 438 00:29:34,000 --> 00:29:43,000 Mwen gen 10 ², 10 ¹, ak 10 a zewo a. 439 00:29:43,000 --> 00:29:48,000 Nou gen yon sòt menm jan de bagay sa nan binè, 440 00:29:48,000 --> 00:29:55,000 eksepte ke baz nou an, jan nou rele li, se 2 olye pou yo 10. 441 00:29:55,000 --> 00:29:58,000 Sa yo 10 ki mwen te ekri desann isit la nan pati anba a, 442 00:29:58,000 --> 00:30:02,000 sa a ² 10, 10 ¹, 10 a zewo 10 an, se baz nou an, 443 00:30:02,000 --> 00:30:08,000 ak ekspozan an, 0, 1, oswa 2, 444 00:30:08,000 --> 00:30:14,000 se enplisit pa pozisyon nan chif la nan nimewo a ke nou ekri. 445 00:30:14,000 --> 00:30:21,000 1, si nou gade nan li, sa a 1 se nan yon pozisyon nan 2nd. 446 00:30:21,000 --> 00:30:27,000 3 a se nan yon pozisyon nan 1ye ane, ak 7 an se nan yon pozisyon nan 0th. 447 00:30:27,000 --> 00:30:35,000 Sa a se kijan nou jwenn ekspozan sa yo divès kalite pi ba a pou baz nou an. 448 00:30:35,000 --> 00:30:40,000 >> Apre tout bagay sa yo we'll aktyèlman-a, ou konnen ki sa? 449 00:30:40,000 --> 00:30:43,000 Nou pral fè-kote t 'bouton defèt mwen an ale? 450 00:30:43,000 --> 00:30:45,000 Gen li ale. 451 00:30:45,000 --> 00:30:47,000 Mwen renmen sa a defèt bagay sa yo. 452 00:30:47,000 --> 00:30:51,000 Apre sa mwen panse pou m 'omwen 453 00:30:51,000 --> 00:30:54,000 fason ki pi fasil yo kòmanse konvèti yon nimewo binè 454 00:30:54,000 --> 00:30:57,000 oswa yon nimewo ekzadesimal kote baz la se 16 455 00:30:57,000 --> 00:31:02,000 epi yo pa 10 oswa 2 se ale pi devan epi ekri deyò 456 00:31:02,000 --> 00:31:09,000 baz ak ekspozan pou tout nan nimewo ki nan nimewo binè mwen nan tèt la. 457 00:31:09,000 --> 00:31:14,000 Si nou kòmanse de gòch a dwat ankò, 458 00:31:14,000 --> 00:31:17,000 ki yon jan counterintuitive, 459 00:31:17,000 --> 00:31:23,000 Mwen pral chanje tounen nan nwa isit la, nou gen 2 an nan pozisyon an 0th, 460 00:31:23,000 --> 00:31:27,000 ak Lè sa a, nou gen 2 ¹, 2 ², 461 00:31:27,000 --> 00:31:33,000 ak Lè sa a, 2 a 3 an, 2 a 4, 2 an a 5 an, 6, 462 00:31:33,000 --> 00:31:39,000 7, 8, 9, ak 10. 463 00:31:39,000 --> 00:31:41,000 Nimewo sa yo Mwen te ekri soti, yo tout ekspozan yo. 464 00:31:41,000 --> 00:31:48,000 Mwen sèlman te ekri baz yo isit la nan 3 nan premye jis pou espas. 465 00:31:48,000 --> 00:31:50,000 >> Nan pwen sa a mwen pral ale pi devan epi mwen aktyèlman ale nan efase 466 00:31:50,000 --> 00:31:53,000 bagay la ke nou te fè nan desimal, si se oke. 467 00:31:53,000 --> 00:31:57,000 Ou te tout te resevwa sa. 468 00:31:57,000 --> 00:32:05,000 Moun sa yo ki nan nou ap gade sou entènèt mwen asire w yo pral kapab remonte mwen si ou ta renmen. 469 00:32:05,000 --> 00:32:07,000 Oblije chanje tounen nan plim la. 470 00:32:07,000 --> 00:32:12,000 Koulye a, sa nou kapab fè-si ou nèg yo pa totalman jiska pi vit sou pouvwa ou nan 2, 471 00:32:12,000 --> 00:32:15,000 sa a, se totalman fre. 472 00:32:15,000 --> 00:32:18,000 Li k ap pase. Mwen konprann. 473 00:32:18,000 --> 00:32:23,000 Mwen yon fwa te gen yon entèvyou travay kote mwen te di mwen ta dwe konnen tout pouvwa nan 2 474 00:32:23,000 --> 00:32:26,000 moute nan 2 a 30 an. 475 00:32:26,000 --> 00:32:29,000 Li pa t 'yon travay mwen te resevwa. 476 00:32:29,000 --> 00:32:32,000 Anyway, ou nèg ka ale pi devan ak fè matematik la isit la, 477 00:32:32,000 --> 00:32:35,000 Men, se avèk binè li pa vrèman fè sans, 478 00:32:35,000 --> 00:32:38,000 ak ni li fè sans avèk desimal oswa ekzadesimal swa, 479 00:32:38,000 --> 00:32:43,000 bezwen fè matematik la konnen ki kote ou gen zewo. 480 00:32:43,000 --> 00:32:49,000 Ou ka wè mwen gen 0 isit la, yon 0 isit la, 0 isit la, 0 isit la, 0 isit la, 0 isit la. 481 00:32:49,000 --> 00:32:52,000 Poukisa ta ka li pa fè sans nan fè matematik aktyèl la 482 00:32:52,000 --> 00:32:56,000 kalkile pouvwa ki apwopriye a nan 2 pou pozisyon sa? 483 00:32:56,000 --> 00:32:59,000 Egzakteman, tankou Charlotte di, li pral 0. 484 00:32:59,000 --> 00:33:05,000 Ta ka kòm byen sove tèt ou tan an si kalkile pouvwa nan 2 se pa kostim fò ou yo. 485 00:33:05,000 --> 00:33:10,000 Nan ka sa a nou sèlman bezwen kalkile li pou 2 a 0 a ki se-? 486 00:33:10,000 --> 00:33:12,000 [Elèv] 1. 487 00:33:12,000 --> 00:33:14,000 [Nate H.] 1, 2 a 3 an ki se-? 488 00:33:14,000 --> 00:33:16,000 [Elèv] 8. >> [Nate H.] 8. 489 00:33:16,000 --> 00:33:18,000 2 a 4 an? 490 00:33:18,000 --> 00:33:21,000 [Elèv] 2. Mwen regrèt, 1. 491 00:33:21,000 --> 00:33:26,000 [Nate H.] 2 a 4 la se 16, egzakteman. 492 00:33:26,000 --> 00:33:28,000 2 a 5 an, Kevin? >> 32. 493 00:33:28,000 --> 00:33:32,000 [Nate H.] 32, 2 a 8 an? 494 00:33:32,000 --> 00:33:38,000 [Elèv] 32 x 8, 256. 495 00:33:38,000 --> 00:33:41,000 [Nate H.] pafè. 496 00:33:41,000 --> 00:33:43,000 Ak 2 a 10 an? 497 00:33:43,000 --> 00:33:45,000 [Elèv] 1024. 498 00:33:45,000 --> 00:33:49,000 [Nate H.] Yeah, 1024. 499 00:33:49,000 --> 00:33:57,000 >> Yon fwa nou te gen nimewo sa yo nou ka rapò kantite yo tout yo. 500 00:33:57,000 --> 00:34:01,000 E sa se kote li vrèman enpòtan fè yon koup la bagay sa yo. 501 00:34:01,000 --> 00:34:07,000 Se yon sèl ale ralanti ak tcheke travay ou. 502 00:34:07,000 --> 00:34:10,000 Ou ka di ke gen yon 1 nan fen nan nimewo sa a, 503 00:34:10,000 --> 00:34:15,000 Se konsa, mwen ta dwe definitivman jwenn yon nimewo enpè kòm rezilta m 'yo, 504 00:34:15,000 --> 00:34:18,000 paske tout sa yo lòt pwal gen menm nimewo 505 00:34:18,000 --> 00:34:21,000 bay ke li nan yon nimewo binè. 506 00:34:21,000 --> 00:34:24,000 Bagay a lòt fè se si ou jwenn yo pwen sa a nan egzamen an 507 00:34:24,000 --> 00:34:27,000 ak ou te ekri li soti sa a byen lwen 508 00:34:27,000 --> 00:34:30,000 ak w ap kouri soti nan tan 509 00:34:30,000 --> 00:34:33,000 gade nan ki kantite pwen ke pwoblèm sa a vo. 510 00:34:33,000 --> 00:34:40,000 Pwoblèm sa a, kòm ou kapab wè-si mwen baskile tounen nan laptop mwen vrèman byen vit- 511 00:34:40,000 --> 00:34:44,000 pwoblèm sa a se vo 2 pwen, se konsa sa a se pa sòt nan nan adisyon 512 00:34:44,000 --> 00:34:47,000 ou ta dwe ale atravè tout, si w ap reyèlman fòse pou tan. 513 00:34:47,000 --> 00:34:52,000 Men, nou pral chanje tounen nan iPad a, epi nou pral ale nan li vrèman byen vit. 514 00:34:52,000 --> 00:34:54,000 >> Mwen renmen fè chif yo ti premye 515 00:34:54,000 --> 00:34:56,000 paske mwen jwenn ke pi fasil. 516 00:34:56,000 --> 00:35:00,000 Mwen renmen 32 ak 8 paske yo ale ansanm trè byen fasil, e nou jwenn 50. 517 00:35:00,000 --> 00:35:03,000 16 ak 1 vin 17. 518 00:35:03,000 --> 00:35:05,000 Gen nou jwenn 57, 519 00:35:05,000 --> 00:35:14,000 ak Lè sa a, nou ka fè rès la nan sa a, se konsa nou ka fè 57, 156. 520 00:35:14,000 --> 00:35:16,000 Vini non sou. 521 00:35:16,000 --> 00:35:19,000 Monchè, byen, kite la wè. 522 00:35:19,000 --> 00:35:27,000 Nou te gen 57, 256, ak 1024. 523 00:35:27,000 --> 00:35:31,000 Nan pwen sa a, mwen ta pito jis ale nan. 524 00:35:31,000 --> 00:35:35,000 Mwen pa gen okenn endis. Mwen byen klè bezwen li moute sou sa a. 525 00:35:35,000 --> 00:35:40,000 7, 6, ak 4, ou jwenn 17. 526 00:35:40,000 --> 00:35:42,000 1, 5, 5, 2, 13. 527 00:35:42,000 --> 00:35:45,000 Lè sa a, nou jwenn 3, ak Lè sa a, nou jwenn 1. 528 00:35:45,000 --> 00:35:52,000 1337. 529 00:35:52,000 --> 00:35:55,000 Pak ze, okenn moun? 530 00:35:55,000 --> 00:35:59,000 Nenpòt moun rekonèt nonb sa a? 531 00:35:59,000 --> 00:36:02,000 Chris rekonèt nimewo a. Kisa sa vle di, Chris? 532 00:36:02,000 --> 00:36:04,000 [Chris] lèe. 533 00:36:04,000 --> 00:36:11,000 Lèe, kidonk si w gade nan sa a, li sanble lèe. 534 00:36:11,000 --> 00:36:15,000 Bagay pirataj. Gade deyò pou ki kalite bagay sou A. Kilès la oswa egzamen an, olye. 535 00:36:15,000 --> 00:36:19,000 Si ou wè ki kalite bagay ak w ap mande "Huh," 536 00:36:19,000 --> 00:36:22,000 ki ta ka aktyèlman vle di yon bagay. 537 00:36:22,000 --> 00:36:24,000 Mwen pa konnen. David renmen mete l pous 538 00:36:24,000 --> 00:36:26,000 Li se yon bon fason yo saniti tcheke li. 539 00:36:26,000 --> 00:36:30,000 Tankou oke, mwen ka wè sa ki pral sou. 540 00:36:30,000 --> 00:36:34,000 >> Sa a se Semèn 0/Week 1 bagay. 541 00:36:34,000 --> 00:36:39,000 Si nou chanje tounen nan konpitè pòtatif nou kounye a, 542 00:36:39,000 --> 00:36:46,000 rale soti, epi yon koup la lòt bagay. 543 00:36:46,000 --> 00:36:50,000 Genyen nan ASCII, ki nou te toujou ap fè yon anpil nan ak ansanm sa yo, pwoblèm. 544 00:36:50,000 --> 00:36:55,000 Sa a nosyon nan kapital A. Ki sa ki ki vrèman? 545 00:36:55,000 --> 00:36:57,000 Lè konnen li nan nonb antye relatif desimal la. 546 00:36:57,000 --> 00:37:00,000 65 se sa ki li nan mappé nan tablo a ASCII, 547 00:37:00,000 --> 00:37:03,000 ak sa a, se poutèt sa ki jan òdinatè a ekri li, 548 00:37:03,000 --> 00:37:06,000 ak sa a, se ki jan nou ve yo te jwenn lwen ak aktyèlman ekri 549 00:37:06,000 --> 00:37:09,000 kapital la karaktè A ak karaktè nan miniskil yon 550 00:37:09,000 --> 00:37:14,000 nan kèk nan sa yo solisyon yo ak aparèy televisyon HD pwoblèm ke ou ve yo te fè a. 551 00:37:14,000 --> 00:37:16,000 Yon koup la lòt bagay. 552 00:37:16,000 --> 00:37:25,000 Nou gen deklarasyon, ekspresyon Boolean, kondisyon, pasan, varyab ak fil. 553 00:37:25,000 --> 00:37:29,000 >> Moun sa yo ki tout yo sanble yo fè sans pou pati ki pi? 554 00:37:29,000 --> 00:37:35,000 Gen kèk nan sa a tèminoloji se yon fenki ti kras nan fwa. 555 00:37:35,000 --> 00:37:46,000 Mwen renmen panse a yon deklarasyon kòm pou yon bagay an ki fini ak yon virgules pi pati. 556 00:37:46,000 --> 00:37:51,000 Deklarasyon tankou x = 7, ki etabli yon varyab, 557 00:37:51,000 --> 00:37:54,000 prezimableman rele x = 7. 558 00:37:54,000 --> 00:38:01,000 Prezimableman x se tou yon kalite ki ka magazen nimewo a 7, 559 00:38:01,000 --> 00:38:05,000 Se konsa li yon int oswa pètèt flote yon oswa yon kout oswa yon Char, 560 00:38:05,000 --> 00:38:07,000 yon bagay tankou sa. 561 00:38:07,000 --> 00:38:12,000 Yon ekspresyon Boolean a lè l sèvi avèk sa yo doub egal 562 00:38:12,000 --> 00:38:17,000 ak bang lan egal a oswa egal a pa, mwens pase, ki pi konsekan pase, 563 00:38:17,000 --> 00:38:22,000 mwens pase oswa egal a, tout kalite sa yo ki an bagay. 564 00:38:22,000 --> 00:38:28,000 Kondisyon Lè sa a, se si lòt deklarasyon. 565 00:38:28,000 --> 00:38:32,000 Mwen ta sonje sa ke ou pa kapab gen yon lòt bagay san li pa yon korespondan si. 566 00:38:32,000 --> 00:38:37,000 Menm jan an tou, ou pa kapab gen yon lòt bagay si san li pa yon korespondan si. 567 00:38:37,000 --> 00:38:40,000 Pasan, sonje kalite sa yo 3 nan pasan nou ve yo te rakle nan ou 568 00:38:40,000 --> 00:38:43,000 pou koup la dènye nan seksyon epi li kouche pwoblèm. 569 00:38:43,000 --> 00:38:46,000 Sèvi ak pandan y ap lè w ap vin opinyon itilizatè, 570 00:38:46,000 --> 00:38:51,000 lè l sèvi avèk pandan y ap pasan jouk yon kondisyon patikilye se vre, 571 00:38:51,000 --> 00:38:56,000 ak Lè sa a, lè l sèvi avèk sa yo pou pasan si ou bezwen 572 00:38:56,000 --> 00:39:01,000 konnen ki iterasyon nan riban an w ap kounye a sou ki jan pou mwen panse sou li. 573 00:39:01,000 --> 00:39:07,000 Oswa si w ap fè yon pou chak karaktè nan yon fisèl mwen vle fè yon bagay, 574 00:39:07,000 --> 00:39:15,000 pou chak eleman nan yon etalaj mwen vle fè yon bagay ak sa yo ki eleman. 575 00:39:15,000 --> 00:39:18,000 >> Threads ak evènman. 576 00:39:18,000 --> 00:39:21,000 Sa yo, nou pa t 'kouvri sa fòmèlman nan C, 577 00:39:21,000 --> 00:39:23,000 men sonje sa a nan grafouyen. 578 00:39:23,000 --> 00:39:26,000 Sa a se nosyon a ki gen Scripts diferan. 579 00:39:26,000 --> 00:39:32,000 Sa a se tou sa a nosyon nan difize yon evènman. 580 00:39:32,000 --> 00:39:37,000 Gen kèk moun ki pa t 'sèvi ak difize nan pwojè yo okòmansman, 581 00:39:37,000 --> 00:39:40,000 ki se totalman fre, 582 00:39:40,000 --> 00:39:46,000 men sa yo, se 2 diferan fason pou manyen pwoblèm sa a pi gwo yo rele konkouran, 583 00:39:46,000 --> 00:39:49,000 ki se ki jan ou jwenn pwogram yo egzekite 584 00:39:49,000 --> 00:39:54,000 oswa w pèdi egzekite nan menm tan an? 585 00:39:54,000 --> 00:39:59,000 Travay diferan kouri pandan y ap lòt travay yo tou kouri. 586 00:39:59,000 --> 00:40:01,000 Sa a se fason sistèm opere ou sanble nan travay. 587 00:40:01,000 --> 00:40:04,000 Sa a se poukisa menm si, pou egzanp, 588 00:40:04,000 --> 00:40:10,000 Mwen te gen navigatè mwen kouri, mwen kapab tou vire sou Spotify ak jwe yon chante. 589 00:40:10,000 --> 00:40:14,000 Sa a se plis nan yon bagay konseptyèl ekspresyon yo konprann. 590 00:40:14,000 --> 00:40:17,000 Mwen ta pran yon gade nan fil yo kout 591 00:40:17,000 --> 00:40:21,000 si ou ta renmen aprann plis sou sa. 592 00:40:21,000 --> 00:40:26,000 >> Ann gade pou wè, mwen kwè gen ta ka fèt yon 593 00:40:26,000 --> 00:40:31,000 yon pwoblèm sa a sou nan youn nan sa yo. 594 00:40:31,000 --> 00:40:35,000 Yon lòt fwa ankò, mwen panse ke fil ak evènman yo se pa yon bagay ke nou pral kouvri nan C 595 00:40:35,000 --> 00:40:41,000 jis paske li nan siyifikativman pi difisil pase nan grafonyen moun. 596 00:40:41,000 --> 00:40:44,000 Ou pa ta dwe enkyete sou li a, men definitivman konprann konsèp yo, 597 00:40:44,000 --> 00:40:47,000 konprann ki sa k ap pase. 598 00:40:47,000 --> 00:40:52,000 Anvan nou deplase sou li a, nenpòt kesyon sou Semèn 0 materyèl? 599 00:40:52,000 --> 00:40:55,000 Tout moun santi trè bon? 600 00:40:55,000 --> 00:41:03,000 Varyab konpreyansyon ak sa ki yon varyab se? 601 00:41:03,000 --> 00:41:08,000 >> Deplase sou. Semèn 1. 602 00:41:08,000 --> 00:41:12,000 Yon koup de bagay sa yo isit la ki pa te patikilyèman kouvri 603 00:41:12,000 --> 00:41:21,000 nan revizyon an egzamen nesesèman epi tou li gen plis konseptyèl bagay yo reflechi sou. 604 00:41:21,000 --> 00:41:30,000 Premye a se sa a nosyon de sa ki sous kòd, konpilateur ak kòd objè yo ye. 605 00:41:30,000 --> 00:41:32,000 Nenpòt moun? Basil. 606 00:41:32,000 --> 00:41:37,000 Èske objè kòd-Mwen vle di kòd sous se ki sa ou mete nan sonnen, 607 00:41:37,000 --> 00:41:42,000 ak kòd objè a se sa ki sonnen mete deyò pou ke òdinatè ou a kapab li pwogram nan. 608 00:41:42,000 --> 00:41:44,000 Egzakteman. 609 00:41:44,000 --> 00:41:47,000 Kòd Sous se kòd la C ke ou aktyèlman tape yo. 610 00:41:47,000 --> 00:41:50,000 Kòd objè se ki sa ou jwenn soti nan sonnen. 611 00:41:50,000 --> 00:41:54,000 Li nan 0s la ak 1S nan ki fòma binè. 612 00:41:54,000 --> 00:41:59,000 Lè sa a, kisa k ap rive se lè w gen yon pakèt moun sou dosye objè, 613 00:41:59,000 --> 00:42:04,000 di w ap konpile yon pwojè oswa nan yon pwogram ki sèvi ak dosye miltip kòd sous, 614 00:42:04,000 --> 00:42:09,000 ki pa konvansyon yo bay yo. ekstansyon an dosye c. 615 00:42:09,000 --> 00:42:13,000 Se poutèt sa nou gen caesar.c, vigenère.c. 616 00:42:13,000 --> 00:42:18,000 Si w ap ekri Java pwogram ou ba yo ekstansyon an. Java. 617 00:42:18,000 --> 00:42:24,000 Pwogram Piton gen ekstansyon an. Pi souvan. 618 00:42:24,000 --> 00:42:26,000 >> Yon fwa ou gen miltip. C dosye, ou konpile yo. 619 00:42:26,000 --> 00:42:29,000 Rezone krache soti tout bagay sa a binè tenten. 620 00:42:29,000 --> 00:42:33,000 Lè sa a, paske ou se sèlman vle 1 pwogram 621 00:42:33,000 --> 00:42:37,000 ou gen lyen ki Linkshere tout moun sa yo objè depoze ansanm 622 00:42:37,000 --> 00:42:40,000 nan 1 dosye ègzèkutabl. 623 00:42:40,000 --> 00:42:45,000 Sa a se tou sa ki pase lè ou itilize bibliyotèk la CS50, pou egzanp. 624 00:42:45,000 --> 00:42:50,000 Bibliyotèk la CS50 se toude ki. H dosye header 625 00:42:50,000 --> 00:42:53,000 pou w li, ki # includecs50.h. 626 00:42:53,000 --> 00:42:58,000 Lè sa a, li la tou yon binè dosye espesyal bibliyotèk 627 00:42:58,000 --> 00:43:02,000 ki nan te konpile ki se 0s ak 1, 628 00:43:02,000 --> 00:43:08,000 e ke-l drapo, kidonk si nou tounen nan Espas nou yo ak nou gade vrèman byen vit 629 00:43:08,000 --> 00:43:11,000 nan sa k ap pase sou isit la, lè nou gade lòd rezone nou an, 630 00:43:11,000 --> 00:43:15,000 ki sa nou te gen se sa a se dosye sous kòd nou isit la menm. 631 00:43:15,000 --> 00:43:18,000 Sa yo se yon pakèt moun sou drapo du. 632 00:43:18,000 --> 00:43:22,000 Lè sa a, nan fen a trè, sa yo L-drapo lyen an nan 633 00:43:22,000 --> 00:43:30,000 dosye yo binè aktyèl pou 2 sa yo nan bibliyotèk, nan bibliyotèk la CS50 ak Lè sa a, bibliyotèk la matematik. 634 00:43:30,000 --> 00:43:35,000 >> Konprann chak kalite bi dosye ' 635 00:43:35,000 --> 00:43:38,000 nan pwosesis la konpilasyon se yon bagay ki ou pral vle pou kapab 636 00:43:38,000 --> 00:43:43,000 bay omwen yon BECA de wo nivo. 637 00:43:43,000 --> 00:43:46,000 Kòd Sous vini pous kòd objè soti. 638 00:43:46,000 --> 00:43:53,000 Dosye kòd objè konekte ansanm, epi ou jwenn yon bèl, ègzèkutabl dosye-a. 639 00:43:53,000 --> 00:43:55,000 Fre. 640 00:43:55,000 --> 00:43:58,000 Sa a se tou kote ou ka jwenn erè nan pwen miltip 641 00:43:58,000 --> 00:44:00,000 nan pwosesis la konpilasyon. 642 00:44:00,000 --> 00:44:04,000 Sa a se kote, pou egzanp, si ou pran sa a drapo ki lye ak, 643 00:44:04,000 --> 00:44:10,000 drapo a CS50, epi ou oblije li yo nan espas oubyen lè w ap kouri kòd ou a, 644 00:44:10,000 --> 00:44:13,000 sa a se kote ou pral jwenn yon erè nan faz la ki lye ak, 645 00:44:13,000 --> 00:44:18,000 ak Linkshere a pral di: "Hey, ou rele yon GetString fonksyon 646 00:44:18,000 --> 00:44:20,000 sa a, se nan bibliyotèk la CS50. " 647 00:44:20,000 --> 00:44:25,000 "Ou te di m 'li te nan bibliyotèk la CS50, epi mwen pa ka jwenn kòd la pou li." 648 00:44:25,000 --> 00:44:28,000 Sa a kote ou gen fè rapò ant l 'nan, ak ki nan separe 649 00:44:28,000 --> 00:44:33,000 ki sòti nan yon erè du paske du a se kap nan sentaks ak ki kalite bagay. 650 00:44:33,000 --> 00:44:38,000 Li nan bon konnen sa k ap pase sou lè. 651 00:44:38,000 --> 00:44:42,000 >> Lòt bagay yo konnen sou. 652 00:44:42,000 --> 00:44:49,000 Mwen ta ka di ou definitivman vle pran yon gade nan kout la sou typecasting fè lòt bò larivyè Jouden 653 00:44:49,000 --> 00:44:55,000 a konprann ki sa antye se anba kapo machin lan, 654 00:44:55,000 --> 00:44:58,000 ki sa charaktèr yo se anba kapo machin lan. 655 00:44:58,000 --> 00:45:02,000 Lè nou pale sou ASCII e nou aktyèlman gade nan tablo a ASCII, 656 00:45:02,000 --> 00:45:07,000 ki sa ki nan ap fè an, ap ban nou yon anba gade nan Hood 657 00:45:07,000 --> 00:45:13,000 nan ki jan òdinatè a aktyèlman reprezante kapital A ak 7 nan chif 658 00:45:13,000 --> 00:45:17,000 ak yon vigil ak yon mak kesyon. 659 00:45:17,000 --> 00:45:20,000 Òdinatè a tou te gen fason espesyal ki reprezante 660 00:45:20,000 --> 00:45:23,000 nimewo a 7 kòm yon antye relatif. 661 00:45:23,000 --> 00:45:27,000 Li te gen yon fason espesyal reprezante ki kantite 7 kòm yon nimewo pwen k ap flote, 662 00:45:27,000 --> 00:45:29,000 ak sa yo se trè diferan. 663 00:45:29,000 --> 00:45:32,000 Typecasting se ki jan ou di òdinatè a "Hey, mwen vle ou konvèti 664 00:45:32,000 --> 00:45:37,000 soti nan yon reprezantasyon nan yon lòt reprezantasyon. " 665 00:45:37,000 --> 00:45:40,000 Poukisa nou pa nou pran yon gade nan sa. 666 00:45:40,000 --> 00:45:44,000 >> Mwen ta tou pran yon gade nan kout la sou bibliyotèk ak kout la sou konpilateur. 667 00:45:44,000 --> 00:45:47,000 Moun sa yo ki pale de pwosesis la nan konpilasyon, 668 00:45:47,000 --> 00:45:53,000 ki sa yon bibliyotèk se, epi ale sou kèk nan kesyon sa yo ke ou ta ka jwenn mande. 669 00:45:53,000 --> 00:45:55,000 Kesyon sou materyèl Semèn 1? 670 00:45:55,000 --> 00:46:03,000 Èske gen nenpòt sijè nan isit la ki sanble redoutable ou ta renmen yo kouvri? 671 00:46:03,000 --> 00:46:07,000 Mwen ap eseye soufle nan pi fò nan sijè sa yo pi bonè pou nou ka jwenn yo 672 00:46:07,000 --> 00:46:13,000 endikasyon ak fè yon ti kras nan rkursyon. 673 00:46:13,000 --> 00:46:15,000 Panse? 674 00:46:15,000 --> 00:46:19,000 Nenpòt bagay yo kouvri? 675 00:46:19,000 --> 00:46:21,000 Tan pou kèk chokola petèt? 676 00:46:21,000 --> 00:46:23,000 Ou nèg yo ap travay atravè li. 677 00:46:23,000 --> 00:46:26,000 Mwen pral kenbe siwote sou kafe m 'yo. 678 00:46:26,000 --> 00:46:31,000 Semèn 2. 679 00:46:31,000 --> 00:46:34,000 Bon rele, bon apèl. 680 00:46:34,000 --> 00:46:38,000 Nan Semèn 2 nou te pale yon ti kras plis sou fonksyon. 681 00:46:38,000 --> 00:46:43,000 >> Nan ansanm sa yo, premye pwoblèm kèk nou pa t 'reyèlman ekri nenpòt fonksyon nan tout 682 00:46:43,000 --> 00:46:45,000 lòt pase ki fonksyon? 683 00:46:45,000 --> 00:46:47,000 [Elèv] Main. >> Main, egzakteman. 684 00:46:47,000 --> 00:46:51,000 Se konsa, nou te wè kostim yo diferan ki prensipal mete-l. 685 00:46:51,000 --> 00:46:54,000 Genyen yon an nan ki li pran pa gen okenn agiman, 686 00:46:54,000 --> 00:46:58,000 ak nou jis di anile nan ant parantèz yo, 687 00:46:58,000 --> 00:47:01,000 ak Lè sa a, gen nan yon sèl nan lòt kote nou vle pran m 'agiman liy lòd, 688 00:47:01,000 --> 00:47:08,000 epi kòm nou te wè, sa se kote ou gen int arg ak tout kòd etalaj argv 689 00:47:08,000 --> 00:47:13,000 oswa kounye a ke nou te aktyèlman ki ekspoze fisèl yo dwe a * Char ke li se 690 00:47:13,000 --> 00:47:20,000 nou pwal kòmanse ekri li kòm Char argv * ak Lè sa a, parantèz. 691 00:47:20,000 --> 00:47:22,000 Nan Set Pwoblèm 3, ou nèg te wè yon pakèt moun sou fonksyon, 692 00:47:22,000 --> 00:47:27,000 epi ou aplike yon pakèt moun sou fonksyon, trase, leve kanpe, goumen. 693 00:47:27,000 --> 00:47:31,000 Prototip yo te tout ekri la pou ou. 694 00:47:31,000 --> 00:47:33,000 >> Ki sa mwen vle pale de isit la ak fonksyon vrèman byen vit 695 00:47:33,000 --> 00:47:38,000 se ke gen 3 pati yo nenpòt lè ou ekri yon fonksyon. 696 00:47:38,000 --> 00:47:43,000 Ou gen presize kalite a retounen nan fonksyon an. 697 00:47:43,000 --> 00:47:46,000 Ou gen presize yon non pou fonksyon an, epi Lè sa a, ou gen presize 698 00:47:46,000 --> 00:47:51,000 agiman lis la oswa nan lis la paramèt. 699 00:47:51,000 --> 00:47:57,000 Pou egzanp, si m 'te ekri yon fonksyon a sòm moute yon pakèt moun sou nonm antye relatif 700 00:47:57,000 --> 00:48:03,000 ak Lè sa a, tounen vin jwenn mwen sòm total la sa ki ta kalite retou mwen 701 00:48:03,000 --> 00:48:06,000 si mwen te vle rapò kantite nonm antye relatif ak Lè sa a, retounen sòm la? 702 00:48:06,000 --> 00:48:12,000 Lè sa a, non an nan fonksyon an. 703 00:48:12,000 --> 00:48:27,000 Si m 'ale pi devan epi ekri nan vèt, nan pati sa a se tip lè li retounen. 704 00:48:27,000 --> 00:48:34,000 Nan pati sa a se non an. 705 00:48:34,000 --> 00:48:40,000 Lè sa a, nan ant parantèz 706 00:48:40,000 --> 00:48:46,000 se kote m 'ba agiman yo, 707 00:48:46,000 --> 00:48:56,000 souvan abreje kòm arg, pafwa yo rele parameters pou paramèt. 708 00:48:56,000 --> 00:49:00,000 Men, si ou gen youn, ou jis presize yon sèl la. 709 00:49:00,000 --> 00:49:06,000 Si ou gen plizyè ou separe chak youn ki gen yon vigil. 710 00:49:06,000 --> 00:49:13,000 Epi pou chak agiman ou ba li 2 bagay ki-Kevin? 711 00:49:13,000 --> 00:49:18,000 [Kevin] Ou gen bay kalite ak Lè sa a, non an. 712 00:49:18,000 --> 00:49:21,000 Lè sa a, non an, ak non an se non an ki w ap ale nan itilize 713 00:49:21,000 --> 00:49:25,000 pou fè referans a ki agiman ki nan fonksyon an sòm, 714 00:49:25,000 --> 00:49:27,000 nan fonksyon an ke w ap kounye a ekri. 715 00:49:27,000 --> 00:49:32,000 >> Ou pa gen an-pou egzanp, si mwen pral rapò kantite leve, 716 00:49:32,000 --> 00:49:41,000 di, yon etalaj de nonm antye relatif we'll-fè int etalaj, 717 00:49:41,000 --> 00:49:46,000 epi mwen pral bay tèt mwen kèk aparèy òtopedik Curly gen- 718 00:49:46,000 --> 00:49:51,000 Lè sa a, lè m 'pase yon etalaj fonksyon an sòm 719 00:49:51,000 --> 00:49:55,000 Mwen pase l 'nan pozisyon an premye nan lis la agiman. 720 00:49:55,000 --> 00:49:59,000 Men, etalaj la ke mwen pase nan pa bezwen gen ArR a non. 721 00:49:59,000 --> 00:50:07,000 ArR a pwal ki jan mwen gade nan ki agiman ki nan kò a nan fonksyon an. 722 00:50:07,000 --> 00:50:10,000 Bagay a lòt ke nou bezwen pran an kont, 723 00:50:10,000 --> 00:50:14,000 ak sa a se yon ti kras diferan de fonksyon, men mwen panse li nan yon pwen ki enpòtan yo, 724 00:50:14,000 --> 00:50:20,000 se sa yo nan C lè m ap ekri yon fonksyon tankou sa a 725 00:50:20,000 --> 00:50:29,000 Kouman pou mwen konnen ki jan anpil eleman yo nan sa a etalaj? 726 00:50:29,000 --> 00:50:31,000 Sa a se yon ti jan nan yon kesyon Trick. 727 00:50:31,000 --> 00:50:35,000 Nou te pale de sa a yon ti jan nan seksyon semèn pase a la. 728 00:50:35,000 --> 00:50:40,000 Kouman pou mwen konnen ki kantite eleman andedan yon etalaj nan C? 729 00:50:40,000 --> 00:50:44,000 Èske gen yon fason? 730 00:50:44,000 --> 00:50:49,000 >> Li sanble ke gen nan pa gen fason yo konnen. 731 00:50:49,000 --> 00:50:52,000 Ou gen yo pase l 'nan separeman. 732 00:50:52,000 --> 00:50:55,000 Gen yon Trick ke ou ka fè 733 00:50:55,000 --> 00:51:00,000 si w ap nan fonksyon an menm nan ki te etalaj la te deklare, 734 00:51:00,000 --> 00:51:04,000 epi ou ap travay ak yon etalaj chemine. 735 00:51:04,000 --> 00:51:06,000 Men, ke se sèlman travay si w ap nan fonksyon an menm. 736 00:51:06,000 --> 00:51:09,000 Yon fwa ou pase yon etalaj nan yon lòt fonksyon oswa si ou te deklare yon etalaj 737 00:51:09,000 --> 00:51:12,000 epi ou mete sa etalaj sou pil wòch la, ou te itilize malok 738 00:51:12,000 --> 00:51:15,000  ak ki kalite bagay, Lè sa a, tout parye yo la. 739 00:51:15,000 --> 00:51:18,000 Lè sa a, ou gen aktyèlman yo pase alantou 740 00:51:18,000 --> 00:51:21,000 yon agiman espesyal oswa paramèt yon lòt 741 00:51:21,000 --> 00:51:23,000 di ou ki jan gwo etalaj la se. 742 00:51:23,000 --> 00:51:28,000 Nan ka sa a, mwen ta vle sèvi ak yon vigil-I'm regrèt sa, li pral nan ekran an isit la- 743 00:51:28,000 --> 00:51:32,000 e mwen 'D pase nan yon lòt agiman 744 00:51:32,000 --> 00:51:40,000  ak rele li int Len pou longè a. 745 00:51:40,000 --> 00:51:44,000 >> Youn nan bagay ki ta ka moute vin sou egzamen an 746 00:51:44,000 --> 00:51:49,000 ap mande w ekri oswa aplike yon fonksyon patikilye ki rele yon bagay. 747 00:51:49,000 --> 00:51:54,000 Si nou pa ba ou pwototip a, se konsa bagay sa a tout antye isit la, 748 00:51:54,000 --> 00:51:58,000 sa a se dezòd antye rele deklarasyon an fonksyon oswa pwototip fonksyon an, 749 00:51:58,000 --> 00:52:01,000 sa a se youn nan bagay ki premye ke ou pral vle klou desann si li pa nan bay 750 00:52:01,000 --> 00:52:03,000 ou touswit sou egzamen an. 751 00:52:03,000 --> 00:52:06,000 Jwe fent la lòt mwen te aprann se ke 752 00:52:06,000 --> 00:52:11,000 di nou fè ba ou yon pwototip pou yon fonksyon, epi nou di, "Hey, ou te gen yo ekri li." 753 00:52:11,000 --> 00:52:16,000 Anndan aparèy òtopedik yo Curly ki di ou gen sou egzamen an 754 00:52:16,000 --> 00:52:20,000 si w remake ke gen se yon kalite retou yo e ou remake ke retou kalite a 755 00:52:20,000 --> 00:52:25,000 se yon lòt bagay pase anile, ki vle di ke fonksyon an pa retounen anyen, 756 00:52:25,000 --> 00:52:28,000 Lè sa a, yon sèl bagay ou definitivman vle fè se ekri 757 00:52:28,000 --> 00:52:33,000 kèk sòt de deklarasyon retounen nan fen la anpil nan fonksyon an. 758 00:52:33,000 --> 00:52:40,000 Tounen non, ak nan ka sa a, nou pral mete yon vid paske nou vle ranpli nan vid la. 759 00:52:40,000 --> 00:52:44,000 Men, sa a vin ou panse nan yon dwa chemen sou ki jan mwen pral pwoche bò kote pwoblèm sa a? 760 00:52:44,000 --> 00:52:49,000 Epi li fè w sonje w ap ale nan gen retounen yon valè 761 00:52:49,000 --> 00:52:51,000 moun kap rele a nan fonksyon an. 762 00:52:51,000 --> 00:52:54,000 >> Yeah. >> [Elèv] style aplike lè n ap ekri kòd sou egzamen an? 763 00:52:54,000 --> 00:52:58,000 Tankou mark ak ki kalite bagay? >> [Elèv] Yeah. 764 00:52:58,000 --> 00:53:00,000 Non, pa kòm anpil. 765 00:53:00,000 --> 00:53:09,000 Mwen panse ke yon anpil nan-sa a se yon bagay nou pral klarifye sou egzamen an nan jou a nan, 766 00:53:09,000 --> 00:53:15,000 men anjeneral mangonmen sou # genyen ladan ak ki kalite bagay, li nan kalite deyò. 767 00:53:15,000 --> 00:53:17,000 [Elèv] Èske ou bezwen fè kòmantè kòd ekri alamen ou a? 768 00:53:17,000 --> 00:53:19,000 Èske ou bezwen fè kòmantè kòd ekri alamen ou a? 769 00:53:19,000 --> 00:53:24,000 Kòmantè se toujou bon, si w ap enkyete w sou kredi yon pati nan 770 00:53:24,000 --> 00:53:29,000 oswa ou vle kominike entansyon ou a elèv klas la. 771 00:53:29,000 --> 00:53:33,000 Men mwen menm, ankò, yo pral klarifye sou egzamen an pwòp tèt li ak nan jou a egzamen, 772 00:53:33,000 --> 00:53:39,000 men mwen pa kwè ke ou pral oblije ekri kòmantè, pa gen okenn. 773 00:53:39,000 --> 00:53:42,000 Tipikman se pa sa, men li la definitivman sòt nan de bagay sa kote 774 00:53:42,000 --> 00:53:45,000 ou kapab kominike entansyon ou a, renmen "Hey, sa a se kote mwen pral avèk li." 775 00:53:45,000 --> 00:53:49,000 Epi pafwa ki ka ede ak kredi yon pati nan. 776 00:53:49,000 --> 00:53:51,000 Fre. 777 00:53:51,000 --> 00:53:53,000 >> Basil. 778 00:53:53,000 --> 00:53:56,000 [Basil] Ki sa ki nan diferans ki genyen ant deklare, di, int lang 779 00:53:56,000 --> 00:54:03,000 nan agiman yo oswa paramèt kont deklare yon varyab nan fonksyon an? 780 00:54:03,000 --> 00:54:05,000 Wow, kafe desann trachea la. 781 00:54:05,000 --> 00:54:07,000 [Basil] Tankou ki bagay sa yo nou vle mete nan agiman. 782 00:54:07,000 --> 00:54:09,000 Yeah, ki nan yon kesyon gwo. 783 00:54:09,000 --> 00:54:11,000 Ki jan ou chwazi pou ou ki sa bagay sa yo ou vle mete nan agiman yo 784 00:54:11,000 --> 00:54:17,000 kont sa ki bagay ou ta dwe fè andedan nan fonksyon an? 785 00:54:17,000 --> 00:54:24,000 Nan ka sa a nou tou de nan sa yo enkli kòm agiman 786 00:54:24,000 --> 00:54:29,000 paske yo ap yon bagay ki moun ki va ki pral sèvi avèk fonksyon an sòm 787 00:54:29,000 --> 00:54:32,000 bezwen presize bagay sa yo. 788 00:54:32,000 --> 00:54:35,000 >> Fonksyon an sòm, tankou nou te pale de, pa gen okenn jan pou konnen 789 00:54:35,000 --> 00:54:40,000 ki jan gwo etalaj la se li vin soti nan moun ki rele li yo oswa moun ki va la lè l sèvi avèk fonksyon an sòm. 790 00:54:40,000 --> 00:54:44,000 Li pa gen okenn fason pou konnen ki jan gwo ki etalaj se. 791 00:54:44,000 --> 00:54:48,000 Rezon ki fè nou pase nan sa a longè dwa isit la kòm yon agiman 792 00:54:48,000 --> 00:54:51,000 se paske sa se yon bagay ke nou ap fondamantalman di moun kap rele a nan fonksyon an, 793 00:54:51,000 --> 00:54:55,000 Nenpòt moun ki ki pral sèvi avèk fonksyon an sòm, "Hey, pa sèlman ou gen ba nou yon etalaj 794 00:54:55,000 --> 00:54:59,000 nan antye, nou menm tou nou oblije di nou ki jan gwo etalaj la ke ou te ban nou se. " 795 00:54:59,000 --> 00:55:03,000 [Basil] Moun sa yo ki pral tou de ka agiman liy komand yo ye? 796 00:55:03,000 --> 00:55:06,000 Non, sa yo, se agiman aktyèl ke ou ta pase fonksyon an. 797 00:55:06,000 --> 00:55:10,000 >> Kite m 'fè yon paj nouvo isit la. 798 00:55:10,000 --> 00:55:13,000 [Basil] Tankou non ta pase- 799 00:55:13,000 --> 00:55:24,000 [Nate H.] Si mwen gen int prensipal (san valè), 800 00:55:24,000 --> 00:55:27,000 ak mwen pral mete nan 0 retounen m 'desann isit la nan pati anba a, 801 00:55:27,000 --> 00:55:31,000 epi di mwen vle rele fonksyon an sòm. 802 00:55:31,000 --> 00:55:42,000 Mwen vle di Int x = sòm (); 803 00:55:42,000 --> 00:55:46,000 Pou itilize fonksyon an sòm mwen gen yo pase nan tou de etalaj la ki mwen vle rapò kantite moute 804 00:55:46,000 --> 00:55:51,000 ak longè a nan etalaj la, se konsa sa a se kote 805 00:55:51,000 --> 00:55:54,000 asepte mwen te gen yon seri antye, 806 00:55:54,000 --> 00:56:12,000 di mwen te gen int numbaz [] = 1, 2, 3, 807 00:56:12,000 --> 00:56:16,000 kalite itilizasyon ki te rache moute sentaks dwa la, 808 00:56:16,000 --> 00:56:21,000 Lè sa a, ki sa mwen ta fè se nan sòm Mwen ta vle pase nan 809 00:56:21,000 --> 00:56:27,000 tou de numbaz ak nimewo a 3 810 00:56:27,000 --> 00:56:30,000 di fonksyon an sòm "Oke, isit la nan etalaj la mwen vle nou rapò kantite." 811 00:56:30,000 --> 00:56:34,000 "Isit la nan gwosè li yo." 812 00:56:34,000 --> 00:56:39,000 ki fè sans? ki reponn kesyon ou an? 813 00:56:39,000 --> 00:56:42,000 >> Nan plizyè fason li fè sa paralèl sa n ap fè avèk prensipal 814 00:56:42,000 --> 00:56:44,000 lè nou gen agiman yo liy lòd. 815 00:56:44,000 --> 00:56:47,000 Yon pwogram tankou Seza tande kòz kalkile, pou egzanp, ki te bezwen 816 00:56:47,000 --> 00:56:53,000 agiman liy lòd pa ta kapab fè anyen. 817 00:56:53,000 --> 00:56:57,000 Li pa ta konnen ki jan yo ankripte si ou pa t 'janm di l' sa ki kle yo sèvi ak 818 00:56:57,000 --> 00:57:03,000 oswa si w pa t 'janm di l' sa fisèl ou te vle ankripte. 819 00:57:03,000 --> 00:57:08,000 Pouse pou D ', sa a se kote nou te gen 2 mekanism diferan 820 00:57:08,000 --> 00:57:14,000 pou pran opinyon nan soti nan itilizatè a yo, pou ki yo pran enfòmasyon ki nan soti nan itilizatè lan. 821 00:57:14,000 --> 00:57:19,000 Pou Pwoblèm Fikse 1 nou te wè sa a GetInt, GetString, GetFloat fason 822 00:57:19,000 --> 00:57:26,000 nan pouse pou D ', e ke yo rele lè l sèvi avèk kouran an opinyon estanda. 823 00:57:26,000 --> 00:57:28,000 Li nan yon ti kras diferan. 824 00:57:28,000 --> 00:57:31,000 Li nan yon bagay ke ou ka fè nan yon sèl fwa kòm opoze a 825 00:57:31,000 --> 00:57:35,000 lè ou envoke pwogram nan, lè ou kòmanse pwogram nan kouri. 826 00:57:35,000 --> 00:57:41,000 Agiman yo liy lòd tout yo espesifye lè ou kòmanse kouri pwogram lan. 827 00:57:41,000 --> 00:57:47,000 Nou te ap melanje de tout moun sa yo. 828 00:57:47,000 --> 00:57:52,000 Lè nou itilize agiman nan yon fonksyon, li nan anpil tankou agiman liy lòd li prensipal la. 829 00:57:52,000 --> 00:57:56,000 Se lè ou envoke fonksyon an ou bezwen di li 830 00:57:56,000 --> 00:58:05,000 ki sa egzakteman li bezwen yo nan lòd yo fè travay li yo. 831 00:58:05,000 --> 00:58:08,000 Yon lòt bon bagay fè yon gade nan-yo ak mwen pral kite ou gade nan li rezèv nan tan ou a, 832 00:58:08,000 --> 00:58:11,000 e li te kouvri nan egzamen an-sa te nosyon nan dimansyon 833 00:58:11,000 --> 00:58:15,000 ak varyab lokal kont varyab mondyal. 834 00:58:15,000 --> 00:58:18,000 Èske peye atansyon sou sa. 835 00:58:18,000 --> 00:58:23,000 >> Kounye a ke nou ap vin sou yo bagay sa a ak lòt, 836 00:58:23,000 --> 00:58:27,000 nan Semèn 3 nou te kòmanse pale sou chèche ak Fouye. 837 00:58:27,000 --> 00:58:32,000 Rechèch ak Fouye, omwen nan CS50, 838 00:58:32,000 --> 00:58:39,000 se anpil yon entwodiksyon nan kèk nan pati yo nan syans òdinatè plis teyorik. 839 00:58:39,000 --> 00:58:42,000 Pwoblèm lan nan rechèch, pwoblèm lan nan Fouye 840 00:58:42,000 --> 00:58:46,000 yo gwo, pwoblèm kanonyal. 841 00:58:46,000 --> 00:58:52,000 Ki jan ou fè jwenn yon nimewo an patikilye nan yon etalaj de dè milya de nonm antye relatif? 842 00:58:52,000 --> 00:58:55,000 Kouman pou w jwenn yon non patikilye andedan yon liv telefòn 843 00:58:55,000 --> 00:58:59,000 ki nan ki estoke sou laptop ou a? 844 00:58:59,000 --> 00:59:04,000 Se konsa, nou prezante sa a nosyon de fwa kouri asenptotik 845 00:59:04,000 --> 00:59:11,000 reyèlman quantifier konbyen tan, ki jan difisil sa yo pwoblèm yo, 846 00:59:11,000 --> 00:59:14,000 konbyen tan yo pran yo rezoud. 847 00:59:14,000 --> 00:59:20,000 Nan, mwen kwè, egzamen 2011 la gen yon pwoblèm ke mwen panse ke baz byenfonde 848 00:59:20,000 --> 00:59:27,000 ki kouvri trè vit, ki se yon sèl sa a, pwoblèm 12. 849 00:59:27,000 --> 00:59:32,000 O pa gen okenn, li nan Omega. 850 00:59:32,000 --> 00:59:41,000 >> Isit la nou ap pale tan an kouri pi rapid posib 851 00:59:41,000 --> 00:59:46,000 pou yon algorithm patikilye ak Lè sa a, tan an kouri plus posib. 852 00:59:46,000 --> 00:59:52,000 Sa a Omega ak O yo se reyèlman jis rakoursi. 853 00:59:52,000 --> 00:59:55,000 Yo ap rakoursi notation pou li di 854 00:59:55,000 --> 00:59:59,000 konbyen vit nan ka a pi byen posib pral kouri algorithm nou an, 855 00:59:59,000 --> 01:00:06,000 ak ki jan ralanti nan ka ki pi mal la posib pral algorithm nou an kouri? 856 01:00:06,000 --> 01:00:10,000 Se pou nou fè yon koup la sa yo, ak sa yo yo te tou kouvri 857 01:00:10,000 --> 01:00:13,000 nan kout la sou notasyon asenptotik, ki mwen trè rekòmande. 858 01:00:13,000 --> 01:00:17,000 Jackson te fè yon travay reyèlman bon. 859 01:00:17,000 --> 01:00:23,000 Avèk rechèch binè, nou pale sou rechèch binè tankou se te yon algorithm, 860 01:00:23,000 --> 01:00:28,000 epi dabitid nou pale osijè de sa an tèm de gwo O. li yo 861 01:00:28,000 --> 01:00:30,000 Ki sa ki O an gwo? 862 01:00:30,000 --> 01:00:34,000 Ki sa ki se tan a kouri plus posib pou rechèch binè? 863 01:00:34,000 --> 01:00:36,000 [Elèv] N ²? 864 01:00:36,000 --> 01:00:41,000 Fèmen, mwen devine menm jan ak sa. 865 01:00:41,000 --> 01:00:43,000 Li se yon anpil pi vit pase sa. 866 01:00:43,000 --> 01:00:45,000 [Elèv] binè? >> Yeah, binè rechèch. 867 01:00:45,000 --> 01:00:47,000 [Elèv] Li nan n log. 868 01:00:47,000 --> 01:00:49,000 Log n konsa, sa ki fè sa ki ale n vle di? 869 01:00:49,000 --> 01:00:51,000 Li mwatye li chak iterasyon. 870 01:00:51,000 --> 01:00:56,000 Egzakteman, se konsa nan ka a plus sa posib, 871 01:00:56,000 --> 01:01:00,000 di si ou gen yon etalaj Ranje 872 01:01:00,000 --> 01:01:08,000 nan yon milyon nonm antye relatif ak nimewo a ou ap chèche pou 873 01:01:08,000 --> 01:01:14,000 se swa eleman an trè premye nan etalaj la oswa eleman nan anpil dènye nan etalaj la. 874 01:01:14,000 --> 01:01:18,000 Sonje byen, algorithm nan rechèch binè travay pa gade nan eleman nan mitan, 875 01:01:18,000 --> 01:01:21,000 wè si sa a, se match la ke w ap chèche pou. 876 01:01:21,000 --> 01:01:23,000 Si li se, Lè sa a, gwo, ou te jwenn li. 877 01:01:23,000 --> 01:01:27,000 >> Nan ka a pi byen posib, ki jan vit fè kouri rechèch binè? 878 01:01:27,000 --> 01:01:29,000 [Elèv yo] 1. 879 01:01:29,000 --> 01:01:32,000 1, li lè konstan, gwo O nan 1. Yeah. 880 01:01:32,000 --> 01:01:36,000 [Elèv] Mwen gen yon kesyon. Lè ou di ouvri sesyon nan n, ou vle di ki gen rapò ak baz 2, dwa? 881 01:01:36,000 --> 01:01:40,000 Wi, se konsa sa a, se bagay la ak lòt. 882 01:01:40,000 --> 01:01:44,000 Nou di n boutèy demi lit, ak mwen devine lè m 'te nan lekòl segondè 883 01:01:44,000 --> 01:01:48,000 Mwen toujou sipoze ke log te baz 10. 884 01:01:48,000 --> 01:01:57,000 Yeah, se konsa wi, ale 2 baz tipikman se sa nou itilize. 885 01:01:57,000 --> 01:02:02,000 Yon fwa ankò, pral tounen nan rechèch binè, si w ap chèche pou swa 886 01:02:02,000 --> 01:02:05,000 eleman ki nan fen an trè oswa eleman ki nan kòmansman an trè, 887 01:02:05,000 --> 01:02:08,000 paske ou kòmanse nan mitan an ak Lè sa a, ou jete 888 01:02:08,000 --> 01:02:13,000 kèlkeswa sa ki mwatye pa satisfè kritè yo ke w ap chèche pou yo, 889 01:02:13,000 --> 01:02:15,000 epi ou ale nan mwatye nan pwochen ak mwatye nan pwochen ak mwatye kap vini an. 890 01:02:15,000 --> 01:02:19,000 Si mwen pou chèche eleman nan pi gwo nan etalaj la nonb antye relatif milyon dola 891 01:02:19,000 --> 01:02:25,000 Mwen pral halve li nan pifò boutèy demi lit plen 1 milyon fwa 892 01:02:25,000 --> 01:02:28,000 mwen anvan m 'finalman teste ak wè ke eleman nan mwen kap chèche 893 01:02:28,000 --> 01:02:33,000 se nan pi gwo a oswa nan endèks la pi wo nan etalaj la, 894 01:02:33,000 --> 01:02:38,000 ak ki pral pran boutèy demi lit plen n, ale nan 1 milyon fwa. 895 01:02:38,000 --> 01:02:40,000 >> Sòt jarèt. 896 01:02:40,000 --> 01:02:43,000 ou nèg sonje algorithm nan sòt jarèt? 897 01:02:43,000 --> 01:02:47,000 Kevin, ou ka ban m 'yon rapèl rapid sou sa ki pase nan algorithm nan sòt jarèt? 898 01:02:47,000 --> 01:02:50,000 [Kevin] Fondamantalman li ale nan tout bagay nan lis la. 899 01:02:50,000 --> 01:02:52,000 Li sanble nan de a an premye. 900 01:02:52,000 --> 01:02:55,000 Si youn nan premye se pi gwo pase yon sèl nan dezyèm li echanj yo. 901 01:02:55,000 --> 01:02:58,000 Lè sa a, li konpare dezyèm ak twazyèm, bagay menm, echanj, 902 01:02:58,000 --> 01:03:00,000 twazyèm ak katriyèm, tout wout la desann. 903 01:03:00,000 --> 01:03:03,000 Pi gwo nimewo pral swiv jiska fen an. 904 01:03:03,000 --> 01:03:07,000 Apre yo te fin pasan sepandan anpil w ap fè. 905 01:03:07,000 --> 01:03:11,000 Egzakteman konsa, sa ki Kevin di se ke nou pral gade pi gwo nimewo 906 01:03:11,000 --> 01:03:15,000 jarèt moute a nan fen etalaj la. 907 01:03:15,000 --> 01:03:19,000 Pou egzanp, ou lide mache nou nan egzanp sa a si sa a se etalaj nou an? 908 01:03:19,000 --> 01:03:21,000 [Kevin] Ou ap pran 2 ak 3. 909 01:03:21,000 --> 01:03:23,000 3 se pi gwo pase 2, kidonk, ou swap yo. 910 01:03:23,000 --> 01:03:29,000 [Nate H.] Dwa, konsa nou boukante sa yo, epi pou nou jwenn 2, 3, 6, 4, ak 9. 911 01:03:29,000 --> 01:03:31,000 [Kevin] Lè sa a, ou konpare 3 an ak 6. 912 01:03:31,000 --> 01:03:33,000 3 se pi piti pase 6, kidonk, ou kite yo, 913 01:03:33,000 --> 01:03:37,000 ak 6 ak 4, ou ta boukante yo paske 4 se ki pi piti pase 6. 914 01:03:37,000 --> 01:03:42,000 [Nate H.] Dwa, se konsa mwen jwenn 2, 3, 4, 6, 9. 915 01:03:42,000 --> 01:03:46,000 [Kevin] ak 9 se pi gwo pase 6, kidonk, ou kite l. 916 01:03:46,000 --> 01:03:48,000 Epi ou ta tounen nan l 'ankò. 917 01:03:48,000 --> 01:03:50,000 >> [Nate H.] Èske mwen fè nan pwen sa a? >> [Kevin] No 918 01:03:50,000 --> 01:03:52,000 Epi poukisa mwen pa fè nan pwen sa a? 919 01:03:52,000 --> 01:03:54,000 Paske li sanble se etalaj mwen Ranje. M ap gade li. 920 01:03:54,000 --> 01:03:57,000 [Kevin] Ale nan l 'ankò, epi fè sèten ke pa gen okenn plis echanj 921 01:03:57,000 --> 01:04:00,000 anvan ou kapab konplètman sispann. 922 01:04:00,000 --> 01:04:04,000 Egzakteman, kidonk, ou bezwen kenbe ale atravè tout, epi fè sèten ke pa gen okenn echanj 923 01:04:04,000 --> 01:04:06,000 ke ou ka fè nan pwen sa. 924 01:04:06,000 --> 01:04:08,000 Se te vrèman jis gen chans, tankou ou te di, ke nou te fini 925 01:04:08,000 --> 01:04:12,000 sèlman gen fè 1 pase nan e nou Ranje. 926 01:04:12,000 --> 01:04:16,000 Men, fè sa nan ka la, an jeneral nou pral gen aktyèlman fè sa sou yo ak sou ankò. 927 01:04:16,000 --> 01:04:20,000 Ak nan reyalite, sa a te yon egzanp sou ka a pi byen posib, 928 01:04:20,000 --> 01:04:24,000 tankou nou te wè nan pwoblèm nan. 929 01:04:24,000 --> 01:04:28,000 Nou te wè ki te ka a pi byen posib n. 930 01:04:28,000 --> 01:04:32,000 Nou te ale nan tan an etalaj 1. 931 01:04:32,000 --> 01:04:35,000 Sa ki ka ki pi mal la posib pou sa a algorithm? 932 01:04:35,000 --> 01:04:37,000 [Kevin] N ². 933 01:04:37,000 --> 01:04:41,000 Ak ki sa sa gade renmen? Ki sa ki ta yon gade etalaj tankou sa ta pran n tan ²? 934 01:04:41,000 --> 01:04:43,000 [Kevin] [fèbl] Ranje. 935 01:04:43,000 --> 01:04:51,000 Egzakteman, kidonk si mwen te gen etalaj la 9, 7, 6, 5, 2, 936 01:04:51,000 --> 01:04:54,000 premye 9 la ta jarèt tout wout la yo. 937 01:04:54,000 --> 01:04:59,000 Apre 1 iterasyon nou ta gen 7, 6, 5, 2, 9. 938 01:04:59,000 --> 01:05:07,000 Lè sa a, 7 nan ta jarèt moute, 6, 5, 2, 7, 9, ak sou sa ak pou fè. 939 01:05:07,000 --> 01:05:13,000 >> Nou ta gen yo ale nan etalaj nan tout n fwa, 940 01:05:13,000 --> 01:05:16,000 epi ou ka aktyèlman jwenn yon ti kras pi presi pase sa a 941 01:05:16,000 --> 01:05:23,000 paske yon fwa nou te deplase 9 tout wout la nan moute nan pozisyon dènye li yo posib 942 01:05:23,000 --> 01:05:26,000 nou konnen ke nou pa janm gen yo konpare kont ke eleman ankò. 943 01:05:26,000 --> 01:05:29,000 Yon fwa nou kòmanse ebulisyon 7 a moute 944 01:05:29,000 --> 01:05:35,000 nou konnen ke nou ka sispann yon fwa 7 a se dwa anvan 9 la 945 01:05:35,000 --> 01:05:37,000 depi nou te deja konpare 9 la ak li. 946 01:05:37,000 --> 01:05:46,000 Si ou fè sa nan yon fason entelijan li pa vrèman, mwen devine, tan sa a anpil. 947 01:05:46,000 --> 01:05:49,000 Ou pa ap ale nan konpare tout sa ki posib [fèbl] konbinezon yo 948 01:05:49,000 --> 01:05:55,000 chak fwa yon sèl ou ale nan chak iterasyon. 949 01:05:55,000 --> 01:05:59,000 Men, toujou, lè nou pale sou sa a mare anwo nou di 950 01:05:59,000 --> 01:06:04,000 w ap chèche a n ² konparezon tout wout la nan. 951 01:06:04,000 --> 01:06:12,000 >> Ann al lakay li, li depi nou ap kòmanse yo ka resevwa yon ti kras kout sou tan 952 01:06:12,000 --> 01:06:15,000 Mwen ta ka di ou ta dwe definitivman ale nan rès la nan tablo sa a, 953 01:06:15,000 --> 01:06:17,000 ranpli li tout soti. 954 01:06:17,000 --> 01:06:20,000 Panse a kèk egzanp. Panse a egzanp konkrè. 955 01:06:20,000 --> 01:06:22,000 Sa ki nan vrèman sou la men ak itil fè. 956 01:06:22,000 --> 01:06:25,000 Trase li deyò. 957 01:06:25,000 --> 01:06:28,000 Sa a se sòt nan nan tablo ki jan ou ale nan nan syans òdinatè 958 01:06:28,000 --> 01:06:32,000 ou ta dwe reyèlman kòmanse konnen sa yo kè pa. 959 01:06:32,000 --> 01:06:34,000 Sa yo se kalite ki nan kesyon ou jwenn nan entèvyou yo. 960 01:06:34,000 --> 01:06:36,000 Sa yo se kalite bagay sa yo ki bon yo konnen, 961 01:06:36,000 --> 01:06:41,000 epi reflechi sou ka sa yo, kwen, reyèlman lè n ap kalkile konnen kouman ou kapab panse osijè de 962 01:06:41,000 --> 01:06:45,000 konnen ke pou jarèt sòt etalaj ki pi mal la posib 963 01:06:45,000 --> 01:06:52,000 sòt ak ki se youn ki nan yo nan lòd ranvèse. 964 01:06:52,000 --> 01:06:58,000 >> Endikasyon. Se pou nou pale yon ti kras sou pwent. 965 01:06:58,000 --> 01:07:03,000 Nan minit ki sot pase yo nou gen isit la 966 01:07:03,000 --> 01:07:11,000 Mwen konnen sa a se yon bagay ansanm ak dosye mwen / O ki se pito nouvo. 967 01:07:11,000 --> 01:07:19,000 Lè nou pale sou pwent rezon ki fè yo nou vle pale sou pwent 968 01:07:19,000 --> 01:07:24,000 se paske, youn, lè nou ap travay nan C 969 01:07:24,000 --> 01:07:33,000 nou yo se reyèlman nan yon nivo san patipri ki ba konpare ak lang ki pi modèn nan pwogramasyon. 970 01:07:33,000 --> 01:07:38,000 Nou se aktyèlman kapab manipile varyab yo nan memwa, 971 01:07:38,000 --> 01:07:43,000 konnen ki kote yo ap aktyèlman chita nan RAM nou an. 972 01:07:43,000 --> 01:07:46,000 Yon fwa ou te pati al nan pran kou sistèm opere ou pral wè 973 01:07:46,000 --> 01:07:48,000 ki sa a, se, ankò, kalite yon abstraction. 974 01:07:48,000 --> 01:07:50,000 Sa se pa aktyèlman ka-a. 975 01:07:50,000 --> 01:07:52,000 Nou gen vityèl memwa ki nan kache sa yo detay nan men nou. 976 01:07:52,000 --> 01:07:58,000 >> Men, pou kounye a ou ka asime ke lè ou gen yon pwogram, 977 01:07:58,000 --> 01:08:02,000 pou egzanp, lè ou kòmanse ap kouri pwogram-Seza tande kòz kalkile ou 978 01:08:02,000 --> 01:08:06,000 Mwen pral chanje tounen nan iPad mwen vrèman byen vit- 979 01:08:06,000 --> 01:08:12,000 ki nan pwogram nan kòmanse trè ou, si ou gen, di, 980 01:08:12,000 --> 01:08:15,000 4 jigokte nan belye mouton sou konpitè pòtatif ou, 981 01:08:15,000 --> 01:08:21,000 ou jwenn mete sou kote sa a moso, epi nou ap rele sa a RAM. 982 01:08:21,000 --> 01:08:25,000 Epi li kòmanse nan yon kote nou pral rele 0, 983 01:08:25,000 --> 01:08:30,000 epi li fini nan yon kote ki nou pral rele 4 jigokte. 984 01:08:30,000 --> 01:08:37,000 Mwen vrèman pa ka ekri. Man, se sa ki te rache. 985 01:08:37,000 --> 01:08:40,000 Lè pwogram ou an ègzekutra 986 01:08:40,000 --> 01:08:44,000 sistèm nan fonksyone carves moute RAM, 987 01:08:44,000 --> 01:08:51,000 epi li espesifye diferan segments pou diferan pati nan pwogram ou an ap viv pous 988 01:08:51,000 --> 01:08:58,000 Desann isit la nan zòn sa a se kalite yon peyi pesonn pa t 'la. 989 01:08:58,000 --> 01:09:02,000 Lè ou ale moute yon ti kras pi lwen isit la 990 01:09:02,000 --> 01:09:05,000 ou te gen aktyèlman plas la kote 991 01:09:05,000 --> 01:09:09,000 kòd la pou lavi pwogram ou an. 992 01:09:09,000 --> 01:09:13,000 Sa kòd binè reyèl, ki dosye ègzèkutabl aktyèlman vin chaje nan memwa 993 01:09:13,000 --> 01:09:17,000 lè ou kouri nan yon pwogram, e li ap viv nan segman nan kòd. 994 01:09:17,000 --> 01:09:22,000 Ak pwogram ou an kòm ègzekutra processeur a parèt nan segman sa a kòd 995 01:09:22,000 --> 01:09:24,000 konnen sa ki se enstriksyon nan pwochen? 996 01:09:24,000 --> 01:09:27,000 Ki sa ki se liy nan pwochen nan kòd mwen bezwen egzekite? 997 01:09:27,000 --> 01:09:31,000 >> Genyen tou yon segman done, e sa se kote sa yo konstan fisèl 998 01:09:31,000 --> 01:09:34,000 jwenn ki estoke ke ou ve yo te lè l sèvi avèk. 999 01:09:34,000 --> 01:09:42,000 Lè sa a, pi lwen moute gen nan sa a kote yo rele pil wòch la. 1000 01:09:42,000 --> 01:09:46,000 Nou gen aksè memwa nan la lè l sèvi avèk malok, 1001 01:09:46,000 --> 01:09:49,000 ak Lè sa a, nan direksyon pou tèt la anpil nan pwogram ou an 1002 01:09:49,000 --> 01:09:52,000 gen nan chemine a, 1003 01:09:52,000 --> 01:09:57,000 ak sa a, se kote nou ve yo te jwe pou pi fò nan kòmansman an. 1004 01:09:57,000 --> 01:09:59,000 Sa a se pa sou yon echèl oswa anyen. 1005 01:09:59,000 --> 01:10:03,000 Yon anpil nan sa a se trè machin depandan, 1006 01:10:03,000 --> 01:10:10,000 fonksyònman sistèm depandan, men sa a se relativman ki jan bagay yo jwenn chunked yo. 1007 01:10:10,000 --> 01:10:17,000 Lè ou kouri nan yon pwogram, epi ou deklare yon varyab rele x- 1008 01:10:17,000 --> 01:10:27,000 Mwen pral trase yon lòt bwat desann anba a, ak sa a a pwal RAM kòm byen. 1009 01:10:27,000 --> 01:10:29,000 Apre sa, mwen pral gade. 1010 01:10:29,000 --> 01:10:34,000 Nou pral trase liy ak dan pou montre pou sa a se jis yon seksyon ti RAM 1011 01:10:34,000 --> 01:10:38,000 epi se pa tout nan li kòm nou trase nan tèt la. 1012 01:10:38,000 --> 01:10:43,000 >> Si m 'deklare yon varyab nonb antye relatif yo rele x, 1013 01:10:43,000 --> 01:10:49,000 Lè sa a, sa m 'aktyèlman jwenn se yon kat 1014 01:10:49,000 --> 01:10:54,000 ki se ki estoke nan tab la senbòl nan pwogram mwen an 1015 01:10:54,000 --> 01:11:00,000 ki konekte x la non pitit mwen an nan rejyon sa a nan memwa ke mwen te trase 1016 01:11:00,000 --> 01:11:03,000 dwa isit la ant ba ki vètikal. 1017 01:11:03,000 --> 01:11:08,000 Si mwen gen yon liy nan kòd nan pwogram mwen an ki di x = 7 1018 01:11:08,000 --> 01:11:15,000 processeur a konnen "O, oke, mwen konnen ke x lavi nan sa a kote nan memwa." 1019 01:11:15,000 --> 01:11:25,000 "Mwen pral ale pi devan epi ekri yon 7 la." 1020 01:11:25,000 --> 01:11:28,000 Ki jan li konnen ki sa ki kote sa a se nan memwa? 1021 01:11:28,000 --> 01:11:30,000 Oke, se te tout fè nan moman konpile. 1022 01:11:30,000 --> 01:11:34,000 Du a pran swen de allocation kote chak nan varyab yo ap pwal ale 1023 01:11:34,000 --> 01:11:40,000 epi kreye yon kat espesyal oswa olye konekte pwen yo 1024 01:11:40,000 --> 01:11:43,000 ant yon senbòl ak ki kote li pral, non yon varyab nan 1025 01:11:43,000 --> 01:11:46,000 ak ki kote li pral rete nan memwa. 1026 01:11:46,000 --> 01:11:50,000 Men, li vire soti ke nou ka aktyèlman jwenn aksè li nan pwogram nou kòm byen. 1027 01:11:50,000 --> 01:11:55,000 Sa a vin enpòtan lè nou kòmanse pale sou kèk nan estrikti yo done, 1028 01:11:55,000 --> 01:11:58,000 ki se yon konsèp ke nou ap ale nan entwodui pita sou. 1029 01:11:58,000 --> 01:12:09,000 >> Men, pou kounye a, ki sa ou kapab konnen sa sa mwen kapab kreye yon konsèy sa a kote, x. 1030 01:12:09,000 --> 01:12:12,000 Pou egzanp, mwen kapab kreye yon varyab konsèy. 1031 01:12:12,000 --> 01:12:16,000 Lè nou kreye yon varyab konsèy nou itilize notasyon nan zetwal. 1032 01:12:16,000 --> 01:12:21,000 Nan ka sa a, sa a di mwen pral kreye yon konsèy nan yon int. 1033 01:12:21,000 --> 01:12:24,000 Li se yon kalite jis tankou nenpòt ki lòt. 1034 01:12:24,000 --> 01:12:27,000 Nou bay li yon varyab tankou y, 1035 01:12:27,000 --> 01:12:32,000 ak Lè sa a, nou mete l 'egal a adrès la, nan yon adrès. 1036 01:12:32,000 --> 01:12:38,000 Nan ka sa a, nou ka mete y nan pwen x 1037 01:12:38,000 --> 01:12:43,000 lè yo pran adrès ki nan x, ki nou fè ak sa a Comercial, 1038 01:12:43,000 --> 01:12:55,000 ak Lè sa a, nou mete y nan pwen li. 1039 01:12:55,000 --> 01:12:59,000 Ki sa sa esansyèlman se si nou gade nan RAM nou 1040 01:12:59,000 --> 01:13:02,000 sa a kreye yon varyab ki apa a. 1041 01:13:02,000 --> 01:13:04,000 Li nan ale nan rele li y, 1042 01:13:04,000 --> 01:13:06,000 ak ki lè liy sa a nan kòd ègzekutra 1043 01:13:06,000 --> 01:13:13,000 li la aktyèlman ale nan kreye yon konsèy ti kras ki nou tipikman trase kòm yon flèch, 1044 01:13:13,000 --> 01:13:15,000 ak li kouche y nan pwen x. 1045 01:13:15,000 --> 01:13:17,000 Wi. 1046 01:13:17,000 --> 01:13:19,000 [Elèv] Si x se deja yon konsèy, ou ta jis fè 1047 01:13:19,000 --> 01:13:22,000 int * y = x olye pou yo gen comercial a? 1048 01:13:22,000 --> 01:13:24,000 Wi. 1049 01:13:24,000 --> 01:13:27,000 Si x se deja yon konsèy, lè sa a ou ka mete 2 endikasyon egal a chak lòt, 1050 01:13:27,000 --> 01:13:30,000 nan ka sa a y pa ta lonje dwèt sou x, 1051 01:13:30,000 --> 01:13:34,000 men li ta lonje dwèt sou tou sa x se lonje dwèt yo. 1052 01:13:34,000 --> 01:13:37,000 Malerezman, nou ap soti nan tan. 1053 01:13:37,000 --> 01:13:44,000 >> Ki sa ki mwen ta ka di nan pwen sa a, nou ka pale sou sa a offline, 1054 01:13:44,000 --> 01:13:49,000 Men, m 'ta di kòmanse travay nan pwoblèm sa a, # 14. 1055 01:13:49,000 --> 01:13:53,000 Ou ka wè gen nan deja yon ti jan plen nan pou ou isit la. 1056 01:13:53,000 --> 01:13:57,000 Ou ka wè ke lè nou deklare 2 endikasyon, int * x ak * y, 1057 01:13:57,000 --> 01:14:01,000 ak sonje ke lonje dwèt * nan pwochen varyab la te yon bagay ki te fè ane pase a. 1058 01:14:01,000 --> 01:14:05,000 Li sanble ke sa a se menm jan ak sa n ap fè ane sa a. 1059 01:14:05,000 --> 01:14:11,000 Li pa enpòtan ki kote ou ekri a * lè w ap deklare konsèy la. 1060 01:14:11,000 --> 01:14:17,000 Men, nou te ekri * nan pwochen kalite a 1061 01:14:17,000 --> 01:14:24,000 paske ki fè li trè klè ke w ap deklare yon varyab konsèy. 1062 01:14:24,000 --> 01:14:27,000 Ou ka wè deklare pwent yo 2 a ba nou 2 bwat. 1063 01:14:27,000 --> 01:14:31,000 Isit la, lè nou mete x egal a malok 1064 01:14:31,000 --> 01:14:34,000 ki sa sa a ap di se mete sou kote memwa nan pil wòch la. 1065 01:14:34,000 --> 01:14:41,000 Sa a se bwat ti kras dwa isit la, sa a sèk, ki chita sou pil la. 1066 01:14:41,000 --> 01:14:43,000 X la se lonje dwèt li. 1067 01:14:43,000 --> 01:14:46,000 Remake byen ke y ap toujou pa lonje dwèt anyen. 1068 01:14:46,000 --> 01:14:50,000 Pou jwenn memwa-nan magazen nimewo a 42 nan x 1069 01:14:50,000 --> 01:14:55,000 nou ta itilize sa notasyon? 1070 01:14:55,000 --> 01:14:59,000 [Elèv] * x = 42. 1071 01:14:59,000 --> 01:15:01,000 Egzakteman, * x = 42. 1072 01:15:01,000 --> 01:15:06,000 Sa vle di swiv flèch la, li voye jete 42 an la. 1073 01:15:06,000 --> 01:15:09,000 Isit la kote nou mete y ak x nou te lonje dwèt y x. 1074 01:15:09,000 --> 01:15:13,000 Yon fwa ankò, sa a se jis tankou sa ki Kevin di kote nou mete y egal a x. 1075 01:15:13,000 --> 01:15:15,000 Y se pa sa lonje dwèt x. 1076 01:15:15,000 --> 01:15:19,000 Olye de sa, li nan lonje dwèt nan sa x se lonje dwèt li a kòm byen. 1077 01:15:19,000 --> 01:15:24,000 >> Lè sa a, finalman nan bwat sa a dènye gen 2 bagay sa yo posib ke nou te ka fè. 1078 01:15:24,000 --> 01:15:28,000 Youn nan se nou te ka di * x = 13. 1079 01:15:28,000 --> 01:15:33,000 Bagay a lòt se nou te ka di-Alex, ou konnen ki sa nou ta ka fè isit la? 1080 01:15:33,000 --> 01:15:37,000 Ou kapab di * x = 13 oswa- 1081 01:15:37,000 --> 01:15:41,000 [Elèv] Ou kapab di Int kèlkeswa sa. 1082 01:15:41,000 --> 01:15:45,000 [Nate H.] Si sa a yo te refere yo kòm yon varyab int nou ka fè sa. 1083 01:15:45,000 --> 01:15:49,000 Nou te ka di tou * y = 13 paske yo te ap tou de montre nan plas la menm, 1084 01:15:49,000 --> 01:15:51,000 pou nou te kapab itilize swa varyab a rive. 1085 01:15:51,000 --> 01:15:56,000 Yeah. >> [Elèv] Ki sa ki ta li sanble si nou jis di x int se 13? 1086 01:15:56,000 --> 01:16:00,000 Ki ta ka deklare yon varyab nouvo rele x, ki pa t 'travay. 1087 01:16:00,000 --> 01:16:04,000 Nou ta gen yon kolizyon paske nou te deklare x yo dwe yon konsèy moute isit la. 1088 01:16:04,000 --> 01:16:10,000 [Elèv] Si nou jis te gen ki deklarasyon pou kont li sa ki ta li sanble an tèm de sèk la? 1089 01:16:10,000 --> 01:16:14,000 Si nou te gen x = 13 Lè sa a, nou ta gen yon bwat, ak olye ke gen yon flèch 1090 01:16:14,000 --> 01:16:16,000 vini soti nan bwat la nou ta trase li kòm jis 13 yon. 1091 01:16:16,000 --> 01:16:19,000 [Elèv] Nan bwat la. Oke. 1092 01:16:19,000 --> 01:16:24,000 >> Mèsi pou l ap gade, ak bon chans sou kwiz 0. 1093 01:16:24,000 --> 01:16:28,000 [CS50.TV]