1 00:00:00,000 --> 00:00:00,479 2 00:00:00,479 --> 00:00:10,830 >> [Музика свира] 3 00:00:10,830 --> 00:00:12,080 [МУЗИКА - РОССИНИ, "Ранз ДЕС Вацхес "од Виллиам РЕЦИТЕ] 4 00:00:12,080 --> 00:00:24,222 5 00:00:24,222 --> 00:00:25,472 >> [МУЗИКА - ЕНГЛЕСКИ победимо "МАРТ НА Свивел главама "] 6 00:00:25,472 --> 00:02:24,538 7 00:02:24,538 --> 00:02:31,510 >> [Аплауз и радосно] 8 00:02:31,510 --> 00:02:33,520 >> ДАВИД Малан: Дакле, ово је ЦС50. 9 00:02:33,520 --> 00:02:34,730 Моје име је Давид Малан. 10 00:02:34,730 --> 00:02:39,250 И 73% од вас нема претходно искуство са информатике, 11 00:02:39,250 --> 00:02:41,300 супротно ономе што можда мислите. 12 00:02:41,300 --> 00:02:45,290 Дакле, данас смо мислили да чип далеко У то непознавање, али и 13 00:02:45,290 --> 00:02:48,970 дати вам осећај, за оне од вас са више комфора, који правци 14 00:02:48,970 --> 00:02:50,550 можете ићи овог семестра. 15 00:02:50,550 --> 00:02:51,890 >> Почнимо са овим. 16 00:02:51,890 --> 00:02:55,490 Ја стварно не знам шта је унутра рачунар, мада, као и ти, 17 00:02:55,490 --> 00:02:56,780 користите је сваког дана. 18 00:02:56,780 --> 00:03:00,000 Али, то је нека врста кутије, и ту је нема много улази у њу. 19 00:03:00,000 --> 00:03:01,350 Минимално, ту је, шта? 20 00:03:01,350 --> 00:03:03,120 Вероватно кабл. 21 00:03:03,120 --> 00:03:06,640 >> И заиста, са овом један састојак, електричне енергије, изгледа да буде у стању да 22 00:03:06,640 --> 00:03:09,490 радим доста ових дана. 23 00:03:09,490 --> 00:03:12,130 Али на крају дана, ми смо морају да представљају ствари 24 00:03:12,130 --> 00:03:12,860 да нам је стало. 25 00:03:12,860 --> 00:03:15,240 Морамо да представљају информације у неком облику. 26 00:03:15,240 --> 00:03:18,365 А ти си вероватно бар магловито упознат са идејом за бинарни или 27 00:03:18,365 --> 00:03:21,370 бита неки начин, компјутери сведена на нула и јединица. 28 00:03:21,370 --> 00:03:26,320 Али, можемо да прихватимо да и најмање стави мало светла на то? 29 00:03:26,320 --> 00:03:28,880 >> Дакле, имам ове мале стоне лампе овде. 30 00:03:28,880 --> 00:03:30,450 Имам овде електричну утичницу. 31 00:03:30,450 --> 00:03:33,930 И ја ћу предложити да се унутар рачунара је најмање један од 32 00:03:33,930 --> 00:03:37,300 ове ствари, нешто способан да буде укључен или искључен. 33 00:03:37,300 --> 00:03:40,200 У овом случају, то је заиста сто лампа, али на нижем нивоу, то је нешто 34 00:03:40,200 --> 00:03:41,500 назива транзистор. 35 00:03:41,500 --> 00:03:44,730 >> Међутим, у нашем свету, то је сто лампа, тако Ја ћу да наставим и укључим ово 36 00:03:44,730 --> 00:03:47,990 у моју струју овде. 37 00:03:47,990 --> 00:03:52,970 А ја тврдим да користите овај једноставан, једноставан уређај, овај једноставни прекидач, ја 38 00:03:52,970 --> 00:03:54,850 могу да представљају информације. 39 00:03:54,850 --> 00:03:58,090 На пример, сада, ја сам представља ништа, зар не? 40 00:03:58,090 --> 00:04:01,820 Ја заступам шта зваћу 0 или лажно, супротно од нечега 41 00:04:01,820 --> 00:04:03,130 заправо био присутан. 42 00:04:03,130 --> 00:04:07,050 Али ако једноставно укључите овај прекидач, Сада сам представљао 1. 43 00:04:07,050 --> 00:04:10,720 Дакле, користите овај веома једноставан комад меморије, ако хоћете, ја могу да представљају 44 00:04:10,720 --> 00:04:11,450 информације. 45 00:04:11,450 --> 00:04:14,350 >> Сада, нажалост, мој компјутер не може да уради све то много. 46 00:04:14,350 --> 00:04:17,430 То само може да представља две вредности у целом свету - 47 00:04:17,430 --> 00:04:18,620 0 или 1. 48 00:04:18,620 --> 00:04:21,839 Али, оно што је очигледно решење, сада, ако желимо да проширимо наш компјутер 49 00:04:21,839 --> 00:04:25,120 меморије и представљају више него само 0 и 1? 50 00:04:25,120 --> 00:04:27,060 >> Па, хајде да узмемо још једну такву мало. 51 00:04:27,060 --> 00:04:30,260 Узмимо још један прекидач, још један транзистор, међутим, желите да 52 00:04:30,260 --> 00:04:31,130 мислите о томе. 53 00:04:31,130 --> 00:04:34,170 Дозволите ми да иде напред и укључим ово у мом рачунару, као добро. 54 00:04:34,170 --> 00:04:38,270 И ја ћу да тврдим, сада, да је користећи мало више електричне енергије и 55 00:04:38,270 --> 00:04:42,290 окретање више од ових прекидача и на искључен, ја могу да представљају више што 56 00:04:42,290 --> 00:04:43,020 информације. 57 00:04:43,020 --> 00:04:44,660 >> Управо сада, то је 1. 58 00:04:44,660 --> 00:04:48,120 Ако желим да се сада представљају 2, ја могу ово да урадим. 59 00:04:48,120 --> 00:04:51,510 Али обично, конвенција, као што ћемо на крају види, мораће да урадим ово. 60 00:04:51,510 --> 00:04:55,260 Дакле, ово је 0, то је 1. 61 00:04:55,260 --> 00:04:56,720 То би било 2. 62 00:04:56,720 --> 00:04:59,920 И није изненађујуће, то би било 3. 63 00:04:59,920 --> 00:05:02,610 >> Дакле, на овај начин, ипак, може да рачунамо се још више? 64 00:05:02,610 --> 00:05:06,500 Ако добијем трећи мало, трећи прекидач, што је највећи број ја сада 65 00:05:06,500 --> 00:05:09,720 Одбројавање до од 0? 66 00:05:09,720 --> 00:05:12,020 Дакле, ако сам 7 са почетком у 0, зар не? 67 00:05:12,020 --> 00:05:15,980 Јер ако укључите ову светло и заправо укључим ово трећа и коначна 68 00:05:15,980 --> 00:05:20,090 светлост у мој електричну утичницу овде, онда имам могућност да представљају 69 00:05:20,090 --> 00:05:24,930 било од две вредности, овде су две вредности овде, овде две вредности - 70 00:05:24,930 --> 00:05:32,610 и да могу да представљају 2 пута 2 пута 2, или осам могућих вредности. 71 00:05:32,610 --> 00:05:36,340 А ако почнем рачуноводство на 0, па то је 0, 1, 2, 3, 4, 5, 6, 7. 72 00:05:36,340 --> 00:05:37,480 >> Дакле, бинарни. 73 00:05:37,480 --> 00:05:39,420 То је заиста тако једноставно. 74 00:05:39,420 --> 00:05:41,930 И ја бих тврде да је то заправо прилично познати већини 75 00:05:41,930 --> 00:05:43,180 сви у овој соби. 76 00:05:43,180 --> 00:05:45,710 Дозволите ми да иде напред и отворите Мало текст едитор овде. 77 00:05:45,710 --> 00:05:49,040 >> И можда се сећате из разреда школе које смо имали на стотине ствари као што 78 00:05:49,040 --> 00:05:51,970 место, десетине место, а они место. 79 00:05:51,970 --> 00:05:55,040 И сећам се да ако сте имали неку децималу број, као нешто насумично 80 00:05:55,040 --> 00:05:59,470 као 123, што би у суштини пише да се у форми 81 00:05:59,470 --> 00:06:00,450 од ове три колоне. 82 00:06:00,450 --> 00:06:04,070 И зашто је 1, 2, 3 оно знамо као 123? 83 00:06:04,070 --> 00:06:11,220 Па, у колони са леве стране, имамо један 100 плус два 10с, тако да је 120, 84 00:06:11,220 --> 00:06:14,250 плус три 1с, тако да је то 123. 85 00:06:14,250 --> 00:06:17,990 >> Сада овај свет да смо управо осветљен је потпуно исти као и 86 00:06:17,990 --> 00:06:21,150 Били сте упознати са годинама, Осим сада, наше колоне 87 00:06:21,150 --> 00:06:22,060 нису овлашћења 10. 88 00:06:22,060 --> 00:06:23,780 Они су само овлаштења 2. 89 00:06:23,780 --> 00:06:27,830 Дакле, имајући у виду да је они место, ово ће бити место Двојке, ово је 90 00:06:27,830 --> 00:06:29,540 Биће четворке место. 91 00:06:29,540 --> 00:06:33,260 >> И зато ја само користим најједноставнији механизама да се ствари 92 00:06:33,260 --> 00:06:37,100 и искључивање - струја протиче или се електрична енергија не тече - 93 00:06:37,100 --> 00:06:40,880 Немам баш имају исти експресивна Распон као 0 до девет. 94 00:06:40,880 --> 00:06:43,270 Идемо да га супер једноставно у овом свету рачунара. 95 00:06:43,270 --> 00:06:45,060 Имам само 0 или 1 - 96 00:06:45,060 --> 00:06:47,890 искључивање и укључивање, лажне или истините. 97 00:06:47,890 --> 00:06:52,610 >> И шта ја сада представља је 1, 1, 1, јер је сваки од њих 98 00:06:52,610 --> 00:06:54,000 светла светли. 99 00:06:54,000 --> 00:06:59,600 Па, то ми даје једну плус једну 4 2, па то је 6, плус један 1, а то је 7. 100 00:06:59,600 --> 00:07:03,450 И да ли то ерго низ од три бита представља број 7.. 101 00:07:03,450 --> 00:07:06,330 >> Дакле, све ово време, унутар вашег рачунар, су било који број 102 00:07:06,330 --> 00:07:08,090 транзистори, било који број битова. 103 00:07:08,090 --> 00:07:10,380 Али на крају дана, ми смо може представљати информације 104 00:07:10,380 --> 00:07:12,560 као и да једноставно. 105 00:07:12,560 --> 00:07:16,770 Сада, нажалост, само смо избројали до 7. у ЦС50 до сада, али 106 00:07:16,770 --> 00:07:18,550 Надам се да можемо да мало боље од тога. 107 00:07:18,550 --> 00:07:19,550 И заиста можемо. 108 00:07:19,550 --> 00:07:23,570 >> Претпоставимо да само ми као људи самовољно одлучили да идемо 109 00:07:23,570 --> 00:07:28,750 да се удружују попут бројева 1 и 2, 3, 4, 5, 6, 7, са специфичним словима 110 00:07:28,750 --> 00:07:29,410 писмо. 111 00:07:29,410 --> 00:07:32,350 И из историјских разлога, ја ћу да почети нешто произвољно, али ја сам 112 00:07:32,350 --> 00:07:36,880 рећи, људи, ми ћемо одлучује као стандард, глобално, да 113 00:07:36,880 --> 00:07:43,200 65 представља број слова А. 66 ће представљати Б. тачка, тачка, тачка. 114 00:07:43,200 --> 00:07:45,140 90 представљаће слово З. 115 00:07:45,140 --> 00:07:48,000 >> И хајде да претпоставимо, ако смо заиста ставили неке мислио на њу, могли бисмо доћи до 116 00:07:48,000 --> 00:07:50,860 са бројевима за узвика и мала слова, и заиста, 117 00:07:50,860 --> 00:07:52,710 други људи су урадили за нас. 118 00:07:52,710 --> 00:07:56,410 Дакле, сада смо имали битова са којима можемо представљају бројеви, бројеви са којима 119 00:07:56,410 --> 00:08:00,130 можемо да представљају слова, а са Писма могу сада почнете да пишете 120 00:08:00,130 --> 00:08:02,650 пошту и штампање знакова на екрану. 121 00:08:02,650 --> 00:08:05,850 >> Тако да ме позове, ако могу, осам храбри волонтери - 122 00:08:05,850 --> 00:08:09,200 који не само да не смета појављује на камеру, али на интернету - 123 00:08:09,200 --> 00:08:13,130 да дођу овде и представљају осам такав бита, а не ове три. 124 00:08:13,130 --> 00:08:14,380 Дакле, шта је са један, два? 125 00:08:14,380 --> 00:08:16,290 Како око три? 126 00:08:16,290 --> 00:08:20,230 Како би било четири у светлу плава, пет на крају? 127 00:08:20,230 --> 00:08:21,250 О неким преко овде? 128 00:08:21,250 --> 00:08:25,320 Шест испред, седам испред, и осам испред, као добро. 129 00:08:25,320 --> 00:08:29,050 >> Зато сам тако једноставно десило да дођу припремљени уз гомилу цедуљица. 130 00:08:29,050 --> 00:08:34,150 И на овим папирићима су бројеви који представљају оно колоне 131 00:08:34,150 --> 00:08:35,809 ви ће представљати. 132 00:08:35,809 --> 00:08:36,740 Тако да ће бити - како ти је име? 133 00:08:36,740 --> 00:08:37,570 >> СТУДЕНТ: Ана Леах. 134 00:08:37,570 --> 00:08:40,370 >> ДАВИД Малан: Ана Леах, ти ће бити 128С колона. 135 00:08:40,370 --> 00:08:41,059 Ви сте? 136 00:08:41,059 --> 00:08:41,510 >> СТУДЕНТ: Крис. 137 00:08:41,510 --> 00:08:43,620 >> ДАВИД Малан: Цхрис ће бити 64с колона. 138 00:08:43,620 --> 00:08:44,070 Ви сте? 139 00:08:44,070 --> 00:08:44,540 >> СТУДЕНТ: Дан. 140 00:08:44,540 --> 00:08:46,970 >> ДАВИД Малан: Дан ће бити 32с колона. 141 00:08:46,970 --> 00:08:47,470 >> СТУДЕНТ: Прамит. 142 00:08:47,470 --> 00:08:49,430 >> ДАВИД Малан: Прамит ће бити 16с колона. 143 00:08:49,430 --> 00:08:50,290 >> СТУДЕНТ: Лилиан. 144 00:08:50,290 --> 00:08:51,904 >> ДАВИД Малан: Лилијан ће бити 8с. 145 00:08:51,904 --> 00:08:52,768 >> СТУДЕНТ: Џил. 146 00:08:52,768 --> 00:08:55,025 >> ДАВИД Малан: Џил ће бити 4С колона. 147 00:08:55,025 --> 00:08:55,400 >> СТУДЕНТ: Мери. 148 00:08:55,400 --> 00:08:57,000 >> ДАВИД Малан: Марија ће бити 2с, а? 149 00:08:57,000 --> 00:08:57,470 >> СТУДЕНТ: Дејвид. 150 00:08:57,470 --> 00:08:59,220 >> ДАВИД Малан: Дејвид ће бити 1с колона. 151 00:08:59,220 --> 00:09:02,030 Дакле, ако ви момци могли би мало напред, тако да сви могу да виде. 152 00:09:02,030 --> 00:09:05,370 Оно што ви не видите да је на назад од тих цедуљица је 153 00:09:05,370 --> 00:09:09,760 мало Цхеат Схеет који је о томе да упутити ових осам бита или 154 00:09:09,760 --> 00:09:12,380 подигну руку или не подигну руку. 155 00:09:12,380 --> 00:09:14,100 Ако је њихова рука иде горе, они су представља 1. 156 00:09:14,100 --> 00:09:17,120 Ако је њихова рука остаје доле, они су представља 0. 157 00:09:17,120 --> 00:09:21,410 >> У међувремену, ми смо публика треба да буде у стању да схвати, на основу тога 158 00:09:21,410 --> 00:09:26,490 мапирање, шта седам слова ових људи се спремају да нацртам. 159 00:09:26,490 --> 00:09:29,700 Дакле, у само једном тренутку, ти ћеш прочитате први ред на задњем 160 00:09:29,700 --> 00:09:32,880 Ваша Цхеат Схеет, а ти или си ће да се подигне или не подигне руку. 161 00:09:32,880 --> 00:09:35,710 Ако сте 1, да подигне, ако ти си 0, ти стојиш 162 00:09:35,710 --> 00:09:38,594 неспретно, само тако. 163 00:09:38,594 --> 00:09:40,386 Го. 164 00:09:40,386 --> 00:09:43,945 Који број, пре свега, ови момци представљају? 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, зар не? 168 00:09:49,560 --> 00:09:52,400 Имамо 1 у колони 64с, 1 у колони 2с. 169 00:09:52,400 --> 00:09:56,340 То ми даје 66, тако да се појављује да се представља Б. Дакле 170 00:09:56,340 --> 00:09:57,075 ви сте написали - 171 00:09:57,075 --> 00:09:58,300 У реду, то је довољно. 172 00:09:58,300 --> 00:09:59,430 Б. 173 00:09:59,430 --> 00:10:01,610 >> Тако да сада идемо на наш други писмо. 174 00:10:01,610 --> 00:10:03,530 Го. 175 00:10:03,530 --> 00:10:06,860 Ко је најбржи у математици овде? 176 00:10:06,860 --> 00:10:07,750 Тако 79. 177 00:10:07,750 --> 00:10:11,840 Опет, ако се саберу све колоне у којима је 1, тренутно, само 178 00:10:11,840 --> 00:10:14,840 као што смо раније радили са најједноставнији примера 7, сада 179 00:10:14,840 --> 00:10:16,140 добити број 79. 180 00:10:16,140 --> 00:10:19,910 Која према нашем мапирања је слово О. Дакле, скоро смо стигли. 181 00:10:19,910 --> 00:10:22,590 Б, О. И на крају, иди. 182 00:10:22,590 --> 00:10:26,420 183 00:10:26,420 --> 00:10:30,120 >> Шта они сада представљају? 184 00:10:30,120 --> 00:10:31,370 Мање консензус. 185 00:10:31,370 --> 00:10:34,660 186 00:10:34,660 --> 00:10:36,460 То је само апсолутно жамор. 187 00:10:36,460 --> 00:10:40,090 Да, то је у ствари 87. 188 00:10:40,090 --> 00:10:40,490 Добро. 189 00:10:40,490 --> 00:10:44,480 >> Дакле, ако ми сада мап то назад до - хајде да почети позивом АСЦИИ табелу, 190 00:10:44,480 --> 00:10:46,450 Амерички стандардни код за Размену информација. 191 00:10:46,450 --> 00:10:47,700 То нам даје писмо - 192 00:10:47,700 --> 00:10:51,260 193 00:10:51,260 --> 00:10:54,810 не "бо", али "лук". И то је савршен знак за ви да се лук 194 00:10:54,810 --> 00:10:56,100 глава и на леђима. 195 00:10:56,100 --> 00:10:56,980 Пуно Вам хвала. 196 00:10:56,980 --> 00:10:57,886 >> [Апплаусе] 197 00:10:57,886 --> 00:10:59,136 >> ДАВИД Малан: Можете да их задржи. 198 00:10:59,136 --> 00:11:01,850 199 00:11:01,850 --> 00:11:05,942 Иако заправо, да ли би ико као сто лампе, такође? 200 00:11:05,942 --> 00:11:07,300 >> [ХООТ публике] 201 00:11:07,300 --> 00:11:08,390 >> ДАВИД Малан: Стона лампа? 202 00:11:08,390 --> 00:11:10,850 >> [Смех] 203 00:11:10,850 --> 00:11:11,860 >> ДАВИД Малан: Стварно? 204 00:11:11,860 --> 00:11:13,230 Стоне лампе за све? 205 00:11:13,230 --> 00:11:14,310 У реду. 206 00:11:14,310 --> 00:11:20,990 Значи од веома најједноставније принципи, сада смо не само да рачунају 207 00:11:20,990 --> 00:11:24,750 горе од 0 па све до 7, ми смо претпоставља да само бацањем више 208 00:11:24,750 --> 00:11:28,080 бита или више светла или више транзистора на овај проблем, можемо 209 00:11:28,080 --> 00:11:32,680 представљају све веће и веће бројеве, и Ерго, све већи и већи опсег 210 00:11:32,680 --> 00:11:33,780 писма, као што су енглески. 211 00:11:33,780 --> 00:11:37,770 И само узмимо на веру за данас да слично можемо почети да 212 00:11:37,770 --> 00:11:42,220 представљају графике и видео и било број других медија са којима смо 213 00:11:42,220 --> 00:11:43,610 познато данас. 214 00:11:43,610 --> 00:11:49,240 >> Дакле, ово је ЦС50, а у овој класи поред вас су, опет, веома много 215 00:11:49,240 --> 00:11:53,050 вршњаци који имају као мало доживљавају као ти. 216 00:11:53,050 --> 00:11:57,730 И ја то помињем само зато сасвим Често, укључујући и недавно, један од 217 00:11:57,730 --> 00:12:01,860 бруцош саветовање догађаје и на Прошлог пролећа је студент друге године саветовање 218 00:12:01,860 --> 00:12:06,420 догађај, често чујемо студената одричу када долази до ЦС сто, па, 219 00:12:06,420 --> 00:12:10,070 Размишљао сам о узимању ово интро класе, али нисам баш 220 00:12:10,070 --> 00:12:11,120 компјутер особа. 221 00:12:11,120 --> 00:12:13,220 Или, али сви сигурно зна више од мене. 222 00:12:13,220 --> 00:12:17,340 И сам ставио ово у највећем фонту могуће, да пренесе ову поруку да 223 00:12:17,340 --> 00:12:18,730 То је, у ствари, није случај. 224 00:12:18,730 --> 00:12:21,100 >> А ако се питате, треба Ја, у ствари, бити овде? 225 00:12:21,100 --> 00:12:25,950 Схватите да не само да је овај курс је наслов Увод у рачунар 226 00:12:25,950 --> 00:12:31,740 Наука је Увод у рачунар Наука И. Дакле заиста постоји 227 00:12:31,740 --> 00:12:33,170 Други такав увод. 228 00:12:33,170 --> 00:12:35,390 Дакле, ви нисте, у ствари, на погрешном месту. 229 00:12:35,390 --> 00:12:39,000 А међу циљевима које имам за данас су Сваки такав да ублажи недоумице 230 00:12:39,000 --> 00:12:42,430 можда има, али и да се сликају слику о томе шта је у продавници за 231 00:12:42,430 --> 00:12:45,720 ученици мање и удобније подједнако у овом курсу. 232 00:12:45,720 --> 00:12:49,320 >> Али прво, реч о једном од милостиње Ви имате данас, међу којима 233 00:12:49,320 --> 00:12:50,780 неколико најчешћих питања. 234 00:12:50,780 --> 00:12:54,290 Прошло је наша визија за неко време сада да уведе нови оцењивање 235 00:12:54,290 --> 00:12:57,010 опција у овом курсу - Наиме, САТ / УНСАТ. 236 00:12:57,010 --> 00:13:01,930 Филозофски за мене, то је много много, много важније да 237 00:13:01,930 --> 00:13:05,050 ученика у овом разреду укључе у материјал, бити изазван 238 00:13:05,050 --> 00:13:09,800 материјал, и бриге далеко, далеко мање о механику стварних резултата 239 00:13:09,800 --> 00:13:12,590 и слово успеху на семестар крај, али истински прихвате 240 00:13:12,590 --> 00:13:13,970 Курс и његов материјал. 241 00:13:13,970 --> 00:13:18,140 И стварно то осећа, генерално, за оно што је занимљиво за њих, да 242 00:13:18,140 --> 00:13:21,390 осећају изазов и награђени, али без страха од неуспеха. 243 00:13:21,390 --> 00:13:25,030 >> И заиста, ово је такође периодичан тема у овом и другим уводни 244 00:13:25,030 --> 00:13:28,680 курсеви у другим областима, да имате овај страх када је у питању 245 00:13:28,680 --> 00:13:31,040 стављајући прсте у нечије непознатим водама. 246 00:13:31,040 --> 00:13:34,880 Ја сам лично, још 1995, била бруцош. 247 00:13:34,880 --> 00:13:37,990 Је био веома сам фокусиран на што Влада концентратор овде. 248 00:13:37,990 --> 00:13:41,060 И још увек сам одрастао уз мало интереса у рачунарству. 249 00:13:41,060 --> 00:13:42,180 Увек сам био радознао. 250 00:13:42,180 --> 00:13:47,610 >> Али тада, чак, имао сам страх од чак и одскочна нога у ЦС50, толико 251 00:13:47,610 --> 00:13:49,420 тако да нисам ни куповати је бруцош. 252 00:13:49,420 --> 00:13:53,460 И једини разлог зашто сам ставио ногу у Врата студент друге године, јер сам био 253 00:13:53,460 --> 00:13:55,340 било дозвољено да то прошао / пао. 254 00:13:55,340 --> 00:13:58,920 Али, чак и пасс / фаил потребно да добијем храброст да закажете 255 00:13:58,920 --> 00:14:01,970 са професором Кернехан у то време, да ову велику папир, и питајте 256 00:14:01,970 --> 00:14:04,470 га за његов потпис и његов дозвола за истраживање 257 00:14:04,470 --> 00:14:05,700 ове непознате воде. 258 00:14:05,700 --> 00:14:09,030 >> И то није помогло у последњих неколико година да када радите у ЦС50, када смо 259 00:14:09,030 --> 00:14:12,500 некад пролази / не, слично би десетине или стотине својим друговима 260 00:14:12,500 --> 00:14:15,970 морати да дође до, не дај Боже, у Предња Сандерс овим обрасцем, који 261 00:14:15,970 --> 00:14:19,520 у неким главама представља немогућност, Усуђујем се да кажем, да изврши 262 00:14:19,520 --> 00:14:20,800 су ниво својих вршњака. 263 00:14:20,800 --> 00:14:23,410 Што је смешно, али ја мислим то је то менталитет. 264 00:14:23,410 --> 00:14:27,210 И никад није било у овој култури на сателит / УНСАТ, или прошао / пао више 265 00:14:27,210 --> 00:14:30,610 генерално, у овом курсу, или стварно на том универзитету. 266 00:14:30,610 --> 00:14:32,310 >> Дакле, ове године смо променили то. 267 00:14:32,310 --> 00:14:35,630 Ја бих био пресретан половина Ова класа или више завршена 268 00:14:35,630 --> 00:14:38,700 тако да узима ЦС50 САТ / УНСАТ. 269 00:14:38,700 --> 00:14:42,130 У року од годину дана, то би било дивно ако скоро сви. 270 00:14:42,130 --> 00:14:44,410 Након тога можда ћемо радити на слова разреда на Харварду 271 00:14:44,410 --> 00:14:45,480 Колеџ уопште. 272 00:14:45,480 --> 00:14:48,900 Али за сада, ми ћемо то урадити у оквиру нашег сопствене сфере, и ја бих од срца 273 00:14:48,900 --> 00:14:53,400 Препоручујемо вам да прегледате те честа и постављају питања како вам одговара, тако да 274 00:14:53,400 --> 00:14:58,000 надамо се, за разлику од мене, неће сасвим имају тај исти фактор страха кад 275 00:14:58,000 --> 00:15:01,040 истражујући шта је вероватно непознато место. 276 00:15:01,040 --> 00:15:02,786 >> Дакле, шта је ЦС50? 277 00:15:02,786 --> 00:15:06,150 То је увод у интелектуалне предузећа од рачунара 278 00:15:06,150 --> 00:15:07,700 наука и уметност програмирања. 279 00:15:07,700 --> 00:15:08,770 Али, шта то заиста значи? 280 00:15:08,770 --> 00:15:12,510 >> Па, до сада, ми смо разговарали веома кратко око представља информацију. 281 00:15:12,510 --> 00:15:15,070 Али, претпоставимо да смо ми у ствари желимо да уради нешто са њим. 282 00:15:15,070 --> 00:15:17,890 Треба да се уведе појам оно што ћемо назвати алгоритма. 283 00:15:17,890 --> 00:15:21,540 Алгоритам је процедура, процеса, скуп инструкција за 284 00:15:21,540 --> 00:15:22,780 радиш нешто. 285 00:15:22,780 --> 00:15:25,620 >> И алгоритам може бити нешто супер једноставно. 286 00:15:25,620 --> 00:15:28,660 На пример, пример са којима су неки од ћете можда бити познато је ово 287 00:15:28,660 --> 00:15:29,350 ствар овде. 288 00:15:29,350 --> 00:15:32,510 Дакле, ова књига овде је све више датум, али некада давно, она 289 00:15:32,510 --> 00:15:34,720 садржи много имена и бројеве телефона. 290 00:15:34,720 --> 00:15:37,710 И заиста, ако желим да пронађе неко у овом именику - 291 00:15:37,710 --> 00:15:39,800 рецимо, неког по имену Мајк Смит - 292 00:15:39,800 --> 00:15:43,810 Сам могао наћи Мајк Смит у сваком броју на прилично једноставан начин. 293 00:15:43,810 --> 00:15:47,700 Могао бих почети на почетку и пређите на страницу 1, не постоји. 294 00:15:47,700 --> 00:15:49,240 Страна 2, не постоји. 295 00:15:49,240 --> 00:15:49,960 Страна 3. 296 00:15:49,960 --> 00:15:53,430 Да ли је то алгоритам, који се процес, зар не? 297 00:15:53,430 --> 00:15:54,620 >> Дакле, тачно је, зар не? 298 00:15:54,620 --> 00:15:58,070 Некако сам идиот јер то раде у који начин, али на крају ћу 299 00:15:58,070 --> 00:16:02,670 наћи С презиме, и надам се Мајк је у том делу, а ја ћу постати 300 00:16:02,670 --> 00:16:04,100 урадио са својим алгоритмом. 301 00:16:04,100 --> 00:16:05,440 Али сигурно није интуитивно. 302 00:16:05,440 --> 00:16:08,020 Скоро сваки разуман човек на ово соба не би урадио. 303 00:16:08,020 --> 00:16:10,180 Шта би ти урадио? 304 00:16:10,180 --> 00:16:11,480 >> Би сте отишли ​​право у средини, зар не? 305 00:16:11,480 --> 00:16:12,000 Отприлике на средини. 306 00:16:12,000 --> 00:16:16,310 И схватите, ох, то су госпођа Дакле Мајк Смит, презиме као Смит, 307 00:16:16,310 --> 00:16:19,050 не, јасно, а затим у Лева половина књиге. 308 00:16:19,050 --> 00:16:21,040 Он мора бити према С је у праву. 309 00:16:21,040 --> 00:16:24,090 И у овом тренутку, иако већина нас не ради то у стварности, можемо 310 00:16:24,090 --> 00:16:27,125 буквално поцепати овај проблем на пола. 311 00:16:27,125 --> 00:16:27,640 >> [ЦХЕЕРИНГ и аплауз] 312 00:16:27,640 --> 00:16:28,950 >> ДАВИД Малан: Хвала. 313 00:16:28,950 --> 00:16:30,150 >> [ЦХЕЕРИНГ и аплауз] 314 00:16:30,150 --> 00:16:34,660 >> ДАВИД Малан: Ви буквално можете да поцепа ово Проблем на пола, остављајући ме, 315 00:16:34,660 --> 00:16:36,120 буквално, проблем готово упола мањи. 316 00:16:36,120 --> 00:16:39,750 Дакле, ако ова књига је телефон - и то Вероватно је - око 1.000 страна, сада 317 00:16:39,750 --> 00:16:40,840 то је само 500. 318 00:16:40,840 --> 00:16:44,710 Ако то урадим и опет схватам, ох, Проклетство, ја отишао предалеко, ја сам у Тс 319 00:16:44,710 --> 00:16:46,480 секција, ја слично могу - 320 00:16:46,480 --> 00:16:48,030 фигуративно или буквално - 321 00:16:48,030 --> 00:16:50,260 рип телефонског именика - то је заправо био много лакше то време. 322 00:16:50,260 --> 00:16:53,610 Ја буквално могу да снимају у именику на пола, остављајући ме сада са 323 00:16:53,610 --> 00:16:55,186 не 1.000, не 500 - 324 00:16:55,186 --> 00:16:56,680 250 страна. 325 00:16:56,680 --> 00:17:00,210 И ја могу да идем 125, а половина од тога, и пола од тога, и пола од тога, 326 00:17:00,210 --> 00:17:04,760 док коначно ћу остати са само једна страна. 327 00:17:04,760 --> 00:17:06,430 >> [Смех] 328 00:17:06,430 --> 00:17:07,589 >> Малан ДАВИД: То је Ја не на део. 329 00:17:07,589 --> 00:17:10,400 Једна једина страница на којој Мајк надам се. 330 00:17:10,400 --> 00:17:14,630 Сада су ти различити алгоритми могу бити врста оцењује и процењује у 331 00:17:14,630 --> 00:17:15,270 различите начине. 332 00:17:15,270 --> 00:17:17,300 Први је био врло линеаран, зар не? 333 00:17:17,300 --> 00:17:18,500 Окрените страницу, погледајте за Мике. 334 00:17:18,500 --> 00:17:19,630 Окрените страницу, погледајте за Мике. 335 00:17:19,630 --> 00:17:20,560 То је врло линеаран. 336 00:17:20,560 --> 00:17:23,339 Ако постоји још једна страна у телефону књига, вероватно ће ме одвести 337 00:17:23,339 --> 00:17:27,380 један други, још једна јединица времена, Међутим, ми смо израчунавања времена. 338 00:17:27,380 --> 00:17:32,470 >> Тако да могу да имају овако ову линију овде, при чему као величина 339 00:17:32,470 --> 00:17:34,700 Проблем се повећава с лева на десно - 340 00:17:34,700 --> 00:17:37,480 именик се смањује на већи - 341 00:17:37,480 --> 00:17:41,080 и време ће се повећати на вертикална оса, већи 342 00:17:41,080 --> 00:17:42,030 Именик је. 343 00:17:42,030 --> 00:17:46,180 Тако је н само општи променљива која компјутерски научници користе да представља 344 00:17:46,180 --> 00:17:48,210 неке вредности, неки број. 345 00:17:48,210 --> 00:17:50,740 Тако ће н линеарно повећање. 346 00:17:50,740 --> 00:17:53,040 Двапут величину именику, то је ће ме узети дупло више 347 00:17:53,040 --> 00:17:54,780 време, највероватније, наћи Мике. 348 00:17:54,780 --> 00:17:56,390 >> Сада сам могао бити паметан о томе, зар не? 349 00:17:56,390 --> 00:17:57,800 Ја сам се брзо досадно. 350 00:17:57,800 --> 00:17:58,910 Да су то урадили по двоје. 351 00:17:58,910 --> 00:18:01,870 Дакле две странице, па четири, затим шест, затим осам. 352 00:18:01,870 --> 00:18:05,220 И ја сам могао да почне да лети кроз њу мало брже, мада мали ризик од 353 00:18:05,220 --> 00:18:09,210 пребацујеш Мајк, али то није крива ће бити толико различити. 354 00:18:09,210 --> 00:18:12,550 И даље ће бити права линија, али мало брже. 355 00:18:12,550 --> 00:18:13,710 >> Али, шта сам урадио? 356 00:18:13,710 --> 00:18:15,845 Ја сам заправо урадио нешто фундаментално боље. 357 00:18:15,845 --> 00:18:21,990 Постигао сам оно што ћемо назвати логаритамске време, лог н, при чему ова зелена 358 00:18:21,990 --> 00:18:27,730 линија има много, много, много мање Страигхт Едге на њега. 359 00:18:27,730 --> 00:18:33,050 А уместо тога, она сугерише, јер некако прилази бесконачност икада тако постепено, 360 00:18:33,050 --> 00:18:36,700 да сам заиста могао да од 1.000 страница именик, удвостручи своју величину 361 00:18:36,700 --> 00:18:39,610 следеће године - јер претпостављам много више људи се селе у град. 362 00:18:39,610 --> 00:18:43,250 >> Тако да сада имам 2.000 страна, али како много више корака је да паметнији 363 00:18:43,250 --> 00:18:45,200 Алгоритам ће трајати? 364 00:18:45,200 --> 00:18:46,060 Само један. 365 00:18:46,060 --> 00:18:48,060 Мислим, то је моћна ствар. 366 00:18:48,060 --> 00:18:51,400 Ако одемо на 4.000 страна следеће године, који ће ме одвести 367 00:18:51,400 --> 00:18:53,020 Само још два корака. 368 00:18:53,020 --> 00:18:56,500 Дакле, можете да баците све већа и већа Проблеми у мене, а не за разлику Интернету је 369 00:18:56,500 --> 00:18:59,560 бацање веће и веће проблеме сваког дана у гооглес и Фацебоокс од 370 00:18:59,560 --> 00:19:01,590 свет, и то није тако велика ствар. 371 00:19:01,590 --> 00:19:05,840 Зато сам ставио више мисао и нега у мој алгоритам којим се решава 372 00:19:05,840 --> 00:19:07,020 проблеми ефикасно. 373 00:19:07,020 --> 00:19:09,260 >> И заиста, то ће бити један од циљеви овог курса. 374 00:19:09,260 --> 00:19:11,230 Ви ћете, успут, научите како да програмирате. 375 00:19:11,230 --> 00:19:13,360 Ви ћете научити како да програмирате у било који број језика. 376 00:19:13,360 --> 00:19:16,670 Али на крају дана, курс је о решавању проблема и добијање 377 00:19:16,670 --> 00:19:20,490 бољи у решавању проблема - а, као и у оваквих случајева, решавање проблема 378 00:19:20,490 --> 00:19:22,030 ефикасније. 379 00:19:22,030 --> 00:19:23,990 >> Сада је до сада, ми смо ово радили прилично интуитивно. 380 00:19:23,990 --> 00:19:27,420 Хајде да представимо нешто истинито генерички зове Псеудокод. 381 00:19:27,420 --> 00:19:29,150 Тако ћемо, на крају ћете добити, у овом курсу, на 382 00:19:29,150 --> 00:19:30,570 разним програмским језицима. 383 00:19:30,570 --> 00:19:34,280 Али данас ми ћемо то урадити у енглески налик синтакса, где баш некако кажем 384 00:19:34,280 --> 00:19:37,330 шта мислиш, али ти си икада тако језгровита и ви не брините 385 00:19:37,330 --> 00:19:38,960 граматике и комплетне реченице. 386 00:19:38,960 --> 00:19:41,600 Само изражавају себе као концизно могуће. 387 00:19:41,600 --> 00:19:45,400 >> Тако је енглески Псеудокод налик синтаксу која представља 388 00:19:45,400 --> 00:19:46,750 програмски језик. 389 00:19:46,750 --> 00:19:51,170 И према том крају, дозволите ми да предложи сада моделовати процес можемо само 390 00:19:51,170 --> 00:19:54,990 описао бројања нешто мало другачије, овога пута узимајући 391 00:19:54,990 --> 00:19:59,040 погледајте овај видео од пет минута произведеног наши пријатељи на ТЕД да 392 00:19:59,040 --> 00:20:03,170 дефинише шта је Псеудокод, дефинише шта алгоритамски размишљање је, па чак и 393 00:20:03,170 --> 00:20:07,030 мада пример хоћете да видите је, у само по себи, супер једноставно, то је 394 00:20:07,030 --> 00:20:09,820 ће почети да нам дају ментални модела, вокабулар, са којом се 395 00:20:09,820 --> 00:20:14,588 учинити много, много сложенији алгоритми веома брзо. 396 00:20:14,588 --> 00:20:15,576 >> [Почети репродукцију ВИДЕО] 397 00:20:15,576 --> 00:20:29,920 >> [Музика свира] 398 00:20:29,920 --> 00:20:31,100 >> НАРАТОР: Шта је алгоритам? 399 00:20:31,100 --> 00:20:34,730 У рачунарству, алгоритам је сет инструкција за решавање неких 400 00:20:34,730 --> 00:20:36,620 проблема корак по корак. 401 00:20:36,620 --> 00:20:39,650 Типично, алгоритми се извршавају од компјутера, али ми људи имамо 402 00:20:39,650 --> 00:20:41,230 алгоритми, као и. 403 00:20:41,230 --> 00:20:43,290 На пример, како бисте отишли о бројање 404 00:20:43,290 --> 00:20:44,750 људи у просторији? 405 00:20:44,750 --> 00:20:47,980 Па, ако сте попут мене, вероватно бих тачка на сваку особу, један по 406 00:20:47,980 --> 00:20:50,120 време, а рачунају се од 0. 407 00:20:50,120 --> 00:20:52,970 1, 2, 3, 4, и тако даље. 408 00:20:52,970 --> 00:20:54,140 >> Па, то је алгоритам. 409 00:20:54,140 --> 00:20:57,600 У ствари, хајде да покушамо да га изрази мало више формално у псеудокоду - 410 00:20:57,600 --> 00:21:00,700 Енглески-лике синтаксу која подсећа програмски језик. 411 00:21:00,700 --> 00:21:02,580 Нека је н једнако 0. 412 00:21:02,580 --> 00:21:06,970 За сваку особу у соби, поставите Н једнак Н плус 1. 413 00:21:06,970 --> 00:21:08,400 >> Како тумачите ову Псеудокод? 414 00:21:08,400 --> 00:21:12,840 Па, једна линија изјављује, да тако кажем, променљива се зове и Н инициализирует 415 00:21:12,840 --> 00:21:14,250 његова вредност на 0.. 416 00:21:14,250 --> 00:21:17,550 То само значи да је на почетку наш алгоритам, ствар са којом 417 00:21:17,550 --> 00:21:19,650 Рачунамо има вредност 0. 418 00:21:19,650 --> 00:21:22,620 На крају крајева, пре него што почнемо бројање, ми нисмо избројали још ништа. 419 00:21:22,620 --> 00:21:25,340 Позивање Ова променљива Н је само конвенција. 420 00:21:25,340 --> 00:21:26,890 Могао сам га позвао највише ништа. 421 00:21:26,890 --> 00:21:30,560 >> Сада линији демаркс почетка петља, редослед корака који ће 422 00:21:30,560 --> 00:21:32,310 понови одређени број пута. 423 00:21:32,310 --> 00:21:35,910 Дакле, у нашем примеру, корак водимо броји људе у соби. 424 00:21:35,910 --> 00:21:38,730 Испод линије је два три линије, који описује тачно како 425 00:21:38,730 --> 00:21:40,160 идемо око бројања. 426 00:21:40,160 --> 00:21:43,440 Увучен подразумева да је линија три која ће се поновити. 427 00:21:43,440 --> 00:21:47,380 >> Дакле, оно што говори је Псеудокод да након стартовања на 0, за свако 428 00:21:47,380 --> 00:21:50,690 особа у соби, ми ћемо Н повећати до 1.. 429 00:21:50,690 --> 00:21:53,050 Сада је овај алгоритам тачно? 430 00:21:53,050 --> 00:21:54,580 Па, хајде да изударај се мало. 431 00:21:54,580 --> 00:21:57,270 Да ли то ради ако постоје двоје људи у соби? 432 00:21:57,270 --> 00:21:58,170 Да видимо. 433 00:21:58,170 --> 00:22:00,260 >> У једној линији, ми покрене на 0 Н. 434 00:22:00,260 --> 00:22:03,660 За сваки од ових људи, смо онда увећава за 1 Н. 435 00:22:03,660 --> 00:22:07,310 Дакле, на првом путовању кроз петља, ми смо ажурирали Н од 0 до 1. 436 00:22:07,310 --> 00:22:11,070 На другом путовању кроз исти петља, ми смо ажурирали Н од 1 до 2. 437 00:22:11,070 --> 00:22:15,780 И тако до краја овог алгоритма је, н 2, која заиста одговара број 438 00:22:15,780 --> 00:22:16,700 људи у соби. 439 00:22:16,700 --> 00:22:17,760 >> За сада је добро. 440 00:22:17,760 --> 00:22:19,610 Шта мислите о корнер случају, иако? 441 00:22:19,610 --> 00:22:22,590 Претпоставимо да постоје људи 0 у соби - осим мене, 442 00:22:22,590 --> 00:22:24,170 ко ради за бројање. 443 00:22:24,170 --> 00:22:27,150 У једној линији, ми покрене на 0 Н. 444 00:22:27,150 --> 00:22:30,280 Овај пут, међутим, линија три не изврши уопште, јер не постоји 445 00:22:30,280 --> 00:22:31,370 особа у просторији. 446 00:22:31,370 --> 00:22:35,260 И тако даље Н 0, што одговара број људи у соби. 447 00:22:35,260 --> 00:22:36,420 Прилично једноставно, зар не? 448 00:22:36,420 --> 00:22:39,630 >> Међутим, бројање људи један по један је прилично неефикасан, такође, не? 449 00:22:39,630 --> 00:22:40,920 Сигурно можемо да урадимо боље. 450 00:22:40,920 --> 00:22:43,120 Зашто не рачунају две особе у исто време? 451 00:22:43,120 --> 00:22:49,300 Уместо бројања 1, 2, 3, 4, 5, 6, 7, 8, и тако даље, зашто не рачунају, 2, 452 00:22:49,300 --> 00:22:51,460 4, 6, 8, и тако даље? 453 00:22:51,460 --> 00:22:53,700 То звучи још брже, и то је сигурно. 454 00:22:53,700 --> 00:22:56,240 >> Хајде да изрази ову оптимизацију у псеудокоду. 455 00:22:56,240 --> 00:22:57,800 Нека је н једнако 0. 456 00:22:57,800 --> 00:23:02,450 За сваки пар људи у соби, сет Н једнака Н плус 2. 457 00:23:02,450 --> 00:23:04,120 Прилично једноставна промена, зар не? 458 00:23:04,120 --> 00:23:06,750 Уместо да рачунају један народ у исто време, ми смо уместо тога рачунамо 459 00:23:06,750 --> 00:23:08,300 њих двојица у исто време. 460 00:23:08,300 --> 00:23:10,980 Овај алгоритам је тако два пута тако брзо као последњи. 461 00:23:10,980 --> 00:23:12,180 >> Али, да ли је тачно? 462 00:23:12,180 --> 00:23:12,920 Да видимо. 463 00:23:12,920 --> 00:23:15,330 Да ли то ради ако постоје двоје људи у соби? 464 00:23:15,330 --> 00:23:17,550 У једној линији, ми покрене на 0 Н. 465 00:23:17,550 --> 00:23:20,920 За тај један пар људи, смо онда увећава са два Н. 466 00:23:20,920 --> 00:23:24,860 И тако до краја овог алгоритма је, Н 2, која заиста одговара број 467 00:23:24,860 --> 00:23:25,650 људи у соби. 468 00:23:25,650 --> 00:23:28,250 >> Претпоставимо да постоји следећа 0 људи у соби. 469 00:23:28,250 --> 00:23:30,840 У једној линији, ми покрене на 0 Н. 470 00:23:30,840 --> 00:23:34,330 Као и раније, линија три не извршава уопште, јер не постоје парови 471 00:23:34,330 --> 00:23:35,380 људи у просторији. 472 00:23:35,380 --> 00:23:38,350 И тако даље Н 0, који заиста подудара са бројем 473 00:23:38,350 --> 00:23:39,570 људи у соби. 474 00:23:39,570 --> 00:23:42,280 >> Али, шта ако постоје три људи у соби? 475 00:23:42,280 --> 00:23:44,130 Како овај алгоритам карата? 476 00:23:44,130 --> 00:23:44,990 Да видимо. 477 00:23:44,990 --> 00:23:47,460 У једној линији, ми покрене на 0 Н. 478 00:23:47,460 --> 00:23:50,870 За пар тих људи, смо онда увећава за 2 Н. 479 00:23:50,870 --> 00:23:51,800 Али шта онда? 480 00:23:51,800 --> 00:23:54,960 Нема још пуно пар људи у соби, тако да нема две линије 481 00:23:54,960 --> 00:23:56,180 више не важи. 482 00:23:56,180 --> 00:24:00,530 И тако до краја овог алгоритма је, Н је и даље 2, што није тачно. 483 00:24:00,530 --> 00:24:03,810 >> Заиста, овај алгоритам се каже да је луд, јер има грешку. 484 00:24:03,810 --> 00:24:05,820 Омогућава обештећење са неким новим псеудокоду. 485 00:24:05,820 --> 00:24:09,670 Нека је н једнако 0 за сваки пар људи у просторији. 486 00:24:09,670 --> 00:24:12,550 Поставите Н једнак Н плус 2. 487 00:24:12,550 --> 00:24:17,140 Ако једна особа остаје Неспарен, сет Н једнака Н плус 1. 488 00:24:17,140 --> 00:24:20,140 Да бисте решили овај проблем, ми смо уведен, у четвртом реду, 489 00:24:20,140 --> 00:24:24,520 стање, иначе позната као грана да извршава само ако постоји једна 490 00:24:24,520 --> 00:24:26,640 Лице које се не могу пар са другим. 491 00:24:26,640 --> 00:24:30,440 И сада, да ли постоји један или три или било који непаран број људи у 492 00:24:30,440 --> 00:24:33,290 соба, овај алгоритам Сада ће их рачунати. 493 00:24:33,290 --> 00:24:34,560 >> Можемо ли још боље? 494 00:24:34,560 --> 00:24:38,820 Па, ми смо могли да рачунају на 3с или 4с или чак 5с и 10с, али даље од тога, то је 495 00:24:38,820 --> 00:24:41,360 ће добити мало тешко тачке. 496 00:24:41,360 --> 00:24:44,660 На крају дана, да ли је извршена од рачунара или људи, 497 00:24:44,660 --> 00:24:46,750 алгоритми су само скуп инструкција са 498 00:24:46,750 --> 00:24:48,290 који за решавање проблема. 499 00:24:48,290 --> 00:24:49,792 То су само три. 500 00:24:49,792 --> 00:24:52,404 Шта би сте решили проблем преко алгоритма? 501 00:24:52,404 --> 00:24:52,901 >> [ЕНД ВИДЕО РЕПРОДУКЦИЈА] 502 00:24:52,901 --> 00:24:55,883 >> Малан ДАВИД: То је једини пут Ја ћу се појавити у облику цртаних филмова. 503 00:24:55,883 --> 00:25:01,050 Али, где та прича стао, Сада, како се може и боље? 504 00:25:01,050 --> 00:25:04,680 Тројке и четворке, тврдимо, можемо рачунати људи много брже, али можемо 505 00:25:04,680 --> 00:25:06,290 до фундаментално боље од тога? 506 00:25:06,290 --> 00:25:07,540 И ја опкладу можемо. 507 00:25:07,540 --> 00:25:11,980 >> Ако уведемо мало наше Псеудокод овде, ја ћу предложити 508 00:25:11,980 --> 00:25:14,550 да можемо да постигнемо линију овако. 509 00:25:14,550 --> 00:25:17,280 Нећемо да бројим људе један, два, три, четири. 510 00:25:17,280 --> 00:25:19,470 Нећемо ићи два, четири, шест, осам. 511 00:25:19,470 --> 00:25:23,390 Ми ћемо учинити суштински боље од промишљања проблема, и то у 512 00:25:23,390 --> 00:25:27,080 случај, усклађивање иначе довољно искоришћени ресурс. 513 00:25:27,080 --> 00:25:31,460 >> У само једном тренутку, надам се да ћете опростити и хумор нас стајао у 514 00:25:31,460 --> 00:25:34,470 место, а тада ћемо Питајте сваког од вас да се у вашем 515 00:25:34,470 --> 00:25:36,400 умови број 1. 516 00:25:36,400 --> 00:25:39,560 Тада ћеш све неспретно, како време пролази, наћи 517 00:25:39,560 --> 00:25:42,740 неко ко стоји, комбинују Ваши бројеви заједно 518 00:25:42,740 --> 00:25:43,720 додавањем их. 519 00:25:43,720 --> 00:25:47,490 Један од вас ће се онда трци да седи доле прво, а друго лице 520 00:25:47,490 --> 00:25:48,880 ће се поновити. 521 00:25:48,880 --> 00:25:53,090 >> Другим речима, од сетве све сте са бројем 1, а затим 522 00:25:53,090 --> 00:25:57,800 комбинујући оне у 1с 2с и оних 2с у 4с, са свима све 523 00:25:57,800 --> 00:26:02,740 седи, треба да, на крају Овај алгоритам, имају само један кредит 524 00:26:02,740 --> 00:26:07,570 душа која није седне довољно брзо, али који је цео публици бројање 525 00:26:07,570 --> 00:26:09,180 у његовом или њеном уму. 526 00:26:09,180 --> 00:26:13,730 >> Дакле, молим вас, идемо напред и - први корак - стоји у месту. 527 00:26:13,730 --> 00:26:15,600 И извршава. 528 00:26:15,600 --> 00:26:36,580 >> [Гомила мрмља] 529 00:26:36,580 --> 00:26:38,820 >> Малан ДАВИД: Да ли знате где је Лорен? 530 00:26:38,820 --> 00:26:40,179 729? 531 00:26:40,179 --> 00:27:23,350 >> [Гомила мрмља] 532 00:27:23,350 --> 00:27:24,340 >> Малан ДАВИД: У реду? 533 00:27:24,340 --> 00:27:39,110 >> [Гомила мрмља] 534 00:27:39,110 --> 00:27:41,365 >> Малан ДАВИД: У реду, ми треба се ближи крају. 535 00:27:41,365 --> 00:27:44,340 536 00:27:44,340 --> 00:27:47,670 Ми видимо један момак стоји овде и даље. 537 00:27:47,670 --> 00:27:48,770 Ко још треба да се упари? 538 00:27:48,770 --> 00:27:50,020 Ако ви желите да упарите искључен. 539 00:27:50,020 --> 00:27:53,260 540 00:27:53,260 --> 00:27:56,520 Неко горе. 541 00:27:56,520 --> 00:27:58,150 Зашто не дају ту руку. 542 00:27:58,150 --> 00:28:01,370 За веома мало људи који су и даље стоји, шта ли бројеви 543 00:28:01,370 --> 00:28:02,790 имати на уму? 544 00:28:02,790 --> 00:28:04,020 >> СТУДЕНТ: 78. 545 00:28:04,020 --> 00:28:06,010 >> ДАВИД Малан: 78 плус - 546 00:28:06,010 --> 00:28:07,840 ко стоји овде? 547 00:28:07,840 --> 00:28:08,370 >> СТУДЕНТ: 39. 548 00:28:08,370 --> 00:28:09,590 >> ДАВИД Малан: 39 Плус. 549 00:28:09,590 --> 00:28:12,310 Плус ко још увек стоји? 550 00:28:12,310 --> 00:28:13,650 81? 551 00:28:13,650 --> 00:28:15,960 У реду, ко још? 552 00:28:15,960 --> 00:28:17,200 Још један 81? 553 00:28:17,200 --> 00:28:17,860 Вау. 554 00:28:17,860 --> 00:28:19,210 А шта је онда у леђа? 555 00:28:19,210 --> 00:28:20,360 >> СТУДЕНТ: 49. 556 00:28:20,360 --> 00:28:21,812 >> ДАВИД Малан: 49, плус? 557 00:28:21,812 --> 00:28:22,950 >> СТУДЕНТ: 98. 558 00:28:22,950 --> 00:28:24,980 >> ДАВИД Малан: 98 плус? 559 00:28:24,980 --> 00:28:28,190 Да ли је то неко други? 560 00:28:28,190 --> 00:28:29,155 12? 561 00:28:29,155 --> 00:28:30,460 Добар посао. 562 00:28:30,460 --> 00:28:33,610 >> [Смех] 563 00:28:33,610 --> 00:28:34,690 >> Малан ДАВИД: О, 112 - 564 00:28:34,690 --> 00:28:35,410 ох. 565 00:28:35,410 --> 00:28:36,220 Добар посао! 566 00:28:36,220 --> 00:28:38,660 >> [Смех] 567 00:28:38,660 --> 00:28:42,570 >> [Апплаусе] 568 00:28:42,570 --> 00:28:43,820 >> ДАВИД Малан: Још неко још увек стоји? 569 00:28:43,820 --> 00:28:46,710 570 00:28:46,710 --> 00:28:47,260 Извини? 571 00:28:47,260 --> 00:28:48,110 >> СТУДЕНТ: 99. 572 00:28:48,110 --> 00:28:49,810 >> ДАВИД Малан: 99. 573 00:28:49,810 --> 00:28:52,620 Још неко увек стоји? 574 00:28:52,620 --> 00:28:57,290 И укупан број ученика овде заправо, по - 575 00:28:57,290 --> 00:28:59,400 Да ли имате број? 576 00:28:59,400 --> 00:29:03,170 О, стварни број људи у соба, у складу са налогом да 577 00:29:03,170 --> 00:29:07,660 наставне момци су радили на путу у свачијем, био је 729. 578 00:29:07,660 --> 00:29:11,070 Дакле, од неколицину Харвардоваца који се броје, 579 00:29:11,070 --> 00:29:14,126 Одговор је 637. 580 00:29:14,126 --> 00:29:15,480 >> [Смех] 581 00:29:15,480 --> 00:29:16,350 >> Малан ДАВИД: Тако близу. 582 00:29:16,350 --> 00:29:17,360 Али ипак. 583 00:29:17,360 --> 00:29:22,110 У реду, тако да је настава тренутак, зар не? 584 00:29:22,110 --> 00:29:24,120 То је оно што ми сада описати као буг. 585 00:29:24,120 --> 00:29:28,120 Негде успут, ми смо урадили неке аритметика погрешно, или је неко сео, 586 00:29:28,120 --> 00:29:29,930 или лево, или нешто није у реду. 587 00:29:29,930 --> 00:29:30,930 Али, то је у реду. 588 00:29:30,930 --> 00:29:33,390 Јер чак и даље, ми смо сам врло близу. 589 00:29:33,390 --> 00:29:37,480 И ја бих тврде да смо на погрешан одговори много брже него што сам 590 00:29:37,480 --> 00:29:39,770 користим више линеарног приступа. 591 00:29:39,770 --> 00:29:42,630 >> Дакле, хајде да претпоставимо да је у ствари добили да исправи, али мислим да сада о томе шта 592 00:29:42,630 --> 00:29:46,870 се дешава сваки пут, против моје сопствене наивна указујући алгоритам. 593 00:29:46,870 --> 00:29:48,420 Један, два, три. 594 00:29:48,420 --> 00:29:53,010 Ако заиста постоји 729 или 637 људи овде, да би ме 595 00:29:53,010 --> 00:29:57,720 буквално 637 или 729 фуга део прста и 596 00:29:57,720 --> 00:29:59,490 увецава мој укупан број. 597 00:29:59,490 --> 00:30:01,910 И нисам могао да урадим нешто боље од иде два, четири, шест, осам, а 598 00:30:01,910 --> 00:30:05,660 удвостручити брзину, можда чак троструко или учетворостручити, зависно од тога колико добро могу 599 00:30:05,660 --> 00:30:07,110 урадим бројање у глави. 600 00:30:07,110 --> 00:30:10,720 >> Међутим, овај приступ, да сте узели се радикално разликују. 601 00:30:10,720 --> 00:30:12,770 Јер на почетку, сви ви устали. 602 00:30:12,770 --> 00:30:14,620 Дакле, све 729. 603 00:30:14,620 --> 00:30:17,370 А онда буквално пола од вас седе. 604 00:30:17,370 --> 00:30:19,720 И након тога, други половина вас сео. 605 00:30:19,720 --> 00:30:22,650 И након тога, други половина вас сео. 606 00:30:22,650 --> 00:30:27,470 >> И укупан број пута да момци могли сео је грубо 607 00:30:27,470 --> 00:30:31,740 осам или девет или десет пута укупно, у зависности од тога шта је наш укупан број је. 608 00:30:31,740 --> 00:30:33,300 И ми се некако до овај други начин. 609 00:30:33,300 --> 00:30:37,740 Ако смо имали 1.024 људи у просторији, укупан број колико пута сте могли 610 00:30:37,740 --> 00:30:41,870 преполовити 1.024 људи је 10. 611 00:30:41,870 --> 00:30:43,370 >> Сада размишљам о томе у други правац. 612 00:30:43,370 --> 00:30:49,170 Претпоставимо, смешно, да смо имали, рецимо четири милијарде људи у овој просторији, 613 00:30:49,170 --> 00:30:50,860 или незнатно већа соба. 614 00:30:50,860 --> 00:30:54,550 Колико пута би смо прошли преко овог алгоритма, као што је то половина 615 00:30:54,550 --> 00:30:58,110 те класе седне? 616 00:30:58,110 --> 00:31:03,050 Само ће да се 32 што операције, чак иу класи величине 617 00:31:03,050 --> 00:31:03,770 четири милијарде. 618 00:31:03,770 --> 00:31:04,055 Зашто? 619 00:31:04,055 --> 00:31:06,980 Због четири милијарде иде на два милијарди долара, иде на један милион, одлази у 620 00:31:06,980 --> 00:31:09,925 500 милиона евра, иде на 250 милиона, тачка, тачка, тачка. 621 00:31:09,925 --> 00:31:14,940 Ја само могу да подела око 32 времена, на којој тачки, сви осим 622 00:31:14,940 --> 00:31:17,820 једна особа би остали да стоје. 623 00:31:17,820 --> 00:31:21,590 >> И то је, такође, некако моћан Идеја да је све више ћемо покушати да 624 00:31:21,590 --> 00:31:24,690 полуге у овом курсу, а у програмирање и информатика више 625 00:31:24,690 --> 00:31:29,400 Генерално, ове клице идеје са који онда можемо да решавамо проблеме много, 626 00:31:29,400 --> 00:31:31,130 много снажније. 627 00:31:31,130 --> 00:31:34,610 Тако смо почели врло једноставно са тим Псеудокод и момак у собу, али 628 00:31:34,610 --> 00:31:38,205 сада са целом собу пуну људи смо урадили фундаментално боље. 629 00:31:38,205 --> 00:31:41,460 >> Па, хајде да сада прелаз из Псеудокод неком стварном коду. 630 00:31:41,460 --> 00:31:44,200 Овај језик се спремате да се догоди да се зове Јава, и 631 00:31:44,200 --> 00:31:46,190 Вратићемо се ово ка семестар, крај. 632 00:31:46,190 --> 00:31:49,960 То је програмски језик који вам користе да би сајтова и других што су 633 00:31:49,960 --> 00:31:51,360 софтвер ових дана. 634 00:31:51,360 --> 00:31:54,890 И ми смо га користили, захваљујући пријатељу наша на Стенфорду, за кодирање 635 00:31:54,890 --> 00:31:56,630 нека скривена информација овде. 636 00:31:56,630 --> 00:31:59,500 То је уметност стеганографије, да тако кажем, где можете да сакријете 637 00:31:59,500 --> 00:32:03,990 информације у оно што иначе чини бити бука или потпуно другачији 638 00:32:03,990 --> 00:32:05,220 слика заједно. 639 00:32:05,220 --> 00:32:10,120 Али уграђен у овом конкретном слици је заиста тајна порука врста. 640 00:32:10,120 --> 00:32:12,950 >> Дакле, дозволите ми да иде напред и попните се иста слика овде, ово 641 00:32:12,950 --> 00:32:14,270 Време у веб претраживачу. 642 00:32:14,270 --> 00:32:17,710 И ја ћу да махнем руком на неке од детаљи за данас, посебно 643 00:32:17,710 --> 00:32:21,780 за оне од вас који ово изгледа као не само Јава него грчки, као 644 00:32:21,780 --> 00:32:23,930 потпуно непознати језик. 645 00:32:23,930 --> 00:32:26,190 Али, ово је пример програмски језик. 646 00:32:26,190 --> 00:32:30,660 >> А за сада, да на вери да ово прва линија кода - 647 00:32:30,660 --> 00:32:32,470 и по кода, само мислим текста. 648 00:32:32,470 --> 00:32:35,660 Текст који сам могао буквално откуцао у Мицрософт Ворд, ако сам имао 649 00:32:35,660 --> 00:32:37,630 право на софтвер онда уради нешто са њим. 650 00:32:37,630 --> 00:32:42,120 Програмирање изворни код, програмирање код, је заиста само текст, а 651 00:32:42,120 --> 00:32:45,420 изгледа другачије на основу онога језик користите, не за разлику од енглеског и 652 00:32:45,420 --> 00:32:49,200 Шпански и руски све изгледа другачије када их куцате на тастатури. 653 00:32:49,200 --> 00:32:53,520 >> Дакле, ове прве линије, за сада преузимају вера, једноставно се отвара графички из 654 00:32:53,520 --> 00:32:56,160 Интернет, који бучно графички смо управо видели. 655 00:32:56,160 --> 00:32:59,900 Овај следећи ред овде је пример петља, а ми смо у ствари видели да исти 656 00:32:59,900 --> 00:33:01,130 жаргон у ТЕД видео. 657 00:33:01,130 --> 00:33:03,750 Петља је нешто што се дешава једном и опет, и мада то 658 00:33:03,750 --> 00:33:08,440 апсолутно изгледа загонетан, са кључна реч за, и неке заграде, и 659 00:33:08,440 --> 00:33:09,510 неки зарезом. 660 00:33:09,510 --> 00:33:13,070 Вратићемо се да је пре дуго, али да се петља у суштини 661 00:33:13,070 --> 00:33:17,310 говори програм, прелазили преко свега тих бучним тачака, с лева на 662 00:33:17,310 --> 00:33:18,980 десно, одозго на доле. 663 00:33:18,980 --> 00:33:21,260 >> Јер на крају дана, слика овако - и заиста можете 664 00:33:21,260 --> 00:33:22,860 некако види да је на овај пројектор - 665 00:33:22,860 --> 00:33:25,280 је заиста само мрежа тачака. 666 00:33:25,280 --> 00:33:29,730 Дакле, можемо идентификовати сваки од тих тачака од координата, Кс, И, а уз то 667 00:33:29,730 --> 00:33:33,890 програма, сада можемо почети да учинити нешто да те тацке. 668 00:33:33,890 --> 00:33:37,540 >> Дакле, шта ћу да наставим и овде је да ћу направити неке промене. 669 00:33:37,540 --> 00:33:41,000 Прво ћу да се иде напред и уклоните свега тога зеленкаста и плавкасте 670 00:33:41,000 --> 00:33:43,520 буке, а ја ћу да наставим и укуцајте следеће 671 00:33:43,520 --> 00:33:45,710 признајем криптичан синтакса. 672 00:33:45,710 --> 00:33:48,020 им за слику. 673 00:33:48,020 --> 00:33:53,380 сет плаво на локацији к, зарез, локација г, на 0. 674 00:33:53,380 --> 00:33:55,610 Другим речима, желим да се искључите све плаве 675 00:33:55,610 --> 00:33:56,920 тачака у тој слици. 676 00:33:56,920 --> 00:33:59,800 >> Ја ћу да наставим одмах и кликните то Рун / Саве дугме, и ви ћете 677 00:33:59,800 --> 00:34:02,850 приметити на десној страни, слика ће се појавити. 678 00:34:02,850 --> 00:34:06,120 Сада његов супер зелена, али то није изненађује, јер сам буквално окренуо 679 00:34:06,120 --> 00:34:11,070 искључен, тако што 1 а 0, све плави на слици. 680 00:34:11,070 --> 00:34:12,540 >> Па, хајде да то мало. 681 00:34:12,540 --> 00:34:16,989 им за слике, тачка сетГреен, к, и. 682 00:34:16,989 --> 00:34:20,659 А то само значи Итерате са леве на десно, а онда одозго на доле. 683 00:34:20,659 --> 00:34:23,520 Молим те искљуци са вредношћу од 0, као добро. 684 00:34:23,520 --> 00:34:24,750 Саве. 685 00:34:24,750 --> 00:34:28,100 И на пројектору, не можете заправо заиста види ништа. 686 00:34:28,100 --> 00:34:31,380 >> На мом лаптоп екрана, ако сам само у пеер прави начин, могу да видим мало 687 00:34:31,380 --> 00:34:33,300 слика, јер су још увек неки црвени унутра. 688 00:34:33,300 --> 00:34:35,540 Ако сте икада чули акроним РГБ - 689 00:34:35,540 --> 00:34:36,830 црвена, зелена, плава - 690 00:34:36,830 --> 00:34:39,110 се то односи на ове композиције једне слике помоћу 691 00:34:39,110 --> 00:34:40,230 само те три боје. 692 00:34:40,230 --> 00:34:43,159 И сада, ми смо бацили све зелено, плаво све, али 693 00:34:43,159 --> 00:34:44,500 није много црвено. 694 00:34:44,500 --> 00:34:45,920 >> Тако да ме размрдали црвену. 695 00:34:45,920 --> 00:34:47,070 Како то да урадим? 696 00:34:47,070 --> 00:34:49,300 Па, прво, ја ћу да питам Овај програм питање. 697 00:34:49,300 --> 00:34:52,030 Ја ћу ићи напред и хајде да га зову променљива, као у алгебри. 698 00:34:52,030 --> 00:34:54,060 Можете имати Кс или И или З. 699 00:34:54,060 --> 00:34:57,230 Идем да декларишете променљиву и кажу, стави у ове променљиве, 700 00:34:57,230 --> 00:35:02,790 привремено, вредност слике гетРед вредност на к, и. 701 00:35:02,790 --> 00:35:05,870 >> И опет, ми ћемо се вратити на све за овај детаљ у будућности. 702 00:35:05,870 --> 00:35:10,630 Али, за сада, само се на вери да Ова линија тражи програм, шта 703 00:35:10,630 --> 00:35:12,740 је црвена вредност на к, и? 704 00:35:12,740 --> 00:35:14,450 У том тачком? 705 00:35:14,450 --> 00:35:15,710 >> Онда ћу да урадим нешто за њега. 706 00:35:15,710 --> 00:35:21,100 Онда ћу да урадим слике дот сет црвена на к, и, и, али овај пут ћу 707 00:35:21,100 --> 00:35:24,760 повећа то радећи црвене пута, рецимо, 10. 708 00:35:24,760 --> 00:35:26,870 Дакле, повећање је за фактор 10. 709 00:35:26,870 --> 00:35:29,880 Дозволите ми да умањите и сада клик могао Рун / Саве. 710 00:35:29,880 --> 00:35:36,430 И ето, то је тамо цео време, иако наше очи 711 00:35:36,430 --> 00:35:37,900 није могао да га види. 712 00:35:37,900 --> 00:35:41,470 >> Дакле, опет, ово сада је прави број, Пример језика да ћемо доћи 713 00:35:41,470 --> 00:35:42,770 назад на пре дуго. 714 00:35:42,770 --> 00:35:46,670 Али схвати, нарочито они од вас без таквог искуства, то је сасвим 715 00:35:46,670 --> 00:35:50,280 ускоро да сами ћемо бити писање кода као да постоји. 716 00:35:50,280 --> 00:35:54,520 У ствари, алат са којим сте сви донекле упознати, можда, да је ЦС50 717 00:35:54,520 --> 00:35:57,330 свој ток-шопинг алат, који је био заправо рестартовао овог лета од стране неких 718 00:35:57,330 --> 00:36:01,070 сопствених бивших ЦС50 је студентима, Сада окрените Поздрав. 719 00:36:01,070 --> 00:36:04,740 >> Дакле, то се дешава да се сајт изграђен на језику зове ПХП. 720 00:36:04,740 --> 00:36:08,510 Он користи МиСКЛ базу података под називом, ствари са којима ћемо се руке 721 00:36:08,510 --> 00:36:10,190 прљав касније у семестру. 722 00:36:10,190 --> 00:36:14,140 Али, веровали или не, чак и нешто овако на крају своди на 723 00:36:14,140 --> 00:36:19,480 Најједноставнији од петље и условима и гране, као што су оне које смо видели само 724 00:36:19,480 --> 00:36:21,530 Малопре у ТЕД видео. 725 00:36:21,530 --> 00:36:25,180 >> Оно што сам мислио да урадим сада је учешће не само нешто што смо направили особље 726 00:36:25,180 --> 00:36:28,010 за кампус, већ нешто Бивши ученик - три 727 00:36:28,010 --> 00:36:29,080 студената, у ствари - 728 00:36:29,080 --> 00:36:33,950 је прошле године, Сијера, Данијел, а Сем, од којих је последњи имао пре 729 00:36:33,950 --> 00:36:36,370 програмирање искуство када је узео ЦС50. 730 00:36:36,370 --> 00:36:39,950 И на њихово коначно пројекат, они Излагао је на сајму ЦС50, 731 00:36:39,950 --> 00:36:43,720 Апликација се зове врдли, што је веб-басед програм за који су направили 732 00:36:43,720 --> 00:36:47,670 овај видео да сам помислио да ћу да поделим дати вам осећај шта је 733 00:36:47,670 --> 00:36:49,280 могуће до краја термина. 734 00:36:49,280 --> 00:37:57,170 >> [Музика свира] 735 00:37:57,170 --> 00:38:00,570 >> Малан ДАВИД: Тако је од недеље Зеро до 12. недеље прошле године. 736 00:38:00,570 --> 00:38:05,470 >> [Апплаусе] 737 00:38:05,470 --> 00:38:09,520 >> ДАВИД Малан: Као теасер, такође, стварно подстаћи ваш апетит је да оно што је 738 00:38:09,520 --> 00:38:14,580 могуће, можда сте већ видели, или можда ускоро видети, маркет.цс50.нет, а 739 00:38:14,580 --> 00:38:17,710 нови алат који је курс тим има радио на, овог пута у 740 00:38:17,710 --> 00:38:21,530 сарадња са Харвард Студент Власти, тако да је од ове године 741 00:38:21,530 --> 00:38:24,980 наставља и надамо се у ово долазак лета имаћете стандард 742 00:38:24,980 --> 00:38:27,890 прилика на универзитету и да купи продају ствари од интереса за вас. 743 00:38:27,890 --> 00:38:32,220 И кроз партнерство са ХСА, ви ћете такође бити у могућности да отпустите ставке искључен 744 00:38:32,220 --> 00:38:35,950 у једној од физичке продавнице ХСА је на неки тачка у будућности, како би се 745 00:38:35,950 --> 00:38:39,150 проки ствари, посебно вама као дипломски и не желе да 746 00:38:39,150 --> 00:38:44,110 одбаците ствари, али заправо је платити проследити на људе који могу да вас прате 747 00:38:44,110 --> 00:38:45,270 овде на кампусу. 748 00:38:45,270 --> 00:38:46,740 Дакле, више о томе да дођу. 749 00:38:46,740 --> 00:38:49,830 >> Али мало конкретније, алат који је дошао из ЦС50 у недавно 750 00:38:49,830 --> 00:38:52,760 године, са којим неки од вас можда бити упознати и други од вас можда 751 00:38:52,760 --> 00:38:57,940 гооглинг сада, у ЦС50.нет/2к, ви ћете наћи линк за Цхроме 752 00:38:57,940 --> 00:39:01,250 што је показна како можете користе ЈаваСцрипт, да смо исти језик 753 00:39:01,250 --> 00:39:06,660 користи са Ајфеловог торња малопре, да спроведе 2к брзине репродукције 754 00:39:06,660 --> 00:39:09,000 за све Харвард иСитес видеа. 755 00:39:09,000 --> 00:39:11,880 То је нешто што је уграђено ЦС50 у сопствену видео плејера. 756 00:39:11,880 --> 00:39:14,870 Али то, такође, ако почнете да копате у изворном коду, који ћемо 757 00:39:14,870 --> 00:39:18,840 срећно стави на располагање, видећете како можете чак и да реше проблеме као што то, 758 00:39:18,840 --> 00:39:23,180 убрзава виџете на сајтовима са који си већ добро познато. 759 00:39:23,180 --> 00:39:26,630 >> Дакле, реч сада о току и очекивања и шта се налази испред. 760 00:39:26,630 --> 00:39:29,445 У принципу, ми ћемо заиста ту окупљају понедељком и средом - иако 761 00:39:29,445 --> 00:39:31,490 овог петка, ми ћемо прикупити јер Веек оф Схоппинг - 762 00:39:31,490 --> 00:39:34,640 1:00 до 2:00 ПМ, мада понекад до 2:30. 763 00:39:34,640 --> 00:39:38,700 С обзиром да сте због тога можда желите или морају да преузму неке класе у 2:00 пм 764 00:39:38,700 --> 00:39:42,480 па надаље, или чак и раније, схватају Курс је подржава оно што се зове 765 00:39:42,480 --> 00:39:45,900 истовремени упис, чиме ћемо подржати петицију огласа одбору и 766 00:39:45,900 --> 00:39:49,400 Ваша становник декани у ваше име ако имате сукоб негде у ово 767 00:39:49,400 --> 00:39:50,790 1:00 до 2:30 опсег. 768 00:39:50,790 --> 00:39:54,110 Шеф тог УРЛ мрежи за додатни детаљи. 769 00:39:54,110 --> 00:39:57,750 >> Али у смислу носеће конструкције који карактерише ЦС50, за студенте 770 00:39:57,750 --> 00:40:01,750 више и мање удобан слично, ми смо нуде различите нумере секција. 771 00:40:01,750 --> 00:40:04,730 И то је пар недеља одмора, али пре дуго, вас ће се тражити да 772 00:40:04,730 --> 00:40:05,770 Ваш ниво комфора. 773 00:40:05,770 --> 00:40:08,590 Да ли сте међу онима мање удобан, удобније, или 774 00:40:08,590 --> 00:40:10,520 негде између? 775 00:40:10,520 --> 00:40:13,150 >> И ми ћемо имати три различита стазе које задовољавају 776 00:40:13,150 --> 00:40:14,470 управо ти публика. 777 00:40:14,470 --> 00:40:17,900 Дакле, ни у једном тренутку у року треба да чак и осећате као да сте такмичи 778 00:40:17,900 --> 00:40:21,390 против једног студента са више или мање фон од тебе. 779 00:40:21,390 --> 00:40:24,160 Заиста, курс је требало да буде много више сарадње и много 780 00:40:24,160 --> 00:40:25,650 отворенији од тога. 781 00:40:25,650 --> 00:40:29,030 >> Што се тиче проблема сетова, ви ћете наћи, такође, да поред 782 00:40:29,030 --> 00:40:32,130 Стандард Едитион проблема сваке недеље сет, често има "хакер 783 00:40:32,130 --> 00:40:37,010 Едитион "који је требало да буду усмерене на 5% до 10% или тако 784 00:40:37,010 --> 00:40:40,270 демографске ко је заиста међу онима удобније и да би желели више 785 00:40:40,270 --> 00:40:43,960 већи изазов него стандардни издање тог псет очекује. 786 00:40:43,960 --> 00:40:46,390 Више детаља о лицима која се наћи у градиву. 787 00:40:46,390 --> 00:40:49,430 >> Али, ту се могу наћи детаљи на курсевима касне дана. 788 00:40:49,430 --> 00:40:51,570 Обично проблем поставе доспевају четвртком. 789 00:40:51,570 --> 00:40:55,550 Међутим, можете да продужи многе ваше рокови ове јесени из четвртком до 790 00:40:55,550 --> 00:41:00,010 Петком једноставно нас сусрет на пола пута, да тако кажем, одговарајући на неколико загревање 791 00:41:00,010 --> 00:41:03,370 питања у неким од проблема недељном скупова, који ће аутоматски 792 00:41:03,370 --> 00:41:05,710 онда вам 24 сата више. 793 00:41:05,710 --> 00:41:09,120 Такође ћемо пасти ваш најмањи скор, по градиву. 794 00:41:09,120 --> 00:41:12,170 >> Да вам дати осећај о томе шта је проблем Сетови су - јер је то заиста 795 00:41:12,170 --> 00:41:15,120 Курс проблем који поставља коначно дефинишу готово сваки 796 00:41:15,120 --> 00:41:18,760 ученика искуство, више него предавања, више од секција, још 797 00:41:18,760 --> 00:41:21,230 него већина било који други аспект курса. 798 00:41:21,230 --> 00:41:25,140 Прошле године, на пример, почели смо, као ћемо почети ове године, са нуле. 799 00:41:25,140 --> 00:41:29,150 Посебно у петак, ми ћемо искористити, за само један дан је време, графички 800 00:41:29,150 --> 00:41:32,260 програмски језик, са којима ћемо почетак програмирања превлачењем и 801 00:41:32,260 --> 00:41:37,580 падају делове слагалице да само саставите физички да ли има смисла 802 00:41:37,580 --> 00:41:38,990 да то учини логички. 803 00:41:38,990 --> 00:41:43,460 >> Следеће недеље, брзо ћете транзиција Ц, прилично стара, али веома мали и 804 00:41:43,460 --> 00:41:48,510 једноставан језик који ће нам омогућити да стварно иду од 0 до 60 у току 805 00:41:48,510 --> 00:41:52,290 од само неколико недеља, а затим Парлаи те исте вештине и знања 806 00:41:52,290 --> 00:41:56,160 Основно програмирање конструкције у вишем нивоу језика као што су ПХП, 807 00:41:56,160 --> 00:41:58,240 ЈаваСцрипт, а други још увек. 808 00:41:58,240 --> 00:42:02,560 >> Прошле године, трећи псет у току је да од криптографије, 809 00:42:02,560 --> 00:42:06,380 домен-специфичне апликације чиме смо Оспорене студентима да нешто 810 00:42:06,380 --> 00:42:11,140 број шифара, програми са којима да јагма или дешифровати информације, 811 00:42:11,140 --> 00:42:11,880 за шифровање га. 812 00:42:11,880 --> 00:42:16,300 За хакерске издање, насупрот томе, дали смо се хакер студентима фајл 813 00:42:16,300 --> 00:42:19,900 са стандардног Уник садржи рачунара корисничка имена и лозинке, 814 00:42:19,900 --> 00:42:22,740 други који су били шифровани, и ми оспорио те хакера 815 00:42:22,740 --> 00:42:26,850 студенти за дешифровање, колико су то могли, те лозинке, и даље на томе 816 00:42:26,850 --> 00:42:27,770 исти домен. 817 00:42:27,770 --> 00:42:30,580 >> Сцрамбле, који игра са неким од вас су можда упознати. 818 00:42:30,580 --> 00:42:34,410 Форензика комад, где питамо студенте за спасавање података које су биле 819 00:42:34,410 --> 00:42:38,530 иначе избрисана из мог дигиталног фотоапарата Цомпацт Фласх картица, по 820 00:42:38,530 --> 00:42:42,740 заправо писање софтвера за схватити, где су нуле и јединице у 821 00:42:42,740 --> 00:42:46,850 да дигитални фотоапарат који раније компоновао ЈПЕГ графику? 822 00:42:46,850 --> 00:42:49,710 >> Изазов врста прошле године укључује писање најбржи 823 00:42:49,710 --> 00:42:53,160 Спелл Цхецкер могуће, такмичећи против пријатеља и школских другова ако 824 00:42:53,160 --> 00:42:53,860 они желели. 825 00:42:53,860 --> 00:42:56,330 Имплементација хуфф 'н Пуфф, компресија програма. 826 00:42:56,330 --> 00:43:01,930 А онда окончање семестар са ЦС50 Финансије, Веб апликација са 827 00:43:01,930 --> 00:43:06,570 које сте креирали еТраде налик сајт да купују и продају акције, тако да 828 00:43:06,570 --> 00:43:09,860 говорити, самим повлачењем скоро реалном времену цитати Иахоо! 829 00:43:09,860 --> 00:43:10,450 Финанце. 830 00:43:10,450 --> 00:43:13,590 >> Оно што нисмо урадили прошле године била је један проблем који и даље скуп 831 00:43:13,590 --> 00:43:14,810 ипак фаворит. 832 00:43:14,810 --> 00:43:18,400 Ако никада нисте отишли ​​у схуттле.цс50.нет, видећете корисника 833 00:43:18,400 --> 00:43:19,670 интерфејс мало овако. 834 00:43:19,670 --> 00:43:23,530 Међутим, пре две године, класа имплементиран, користите Гоогле Мапс и 835 00:43:23,530 --> 00:43:28,570 Гоогле Еартх плуг-ин и мало на памет за вожњу по кампусу, 836 00:43:28,570 --> 00:43:33,290 тако да је циљ ове игре је, као што можете да видите неке од лица, 837 00:43:33,290 --> 00:43:37,530 је да вози по кампусу у потрази за особље, настава момци и ЦАС, и 838 00:43:37,530 --> 00:43:40,080 Када то урадите, стављајући их на ваш шатл аутобус. 839 00:43:40,080 --> 00:43:44,035 Нико од њих стварно изгледа да овде, тако да ћемо ући код варања. 840 00:43:44,035 --> 00:43:47,150 >> [Смех] 841 00:43:47,150 --> 00:43:48,430 >> Малан ДАВИД: Тако је. 842 00:43:48,430 --> 00:43:49,240 У реду. 843 00:43:49,240 --> 00:43:51,750 И ево сада је особље проткана широм кампуса. 844 00:43:51,750 --> 00:43:54,530 И као што видите, на десној страни екрана, схуттле бус 845 00:43:54,530 --> 00:43:55,510 има празних места. 846 00:43:55,510 --> 00:43:59,000 А циљ је био да се напише Код са којима се симулира ово 847 00:43:59,000 --> 00:44:01,790 вожње и брање горе и падају офф путника. 848 00:44:01,790 --> 00:44:04,960 Тај један, такође, користећи језик звао ЈаваСцрипт. 849 00:44:04,960 --> 00:44:10,030 Тако схватају да програми као што ће бити на нашој истој путањи ово 850 00:44:10,030 --> 00:44:10,910 године, као и. 851 00:44:10,910 --> 00:44:13,640 >> У смислу, сада, за додатну помоћ, имамо у канцеларији. 852 00:44:13,640 --> 00:44:16,520 Као што сте видели у својој кући трпезарија или у Анненберг, 853 00:44:16,520 --> 00:44:19,280 ми ћемо бити у кући ручавање хале четири вечери недељно - 854 00:44:19,280 --> 00:44:24,450 Леверет, Пфохо, Елиот и Анненберг ове године, 8:00 до 11:00 часова. 855 00:44:24,450 --> 00:44:26,830 И оно што смо мислили да ћемо урадити ове године је нешто мало другачије. 856 00:44:26,830 --> 00:44:29,650 >> Ако сте чули гласине да је прошле године било је превише стресно, ово 857 00:44:29,650 --> 00:44:32,800 Овогодишњи радног времена, као што ћемо описати следеће недеље, биће више органски, 858 00:44:32,800 --> 00:44:36,900 где по доласку, бићете послао на једну табелу 859 00:44:36,900 --> 00:44:39,860 где је више чланова особља чекају, и ми ћемо учинити ствари много више 860 00:44:39,860 --> 00:44:40,440 органски. 861 00:44:40,440 --> 00:44:43,740 Нема више ред, нема више иПад, али а имају више интимних 862 00:44:43,740 --> 00:44:47,300 разговори око стола од само осам или тако студената, тако да смо 863 00:44:47,300 --> 00:44:50,880 приближан осећај онога што иначе био би много мањи класа. 864 00:44:50,880 --> 00:44:54,120 >> Нудимо, као, ове ствари које смо зове валктхроугхс, видео снимљен у 865 00:44:54,120 --> 00:44:57,330 унапреде један од учења курса је момци, Замила, у којима је она 866 00:44:57,330 --> 00:45:00,690 вас води кроз проблему недеље скупова, који нуде савете за 867 00:45:00,690 --> 00:45:02,640 изазови који стоје пред. 868 00:45:02,640 --> 00:45:06,230 И обрнуто, пошто су проблем поставе због, ове године, такође ћемо ослободити 869 00:45:06,230 --> 00:45:09,100 мало клипове позовите обдукција која заправо шетња вас кроз 870 00:45:09,100 --> 00:45:13,630 представник решења, и добро и лоше, преко којих можете закључити како 871 00:45:13,630 --> 00:45:17,550 можете да имате или би требало да имају спроводи сопствено решење. 872 00:45:17,550 --> 00:45:20,500 >> А шта ћемо понудити по први пут и ове године, посебно 873 00:45:20,500 --> 00:45:23,420 за оне студенте који се одлуче курса је друга 874 00:45:23,420 --> 00:45:28,580 ресурсима, али ипак се боре све превише, курс 875 00:45:28,580 --> 00:45:33,030 Сам ће упарите оне студенте, као средства дозвољавају, тако да са туторима 876 00:45:33,030 --> 00:45:35,840 имате много интимнија прилика од куће трпезаријама 877 00:45:35,840 --> 00:45:38,700 омогућава један-на-један помоћи. 878 00:45:38,700 --> 00:45:42,780 >> Сада коначно поглед на неке крајњих игара на видику. 879 00:45:42,780 --> 00:45:44,580 Можда сте упознати са ЦС50 Хацкатхон. 880 00:45:44,580 --> 00:45:48,120 Па, долази ово децембар, од 8:00 АМ до 7:00, на почетку 881 00:45:48,120 --> 00:45:51,410 Читање периоду, бити прилика да се окупе са другим ученицима - 882 00:45:51,410 --> 00:45:53,130 то би било око 9:00 пм - 883 00:45:53,130 --> 00:45:56,550 током које зароните у свој коначни имплементацију пројекта заједно 884 00:45:56,550 --> 00:45:59,910 другови, пријатељи и храна. 885 00:45:59,910 --> 00:46:03,680 То би било око 1:00 ујутро, када прва серија од хране стигао. 886 00:46:03,680 --> 00:46:08,470 И то је отприлике 4:00 ПМ да Посебно године на ЦС50 Хацкатхон. 887 00:46:08,470 --> 00:46:12,000 >> Али, прави врхунац курса је значило да ЦС50 сајму, кампусу 888 00:46:12,000 --> 00:46:15,790 Изложба ваших завршних пројеката, на који породица и пријатељи су сви 889 00:46:15,790 --> 00:46:18,730 позвани, као и наши регрутери наши пријатељи из индустрије. 890 00:46:18,730 --> 00:46:22,170 То, на пример, је искра 2.000-плус људи који су присуствовали 891 00:46:22,170 --> 00:46:23,160 Протекле године. 892 00:46:23,160 --> 00:46:27,180 Изрази као што је овај нису неуобичајени, и слично даш 893 00:46:27,180 --> 00:46:29,660 другови узивају у стварима ти си постигао. 894 00:46:29,660 --> 00:46:33,170 >> А у ствари, у том циљу, имамо Старт-оф-рок манифестација, као добро. 895 00:46:33,170 --> 00:46:37,400 Ако се ствари као што су ове жалбе на вас или ти си бар радознали шта 896 00:46:37,400 --> 00:46:41,590 ово, знам да је нова традиција Курс се зове ЦС50 Слагалице дан. 897 00:46:41,590 --> 00:46:45,710 И то је био покренут пар године вратио се заиста сигнал кампуса 898 00:46:45,710 --> 00:46:48,930 да је информатика није о програмирање, а то свакако није 899 00:46:48,930 --> 00:46:51,960 о прихвата само оне студенте који имају претходно искуство. 900 00:46:51,960 --> 00:46:54,200 То је заиста о решавању проблема уопште. 901 00:46:54,200 --> 00:46:57,360 >> И тако Пуззле дана, током последњих неколико година сада, је еволуирао у лепо 902 00:46:57,360 --> 00:47:00,500 партнерство са нашим пријатељима у Фацебоок, при чему неће бити сјајно 903 00:47:00,500 --> 00:47:04,830 награде и пица преко реке на И-лабораторија то долази субота. 904 00:47:04,830 --> 00:47:09,180 Дуел на тај УРЛ са два или три пријатељи, ако желите да учествујемо 905 00:47:09,180 --> 00:47:10,830 у овом новом традицији. 906 00:47:10,830 --> 00:47:14,180 >> Зато бих вас замолио да се задржи ствар на уму, а ми имамо само 907 00:47:14,180 --> 00:47:17,070 два минута снимак на коме да затворите данас. 908 00:47:17,070 --> 00:47:19,640 73% је број за памћење. 909 00:47:19,640 --> 00:47:23,900 Торта, такође, ће вас чекају напољу ово попречни брод као што смо паузу у само 910 00:47:23,900 --> 00:47:26,710 неколико тренутака, што је традиција курса, као добро. 911 00:47:26,710 --> 00:47:29,860 Али ово је кључни цитат Наравно да је наставни план на уму. 912 00:47:29,860 --> 00:47:32,820 Оно што је битно у овом крају курса није толико где можете завршити 913 00:47:32,820 --> 00:47:36,580 у односу на својим друговима, али где ви, у 12. недељи, завршавају у односу на 914 00:47:36,580 --> 00:47:37,960 се у Недељи 0. 915 00:47:37,960 --> 00:47:43,670 >> Међутим, поглед који ће вас оставити са данас је ово последња овде 916 00:47:43,670 --> 00:47:47,580 наше истог Данила, који је врдли видео малочас. 917 00:47:47,580 --> 00:47:50,000 Ја бих са овим поглед шта се налази испред. 918 00:47:50,000 --> 00:47:53,360 И као што смо то урадили, ако можемо да имамо ЦС50 особље из предњег дела просторије 919 00:47:53,360 --> 00:47:57,280 хајде да се на бину да сликам све више од визуелне слике као да 920 00:47:57,280 --> 00:47:59,100 шта вас чека у овој години - 921 00:47:59,100 --> 00:48:00,350 постаје непријатно. 922 00:48:00,350 --> 00:48:02,200 923 00:48:02,200 --> 00:48:05,188 Ми ћемо закључити са овим Овде на екрану. 924 00:48:05,188 --> 00:48:18,634 >> [Музика свира] 925 00:48:18,634 --> 00:48:21,124 >> ДАВИД Малан: Ово је ЦС50. 926 00:48:21,124 --> 00:50:00,226 >> [МУЗИКА - Матт & Ким, "у реду је"] 927 00:50:00,226 --> 00:50:03,245 >> СПИКЕР 1: Волим ЦС50 више него мачке. 928 00:50:03,245 --> 00:50:06,030 >> СПИКЕР 2: Вхоаааа! 929 00:50:06,030 --> 00:50:06,990 >> [Смех] 930 00:50:06,990 --> 00:50:08,140 >> Малан ДАВИД: То је, дакле, ЦС50. 931 00:50:08,140 --> 00:50:10,050 Ми ћемо видети у петак. 932 00:50:10,050 --> 00:50:13,370 >> [Аплауз и радосно] 933 00:50:13,370 --> 00:50:17,540 >> НАРАТОР: На следећем ЦС50, на сцени демо не иде по плану. 934 00:50:17,540 --> 00:50:19,080 >> ДАВИД Малан: Желимо да пронађе Мике Смит у том именику. 935 00:50:19,080 --> 00:50:20,380 Па, шта су ваши инстинкти? 936 00:50:20,380 --> 00:50:23,750 Можда грубо скок на средини именик, поглед доле, видимо да 937 00:50:23,750 --> 00:50:26,830 Ја сам на М, а сада знам да Мајк Смит није на лево. 938 00:50:26,830 --> 00:50:27,840 Он мора да буде са десне стране. 939 00:50:27,840 --> 00:50:30,515 И тако у овом тренутку, ми смо може буквално поцепати - 940 00:50:30,515 --> 00:50:33,300 у овом тренутку, ми смо буквално да поцепа - 941 00:50:33,300 --> 00:50:36,490 у овом тренутку, ми можемо фигуративно поцепа телефонски именик на пола. 942 00:50:36,490 --> 00:50:38,954 >> [Укелеле дрндање]