1 00:00:00,000 --> 00:00:00,479 2 00:00:00,479 --> 00:00:10,830 >> [Glazba svira] 3 00:00:10,830 --> 00:00:12,080 [MUSIC - Rossinija, "RANZ DES VACHES "iz William Tell] 4 00:00:12,080 --> 00:00:24,222 5 00:00:24,222 --> 00:00:25,472 >> [MUSIC - ENGLISH BEAT, "OŽUJKA Pomoć okretne glave "] 6 00:00:25,472 --> 00:02:24,538 7 00:02:24,538 --> 00:02:31,510 >> [PLJESAK i pljeskati] 8 00:02:31,510 --> 00:02:33,520 >> DAVID Malan: Dakle, ovo je CS50. 9 00:02:33,520 --> 00:02:34,730 Moje ime je David Malan. 10 00:02:34,730 --> 00:02:39,250 I 73% od vas nemaju prethodnog iskustva uz računalne znanosti, 11 00:02:39,250 --> 00:02:41,300 suprotno onome što možda mislite. 12 00:02:41,300 --> 00:02:45,290 Dakle, danas smo mislili da bi čip daleko na toj nedostatka poznavanja, ali i 13 00:02:45,290 --> 00:02:48,970 daje vam osjećaj, za one od vas s više udobnosti, pravaca 14 00:02:48,970 --> 00:02:50,550 možete ići ovaj semestar. 15 00:02:50,550 --> 00:02:51,890 >> Dakle, krenimo s ovim. 16 00:02:51,890 --> 00:02:55,490 Ja stvarno nemam pojma što je unutra Računalo, iako, kao i ti, ja 17 00:02:55,490 --> 00:02:56,780 ga koristiti svaki dan. 18 00:02:56,780 --> 00:03:00,000 Ali to je nekakav okvir, a tu je mnogi ne ulazi u nju. 19 00:03:00,000 --> 00:03:01,350 Minimalno, tu je, što? 20 00:03:01,350 --> 00:03:03,120 Vjerojatno kabel za napajanje. 21 00:03:03,120 --> 00:03:06,640 >> I doista, s ovim jednog sastojka, električne energije, kao da se nalazimo u stanju 22 00:03:06,640 --> 00:03:09,490 radi vrlo malo ovih dana. 23 00:03:09,490 --> 00:03:12,130 Ali na kraju dana, mi moraju zastupati stvari 24 00:03:12,130 --> 00:03:12,860 da mi je stalo. 25 00:03:12,860 --> 00:03:15,240 Imamo informacije da predstavljaju u nekom obliku. 26 00:03:15,240 --> 00:03:18,365 I vjerojatno ste barem maglovito upoznati s idejom prema binarnom ili 27 00:03:18,365 --> 00:03:21,370 bitovi nekako, računala smanjena na jedinica i nula. 28 00:03:21,370 --> 00:03:26,320 No, možemo prihvatiti da se i najmanje staviti malo svjetla na to? 29 00:03:26,320 --> 00:03:28,880 >> Dakle, moram to malo stolna lampa ovdje. 30 00:03:28,880 --> 00:03:30,450 Imam utičnicu ovdje. 31 00:03:30,450 --> 00:03:33,930 I ja ću predložiti da se unutar moje računalo je barem jedan od 32 00:03:33,930 --> 00:03:37,300 te stvari, nešto sposobno da bude uključen ili isključen. 33 00:03:37,300 --> 00:03:40,200 U ovom slučaju, to je doista stolna svjetiljka, , ali na nižoj razini, što je nešto 34 00:03:40,200 --> 00:03:41,500 zove tranzistor. 35 00:03:41,500 --> 00:03:44,730 >> No, u našem svijetu, to je stolna svjetiljka, tako da Ja ću ići naprijed i uključite ovu 36 00:03:44,730 --> 00:03:47,990 u moju struju ovdje. 37 00:03:47,990 --> 00:03:52,970 A ja tvrdim da je koristeći ovaj jednostavan, Jednostavan uređaj, to jednostavno promjena, sam 38 00:03:52,970 --> 00:03:54,850 može predstavljati informacije. 39 00:03:54,850 --> 00:03:58,090 Na primjer, upravo sada, ja sam predstavlja ništa, zar ne? 40 00:03:58,090 --> 00:04:01,820 Ja predstavlja ono što ću nazvati 0 ili netočno, suprotno od nečega 41 00:04:01,820 --> 00:04:03,130 zapravo bio prisutan. 42 00:04:03,130 --> 00:04:07,050 Ali, ako sam jednostavno okrenuti taj argument, Sada sam predstavljao jedan. 43 00:04:07,050 --> 00:04:10,720 Dakle, pomoću ovog vrlo jednostavan komad memorije, ako hoćete, ja mogu predstavljati 44 00:04:10,720 --> 00:04:11,450 Informacije. 45 00:04:11,450 --> 00:04:14,350 >> Sada, nažalost, moje računalo Ne mogu učiniti sve što je puno. 46 00:04:14,350 --> 00:04:17,430 To samo može predstavljati dvije vrijednosti u cijelom svijetu - 47 00:04:17,430 --> 00:04:18,620 0 ili 1. 48 00:04:18,620 --> 00:04:21,839 No, ono što je očito rješenje, sada, ako želimo proširiti naše računalo ' 49 00:04:21,839 --> 00:04:25,120 memorije i predstavljaju više nego samo 0 i 1? 50 00:04:25,120 --> 00:04:27,060 >> Pa, neka je zgrabiti još jedan takav zalogaj. 51 00:04:27,060 --> 00:04:30,260 Idemo zgrabite drugi prekidač, još jedna tranzistora, kako god želite 52 00:04:30,260 --> 00:04:31,130 razmišljam o tome. 53 00:04:31,130 --> 00:04:34,170 Dopustite mi da ide naprijed i uključite ovu u moje računalo kao dobro. 54 00:04:34,170 --> 00:04:38,270 I ja ću tvrditi, sada, da pomoću malo više električne energije i 55 00:04:38,270 --> 00:04:42,290 više okreće od tih prekidača na i off, ja mogu predstavljati više kao 56 00:04:42,290 --> 00:04:43,020 Informacije. 57 00:04:43,020 --> 00:04:44,660 >> Pa sad, ovo je jedan. 58 00:04:44,660 --> 00:04:48,120 Ako želim sada predstavljaju 2, ja bih to mogao. 59 00:04:48,120 --> 00:04:51,510 Ali obično, konvencija, kao što ćemo na kraju vidjeti, morat ću to učiniti. 60 00:04:51,510 --> 00:04:55,260 Dakle, ovo je 0, to je 1. 61 00:04:55,260 --> 00:04:56,720 To će biti 2. 62 00:04:56,720 --> 00:04:59,920 I ne čudi, to bi bilo 3. 63 00:04:59,920 --> 00:05:02,610 >> Dakle, na ovaj način, ipak, mogu brojimo do još dalje? 64 00:05:02,610 --> 00:05:06,500 Ako sam dobiti treću malo, treća prekidača, ono što je najviše što mogu sada 65 00:05:06,500 --> 00:05:09,720 brojati do od 0? 66 00:05:09,720 --> 00:05:12,020 Dakle, 7 ako sam počinju na 0, zar ne? 67 00:05:12,020 --> 00:05:15,980 Jer ako sam pretvoriti ovo svjetlo i zapravo priključiti ova treća i konačna 68 00:05:15,980 --> 00:05:20,090 svjetlo u moju električnu utičnicu ovdje, onda imam sposobnost da predstavljaju 69 00:05:20,090 --> 00:05:24,930 bilo koja od dvije vrijednosti, ovdje dvije vrijednosti Ovdje, ovdje dvije vrijednosti - 70 00:05:24,930 --> 00:05:32,610 i tako ja mogu predstavljati dva puta 2 puta 2, ili osam moguće vrijednosti. 71 00:05:32,610 --> 00:05:36,340 A ako počnem računovodstvo na 0, pa da je 0, 1, 2, 3, 4, 5, 6, 7. 72 00:05:36,340 --> 00:05:37,480 >> Dakle, ovaj binarni. 73 00:05:37,480 --> 00:05:39,420 To je uistinu tako jednostavno. 74 00:05:39,420 --> 00:05:41,930 I ja bih tvrditi da je to zapravo prilično upoznat s najviše 75 00:05:41,930 --> 00:05:43,180 svi u ovoj sobi. 76 00:05:43,180 --> 00:05:45,710 Dopustite mi da ide naprijed i otvorite Malo tekst editor ovdje. 77 00:05:45,710 --> 00:05:49,040 >> A možda podsjetiti na osnovnoj školi da smo imali stvari kao što su stotine 78 00:05:49,040 --> 00:05:51,970 mjesto, deseci mjesta, i one place. 79 00:05:51,970 --> 00:05:55,040 I podsjetiti da, ako ste imali neke decimale broj, kao nešto slučajnom 80 00:05:55,040 --> 00:05:59,470 kao i 123, što bi u suštini pišu da se u obliku 81 00:05:59,470 --> 00:06:00,450 ove tri stupca. 82 00:06:00,450 --> 00:06:04,070 I zašto je 1, 2, 3 što znamo kao 123? 83 00:06:04,070 --> 00:06:11,220 Pa, u lijevom stupcu, imamo jedan 100 plus dva 10s, tako da je 120, 84 00:06:11,220 --> 00:06:14,250 plus tri 1S, tako da je 123. 85 00:06:14,250 --> 00:06:17,990 >> Sada ovaj svijet koji smo upravo osvijetljena je točno isti kao 86 00:06:17,990 --> 00:06:21,150 ste bili upoznati s godinama, Osim sada, naši kolumne 87 00:06:21,150 --> 00:06:22,060 nisu ovlasti 10.. 88 00:06:22,060 --> 00:06:23,780 To su samo dvije sile. 89 00:06:23,780 --> 00:06:27,830 Dakle, dok to one mjesto, taj će biti mjesto dvojke, ovo je 90 00:06:27,830 --> 00:06:29,540 će biti mjesto kormilara. 91 00:06:29,540 --> 00:06:33,260 >> I zato sam samo sam koristeći najjednostavniji mehanizama da se stvari 92 00:06:33,260 --> 00:06:37,100 na i off - struja teče ili struja ne teče - 93 00:06:37,100 --> 00:06:40,880 Ne sasvim su isti izražajan Raspon kao 0 kroz devet. 94 00:06:40,880 --> 00:06:43,270 Idemo da bi to super jednostavno u ovom svijetu računala. 95 00:06:43,270 --> 00:06:45,060 Ja imam samo 0 ili 1 - 96 00:06:45,060 --> 00:06:47,890 ili isključiti, lažna ili istinita. 97 00:06:47,890 --> 00:06:52,610 >> I tako ono što sam zastupa upravo sada je 1, 1, 1, jer je svaki od tih 98 00:06:52,610 --> 00:06:54,000 svjetla svijetli. 99 00:06:54,000 --> 00:06:59,600 Pa, to mi daje jednu četiri plus jedan dva, tako da to je 6, 1 plus jedan, a to je 7. 100 00:06:59,600 --> 00:07:03,450 I ergo se ovaj niz od tri bita predstavljaju broj 7. 101 00:07:03,450 --> 00:07:06,330 >> Dakle, sve ovo vrijeme, unutar vašeg Računalo, je bilo koji broj 102 00:07:06,330 --> 00:07:08,090 tranzistora, bilo koji broj bitova. 103 00:07:08,090 --> 00:07:10,380 Ali na kraju dana, mi može predstavljati informacije 104 00:07:10,380 --> 00:07:12,560 jednostavno kao da. 105 00:07:12,560 --> 00:07:16,770 Sada, nažalost, možemo samo sam broje do 7 u CS50 do sada, ali 106 00:07:16,770 --> 00:07:18,550 nadamo se da možemo napraviti malo bolje od toga. 107 00:07:18,550 --> 00:07:19,550 I doista možemo. 108 00:07:19,550 --> 00:07:23,570 >> Smatram da mi kao ljudi samo samovoljno odlučio da idemo 109 00:07:23,570 --> 00:07:28,750 povezati brojeve poput 1 i 2, 3, 4, 5, 6, 7, sa specifičnim slova 110 00:07:28,750 --> 00:07:29,410 abeceda. 111 00:07:29,410 --> 00:07:32,350 I to zbog povijesnih razloga, ja ću počnete nešto proizvoljno, ali ja sam 112 00:07:32,350 --> 00:07:36,880 će reći, ljudi, mi smo idući u odlučiti kao standard, na globalnoj razini, kako 113 00:07:36,880 --> 00:07:43,200 65 predstavlja broj slovo A. 66 predstavljat će B. točka, točkica, dot. 114 00:07:43,200 --> 00:07:45,140 90 će predstavljati slovo Z. 115 00:07:45,140 --> 00:07:48,000 >> I pretpostavimo, ako stvarno staviti neke Mislio u nju, mogli bismo doći do 116 00:07:48,000 --> 00:07:50,860 s brojevima za uskličnika i mala slova, i doista, 117 00:07:50,860 --> 00:07:52,710 drugi ljudi su učinili za nas. 118 00:07:52,710 --> 00:07:56,410 Dakle, sada smo imali bitova s ​​kojima možemo predstavljaju brojevi, brojevi s kojima 119 00:07:56,410 --> 00:08:00,130 možemo predstavljaju slova, te s slova možemo sada početi sastavljati 120 00:08:00,130 --> 00:08:02,650 e-mailove i tiskanje znakova na zaslonu. 121 00:08:02,650 --> 00:08:05,850 >> Pa neka mi pozivamo, ako sam mogao, Osam hrabrih volontera - 122 00:08:05,850 --> 00:08:09,200 koji ne smeta pojavljuju ne samo na kameru, ali na internetu - 123 00:08:09,200 --> 00:08:13,130 doći ovamo i predstavljaju osam takvih bita, umjesto ove tri. 124 00:08:13,130 --> 00:08:14,380 Dakle, o tome jedan, dva? 125 00:08:14,380 --> 00:08:16,290 Kako oko tri? 126 00:08:16,290 --> 00:08:20,230 Kako o četiri u svjetlu plava, pet na kraju? 127 00:08:20,230 --> 00:08:21,250 O nekim preko ovdje? 128 00:08:21,250 --> 00:08:25,320 Šest ispred, sedam u prednjem, i osam ispred, kao što je dobro. 129 00:08:25,320 --> 00:08:29,050 >> Tako sam samo tako se dogodilo da dođe pripremljena s cijelom gomilom gaćice od papira. 130 00:08:29,050 --> 00:08:34,150 I na tim komadima papira su brojevi koji predstavljaju ono kolumne 131 00:08:34,150 --> 00:08:35,809 ti dečki idu za zastupanje. 132 00:08:35,809 --> 00:08:36,740 Tako da će se - kako se ti zoveš? 133 00:08:36,740 --> 00:08:37,570 >> STUDENT: Anna Lea. 134 00:08:37,570 --> 00:08:40,370 >> DAVID Malan: Anna Lea, što će biti 128s stupac. 135 00:08:40,370 --> 00:08:41,059 Vi ste? 136 00:08:41,059 --> 00:08:41,510 >> STUDENT: Chris. 137 00:08:41,510 --> 00:08:43,620 >> DAVID Malan: Chris će biti 64S stupac. 138 00:08:43,620 --> 00:08:44,070 Vi ste? 139 00:08:44,070 --> 00:08:44,540 >> STUDENT: Dan. 140 00:08:44,540 --> 00:08:46,970 >> DAVID Malan: Dan će biti 32s stupac. 141 00:08:46,970 --> 00:08:47,470 >> STUDENT: Pramit. 142 00:08:47,470 --> 00:08:49,430 >> DAVID Malan: Pramit će biti 16s stupac. 143 00:08:49,430 --> 00:08:50,290 >> STUDENT: Lillian. 144 00:08:50,290 --> 00:08:51,904 >> DAVID Malan: Lillian će biti 8s. 145 00:08:51,904 --> 00:08:52,768 >> STUDENT: Jill. 146 00:08:52,768 --> 00:08:55,025 >> DAVID Malan: Jill će biti 4s stupac. 147 00:08:55,025 --> 00:08:55,400 >> STUDENT: Marija. 148 00:08:55,400 --> 00:08:57,000 >> DAVID Malan: Marija će biti 2s, a? 149 00:08:57,000 --> 00:08:57,470 >> STUDENT: David. 150 00:08:57,470 --> 00:08:59,220 >> DAVID Malan: David biti 1s stupac. 151 00:08:59,220 --> 00:09:02,030 Dakle, ako ti dečki mogli pojačati malo prema naprijed, tako da svatko može vidjeti. 152 00:09:02,030 --> 00:09:05,370 Ono što vi ne vidite da se na natrag od tih gaćice od papira je 153 00:09:05,370 --> 00:09:09,760 malo varati list koji je o tome da podučavati ovih osam bita bilo 154 00:09:09,760 --> 00:09:12,380 podići svoju ruku ili ne podići svoju ruku. 155 00:09:12,380 --> 00:09:14,100 Ako im ruka ide prema gore, oni su predstavlja jedan. 156 00:09:14,100 --> 00:09:17,120 Ako im ruka ostaje dolje, oni su što predstavlja 0. 157 00:09:17,120 --> 00:09:21,410 >> U međuvremenu, mi publika bi trebao biti u mogućnosti shvatiti, na temelju toga 158 00:09:21,410 --> 00:09:26,490 mapiranje, što je tri slova riječi tih ljudi su oko sricati. 159 00:09:26,490 --> 00:09:29,700 Tako je u samo trenutak, idete pročitajte prvu liniju s leđa 160 00:09:29,700 --> 00:09:32,880 Vaš cheat sheet, a vi ste ili ide za podizanje ili ne podizanje ruku. 161 00:09:32,880 --> 00:09:35,710 Ako ste jedan, te podići, ako je ti si 0, što stajati 162 00:09:35,710 --> 00:09:38,594 nezgodno, baš kao da je. 163 00:09:38,594 --> 00:09:40,386 Idi. 164 00:09:40,386 --> 00:09:43,945 Koji broj, prije svega, ovi momci predstavlja? 165 00:09:43,945 --> 00:09:47,140 166 00:09:47,140 --> 00:09:48,860 >> 66. 167 00:09:48,860 --> 00:09:49,560 66, zar ne? 168 00:09:49,560 --> 00:09:52,400 Imamo 1 u 64S stupcu 1 u 2s stupcu. 169 00:09:52,400 --> 00:09:56,340 To mi daje 66, tako da se pojavljuje da predstavlja B. Dakle 170 00:09:56,340 --> 00:09:57,075 ti dečki su napisane - 171 00:09:57,075 --> 00:09:58,300 OK, to je dovoljno. 172 00:09:58,300 --> 00:09:59,430 B. 173 00:09:59,430 --> 00:10:01,610 >> Pa sad idemo na Naš drugo pismo. 174 00:10:01,610 --> 00:10:03,530 Idi. 175 00:10:03,530 --> 00:10:06,860 Tko je najbrži u matematici ovdje? 176 00:10:06,860 --> 00:10:07,750 Tako 79. 177 00:10:07,750 --> 00:10:11,840 Opet, ako zbrojimo sve stupce u kojem postoji 1, trenutno, samo 178 00:10:11,840 --> 00:10:14,840 kao što smo učinili prije sa najjednostavniji primjera 7, mi sada 179 00:10:14,840 --> 00:10:16,140 dobiti broj 79. 180 00:10:16,140 --> 00:10:19,910 Koji se prema našim mapiranje je Pismo O. Tako smo stigli. 181 00:10:19,910 --> 00:10:22,590 B, O. I na kraju, idite. 182 00:10:22,590 --> 00:10:26,420 183 00:10:26,420 --> 00:10:30,120 >> Što su oni danas predstavlja? 184 00:10:30,120 --> 00:10:31,370 Manje konsenzus. 185 00:10:31,370 --> 00:10:34,660 186 00:10:34,660 --> 00:10:36,460 To je samo apsolutna žamor. 187 00:10:36,460 --> 00:10:40,090 Da, to je u stvari 87. 188 00:10:40,090 --> 00:10:40,490 Dobro. 189 00:10:40,490 --> 00:10:44,480 >> Dakle, ako mi sada map to natrag do - hajdemo početi zvati našu ASCII tablicu, 190 00:10:44,480 --> 00:10:46,450 American Standard Code za Razmjena informacija. 191 00:10:46,450 --> 00:10:47,700 To nam daje pismo - 192 00:10:47,700 --> 00:10:51,260 193 00:10:51,260 --> 00:10:54,810 Ne "bo", ali "leptir". I to je savršena znak za vas dvoje uzeti luk 194 00:10:54,810 --> 00:10:56,100 i glavu na leđima. 195 00:10:56,100 --> 00:10:56,980 Puno hvala. 196 00:10:56,980 --> 00:10:57,886 >> [PLJESAK] 197 00:10:57,886 --> 00:10:59,136 >> DAVID Malan: Možete ih zadržati. 198 00:10:59,136 --> 00:11:01,850 199 00:11:01,850 --> 00:11:05,942 Iako zapravo, bi li itko kao stolnu lampu, također? 200 00:11:05,942 --> 00:11:07,300 >> [Trubljenje iz gledališta] 201 00:11:07,300 --> 00:11:08,390 >> DAVID Malan: dnevno svjetlo? 202 00:11:08,390 --> 00:11:10,850 >> [Smijeh] 203 00:11:10,850 --> 00:11:11,860 >> DAVID Malan: Stvarno? 204 00:11:11,860 --> 00:11:13,230 Desk svjetiljke za svakoga? 205 00:11:13,230 --> 00:11:14,310 U redu. 206 00:11:14,310 --> 00:11:20,990 Dakle, počevši s vrlo najjednostavnije Načela, sada smo ne samo broje 207 00:11:20,990 --> 00:11:24,750 gore od 0 pa sve do 7, mi smo Pretpostavlja se da je upravo bacajući više 208 00:11:24,750 --> 00:11:28,080 bita ili više svjetla ili više tranzistori na ovaj problem, možemo 209 00:11:28,080 --> 00:11:32,680 predstavljaju veći i veći broj, i Ergo, veći i veći rasponi 210 00:11:32,680 --> 00:11:33,780 pisma, kao što su engleski. 211 00:11:33,780 --> 00:11:37,770 I samo neka je uzme na vjeri za danas koji slično mogli bismo početi 212 00:11:37,770 --> 00:11:42,220 predstavlja grafike i video zapisa i bilo broj drugih medija s kojima smo si 213 00:11:42,220 --> 00:11:43,610 upoznati danas. 214 00:11:43,610 --> 00:11:49,240 >> Dakle, ovo je CS50, au ovoj klasi uz tebe su, opet, vrlo mnogo 215 00:11:49,240 --> 00:11:53,050 kolege koji imaju što manje iskustvo kao i vi. 216 00:11:53,050 --> 00:11:57,730 A ja spominjem to samo zato sasvim Često, uključujući i nedavno kao jedan od 217 00:11:57,730 --> 00:12:01,860 Brucoš savjetovanje događaje i na Prošlog proljeća je student savjetovanje 218 00:12:01,860 --> 00:12:06,420 događaja, često čujemo studenata odriču kada dolazi do CS stola, pa, 219 00:12:06,420 --> 00:12:10,070 Razmišljao sam o preuzimanju ove intro klase, ali ja sam stvarno ne 220 00:12:10,070 --> 00:12:11,120 Računalo osoba. 221 00:12:11,120 --> 00:12:13,220 Ili, ali svatko zasigurno zna više od mene. 222 00:12:13,220 --> 00:12:17,340 I ja sam ovo staviti u najvećem font moguće, prenijeti tu poruku da je 223 00:12:17,340 --> 00:12:18,730 to je u stvari nije slučaj. 224 00:12:18,730 --> 00:12:21,100 >> A ako se pitate, trebali Ja, u stvari, biti ovdje? 225 00:12:21,100 --> 00:12:25,950 Shvatite da ne samo da je ovaj tečaj je Naslov Uvod u računala 226 00:12:25,950 --> 00:12:31,740 Znanost, to je Uvod u računala Znanost I. Tako je doista 227 00:12:31,740 --> 00:12:33,170 Drugi takav uvod. 228 00:12:33,170 --> 00:12:35,390 Dakle, ti nisi, u stvari, na krivom mjestu. 229 00:12:35,390 --> 00:12:39,000 A među ciljevima koje imam za danas su umiriti takvim slučajevima vas 230 00:12:39,000 --> 00:12:42,430 Možda ima, ali i da se bojite slika onoga što je u spremištu za 231 00:12:42,430 --> 00:12:45,720 učenika manje i ugodnije podjednako na ovom tečaju. 232 00:12:45,720 --> 00:12:49,320 >> Ali prvo, riječi na jednoj od brošure imate danas, među kojima 233 00:12:49,320 --> 00:12:50,780 niz Pitanja. 234 00:12:50,780 --> 00:12:54,290 Prošlo je naša vizija za neko vrijeme Sada uvesti novu ocjenjivanja 235 00:12:54,290 --> 00:12:57,010 opciju u ovaj tečaj - Naime, SAT / UNSAT. 236 00:12:57,010 --> 00:13:01,930 Filozofski za mene, to je mnogo, mnogo, Mnogo je važnije što 237 00:13:01,930 --> 00:13:05,050 učenika u ovom razredu baviti sa Materijal, biti izazvan 238 00:13:05,050 --> 00:13:09,800 Materijal i brige daleko, daleko manje o mehanika stvarnih rezultata 239 00:13:09,800 --> 00:13:12,590 i pismo razreda na semestar end, ali doista zagrljaju 240 00:13:12,590 --> 00:13:13,970 Tečaj i njegov materijal. 241 00:13:13,970 --> 00:13:18,140 I doista to osjeća, općenitije, za ono što je interesantno za njih, kako bi 242 00:13:18,140 --> 00:13:21,390 osjećaju izazvan i nagrađeni, ali bez straha od neuspjeha. 243 00:13:21,390 --> 00:13:25,030 >> I doista, ovo je također ponavlja Tema u ovom i drugim uvodna 244 00:13:25,030 --> 00:13:28,680 tečajevi u drugim područjima, da imaju ovaj strah kada je u pitanju 245 00:13:28,680 --> 00:13:31,040 stavljajući nečije prste u nepoznate vode. 246 00:13:31,040 --> 00:13:34,880 Ja osobno, natrag u 1995, bio brucoš. 247 00:13:34,880 --> 00:13:37,990 Bio sam jako usmjerena na bitak Gov Koncentrator ovdje. 248 00:13:37,990 --> 00:13:41,060 I još uvijek sam odrastao uz malo od interesa za računalne znanosti. 249 00:13:41,060 --> 00:13:42,180 Uvijek sam bio znatiželjan. 250 00:13:42,180 --> 00:13:47,610 >> Ali tada, čak sam imao taj strah od čak koračni nogom u CS50, toliko 251 00:13:47,610 --> 00:13:49,420 , tako da nisam ni dućan je prve godine. 252 00:13:49,420 --> 00:13:53,460 I jedini razlog zašto sam stavio nogu u Vrata student druge godine, jer sam bio 253 00:13:53,460 --> 00:13:55,340 je dopušteno da se to prođe / ne. 254 00:13:55,340 --> 00:13:58,920 No, čak i prolazi / ne zahtijeva da ću dobiti do živca da bi imenovanje 255 00:13:58,920 --> 00:14:01,970 s profesorom Kernehan u to vrijeme, donijeti ovaj veliki list papira, i pitati 256 00:14:01,970 --> 00:14:04,470 ga je za njegov potpis i njegovi Dopuštenje za istraživanje 257 00:14:04,470 --> 00:14:05,700 ove nepoznate vode. 258 00:14:05,700 --> 00:14:09,030 >> I to nije pomoglo u posljednjih nekoliko godina da kad to rade i na CS50, kada smo 259 00:14:09,030 --> 00:14:12,500 Nekada je to bilo pass / fail, slično bi se desetke ili stotine svojih kolega 260 00:14:12,500 --> 00:14:15,970 moraju se, ne daj Bože, na Pročelje Sanders s ovom obliku, da 261 00:14:15,970 --> 00:14:19,520 u nekim glavama predstavlja nesposobnost, Usudio bih se reći, za obavljanje 262 00:14:19,520 --> 00:14:20,800 su svoje vršnjake 'razini. 263 00:14:20,800 --> 00:14:23,410 Što je smiješno, ali ja to mislim Tu je to mentalitet. 264 00:14:23,410 --> 00:14:27,210 I nikada nije bilo u ovoj kulturi od SAT / UNSAT, ili prolaze / ne više 265 00:14:27,210 --> 00:14:30,610 Općenito, na ovom tečaju, ili stvarno na ovom sveučilištu. 266 00:14:30,610 --> 00:14:32,310 >> Tako smo ove godine promijenio. 267 00:14:32,310 --> 00:14:35,630 Ja bih bio presretan polovica ova klasa ili više završila 268 00:14:35,630 --> 00:14:38,700 uzimanje CS50 SAT / UNSAT. 269 00:14:38,700 --> 00:14:42,130 U godinu dana, to bi bilo divno Ako su gotovo svi. 270 00:14:42,130 --> 00:14:44,410 Nakon toga vjerojatno ćemo raditi Na pismo ocjenama na Harvardu 271 00:14:44,410 --> 00:14:45,480 College općenito. 272 00:14:45,480 --> 00:14:48,900 Ali za sada, mi ćemo to učiniti u roku od naših vlastitu sferu, i ja bih od srca 273 00:14:48,900 --> 00:14:53,400 Preporučujemo vam da pregledate i one često postavljana pitanja postavljati pitanja kao što vidite stane, tako da je 274 00:14:53,400 --> 00:14:58,000 nadamo se, za razliku od mene, neće sasvim imaju isti strah faktor kada 275 00:14:58,000 --> 00:15:01,040 istraživati ​​što je vjerojatno nepoznato mjesto. 276 00:15:01,040 --> 00:15:02,786 >> Dakle, ono što je CS50? 277 00:15:02,786 --> 00:15:06,150 To je uvod u intelektualne poduzeća računala 278 00:15:06,150 --> 00:15:07,700 znanost i umjetnost programiranja. 279 00:15:07,700 --> 00:15:08,770 No, što to zapravo znači? 280 00:15:08,770 --> 00:15:12,510 >> Pa, do sada, razgovarali smo ukratko podatke o zastupanju. 281 00:15:12,510 --> 00:15:15,070 No, pretpostavimo da smo zapravo žele nešto učiniti s njom. 282 00:15:15,070 --> 00:15:17,890 Mi moramo uvesti pojam ono što ćemo nazvati algoritam. 283 00:15:17,890 --> 00:15:21,540 Algoritam je postupak, proces, Skup uputa za 284 00:15:21,540 --> 00:15:22,780 radiš nešto. 285 00:15:22,780 --> 00:15:25,620 >> I algoritam može biti nešto super jednostavna. 286 00:15:25,620 --> 00:15:28,660 Na primjer, primjer s kojim neka od vas bi moglo biti poznato je li to 287 00:15:28,660 --> 00:15:29,350 stvar ovdje. 288 00:15:29,350 --> 00:15:32,510 Tako ova knjiga ovdje je sve curom, ali jednom davno, to 289 00:15:32,510 --> 00:15:34,720 sadržavao puno imena i telefonski brojevi. 290 00:15:34,720 --> 00:15:37,710 I doista, ako sam htio pronaći netko u tom telefonskom imeniku - 291 00:15:37,710 --> 00:15:39,800 recimo, netko po imenu Mike Smith - 292 00:15:39,800 --> 00:15:43,810 Sam mogao naći Mike Smith u svakom broju razmjerno jednostavnim načine. 293 00:15:43,810 --> 00:15:47,700 Mogao bih početi na početku i premjestiti na stranicu 1, ne postoji. 294 00:15:47,700 --> 00:15:49,240 Stranica 2, ne postoji. 295 00:15:49,240 --> 00:15:49,960 Page 3. 296 00:15:49,960 --> 00:15:53,430 Je li to algoritam, koji je proces, točno? 297 00:15:53,430 --> 00:15:54,620 >> Dakle, to je točno, zar ne? 298 00:15:54,620 --> 00:15:58,070 Nekako sam idiot za to u koji način, ali s vremenom ću 299 00:15:58,070 --> 00:16:02,670 pronaći prezime S, i nadamo se Mike je u tom dijelu, i ja ću postati 300 00:16:02,670 --> 00:16:04,100 učinio s mojim algoritma. 301 00:16:04,100 --> 00:16:05,440 No, sigurno to nije intuitivno. 302 00:16:05,440 --> 00:16:08,020 Većina svaki razuman čovjek u ovom boravak ne bi učinili. 303 00:16:08,020 --> 00:16:10,180 Što biste vi učinili? 304 00:16:10,180 --> 00:16:11,480 >> Ti bi otišao ravno na sredini, zar ne? 305 00:16:11,480 --> 00:16:12,000 Otprilike na sredini. 306 00:16:12,000 --> 00:16:16,310 I shvatite, oh, to su gđa Dakle, Mike Smith, prezime kao Smith, 307 00:16:16,310 --> 00:16:19,050 Nije, jasno, a zatim u lijeva polovica knjige. 308 00:16:19,050 --> 00:16:21,040 On mora biti prema S je u pravu. 309 00:16:21,040 --> 00:16:24,090 I u ovom trenutku, iako je većina od nas nemojte to učiniti u stvarnosti, možemo 310 00:16:24,090 --> 00:16:27,125 doslovno suzu ovaj problem na pola. 311 00:16:27,125 --> 00:16:27,640 >> [Navijanje i PLJESAK] 312 00:16:27,640 --> 00:16:28,950 >> DAVID Malan: Hvala vam. 313 00:16:28,950 --> 00:16:30,150 >> [Navijanje i PLJESAK] 314 00:16:30,150 --> 00:16:34,660 >> DAVID Malan: Vi doslovno možete istrgnuti ovo Problem je u polovici, ostavljajući me s, 315 00:16:34,660 --> 00:16:36,120 doslovno, problem upola velika. 316 00:16:36,120 --> 00:16:39,750 Dakle, ako ovaj telefon je knjiga - i to Vjerojatno je - oko 1000 stranica, sada 317 00:16:39,750 --> 00:16:40,840 to je samo 500. 318 00:16:40,840 --> 00:16:44,710 Ako sam to učiniti opet i shvaćam, oh, damn, otišao sam predaleko, ja sam u Ts 319 00:16:44,710 --> 00:16:46,480 odjeljku, ja mogu na sličan način - 320 00:16:46,480 --> 00:16:48,030 figurativno ili doslovno - 321 00:16:48,030 --> 00:16:50,260 RIP telefonskog imenika - to je zapravo puno lakše to vrijeme. 322 00:16:50,260 --> 00:16:53,610 Ja doslovno može potegnuti iz telefonskog imenika na pola, ostavljajući me sada s 323 00:16:53,610 --> 00:16:55,186 Ne 1000, ne 500 - 324 00:16:55,186 --> 00:16:56,680 250 stranica. 325 00:16:56,680 --> 00:17:00,210 I ja mogu ići 125, a pola od toga, a upola manji, a polovica da 326 00:17:00,210 --> 00:17:04,760 dok konačno ću biti s lijeve samo jednu stranicu. 327 00:17:04,760 --> 00:17:06,430 >> [Smijeh] 328 00:17:06,430 --> 00:17:07,589 >> DAVID Malan: To je Dio sam uspjeti dalje. 329 00:17:07,589 --> 00:17:10,400 Jedan jednu stranicu na kojoj Mike nadamo se. 330 00:17:10,400 --> 00:17:14,630 Sada su ti različiti algoritmi mogu biti vrsta procjenjuju ili ocjenjuju u 331 00:17:14,630 --> 00:17:15,270 različita načina. 332 00:17:15,270 --> 00:17:17,300 Prvi je bio vrlo linearno, zar ne? 333 00:17:17,300 --> 00:17:18,500 Okrenite stranicu, potražite Mike. 334 00:17:18,500 --> 00:17:19,630 Okrenite stranicu, potražite Mike. 335 00:17:19,630 --> 00:17:20,560 To je vrlo linearno. 336 00:17:20,560 --> 00:17:23,339 Ako postoji još jedna stranica na telefonu Knjiga, to je vjerojatno da će me odvesti 337 00:17:23,339 --> 00:17:27,380 još jedan drugi, još jedna jedinica vremena, Međutim, mi smo računanje vremena. 338 00:17:27,380 --> 00:17:32,470 >> Tako sam mogao privući ovako ovu liniju ovog mjesta, pri čemu kao veličina 339 00:17:32,470 --> 00:17:34,700 Problem povećava s lijeva na desno - 340 00:17:34,700 --> 00:17:37,480 telefonski imenik dobiva manji za veći - 341 00:17:37,480 --> 00:17:41,080 i time će se povećati na vertikalne osi, veća 342 00:17:41,080 --> 00:17:42,030 telefonski imenik je. 343 00:17:42,030 --> 00:17:46,180 Dakle, n je samo opći varijabla koja računalni znanstvenici koriste za zastupanje 344 00:17:46,180 --> 00:17:48,210 neke vrijednosti, neki broj. 345 00:17:48,210 --> 00:17:50,740 Dakle, n ide na povećanje linearno. 346 00:17:50,740 --> 00:17:53,040 Dvaput veličinu telefonskom imeniku, to je da će me odvesti dvostruko više 347 00:17:53,040 --> 00:17:54,780 Vrijeme, najvjerojatnije, naći Mikea. 348 00:17:54,780 --> 00:17:56,390 >> Sada sam mogao biti pametna o tome, zar ne? 349 00:17:56,390 --> 00:17:57,800 Sam bio uzimajući dosadno brzo. 350 00:17:57,800 --> 00:17:58,910 Mogao sam to učinio po paru. 351 00:17:58,910 --> 00:18:01,870 Dakle, dvije stranice, a zatim četiri, zatim šest, od osam. 352 00:18:01,870 --> 00:18:05,220 A mogao sam početi letjeti kroz nju je malo brže, iako manjeg rizika 353 00:18:05,220 --> 00:18:09,210 Mike promašaja, ali to nije kriva će biti sve što je drugačije. 354 00:18:09,210 --> 00:18:12,550 Još uvijek će biti ravna linije, ali malo brže. 355 00:18:12,550 --> 00:18:13,710 >> No, što sam učinio? 356 00:18:13,710 --> 00:18:15,845 Ja sam zapravo učinio nešto bitno bolje. 357 00:18:15,845 --> 00:18:21,990 Postigao sam ono što ćemo nazvati logaritamska Vrijeme, log n, pri čemu se ovaj zeleni 358 00:18:21,990 --> 00:18:27,730 linija ima puno, puno, puno manje ravnalo na njega. 359 00:18:27,730 --> 00:18:33,050 A umjesto toga, on predlaže, kao što je svojevrsni približava beskonačnosti sve to postupno, 360 00:18:33,050 --> 00:18:36,700 da sam zapravo mogao uzeti 1.000 stranica telefonski imenik, udvostručiti svoju veličinu 361 00:18:36,700 --> 00:18:39,610 sljedeće godine - jer pretpostavljam puno više ljudi presele u grad. 362 00:18:39,610 --> 00:18:43,250 >> Tako sada sam dobio 2000 stranica, ali kako mnogo više koraka je da je pametnije 363 00:18:43,250 --> 00:18:45,200 Algoritam će to trajati? 364 00:18:45,200 --> 00:18:46,060 Samo je jedan. 365 00:18:46,060 --> 00:18:48,060 Mislim, to je moćna stvar. 366 00:18:48,060 --> 00:18:51,400 Ako idemo na 4.000 stranica iduće godine, koji će me odvesti 367 00:18:51,400 --> 00:18:53,020 samo još dva koraka. 368 00:18:53,020 --> 00:18:56,500 Tako možete baciti veći i veći Problemi na mene, a ne za razliku webu 369 00:18:56,500 --> 00:18:59,560 bacanje veći i veći problem svaki dan u googles i Facebooks od 370 00:18:59,560 --> 00:19:01,590 svijet, i to ne tako velika stvar. 371 00:19:01,590 --> 00:19:05,840 Zato sam stavio više misli i brige u moj algoritam kojim se rješavaju 372 00:19:05,840 --> 00:19:07,020 problemi učinkovito. 373 00:19:07,020 --> 00:19:09,260 >> I doista, to će biti jedan od ciljevi ovog kolegija. 374 00:19:09,260 --> 00:19:11,230 Vi ćete, usput, naučiti programirati. 375 00:19:11,230 --> 00:19:13,360 Vi ćete naučiti kako programirati u bilo koji broj jezika. 376 00:19:13,360 --> 00:19:16,670 Ali na kraju dana, staza je o rješavanju problema i dobivanje 377 00:19:16,670 --> 00:19:20,490 bolji u rješavanju problema - i, kao u ovakvim slučajevima, rješavanje problema 378 00:19:20,490 --> 00:19:22,030 učinkovitije. 379 00:19:22,030 --> 00:19:23,990 >> Sada do sada, mi smo to učinili prilično intuitivno. 380 00:19:23,990 --> 00:19:27,420 Ajmo uvesti nešto istinito generički zove pseudocode. 381 00:19:27,420 --> 00:19:29,150 Tako smo na kraju ćete doći, u ovom naravno, da 382 00:19:29,150 --> 00:19:30,570 različiti programski jezici. 383 00:19:30,570 --> 00:19:34,280 Ali danas mi ćemo to učiniti na engleskom jeziku, kao što je sintakse, gdje se samo vrsta kažu 384 00:19:34,280 --> 00:19:37,330 što misliš, ali ti si uvijek tako jezgrovit i ne brinite 385 00:19:37,330 --> 00:19:38,960 gramatika i čitavim rečenicama. 386 00:19:38,960 --> 00:19:41,600 Vi samo izraziti sebe kao sažeto što je više moguće. 387 00:19:41,600 --> 00:19:45,400 >> Dakle pseudocode je engleski nalik sintakse koji predstavlja 388 00:19:45,400 --> 00:19:46,750 programski jezik. 389 00:19:46,750 --> 00:19:51,170 I prema tom cilju, neka mi predlažemo da mi sada modelirati proces možemo samo 390 00:19:51,170 --> 00:19:54,990 opisao brojanja nešto malo Drugim riječima, ovaj put uzimajući 391 00:19:54,990 --> 00:19:59,040 pogledajte ovaj pet minuta videa proizvedenog Naši prijatelji na TED-u da 392 00:19:59,040 --> 00:20:03,170 definira što je pseudocode, definira što algoritamski razmišljanje, pa čak i 393 00:20:03,170 --> 00:20:07,030 iako je primjer da ste o kako bi vidjeli je, u samo od sebe, super jednostavna, to je 394 00:20:07,030 --> 00:20:09,820 će početi da nam mentalno Model, vokabular, s kojima se 395 00:20:09,820 --> 00:20:14,588 učiniti mnogo, mnogo složeniji Algoritmi vrlo brzo. 396 00:20:14,588 --> 00:20:15,576 >> [POČETKA video reprodukciju] 397 00:20:15,576 --> 00:20:29,920 >> [Glazba svira] 398 00:20:29,920 --> 00:20:31,100 >> Narator: Što je algoritam? 399 00:20:31,100 --> 00:20:34,730 U računalnoj znanosti, algoritam skup uputa za rješavanje nekih 400 00:20:34,730 --> 00:20:36,620 Problem korak po korak. 401 00:20:36,620 --> 00:20:39,650 Tipično, algoritmi se izvršava pomoću računala, ali mi ljudi imamo 402 00:20:39,650 --> 00:20:41,230 algoritama, kao dobro. 403 00:20:41,230 --> 00:20:43,290 Na primjer, kako bi idete O brojanjem 404 00:20:43,290 --> 00:20:44,750 ljudi u sobi? 405 00:20:44,750 --> 00:20:47,980 Pa, ako ste poput mene, vjerojatno bih Točka na svaku osobu, jedan po jedan 406 00:20:47,980 --> 00:20:50,120 vrijeme, i brojati od 0 do. 407 00:20:50,120 --> 00:20:52,970 1, 2, 3, 4, i tako dalje. 408 00:20:52,970 --> 00:20:54,140 >> Pa, to je algoritam. 409 00:20:54,140 --> 00:20:57,600 U stvari, pokušajmo izraziti ga malo više formalno u pseudocode - 410 00:20:57,600 --> 00:21:00,700 Engleski poput sintakse koja podsjeća programski jezik. 411 00:21:00,700 --> 00:21:02,580 Neka N jednako 0. 412 00:21:02,580 --> 00:21:06,970 Za svaku osobu u sobi, postavite N jednaka N plus jedan. 413 00:21:06,970 --> 00:21:08,400 >> Kako protumačiti ovu pseudocode? 414 00:21:08,400 --> 00:21:12,840 Pa, jedna linija izjavljuje, da tako kažemo, varijabla zove N i inicijalizira 415 00:21:12,840 --> 00:21:14,250 njegova vrijednost na 0.. 416 00:21:14,250 --> 00:21:17,550 To samo znači da je na početku naš algoritam, stvar s kojom 417 00:21:17,550 --> 00:21:19,650 Brojimo ima vrijednost 0. 418 00:21:19,650 --> 00:21:22,620 Uostalom, prije nego što počnemo brojati, nismo još ništa broje. 419 00:21:22,620 --> 00:21:25,340 Pozivanje ovu varijablu N je samo konvencija. 420 00:21:25,340 --> 00:21:26,890 Mogao sam to nazvao najviše ništa. 421 00:21:26,890 --> 00:21:30,560 >> Sada linija dva demarks početka petlje, slijed koraka koji će 422 00:21:30,560 --> 00:21:32,310 Ponavljam neki broj puta. 423 00:21:32,310 --> 00:21:35,910 Dakle, u našem primjeru, korak uzimamo broji ljudi u sobi. 424 00:21:35,910 --> 00:21:38,730 Ispod linije dva je tri linije, koji opisuje kako je točno 425 00:21:38,730 --> 00:21:40,160 mi ćemo ići oko brojanja. 426 00:21:40,160 --> 00:21:43,440 Udubljenje podrazumijeva da je linija tri koje će se ponoviti. 427 00:21:43,440 --> 00:21:47,380 >> Dakle, ono što je rekao je pseudocode da nakon pokretanja na 0, za svaku 428 00:21:47,380 --> 00:21:50,690 Osoba u sobi, mi ćemo povećati N do 1.. 429 00:21:50,690 --> 00:21:53,050 Sada je ovaj algoritam točne? 430 00:21:53,050 --> 00:21:54,580 Pa, neka je lupati po njemu malo. 431 00:21:54,580 --> 00:21:57,270 Da li to raditi ako postoje dvije osobe u sobi? 432 00:21:57,270 --> 00:21:58,170 Idemo vidjeti. 433 00:21:58,170 --> 00:22:00,260 >> U skladu jednom, možemo započeti s N 0. 434 00:22:00,260 --> 00:22:03,660 Za svaki od tih dviju osoba, Mi smo tada povećajte N do 1.. 435 00:22:03,660 --> 00:22:07,310 Tako da se na prvom putu kroz petlje, da nakon ažuriranja N od 0 do 1. 436 00:22:07,310 --> 00:22:11,070 Na drugom putovanju kroz taj isti petlje, da nakon ažuriranja N od 1 do 2. 437 00:22:11,070 --> 00:22:15,780 I tako je ovaj algoritam kraja, n 2, koji doista pristaje broj 438 00:22:15,780 --> 00:22:16,700 ljudi u sobi. 439 00:22:16,700 --> 00:22:17,760 >> Do sada, tako dobro. 440 00:22:17,760 --> 00:22:19,610 Kako o kutu slučaju, iako? 441 00:22:19,610 --> 00:22:22,590 Pretpostavimo da postoje ljudi 0 u sobi - osim mene, 442 00:22:22,590 --> 00:22:24,170 tko radi prebrojavanja. 443 00:22:24,170 --> 00:22:27,150 U skladu jednom, možemo započeti s N 0. 444 00:22:27,150 --> 00:22:30,280 Ovaj put, međutim, tri linije ne izvršavati na sve jer ne postoji 445 00:22:30,280 --> 00:22:31,370 osoba u sobi. 446 00:22:31,370 --> 00:22:35,260 I tako dalje N 0, što odgovara broj ljudi u sobi. 447 00:22:35,260 --> 00:22:36,420 Prilično jednostavno, zar ne? 448 00:22:36,420 --> 00:22:39,630 >> No, s time da su ljudi jedan po jedan je prilično neučinkovit, također, zar ne? 449 00:22:39,630 --> 00:22:40,920 Sigurno možemo učiniti bolje. 450 00:22:40,920 --> 00:22:43,120 Zašto se ne računaju dvije osobe u isto vrijeme? 451 00:22:43,120 --> 00:22:49,300 Umjesto brojanja 1, 2, 3, 4, 5, 6, 7, 8, i tako dalje, zašto se ne računaju, 2, 452 00:22:49,300 --> 00:22:51,460 4, 6, 8, i tako dalje? 453 00:22:51,460 --> 00:22:53,700 To zvuči još brži, i to je sigurno. 454 00:22:53,700 --> 00:22:56,240 >> Idemo izraziti ovu optimizaciju u pseudocode. 455 00:22:56,240 --> 00:22:57,800 Neka N jednako 0. 456 00:22:57,800 --> 00:23:02,450 Za svaki par ljudi u sobi, postavljena N jednaka N plus dva. 457 00:23:02,450 --> 00:23:04,120 Prilično jednostavno promjena, zar ne? 458 00:23:04,120 --> 00:23:06,750 Umjesto broj ljudi jedan u isto vrijeme, umjesto da smo brojati 459 00:23:06,750 --> 00:23:08,300 ih dva u isto vrijeme. 460 00:23:08,300 --> 00:23:10,980 Ovaj algoritam je tako dva puta jednako brzo kao posljednji. 461 00:23:10,980 --> 00:23:12,180 >> No, je li to točno? 462 00:23:12,180 --> 00:23:12,920 Idemo vidjeti. 463 00:23:12,920 --> 00:23:15,330 Da li to raditi ako postoje dvije osobe u sobi? 464 00:23:15,330 --> 00:23:17,550 U skladu jednom, možemo započeti s N 0. 465 00:23:17,550 --> 00:23:20,920 Za taj jedan par ljudi, Mi smo tada povećajte N po dva. 466 00:23:20,920 --> 00:23:24,860 I tako je ovaj algoritam kraja, N 2, koji doista pristaje broj 467 00:23:24,860 --> 00:23:25,650 ljudi u sobi. 468 00:23:25,650 --> 00:23:28,250 >> Pretpostavimo da postoje sljedeći 0 ljudi u sobi. 469 00:23:28,250 --> 00:23:30,840 U skladu jednom, možemo započeti s N 0. 470 00:23:30,840 --> 00:23:34,330 Kao i prije, tri linije ne izvrši na sve, jer ne postoje nikakvi parova 471 00:23:34,330 --> 00:23:35,380 ljudi u sobi. 472 00:23:35,380 --> 00:23:38,350 I tako dalje N 0, što je uistinu odgovara broju 473 00:23:38,350 --> 00:23:39,570 ljudi u sobi. 474 00:23:39,570 --> 00:23:42,280 >> No, što ako postoje tri ljudi u sobi? 475 00:23:42,280 --> 00:23:44,130 Kako se ovaj algoritam zbivati? 476 00:23:44,130 --> 00:23:44,990 Idemo vidjeti. 477 00:23:44,990 --> 00:23:47,460 U skladu jednom, možemo započeti s N 0. 478 00:23:47,460 --> 00:23:50,870 Za par tih ljudi, Mi smo tada povećajte n 2. 479 00:23:50,870 --> 00:23:51,800 Ali što onda? 480 00:23:51,800 --> 00:23:54,960 Ne postoji niti jedan full par ljudi u sobi, tako da dvije linije ne 481 00:23:54,960 --> 00:23:56,180 više ne vrijedi. 482 00:23:56,180 --> 00:24:00,530 I tako je ovaj algoritam kraja, N je još uvijek 2, što nije točno. 483 00:24:00,530 --> 00:24:03,810 >> Doista, ovaj algoritam je rekao da se buggy, jer ima grešku. 484 00:24:03,810 --> 00:24:05,820 Omogućuje zadovoljštinu s nekim novim pseudocode. 485 00:24:05,820 --> 00:24:09,670 Da n jednak 0, za svaki par ljudi u sobi. 486 00:24:09,670 --> 00:24:12,550 Postavite N jednaka N plus dva. 487 00:24:12,550 --> 00:24:17,140 Ako jedna osoba ostane pojedinačna, postavljena N jednaka N plus jedan. 488 00:24:17,140 --> 00:24:20,140 Kako bi riješio ovaj problem, mi smo uveden u skladu četiri, 489 00:24:20,140 --> 00:24:24,520 stanje, inače poznat kao grane da samo izvršavaju ako postoji jedan 490 00:24:24,520 --> 00:24:26,640 osoba koja mi to nismo uspjeli Par s drugom. 491 00:24:26,640 --> 00:24:30,440 I sad, da li postoji jedna ili tri ili bilo koji neparan broj ljudi u 492 00:24:30,440 --> 00:24:33,290 soba, ovaj algoritam sada će ih brojati. 493 00:24:33,290 --> 00:24:34,560 >> Možemo učiniti čak i bolje? 494 00:24:34,560 --> 00:24:38,820 Pa, mogli bismo računati u 3s ili 4s ili čak 5s i 10s, ali dalje od toga, to je 495 00:24:38,820 --> 00:24:41,360 će dobiti malo teško točke. 496 00:24:41,360 --> 00:24:44,660 Na kraju dana, da li izvršiti od strane računala ili ljudi, 497 00:24:44,660 --> 00:24:46,750 Algoritmi su samo set uputa s 498 00:24:46,750 --> 00:24:48,290 za rješavanje problema. 499 00:24:48,290 --> 00:24:49,792 Ovo su samo tri. 500 00:24:49,792 --> 00:24:52,404 Koji bi problem riješiti s algoritma? 501 00:24:52,404 --> 00:24:52,901 >> [END video reprodukciju] 502 00:24:52,901 --> 00:24:55,883 >> DAVID Malan: To je jedini put Ja će se pojaviti u crtanom obliku. 503 00:24:55,883 --> 00:25:01,050 Ali gdje je ta priča prestaje, Sada, je kako možemo učiniti bolje? 504 00:25:01,050 --> 00:25:04,680 Trojkama i četveronoške, tvrdimo, možemo računati ljudi puno brže, ali možemo 505 00:25:04,680 --> 00:25:06,290 to bitno bolje od toga? 506 00:25:06,290 --> 00:25:07,540 A ja kladiti možemo. 507 00:25:07,540 --> 00:25:11,980 >> Ako uvedemo malo naše vlastite pseudocode ovdje, ja ću predložiti 508 00:25:11,980 --> 00:25:14,550 da možemo postići liniju kao što je ovaj. 509 00:25:14,550 --> 00:25:17,280 Nećemo brojati ljude jedan, dva, tri, četiri. 510 00:25:17,280 --> 00:25:19,470 Nećemo ići dva, četiri, šest, osam. 511 00:25:19,470 --> 00:25:23,390 Mi ćemo učiniti temeljno bolje by promišljanje problema, a to 512 00:25:23,390 --> 00:25:27,080 slučaj, utjecati na neki drugi način nedovoljno resursa. 513 00:25:27,080 --> 00:25:31,460 >> U samo jednom trenutku, nadam se da ćete oprostiti i nas humor stoji u 514 00:25:31,460 --> 00:25:34,470 mjesto, na kojem trenutku ćemo pitajte svakog od vas da se u vašem 515 00:25:34,470 --> 00:25:36,400 umovi broj 1. 516 00:25:36,400 --> 00:25:39,560 Nakon toga idemo na sve nespretno, kako vrijeme prolazi, pronašli 517 00:25:39,560 --> 00:25:42,740 netko tko je stajao, kombinirati tvoji brojevi zajedno 518 00:25:42,740 --> 00:25:43,720 dodajući ih se. 519 00:25:43,720 --> 00:25:47,490 Jedan od tebe onda se ide na utrku sjesti sjesti i druga osoba 520 00:25:47,490 --> 00:25:48,880 će se ponoviti. 521 00:25:48,880 --> 00:25:53,090 >> Dakle, drugim riječima, prema sijanje sve da s brojem 1, a zatim 522 00:25:53,090 --> 00:25:57,800 Kombinirajući te 1s u 2s i onih 2S u 4s, sa svima sve 523 00:25:57,800 --> 00:26:02,740 sjedi, treba, na kraju ovaj algoritam, ima samo jedan kredit 524 00:26:02,740 --> 00:26:07,570 duša koja nije sjesti dovoljno brzo, ali tko ima cijelu publiku računati 525 00:26:07,570 --> 00:26:09,180 u svom umu. 526 00:26:09,180 --> 00:26:13,730 >> Dakle, ako bi se, idemo naprijed i - jedan korak - stand up na mjestu. 527 00:26:13,730 --> 00:26:15,600 I izvršavanje. 528 00:26:15,600 --> 00:26:36,580 >> [CROWD mrmljajući] 529 00:26:36,580 --> 00:26:38,820 >> DAVID Malan: Znate li Lauren gdje je? 530 00:26:38,820 --> 00:26:40,179 729? 531 00:26:40,179 --> 00:27:23,350 >> [CROWD mrmljajući] 532 00:27:23,350 --> 00:27:24,340 >> DAVID Malan: U redu? 533 00:27:24,340 --> 00:27:39,110 >> [CROWD mrmljajući] 534 00:27:39,110 --> 00:27:41,365 >> DAVID Malan: U redu, trebali bismo se bliži kraju. 535 00:27:41,365 --> 00:27:44,340 536 00:27:44,340 --> 00:27:47,670 Vidimo jedan kolega je ovdje još uvijek. 537 00:27:47,670 --> 00:27:48,770 Tko još treba biti u paru? 538 00:27:48,770 --> 00:27:50,020 Ako vi želite upariti off. 539 00:27:50,020 --> 00:27:53,260 540 00:27:53,260 --> 00:27:56,520 Netko do vrha. 541 00:27:56,520 --> 00:27:58,150 Zašto ne pružiti ruku ovdje. 542 00:27:58,150 --> 00:28:01,370 Za vrlo malo ljudi koji su još uvijek stoji, ono što ti brojevi 543 00:28:01,370 --> 00:28:02,790 imati u svom umu? 544 00:28:02,790 --> 00:28:04,020 >> STUDENT: 78. 545 00:28:04,020 --> 00:28:06,010 >> DAVID Malan: 78 plus - 546 00:28:06,010 --> 00:28:07,840 tko stoji ovdje? 547 00:28:07,840 --> 00:28:08,370 >> STUDENT: 39. 548 00:28:08,370 --> 00:28:09,590 >> DAVID Malan: Plus 39. 549 00:28:09,590 --> 00:28:12,310 Plus tko još uvijek stoji? 550 00:28:12,310 --> 00:28:13,650 81? 551 00:28:13,650 --> 00:28:15,960 U redu, tko još? 552 00:28:15,960 --> 00:28:17,200 Još 81? 553 00:28:17,200 --> 00:28:17,860 Wow. 554 00:28:17,860 --> 00:28:19,210 I onda ono što je u pozadini? 555 00:28:19,210 --> 00:28:20,360 >> STUDENT: 49. 556 00:28:20,360 --> 00:28:21,812 >> DAVID Malan: 49, plus? 557 00:28:21,812 --> 00:28:22,950 >> STUDENT: 98. 558 00:28:22,950 --> 00:28:24,980 >> DAVID Malan: 98 plus? 559 00:28:24,980 --> 00:28:28,190 Je li to netko drugi? 560 00:28:28,190 --> 00:28:29,155 12? 561 00:28:29,155 --> 00:28:30,460 Dobar posao. 562 00:28:30,460 --> 00:28:33,610 >> [Smijeh] 563 00:28:33,610 --> 00:28:34,690 >> DAVID Malan: Oh, 112 - 564 00:28:34,690 --> 00:28:35,410 oh. 565 00:28:35,410 --> 00:28:36,220 Dobar posao! 566 00:28:36,220 --> 00:28:38,660 >> [Smijeh] 567 00:28:38,660 --> 00:28:42,570 >> [PLJESAK] 568 00:28:42,570 --> 00:28:43,820 >> DAVID Malan: Bilo tko drugi još uvijek stoji? 569 00:28:43,820 --> 00:28:46,710 570 00:28:46,710 --> 00:28:47,260 Nažalost? 571 00:28:47,260 --> 00:28:48,110 >> STUDENT: 99. 572 00:28:48,110 --> 00:28:49,810 >> DAVID Malan: 99. 573 00:28:49,810 --> 00:28:52,620 Bilo tko drugi još uvijek stoji? 574 00:28:52,620 --> 00:28:57,290 A ukupan broj studenata ovdje je zapravo, prema - 575 00:28:57,290 --> 00:28:59,400 imate li broj? 576 00:28:59,400 --> 00:29:03,170 Oh, stvarni broj ljudi u soba, prema računu koji 577 00:29:03,170 --> 00:29:07,660 nastavne momci radili na svačiji način u, bio je 729. 578 00:29:07,660 --> 00:29:11,070 Dakle, iz sobi prepunoj Harvard studenata koji se broje, 579 00:29:11,070 --> 00:29:14,126 Odgovor je 637. 580 00:29:14,126 --> 00:29:15,480 >> [Smijeh] 581 00:29:15,480 --> 00:29:16,350 >> DAVID Malan: Tako blizu. 582 00:29:16,350 --> 00:29:17,360 No, još uvijek. 583 00:29:17,360 --> 00:29:22,110 U redu, tako da je nastava Trenutak, zar ne? 584 00:29:22,110 --> 00:29:24,120 To je ono što mi je sada opisati kao bug. 585 00:29:24,120 --> 00:29:28,120 Negdje usput, jesmo neke aritmetika krivu, ili netko sjeo, 586 00:29:28,120 --> 00:29:29,930 ili lijevo, ili je nešto pošlo po zlu. 587 00:29:29,930 --> 00:29:30,930 Ali to je u redu. 588 00:29:30,930 --> 00:29:33,390 Jer čak i dalje, mi dobio prilično blizu. 589 00:29:33,390 --> 00:29:37,480 I ja bih se tvrditi da smo se krivo odgovoriti na puno brže nego ja bi 590 00:29:37,480 --> 00:29:39,770 koristeći moj više linearno pristup. 591 00:29:39,770 --> 00:29:42,630 >> Dakle, pretpostavimo da je u činjenici da su dobili ispraviti, ali da sada o tome što 592 00:29:42,630 --> 00:29:46,870 se događa svaki put, u odnosu na moje vlastita naivna ukazujući algoritam. 593 00:29:46,870 --> 00:29:48,420 Jedan, dva, tri. 594 00:29:48,420 --> 00:29:53,010 Ako doista postoje 729 ili 637 ljudi ovdje, da bi me uzeti 595 00:29:53,010 --> 00:29:57,720 doslovno 637 ili 729 pointings od prsta i 596 00:29:57,720 --> 00:29:59,490 povećavanjem moje zbrajanje. 597 00:29:59,490 --> 00:30:01,910 A što sam mogao učiniti nešto bolje ide dva, četiri, šest, osam i 598 00:30:01,910 --> 00:30:05,660 udvostručiti brzinu, možda čak i trostruko ili četverokrevetne, ovisno koliko dobro mogu 599 00:30:05,660 --> 00:30:07,110 to računajući u glavi. 600 00:30:07,110 --> 00:30:10,720 >> No, ovaj pristup kako da ga je bio bitno drugačiji. 601 00:30:10,720 --> 00:30:12,770 Jer se u početku, svi vi ustao. 602 00:30:12,770 --> 00:30:14,620 Dakle, sve 729. 603 00:30:14,620 --> 00:30:17,370 I onda doslovno poluvrijeme od vas sjeo. 604 00:30:17,370 --> 00:30:19,720 A nakon toga, još jedna polovica vas sjeo. 605 00:30:19,720 --> 00:30:22,650 A nakon toga, još jedna polovica vas sjeo. 606 00:30:22,650 --> 00:30:27,470 >> A ukupan broj puta da Dečki moglo sjeo je otprilike 607 00:30:27,470 --> 00:30:31,740 osam ili devet ili deset puta ukupno, ovisno o tome što naš ukupni zbroj. 608 00:30:31,740 --> 00:30:33,300 A možemo napraviti svojevrsni ovaj drugi način. 609 00:30:33,300 --> 00:30:37,740 Ako smo imali 1024 ljudi u sobi, Ukupan broj puta ste mogli 610 00:30:37,740 --> 00:30:41,870 prepoloviti 1024 ljudi je 10. 611 00:30:41,870 --> 00:30:43,370 >> Sada razmišljam o tome u drugi smjer. 612 00:30:43,370 --> 00:30:49,170 Recimo, smiješno, da smo imali, recimo četiri milijarde ljudi u ovoj sobi, 613 00:30:49,170 --> 00:30:50,860 ili nešto veća soba. 614 00:30:50,860 --> 00:30:54,550 Koliko puta bi smo otišli kroz ovaj algoritam, tako da polovica 615 00:30:54,550 --> 00:30:58,110 te klase sjeda? 616 00:30:58,110 --> 00:31:03,050 To samo će potrajati 32, kao operacija, čak iu klasi veličine 617 00:31:03,050 --> 00:31:03,770 četiri milijarde. 618 00:31:03,770 --> 00:31:04,055 Zašto? 619 00:31:04,055 --> 00:31:06,980 Zbog četiri milijarde ide u dva milijardi kuna, ide na milijun, ide na 620 00:31:06,980 --> 00:31:09,925 500 milijuna, otpada na 250 milijuna kuna, točka, točka, točka. 621 00:31:09,925 --> 00:31:14,940 Ja se samo mogu napraviti tu podjelu neki 32 puta, na kojem trenutku, svi osim 622 00:31:14,940 --> 00:31:17,820 jedna osoba će biti ostavljeni. 623 00:31:17,820 --> 00:31:21,590 >> I to je, također, vrsta moćna Ideja da sve ćemo pokušati 624 00:31:21,590 --> 00:31:24,690 poluga u ovom Naravno, te u programiranje i informatika više 625 00:31:24,690 --> 00:31:29,400 Općenito, ove bakterije iz ideje s koje zatim možemo riješiti probleme puno, 626 00:31:29,400 --> 00:31:31,130 puno moćnije. 627 00:31:31,130 --> 00:31:34,610 Tako smo počeli vrlo jednostavna s tim pseudocode i tip u sobi, ali 628 00:31:34,610 --> 00:31:38,205 Sada sa cijeloj sobi punoj ljudi smo učinili bitno bolje. 629 00:31:38,205 --> 00:31:41,460 >> Pa, neka je sada prijelaz iz pseudocode do neke stvarne koda. 630 00:31:41,460 --> 00:31:44,200 Ovaj jezik ćete vidjeti dogoditi da se zove JavaScript, i 631 00:31:44,200 --> 00:31:46,190 mi ćemo se vratiti na ovo ka Semestar je kraj. 632 00:31:46,190 --> 00:31:49,960 To je programski jezik koji ste koristiti za pravljenje web stranice, kao i druge 633 00:31:49,960 --> 00:31:51,360 Softver ovih dana. 634 00:31:51,360 --> 00:31:54,890 I mi smo ga koristili, zahvaljujući prijatelju naša na Stanfordu, za kodiranje 635 00:31:54,890 --> 00:31:56,630 neka skrivena informacija ovdje. 636 00:31:56,630 --> 00:31:59,500 To je umijeće steganography, da tako kažemo, gdje se mogu sakriti 637 00:31:59,500 --> 00:32:03,990 Informacije u ono što se inače pojavljuje se biti buke ili potpuno drugačija 638 00:32:03,990 --> 00:32:05,220 Slika uopce. 639 00:32:05,220 --> 00:32:10,120 No, ugrađen u ovom slikom je doista tajna poruka od sorti. 640 00:32:10,120 --> 00:32:12,950 >> Zato mi dopustite da ići naprijed i povucite prema gore Ista slika ovdje, ovo 641 00:32:12,950 --> 00:32:14,270 Vrijeme u web pregledniku. 642 00:32:14,270 --> 00:32:17,710 I ja ću mahati moje ruke na neke od detalji za danas, posebice 643 00:32:17,710 --> 00:32:21,780 za one od vas koji ovo izgleda ne samo JavaScript, ali grčki, kao 644 00:32:21,780 --> 00:32:23,930 potpuno nepoznatom jeziku. 645 00:32:23,930 --> 00:32:26,190 Ali ovo je primjer programski jezik. 646 00:32:26,190 --> 00:32:30,660 >> A za sada, odvesti na vjeri da ovo prva linija koda - 647 00:32:30,660 --> 00:32:32,470 i po kodu, ja samo znači tekst. 648 00:32:32,470 --> 00:32:35,660 Tekst koji sam mogao doslovno su upisali u Microsoft Word, ako sam imao 649 00:32:35,660 --> 00:32:37,630 pravo softver kako bi onda nešto učiniti s njom. 650 00:32:37,630 --> 00:32:42,120 Programiranje koda, programiranje broj, je zapravo samo tekst, i to 651 00:32:42,120 --> 00:32:45,420 izgleda drugačije na temelju onoga što jezik koristite, a ne za razliku od engleskog i 652 00:32:45,420 --> 00:32:49,200 Španjolski i ruski svi izgledaju drugačije kada ih upisati na tipkovnici. 653 00:32:49,200 --> 00:32:53,520 >> Dakle, ovom prvom redu, za sada se na Vjera, jednostavno otvara grafike iz 654 00:32:53,520 --> 00:32:56,160 internet, koji bučno grafičke smo upravo vidjeli. 655 00:32:56,160 --> 00:32:59,900 Ovaj sljedeći redak ovdje je primjer petlje, a mi zapravo vidio da ista 656 00:32:59,900 --> 00:33:01,130 Žargon u TED videu. 657 00:33:01,130 --> 00:33:03,750 Petlja je nešto što se dogodi jednom i opet, i iako je to 658 00:33:03,750 --> 00:33:08,440 Apsolutno izgleda zagonetan, s ključna riječ za, a neki zagrade, a 659 00:33:08,440 --> 00:33:09,510 neki zarezom. 660 00:33:09,510 --> 00:33:13,070 Vratit ćemo se na to ne zadugo, ali da ima petlje u biti je 661 00:33:13,070 --> 00:33:17,310 govorim program, iteraciju preko svega od onih bučnih točaka, s lijeva na 662 00:33:17,310 --> 00:33:18,980 desno, odozgo prema dolje. 663 00:33:18,980 --> 00:33:21,260 >> Jer se na kraju dana, slike sviđa mi se ovo - i možete zapravo 664 00:33:21,260 --> 00:33:22,860 vrsta ga vidjeti na ovaj projektor - 665 00:33:22,860 --> 00:33:25,280 je zapravo samo mreža točaka. 666 00:33:25,280 --> 00:33:29,730 Dakle, možemo identificirati svaku od tih točaka kao koordinatnu, x, y, te time 667 00:33:29,730 --> 00:33:33,890 Program, sada možemo početi učinite nešto za tih točaka. 668 00:33:33,890 --> 00:33:37,540 >> Dakle, ono što ću ići naprijed i ovdje to je da ću napraviti neke izmjene. 669 00:33:37,540 --> 00:33:41,000 Prvo ću ići naprijed i riješi svega toga zelenkasto i plavkasto 670 00:33:41,000 --> 00:33:43,520 buke, a ja ću ići naprijed i tip sljedeće 671 00:33:43,520 --> 00:33:45,710 doduše zagonetan sintakse. 672 00:33:45,710 --> 00:33:48,020 im za slike. 673 00:33:48,020 --> 00:33:53,380 postavljena plavo na mjesto x, zarez, Mjesto na y, na 0. 674 00:33:53,380 --> 00:33:55,610 Drugim riječima, želim samo isključite sve plave 675 00:33:55,610 --> 00:33:56,920 točkice u toj slici. 676 00:33:56,920 --> 00:33:59,800 >> Ja ću sada ići naprijed i kliknite to Run / Spremi gumb, a vi ćete 677 00:33:59,800 --> 00:34:02,850 Primijetit na desnoj strani, Dobit slika pojavi. 678 00:34:02,850 --> 00:34:06,120 Sada je super zeleni, ali to nije čudno, jer sam doslovno pretvorio 679 00:34:06,120 --> 00:34:11,070 off, tako što je jedan 0, sve plavi u toj slici. 680 00:34:11,070 --> 00:34:12,540 >> Pa, sad ćemo to napraviti malo više. 681 00:34:12,540 --> 00:34:16,989 im za sliku, dot setGreen, x, y. 682 00:34:16,989 --> 00:34:20,659 A to samo znači ponoviti slijeva na desno, a zatim odozgo prema dolje. 683 00:34:20,659 --> 00:34:23,520 Uključite koji off s vrijednošću od 0, kao i. 684 00:34:23,520 --> 00:34:24,750 Spremi. 685 00:34:24,750 --> 00:34:28,100 I na projektoru, ne možete zapravo stvarno vidi ništa. 686 00:34:28,100 --> 00:34:31,380 >> Na moj laptop zaslon, ako sam zaviriti u samo pravi put, ja mogu vidjeti malo 687 00:34:31,380 --> 00:34:33,300 slika, jer oni su još uvijek neki red tamo. 688 00:34:33,300 --> 00:34:35,540 Ako ste ikada čuli akronim RGB - 689 00:34:35,540 --> 00:34:36,830 crvena, zelena, plava - 690 00:34:36,830 --> 00:34:39,110 to se odnosi na ovaj sastav od slike pomoću 691 00:34:39,110 --> 00:34:40,230 samo one tri boje. 692 00:34:40,230 --> 00:34:43,159 I upravo sada, mi smo bačeni sva zelena, plava svima, ali 693 00:34:43,159 --> 00:34:44,500 nema puno crveno. 694 00:34:44,500 --> 00:34:45,920 >> Pa neka mi ručica crveno. 695 00:34:45,920 --> 00:34:47,070 Kako mogu to učiniti? 696 00:34:47,070 --> 00:34:49,300 Pa, prvo, idem pitati ovaj program je pitanje. 697 00:34:49,300 --> 00:34:52,030 Ja ću ići naprijed i neka ga nazivaju promjenjiva, baš kao u algebra. 698 00:34:52,030 --> 00:34:54,060 Možete imati X ili Y ili z. 699 00:34:54,060 --> 00:34:57,230 Idem proglasiti varijablu i reći, staviti u ovu varijablu, 700 00:34:57,230 --> 00:35:02,790 privremeno, vrijednost Slike getRed vrijednost u x, y. 701 00:35:02,790 --> 00:35:05,870 >> I opet, vratit ćemo se na sve ove detalje u budućnosti. 702 00:35:05,870 --> 00:35:10,630 Ali za sada, samo se na vjeri da Ova linija je molba program, što 703 00:35:10,630 --> 00:35:12,740 je crvena vrijednost na x, y? 704 00:35:12,740 --> 00:35:14,450 U tom točkom? 705 00:35:14,450 --> 00:35:15,710 >> Tada ću učiniti nešto za njega. 706 00:35:15,710 --> 00:35:21,100 Tada ću učiniti slika dot set crveno u x, y, y, ali ovaj put ću se 707 00:35:21,100 --> 00:35:24,760 to potaknuti radeći crvene puta, recimo, 10. 708 00:35:24,760 --> 00:35:26,870 Tako ga povećati za faktor 10. 709 00:35:26,870 --> 00:35:29,880 Dopustite mi sada i smanjivanje klik mogao Run / Save. 710 00:35:29,880 --> 00:35:36,430 I voila, da je bio tamo cijelo Vrijeme, iako su naše ljudske oči 711 00:35:36,430 --> 00:35:37,900 nisam mogao vidjeti. 712 00:35:37,900 --> 00:35:41,470 >> Pa opet, ovo sada je pravi broj, Primjer jeziku koji ćemo doći 713 00:35:41,470 --> 00:35:42,770 natrag prije dugo. 714 00:35:42,770 --> 00:35:46,670 Ali shvatite, pogotovo one od vas bez takvog iskustva, to je sasvim 715 00:35:46,670 --> 00:35:50,280 Uskoro kako smo i sami će se pisanja koda kao da postoji. 716 00:35:50,280 --> 00:35:54,520 U stvari, alat s kojim ste sve nešto upoznat, možda, CS50-a 717 00:35:54,520 --> 00:35:57,330 vlastita tečaj-shopping alat, koji je bio zapravo ponovno podizanje ovog ljeta od strane nekih 718 00:35:57,330 --> 00:36:01,070 CS50 od vlastitih bivših studenata, Sada se okrećemo TFS. 719 00:36:01,070 --> 00:36:04,740 >> Dakle, ovo se događa da se web stranice izgrađen u jeziku zove PHP. 720 00:36:04,740 --> 00:36:08,510 Ona koristi bazu podataka MySQL zove, stvari s kojima ćemo dobiti naše ruke 721 00:36:08,510 --> 00:36:10,190 prljavo kasnije u semestru. 722 00:36:10,190 --> 00:36:14,140 No, vjerovali ili ne, čak i nešto kao što je to u konačnici smanjuje se 723 00:36:14,140 --> 00:36:19,480 najjednostavniji od petlje i uvjeta, a grane, poput onih koje smo vidjeli samo 724 00:36:19,480 --> 00:36:21,530 maloprije u TED videu. 725 00:36:21,530 --> 00:36:25,180 >> Ono što sam mislio da ću učiniti sada je dionicom nije samo nešto smo napravili osoblje 726 00:36:25,180 --> 00:36:28,010 za kampus, nego nešto bivši student - tri 727 00:36:28,010 --> 00:36:29,080 učenika, u stvari - 728 00:36:29,080 --> 00:36:33,950 je ove protekle godine, Sierra, Daniel i Sam, posljednji je imao prije 729 00:36:33,950 --> 00:36:36,370 programiranje iskustvo kada je uzeo CS50. 730 00:36:36,370 --> 00:36:39,950 I za njihov konačni projekt, oni Izlagao je na sajmu CS50, 731 00:36:39,950 --> 00:36:43,720 program pod nazivom wrdly, što je web-based program za koji su napravili 732 00:36:43,720 --> 00:36:47,670 ovaj video koji sam mislio bih podijeliti s daje vam osjećaj upravo ono što je 733 00:36:47,670 --> 00:36:49,280 moguće izraz je kraj. 734 00:36:49,280 --> 00:37:57,170 >> [Glazba svira] 735 00:37:57,170 --> 00:38:00,570 >> DAVID Malan: To je iz tjedna Zero na 12. tjednu ove protekle godine. 736 00:38:00,570 --> 00:38:05,470 >> [PLJESAK] 737 00:38:05,470 --> 00:38:09,520 >> DAVID Malan: Kao teaser, previše, stvarno oštriti apetit je da ono što je 738 00:38:09,520 --> 00:38:14,580 moguće, možda ste već vidjeli, ili uskoro vidjeti, market.cs50.net, a 739 00:38:14,580 --> 00:38:17,710 Novi alat koji toku je tim radili na, ovaj put u 740 00:38:17,710 --> 00:38:21,530 suradnja s Harvard Student Agencije, kao da su s početkom ove godine 741 00:38:21,530 --> 00:38:24,980 i nadamo se nastavlja u ovo dolazi ljeto ćete imati standard 742 00:38:24,980 --> 00:38:27,890 Prilika na kampusu za kupnju i prodaju stvari od interesa za vas. 743 00:38:27,890 --> 00:38:32,220 A uz partnerstvo kroz HSA, vi ćete Također bi mogli ispustiti stavke off 744 00:38:32,220 --> 00:38:35,950 u jednoj od HSA-a fizičke trgovine na neki točka u budućnosti, kako bi se 745 00:38:35,950 --> 00:38:39,150 proxy stvari, pogotovo što vas diplomirati, a ne nužno žele 746 00:38:39,150 --> 00:38:44,110 bacite stvari, ali zapravo to platiti proslijediti ljudi koji bi vas prate 747 00:38:44,110 --> 00:38:45,270 ovdje na kampusu. 748 00:38:45,270 --> 00:38:46,740 Dakle, više o tome doći. 749 00:38:46,740 --> 00:38:49,830 >> No, malo konkretnije, alat koji je došao iz CS50 u nedavnom 750 00:38:49,830 --> 00:38:52,760 godine, s kojima su neki od vas možda upoznati i drugi od vas može biti 751 00:38:52,760 --> 00:38:57,940 googling sada, na CS50.net/2x, vi ćete naći link na Chrome proširenje 752 00:38:57,940 --> 00:39:01,250 koji nam prikazuje kako možete koristiti JavaScript, taj isti jezik smo 753 00:39:01,250 --> 00:39:06,660 koristiti s Eiffelovog tornja maloprije, provesti 2x brzinu reprodukcije 754 00:39:06,660 --> 00:39:09,000 za sve Harvard iSites videa. 755 00:39:09,000 --> 00:39:11,880 To je nešto što je izgrađen u CS50 vlastite video player. 756 00:39:11,880 --> 00:39:14,870 Ali to je, ako se početi kopati u izvorni kod, što ćemo 757 00:39:14,870 --> 00:39:18,840 sretno na raspolaganje, vidjet ćete kako čak možete riješiti probleme kao što je to, 758 00:39:18,840 --> 00:39:23,180 ubrzavanje clanak u web stranice s što ste već dobro upoznati. 759 00:39:23,180 --> 00:39:26,630 >> Dakle, riječ je sada o tijeku i očekivanja i što je pred nama. 760 00:39:26,630 --> 00:39:29,445 U principu, mi doista ću se ovdje okupljaju ponedjeljkom i srijedom - iako 761 00:39:29,445 --> 00:39:31,490 ovog petka, mi ćemo prikupiti, jer Shopping Week - 762 00:39:31,490 --> 00:39:34,640 01:00-14:00, iako ponekad i do 02:30. 763 00:39:34,640 --> 00:39:38,700 S obzirom da stoga možda želite ili morati poduzeti neke klase na 14:00 764 00:39:38,700 --> 00:39:42,480 nadalje, ili čak i prije, shvaćaju Tečaj podupire ono što se naziva 765 00:39:42,480 --> 00:39:45,900 istodobni upis, pri čemu ćemo podržati peticiju oglasa odbora i 766 00:39:45,900 --> 00:39:49,400 Vaš stanovnik dekani na vaše ime, ako imate sukob negdje u ovo 767 00:39:49,400 --> 00:39:50,790 1:00-02:30 rasponu. 768 00:39:50,790 --> 00:39:54,110 Voditelj na tom URL za online dodatne pojedinosti. 769 00:39:54,110 --> 00:39:57,750 >> , Ali u odnosu na potpornu strukturu koja karakterizira CS50, za studente 770 00:39:57,750 --> 00:40:01,750 više i manje ugodno podjednako, mi nude različite pjesme sekcija. 771 00:40:01,750 --> 00:40:04,730 A to je nekoliko tjedana off, ali prije dugo, vi ćete biti upitani o tome 772 00:40:04,730 --> 00:40:05,770 Vaš udobnost razini. 773 00:40:05,770 --> 00:40:08,590 Jeste li među onima manje udobno, ugodnije, ili 774 00:40:08,590 --> 00:40:10,520 negdje u sredini? 775 00:40:10,520 --> 00:40:13,150 >> I mi ćemo imati tri različita pjesme koje razonoditi 776 00:40:13,150 --> 00:40:14,470 upravo ti publika. 777 00:40:14,470 --> 00:40:17,900 Dakle, ni u kojem trenutku u razdoblju trebali ste čak osjećati kao da ste natječu 778 00:40:17,900 --> 00:40:21,390 protiv kojeg studenta s više ili manje pozadinu od tebe. 779 00:40:21,390 --> 00:40:24,160 Doista, tečaj je značilo da se puno više suradnje i mnogo 780 00:40:24,160 --> 00:40:25,650 otvoreniji od toga. 781 00:40:25,650 --> 00:40:29,030 >> U pogledu problematična, one će naći, također, da osim 782 00:40:29,030 --> 00:40:32,130 standardno izdanje svakog tjedna problema postavljena, je često "haker 783 00:40:32,130 --> 00:40:37,010 edition "koji je značilo da se ciljano na 5% do 10%, ili tako 784 00:40:37,010 --> 00:40:40,270 demografska tko je doista među onima ugodnije, a željeli više 785 00:40:40,270 --> 00:40:43,960 od izazov nego standardni izdanje tog pset očekuje. 786 00:40:43,960 --> 00:40:46,390 Više detalja o onih koje treba nalaze u nastavnom planu. 787 00:40:46,390 --> 00:40:49,430 >> No, također tamo se može naći smještaj na tečajeve kasno dana. 788 00:40:49,430 --> 00:40:51,570 Obično problema postavlja dospijevaju četvrtkom. 789 00:40:51,570 --> 00:40:55,550 Međutim, možete produljiti mnoge svoje rokovi ove jeseni iz četvrtkom 790 00:40:55,550 --> 00:41:00,010 Petkom jednostavno nas susretu pola puta, da se tako izrazim, odgovorite na nekoliko zagrijavanja 791 00:41:00,010 --> 00:41:03,370 Pitanja u neke od tjedan problema seta, koji će se automatski 792 00:41:03,370 --> 00:41:05,710 onda vam dati dodatnih 24 sata. 793 00:41:05,710 --> 00:41:09,120 Također će pasti tvoja najniže ocjena, kao i po nastavnom planu. 794 00:41:09,120 --> 00:41:12,170 >> Da bi vam dati osjećaj za ono što je problem setovi su - jer to je doista 795 00:41:12,170 --> 00:41:15,120 toku je problem koji postavlja konačnici definirati gotovo svaka 796 00:41:15,120 --> 00:41:18,760 studenta iskustvo, više nego Predavanja, više nego sekcije, više 797 00:41:18,760 --> 00:41:21,230 tako da od većine bilo koji drugi aspekt tečaja. 798 00:41:21,230 --> 00:41:25,140 Prošle je godine, primjerice, počeli smo, kao počet ćemo ove godine, s nule. 799 00:41:25,140 --> 00:41:29,150 Osobito ovaj petak, koristit ćemo, za Samo jedan dan je vrijeme, grafički 800 00:41:29,150 --> 00:41:32,260 programski jezik, s kojom ćemo započeti programiranje povlačenjem i 801 00:41:32,260 --> 00:41:37,580 ispustite slagalice koja samo okupiti fizički, ako ima smisla 802 00:41:37,580 --> 00:41:38,990 to logično. 803 00:41:38,990 --> 00:41:43,460 >> Sljedeći tjedan, mi ćemo brzo prijeći na C, prilično stara, ali vrlo mali i 804 00:41:43,460 --> 00:41:48,510 Jednostavan jezik, koji će nam omogućiti da stvarno ide 0 do 60 tijekom 805 00:41:48,510 --> 00:41:52,290 o samo nekoliko tjedana, a zatim klađenje te iste vještine i znanje 806 00:41:52,290 --> 00:41:56,160 Osnovni programiranje konstrukata u više razine jezici poput PHP, 807 00:41:56,160 --> 00:41:58,240 JavaScript, a neki još uvijek. 808 00:41:58,240 --> 00:42:02,560 >> Prošle godine, trećeg pset u tijeku bila je kriptografije, 809 00:42:02,560 --> 00:42:06,380 domene određeni program u kojem smo izazvao studenata za provedbu bilo 810 00:42:06,380 --> 00:42:11,140 broj šifre, programi s kojima veranje ili dešifrirati podatke, 811 00:42:11,140 --> 00:42:11,880 to šifriranje. 812 00:42:11,880 --> 00:42:16,300 Za hakerske izdanju, za razliku od, dali smo haker studentima datoteku 813 00:42:16,300 --> 00:42:19,900 iz standardne Unix računala sadrži korisnička imena i lozinke, 814 00:42:19,900 --> 00:42:22,740 potonji od kojih su šifrirani, a mi pobijaju hakeru 815 00:42:22,740 --> 00:42:26,850 studenata za dekriptiranje, kao najbolje što su mogli, te lozinke, i dalje na tome 816 00:42:26,850 --> 00:42:27,770 istu domenu. 817 00:42:27,770 --> 00:42:30,580 >> Scramble, igra s kojima su neki od vas su možda upoznati. 818 00:42:30,580 --> 00:42:34,410 Forenzike komada, gdje smo pitati studente da se oporavim podataka koje su bile 819 00:42:34,410 --> 00:42:38,530 inače brišu iz vlastitog digitalnog Kamere Compact Flash kartice, koje 820 00:42:38,530 --> 00:42:42,740 zapravo pisanje softver za shvatiti, gdje su nule i jedinice u 821 00:42:42,740 --> 00:42:46,850 da je digitalni fotoaparat koji je prethodno sastoji JPEG slika? 822 00:42:46,850 --> 00:42:49,710 >> Izazov vrsta lani uključuje pisanje najbrži 823 00:42:49,710 --> 00:42:53,160 alat za provjeru pravopisa moguća, natječući protiv prijatelja i kolege ako 824 00:42:53,160 --> 00:42:53,860 oni željeli. 825 00:42:53,860 --> 00:42:56,330 Implementacija Huff 'n Puff, Program kompresije. 826 00:42:56,330 --> 00:43:01,930 A onda je završio semestar s CS50 Financije, web-based aplikacija s 827 00:43:01,930 --> 00:43:06,570 kojima stvoriti eTrade-poput web stranice kupiti i prodati dionice, tako da se 828 00:43:06,570 --> 00:43:09,860 govore, koje zapravo povlačenjem gotovo real-time citati Yahoo! 829 00:43:09,860 --> 00:43:10,450 Finance. 830 00:43:10,450 --> 00:43:13,590 >> Ono što nismo prošle godine bila jedan problem set koji ostaje 831 00:43:13,590 --> 00:43:14,810 ipak najdraži. 832 00:43:14,810 --> 00:43:18,400 Ako ste nikada nije otišao u shuttle.cs50.net, vidjet ćete korisnika 833 00:43:18,400 --> 00:43:19,670 sučelje nešto poput ovoga. 834 00:43:19,670 --> 00:43:23,530 No, prije dvije godine, klasa provodi, koristeći Google Maps i 835 00:43:23,530 --> 00:43:28,570 Google Earth plug-in i malo od pamet s vožnje oko kampusa, 836 00:43:28,570 --> 00:43:33,290 tako da je cilj ove igre je, kao što možete vidjeti neke od lica, 837 00:43:33,290 --> 00:43:37,530 se voziti okolo u potrazi za kampusu osoblja, nastavna momci i CAS, i 838 00:43:37,530 --> 00:43:40,080 Kada to učinite, stavljajući ih na svoj shuttle bus. 839 00:43:40,080 --> 00:43:44,035 Nitko od njih zapravo čini da se ovdje, tako da ćemo unesite varati kod. 840 00:43:44,035 --> 00:43:47,150 >> [Smijeh] 841 00:43:47,150 --> 00:43:48,430 >> DAVID Malan: Tu smo. 842 00:43:48,430 --> 00:43:49,240 U redu. 843 00:43:49,240 --> 00:43:51,750 I ovdje je sada osoblja začinjena cijelom kampusu. 844 00:43:51,750 --> 00:43:54,530 I kao što možete vidjeti, na desnu strani zaslona, ​​shuttle bus 845 00:43:54,530 --> 00:43:55,510 ima prazna mjesta. 846 00:43:55,510 --> 00:43:59,000 A cilj je bio napisati broj s kojim se simulira ovu 847 00:43:59,000 --> 00:44:01,790 vožnje i branje gore i ispustite isključiti putnika. 848 00:44:01,790 --> 00:44:04,960 Taj jedan, također, koristeći jezik zove JavaScript. 849 00:44:04,960 --> 00:44:10,030 Dakle, shvatite da programi kao što je to volja biti na našoj istom putanjom to 850 00:44:10,030 --> 00:44:10,910 godine, kao i. 851 00:44:10,910 --> 00:44:13,640 >> U smislu, sad, dodatne potpore, imamo radno vrijeme. 852 00:44:13,640 --> 00:44:16,520 Kao što ste mogli vidjeti u vlastitom domu blagovaonica ili uzivo, 853 00:44:16,520 --> 00:44:19,280 mi ćemo biti u kući blagovaona Dvorane četiri noći tjedno - 854 00:44:19,280 --> 00:44:24,450 Leverett, Pfoho, Eliot i Annenberg ove godine, od 20:00 do 23:00. 855 00:44:24,450 --> 00:44:26,830 I što smo mislili da ćemo učiniti ove godine je nešto malo drugačiji. 856 00:44:26,830 --> 00:44:29,650 >> Ako ste čuli rumblings prošle godine to je malo previše stresan, ovo 857 00:44:29,650 --> 00:44:32,800 Ovogodišnji radno vrijeme, kao što ćemo opisati sljedeći tjedan, će biti više organskih, 858 00:44:32,800 --> 00:44:36,900 kojom prilikom dolaska, vi ćete biti otpremaju u jednom određenom stolu 859 00:44:36,900 --> 00:44:39,860 gdje je više osoblje čekaju, a mi ćemo napraviti stvari puno više 860 00:44:39,860 --> 00:44:40,440 organski. 861 00:44:40,440 --> 00:44:43,740 Nema više čekanja, nema više iPad, ali a imaju intimnije 862 00:44:43,740 --> 00:44:47,300 Razgovori oko stola od samo osam ili tako studenata, kako bismo 863 00:44:47,300 --> 00:44:50,880 približan dojam ono što inače će biti mnogo manji klase. 864 00:44:50,880 --> 00:44:54,120 >> Nudimo, kao i, te stvari mi zove Walkthroughs, video sniman u 865 00:44:54,120 --> 00:44:57,330 unaprijed od strane jednog od tečaja učenja Momci, Zamyla, u kojoj je 866 00:44:57,330 --> 00:45:00,690 provest će vas kroz tjedan problema garniture, koje nude savjete i trikove za 867 00:45:00,690 --> 00:45:02,640 izazovima koji je pred njima. 868 00:45:02,640 --> 00:45:06,230 A s druge strane, nakon što je problematična setovi su zbog, ove godine, također ćemo objaviti 869 00:45:06,230 --> 00:45:09,100 mali isječak nazovite Obdukcijski da zapravo vas kroz 870 00:45:09,100 --> 00:45:13,630 predstavnička rješenja, i dobro i loša, preko koje možete zaključiti koliko je 871 00:45:13,630 --> 00:45:17,550 što bi moglo imati ili bi trebao imati provodi svoje rješenje. 872 00:45:17,550 --> 00:45:20,500 >> A što ćemo ponuditi za prvi put i ove godine, posebice 873 00:45:20,500 --> 00:45:23,420 Za one studente koji se poslužiti Tečaj je od drugog 874 00:45:23,420 --> 00:45:28,580 resursima, ali ipak se bore Svi previše, kolegij 875 00:45:28,580 --> 00:45:33,030 Sam će upariti one studente, kao sredstva dopuštaju, s tutora tako da 876 00:45:33,030 --> 00:45:35,840 imate puno intimnije priliku od kuće blagovaonice 877 00:45:35,840 --> 00:45:38,700 omogućilo jedan-na-jedan pomoć. 878 00:45:38,700 --> 00:45:42,780 >> Sada konačni pogled na neke od krajnjih igara u očima. 879 00:45:42,780 --> 00:45:44,580 Možda ćete biti upoznati s CS50 Hackathon. 880 00:45:44,580 --> 00:45:48,120 Pa, dolazi u prosincu ove godine, od 8:00 PM do 7:00, na početku 881 00:45:48,120 --> 00:45:51,410 Čitanje razdoblje, bit će prilika druženja s vršnjacima - 882 00:45:51,410 --> 00:45:53,130 to će biti oko 21:00 - 883 00:45:53,130 --> 00:45:56,550 tijekom koje ste zaroniti u vaš konačni Provedba projekta uz 884 00:45:56,550 --> 00:45:59,910 kolege, prijatelji i hrane. 885 00:45:59,910 --> 00:46:03,680 To će biti oko 01:00, kada je prva serija od hrane stigli. 886 00:46:03,680 --> 00:46:08,470 A to je oko 04:00 da Konkretno godine na CS50 Hackathon. 887 00:46:08,470 --> 00:46:12,000 >> Ali istina Vrhunac tečaja je značilo da u CS50 sajmu, campus-wide 888 00:46:12,000 --> 00:46:15,790 Izložba svojim posljednjim projektima, na koje obitelj i prijatelji su svi 889 00:46:15,790 --> 00:46:18,730 pozvani, kao regrut i našim naši prijatelji iz industrije. 890 00:46:18,730 --> 00:46:22,170 To, na primjer, je uvid 2000-plus ljudi koji ste pohađali 891 00:46:22,170 --> 00:46:23,160 Posljednjih godina. 892 00:46:23,160 --> 00:46:27,180 Izrazi poput ove nisu neuobičajene, i slično učiniti vaš 893 00:46:27,180 --> 00:46:29,660 kolege uživati ​​u stvarima ste postigli. 894 00:46:29,660 --> 00:46:33,170 >> I doista, prema tom cilju, imamo start-of-termina događaja, kao dobro. 895 00:46:33,170 --> 00:46:37,400 Ako stvari poput ove žalbe na vas ili ti si barem znatiželjan kao što 896 00:46:37,400 --> 00:46:41,590 to, znam da je nova tradicija Tečaj se zove CS50 Puzzle dan. 897 00:46:41,590 --> 00:46:45,710 I to je bio pokrenut par godina doista signal na kampusu 898 00:46:45,710 --> 00:46:48,930 da informatika nije o programiranja, a to sigurno nije 899 00:46:48,930 --> 00:46:51,960 oko obuhvaćajući samo oni studenti koji imaju prethodno iskustvo. 900 00:46:51,960 --> 00:46:54,200 To je zapravo o rješavanju problema općenito. 901 00:46:54,200 --> 00:46:57,360 >> I tako Puzzle dan, tijekom posljednjih nekoliko godina, razvio u lijepo 902 00:46:57,360 --> 00:47:00,500 partnerstvo s našim prijateljima u Facebook, pri čemu tu će biti nevjerojatan 903 00:47:00,500 --> 00:47:04,830 Nagrade i pizza preko rijeke, na ja-laboratorij ovaj dolazak subota. 904 00:47:04,830 --> 00:47:09,180 Krenite na taj URL s dva ili tri prijatelji, ako želite sudjelovati 905 00:47:09,180 --> 00:47:10,830 u ovom novom tradicijom. 906 00:47:10,830 --> 00:47:14,180 >> Tako Htio bih pitati da li zadržati jednu stvar na umu, a mi imamo samo 907 00:47:14,180 --> 00:47:17,070 dvije minute isječak na kojem zatvoriti i danas. 908 00:47:17,070 --> 00:47:19,640 73% je broj zapamtiti. 909 00:47:19,640 --> 00:47:23,900 Torta je, također, će vas dočekati izvan te transepta kao što smo prekinuti samo u 910 00:47:23,900 --> 00:47:26,710 nekoliko trenutaka, što je tradicija je naravno i. 911 00:47:26,710 --> 00:47:29,860 No, to je ključ citat iz Naravno-a Nastavni plan i držati na umu. 912 00:47:29,860 --> 00:47:32,820 Ono što u konačnici važno u ovom kolegiju nije toliko gdje ćete završiti 913 00:47:32,820 --> 00:47:36,580 u odnosu na svoje kolege, ali gdje da, u 12. tjednu, završiti u odnosu na 914 00:47:36,580 --> 00:47:37,960 se u tjednu 0. 915 00:47:37,960 --> 00:47:43,670 >> Ali pogled da ćemo vas ostaviti s danas ovdje je ovo zadnje ovdje 916 00:47:43,670 --> 00:47:47,580 naš istom Daniela, koji je učinio wrdly Video maloprije. 917 00:47:47,580 --> 00:47:50,000 Ostavljam vas s ovom pogled onoga što je pred nama. 918 00:47:50,000 --> 00:47:53,360 I kao što smo to učinili, ako smo mogli CS50 Osoblje na prednjoj sobi 919 00:47:53,360 --> 00:47:57,280 doći na do pozornice slikati sve više od vizualne slike kako bi se 920 00:47:57,280 --> 00:47:59,100 ono što vas čeka u ovoj godini - 921 00:47:59,100 --> 00:48:00,350 dobivanje neugodno. 922 00:48:00,350 --> 00:48:02,200 923 00:48:02,200 --> 00:48:05,188 Mi ćemo zaključiti s ovim Ovdje na zaslonu. 924 00:48:05,188 --> 00:48:18,634 >> [Glazba svira] 925 00:48:18,634 --> 00:48:21,124 >> DAVID Malan: Ovo je CS50. 926 00:48:21,124 --> 00:50:00,226 >> [MUSIC - MATT & KIM, "U redu"] 927 00:50:00,226 --> 00:50:03,245 >> ZVUČNI 1: Volim CS50 više od mačaka. 928 00:50:03,245 --> 00:50:06,030 >> ZVUČNI 2: Whoaaaa! 929 00:50:06,030 --> 00:50:06,990 >> [Smijeh] 930 00:50:06,990 --> 00:50:08,140 >> DAVID Malan: To je, dakle, CS50. 931 00:50:08,140 --> 00:50:10,050 Mi ćemo vas vidjeti u petak. 932 00:50:10,050 --> 00:50:13,370 >> [PLJESAK i pljeskati] 933 00:50:13,370 --> 00:50:17,540 >> Narator: Na sljedećem CS50, na pozornici Demo ne ide kako je planirano. 934 00:50:17,540 --> 00:50:19,080 >> DAVID Malan: Želimo pronaći Mikea Smith je u tom telefonskom imeniku. 935 00:50:19,080 --> 00:50:20,380 Pa, ono što su tvoji instinkti? 936 00:50:20,380 --> 00:50:23,750 Možda ću skočiti otprilike na sredini telefonski imenik, pogled dolje, vidjeti da 937 00:50:23,750 --> 00:50:26,830 Ja sam na M, i sada znam da je Mike Smith nije u lijevo. 938 00:50:26,830 --> 00:50:27,840 On mora biti na desnoj strani. 939 00:50:27,840 --> 00:50:30,515 I tako u ovom trenutku, mi može doslovno suza - 940 00:50:30,515 --> 00:50:33,300 U ovom trenutku, mi bismo doslovno može suza - 941 00:50:33,300 --> 00:50:36,490 u ovom trenutku, možemo figurativno suza telefonski imenik na pola. 942 00:50:36,490 --> 00:50:38,954 >> [UKELELE drndanje]