1 00:00:00,000 --> 00:00:07,070 [Powered by Google Translate] [♪ ♪ Гуда] 2 00:00:07,070 --> 00:00:10,380 Такім чынам, каб пазнаёміць вас з таго, што я ўстаў на экране; 3 00:00:10,380 --> 00:00:12,710 гэта адзін з інструментаў, якія мы распрацавалі ў працягу лета; 4 00:00:12,710 --> 00:00:15,530 гэта называецца CS50 прасторы, 5 00:00:15,530 --> 00:00:18,860 і гэта наш сумесны прымянення кадавання 6 00:00:18,860 --> 00:00:20,180 што мы збіраемся выкарыстоўваць у секцыях. 7 00:00:20,180 --> 00:00:22,470 Гэта вельмі выдатна. 8 00:00:22,470 --> 00:00:26,040 Хто-небудзь з вас бачыў CS50 перспектыве яшчэ? 9 00:00:26,040 --> 00:00:29,760 Дазвольце мне цягнуць, што ў іншай укладцы. 10 00:00:29,760 --> 00:00:33,440 Run.cs50.net 11 00:00:33,440 --> 00:00:36,230 Так 12 00:00:36,230 --> 00:00:39,700 калі вы ідзяце ў run.cs50.net, 13 00:00:39,700 --> 00:00:43,030 Вы можаце ўбачыць гэта ў Вашым браўзэры спосабам 14 00:00:43,030 --> 00:00:45,940 на самай справе код - напісаць код C, 15 00:00:45,940 --> 00:00:47,460 , А затым запусціць яго, 16 00:00:47,460 --> 00:00:50,960 так як кампілюе яго, запускае яго, а затым вяртае вынік для вас, 17 00:00:50,960 --> 00:00:53,350 так гэта накшталт добры спосаб, каб эксперымент 18 00:00:53,350 --> 00:00:56,060 з некаторымі з кода, што Дэвід пераходзіць у лекцыях 19 00:00:56,060 --> 00:00:58,640 і мы даем на вас па праблеме наборы 20 00:00:58,640 --> 00:01:01,900 , Фактычна не маючы, каб запусціць прыбор. 21 00:01:01,900 --> 00:01:04,489 >> Так што прасторы робіць гэта адрозніваецца ад 22 00:01:04,489 --> 00:01:07,450 калі б я вярнуцца да гэтай ўкладцы, 23 00:01:07,450 --> 00:01:11,580 Прасторах CS50 перспектыве, як вы бачыце тут, 24 00:01:11,580 --> 00:01:15,380 Але калі мы пракручваем зноў і паглядзець на іншы бок акна, 25 00:01:15,380 --> 00:01:18,130 Вы бачыце права Я адзіны чалавек у гэтай прасторы, 26 00:01:18,130 --> 00:01:21,030 але тое, што я збіраюся зрабіць, гэта спытаць вас, хлопцы далучыцца да гэтай касмічнай са мной 27 00:01:21,030 --> 00:01:24,590 і мы ўсё дабрацца да кода ў тым жа акенцы, 28 00:01:24,590 --> 00:01:26,070 сумесна выкарыстоўваць код адзін з адным, 29 00:01:26,070 --> 00:01:28,900 і казаць пра адрозненні паміж нашым кодам. 30 00:01:28,900 --> 00:01:31,530 Так гэта накшталт класная рэч - 31 00:01:31,530 --> 00:01:35,770 такім чынам, каб далучыцца, калі вы наведаеце гэтую спасылку прама тут, у верхнім 32 00:01:35,770 --> 00:01:38,980 што я вылучыў, 33 00:01:38,980 --> 00:01:53,860 Вы можаце проста ўвесці ў apps.cs50.net/spaces/vqcspSnO. 34 00:01:53,860 --> 00:01:56,610 >> Добра, для пачатку, 35 00:01:56,610 --> 00:01:59,720 Я збіраюся даць вам крыху тура гэтага. 36 00:01:59,720 --> 00:02:01,720 Мы збіраемся зрабіць некаторыя дурныя кадаваньне з ім на першы, 37 00:02:01,720 --> 00:02:06,200 проста так, што ўсім становіцца свайго роду адчуць, што гэта такое, 38 00:02:06,200 --> 00:02:09,000 але тое, што я зрабіў - 39 00:02:09,000 --> 00:02:11,830 або тое, што я збіраюся зрабіць прама тут - 40 00:02:11,830 --> 00:02:13,480 Я збіраюся ўзяць код, які я напісаў тут, 41 00:02:13,480 --> 00:02:15,800 які, як вы бачыце прама зараз пуста; 42 00:02:15,800 --> 00:02:17,090 яна нічога не робіць. 43 00:02:17,090 --> 00:02:21,080 Гэта проста код пліце катла, мы будзем называць яго. 44 00:02:21,080 --> 00:02:23,820 З невялікі спіс спраў каментар. 45 00:02:23,820 --> 00:02:27,850 Я збіраюся захаваць яго, націснуўшы гэтую кнопку Захаваць. 46 00:02:27,850 --> 00:02:30,190 І што, што робіць гэта 47 00:02:30,190 --> 00:02:34,400 падкрэсліў ён тут нядоўга - што перагляд захаваць зялёнае поле, 48 00:02:34,400 --> 00:02:37,570 А цяпер, калі вы будзеце шукаць мяне ў прасторы, 49 00:02:37,570 --> 00:02:40,340 націску маё імя, 50 00:02:40,340 --> 00:02:43,370 Вы можаце бачыць, што я атрымаў гэты перагляд прама тут, 51 00:02:43,370 --> 00:02:45,490 і калі вы пстрыкніце па гэтай рэвізіі, 52 00:02:45,490 --> 00:02:48,240 яна будзе загрузіць код у ваш прасторы, таксама. 53 00:02:50,510 --> 00:02:54,160 >> Так ужо ўсё загружаецца код, што ў сваю прасторы? 54 00:02:54,160 --> 00:02:57,810 Добра, калі ў вас яшчэ не было, ісці наперад і рабіць тое, 55 00:02:57,810 --> 00:03:01,120 і тое, што я хачу, каб вы хлопцы рабіць у гэтым мала, каб рабіць-частка 56 00:03:01,120 --> 00:03:05,940 гэта напісаць трохі выкарыстанні Printf пра сябе, 57 00:03:05,940 --> 00:03:08,310 Так, напрыклад, я хацеў бы напісаць 58 00:03:08,310 --> 00:03:12,270 Е ("Мяне клічуць Нейт"); 59 00:03:15,140 --> 00:03:17,700 а потым я напішу 60 00:03:17,700 --> 00:03:21,660 "Я скончыў у 2009 годзе 61 00:03:21,660 --> 00:03:24,440 Стэнфардскі " 62 00:03:26,050 --> 00:03:28,390 і я хацеў бы пачуць аб 63 00:03:28,390 --> 00:03:30,270 у якім годзе вы знаходзіцеся ў школе, 64 00:03:30,270 --> 00:03:33,910 Ці вы ў каледжы ці школе бізнесу 65 00:03:33,910 --> 00:03:36,130 ці іншай школы Гарварда, 66 00:03:36,130 --> 00:03:39,200 тое, што вы вывучаеце, калі яна невядомая; 67 00:03:39,200 --> 00:03:41,290 калі яно не вядома, што гэта абсалютна выдатна. 68 00:03:41,290 --> 00:03:45,170 Я не вырашыць, пакуль я быў у канцы майго другога года. 69 00:03:46,910 --> 00:03:49,210 і тады я б таксама хацеў ведаць 70 00:03:49,210 --> 00:03:51,610 нічога вар'ята вы хочаце сказаць мне, ці 71 00:03:51,610 --> 00:03:54,790 нешта пра класе або проста што-небудзь яшчэ. 72 00:03:56,930 --> 00:04:00,370 Калі вы скончыце пісаць, што з вашай маленькай Printf, 73 00:04:00,370 --> 00:04:03,480 калі вы будзеце эканоміць пераглядзе або, хутчэй, 74 00:04:03,480 --> 00:04:06,080 Спачатку пераканайцеся, што вы можаце запусціць яго 75 00:04:06,080 --> 00:04:10,640 і што яна выдае менавіта тое, што вы хочаце, каб раздрукаваць, 76 00:04:14,050 --> 00:04:16,399 , А затым, калі вы ідзяце далей і захаваць гэтую рэвізію 77 00:04:16,399 --> 00:04:21,600 з дапамогай кнопкі Save Рэдакцыя, гэта першы маленькі хлопец тут, 78 00:04:24,080 --> 00:04:27,340 і мы цікавае прайсці і зрабіць невялікае ўвядзенне так. 79 00:04:27,340 --> 00:04:30,150 Таму вы павінны дастаткова толькі націснуць кнопку прайгравання, 80 00:04:30,150 --> 00:04:32,550 які тут, на левым верхнім куце, 81 00:04:32,550 --> 00:04:35,340 так што гэтая кнопка Play у левым верхнім куце будзе 82 00:04:35,340 --> 00:04:39,050 Напісаць код ад нашага сервера, на якім ён будзе складзены, а затым запусціць. 83 00:04:40,600 --> 00:04:43,300 Так што ж цікавае розуму ад гэтага 84 00:04:43,300 --> 00:04:46,550 Гэты код на самай справе не працуе на Вашым кампутары; 85 00:04:46,550 --> 00:04:49,290 гэта на самай справе накіроўваюцца праз Інтэрнэт. 86 00:04:49,290 --> 00:04:51,240 >> Як справы, Шарлота? 87 00:04:51,240 --> 00:04:54,810 >> Я - нармальна. I'm - Я думаю, што я 88 00:04:54,810 --> 00:04:57,330 з цяжкасцямі захавання 89 00:04:57,330 --> 00:05:00,530 на серверы так, што ён можа - я магу запусціць праграму. 90 00:05:02,090 --> 00:05:05,780 А потым, калі я спрабую запусціць яго, ён кажа, што няма памылкі. 91 00:05:05,780 --> 00:05:08,850 Заяўлены як вірус, які не знаходзіцца ў там больш. 92 00:05:08,850 --> 00:05:11,860 Ну, давайце паглядзім, ці можаце вы ударыць Захаваць зноў? 93 00:05:11,860 --> 00:05:13,770 Я бачу яго на экране. 94 00:05:13,770 --> 00:05:15,120 >> Права, добра, так гэта тое, што ў мяне ёсць. 95 00:05:15,120 --> 00:05:19,430 І я не ведаю, чаму яна не дае мне запусціць яго. 96 00:05:22,990 --> 00:05:24,990 Ну, добра, даруй. 97 00:05:27,930 --> 00:05:31,220 Ці можаце вы растлумачыць, чаму - тое, што было не так - тое, што не працуе з ім? 98 00:05:31,220 --> 00:05:34,760 >> Так, таму што я не бачыў, што было апошняй радку, дзе яшчэ ёсць зменныя 99 00:05:34,760 --> 00:05:37,700 што я не абвясціў, што я не збіраўся за гэты час там. 100 00:05:37,700 --> 00:05:38,730 Так, выдатна! 101 00:05:38,730 --> 00:05:40,390 >> Цяпер, калі я захаваць яго, я думаю, ён павінен працаваць. 102 00:05:40,390 --> 00:05:42,970 Зараз, калі вы захавалі яго, ён працуе; дзіўным. 103 00:05:42,970 --> 00:05:44,570 >> Так што так, паколькі мы праходзім - 104 00:05:44,570 --> 00:05:46,690 Так што ж адбываецца, 105 00:05:46,690 --> 00:05:49,130 Я проста хачу паўтарыць гэта на камеру. 106 00:05:49,130 --> 00:05:51,760 Тое, што адбываецца было, што гэтая зменная з 107 00:05:51,760 --> 00:05:54,310 засталося пасля - Я мяркую, што вы выдалілі некаторыя іншыя рэчы 108 00:05:54,310 --> 00:05:56,670 дзе вы аб'яўлена, 109 00:05:56,670 --> 00:05:59,560 і такім чынам, гэта было кідаць рэчы і не дазваляючы запусціць яго. 110 00:05:59,560 --> 00:06:02,540 Так што гэта менавіта тое, што мы хочам зрабіць у раздзеле 111 00:06:02,540 --> 00:06:05,690 гэта былі людзі спрабуюць напісання розных частак кода, 112 00:06:05,690 --> 00:06:08,490 кампіляцыі, паглядзець, што працуе, паглядзім, што няма, 113 00:06:08,490 --> 00:06:10,730 , А затым цікавае казаць пра гэтыя рэчы, таму што гэтыя адключэння кропак, 114 00:06:10,730 --> 00:06:12,850 Я да гэтага часу сутыкаемся, 115 00:06:12,850 --> 00:06:15,470 Я да гэтага часу - я раблю шмат дурных рэчаў ўвесь час, 116 00:06:15,470 --> 00:06:17,820 і я не ведаю, чаму ён не працуе, 117 00:06:17,820 --> 00:06:22,960 так што давайце падцягнуць перагляду Шарлота 3, 118 00:06:23,980 --> 00:06:25,380 і мы будзем яго запуску. 119 00:06:25,380 --> 00:06:28,950 >> Таму, калі я бягу, цяпер, калі я атрымала свой код сюды, 120 00:06:28,950 --> 00:06:31,450 Я магу павялічыць, націсніце кнопку Выканаць, 121 00:06:31,450 --> 00:06:33,680 загружае яго, будуе, кіруе ім, 122 00:06:33,680 --> 00:06:36,980 кажа, што з поспехам прайшла, і калі я пракруціць ўніз, 123 00:06:36,980 --> 00:06:39,440 гл. Шарлота Адамс малодшы ў доме, 124 00:06:39,440 --> 00:06:42,720 псіхалогія, другасны у эканоміцы; дзіўным. 125 00:06:42,720 --> 00:06:44,310 Вялікі сустрэцца з вамі! 126 00:06:44,310 --> 00:06:46,550 Awesome. 127 00:06:46,550 --> 00:06:49,670 Добра, ідзем далей, давайце пойдзем да Данііла, 128 00:06:49,670 --> 00:06:52,710 перайсці да перагляду 3, 129 00:06:52,710 --> 00:06:54,180 кампіляваць, запускаць; 130 00:06:54,180 --> 00:06:56,680 Чаму б вам не расказаць нам крыху пра сябе, Данііл? 131 00:06:56,680 --> 00:06:59,380 >> Патэлефануй мне дадзены. 132 00:06:59,380 --> 00:07:01,920 Я іду ў бізнес-школу праз дарогу ад вас, хлопцы, 133 00:07:01,920 --> 00:07:05,020 і я быў у марской пяхоце, перш чым тут, 134 00:07:05,020 --> 00:07:08,020 і гэта ўсё новае для мяне, так што так. 135 00:07:08,020 --> 00:07:11,060 Ня адчувайце сябе дрэнна, мне 30 і я не ведаю ні адной з гэтых рэчаў. 136 00:07:11,060 --> 00:07:13,800 Высокі, дзякуй, Dan! 137 00:07:13,800 --> 00:07:17,300 Усё ў парадку, мы атрымалі іншы Данііла. 138 00:07:17,300 --> 00:07:20,930 Вы ідзяце Даніэль - вы ўявіць сабе, Даніэль? 139 00:07:20,930 --> 00:07:22,260 >> >> Вядома, я Данііл. 140 00:07:22,260 --> 00:07:24,330 Я на другім курсе Mather прама цяпер. 141 00:07:24,330 --> 00:07:25,840 Я засяроджаны на ўрад, 142 00:07:25,840 --> 00:07:28,760 Але я хацеў узяць CS50, таму што я чуў выдатныя водгукі аб класе 143 00:07:28,760 --> 00:07:30,750 і я ніколі не спрабаваў CS раней. 144 00:07:30,750 --> 00:07:34,680 Вылучыце сюды і паказаць гэта - крута. 145 00:07:36,330 --> 00:07:39,090 Рухаемся далей, Джарэд. 146 00:07:39,090 --> 00:07:41,990 Як справы? 147 00:07:41,990 --> 00:07:43,430 >> Добра, як вы? 148 00:07:43,430 --> 00:07:47,520 Як вы можаце бачыць, я малодшы канцэнтратар філасофіі ў Эліёт, 149 00:07:47,520 --> 00:07:50,260 родам з паўднёвай Каліфорніі, 150 00:07:50,260 --> 00:07:53,100 і я зацікаўлены ў прыняцці CS50 таму што мне падабаецца логіка яго, 151 00:07:53,100 --> 00:07:57,420 і, здаецца, сапраўды выдатна зрабіць нешта на кампутары, так. 152 00:07:57,420 --> 00:07:59,570 Высокі, дзе ў паўднёвай Каліфорніі вы? 153 00:07:59,570 --> 00:08:02,340 >> Аб гадзіне язды ад [неразборліва], невялікім горадзе [неразборліва]. 154 00:08:02,340 --> 00:08:04,850 О, так, мой бацька з Redlands. 155 00:08:04,850 --> 00:08:07,060 Прышпільных рэчаў. 156 00:08:07,060 --> 00:08:12,130 >> Добра, Джымі, як справы, Джымі? 157 00:08:12,130 --> 00:08:15,130 >> Добра, як вы? 158 00:08:15,130 --> 00:08:16,040 Робячы вельмі добра! 159 00:08:16,040 --> 00:08:17,710 Раскажыце нам пра сябе. 160 00:08:17,710 --> 00:08:20,840 >> Я пачатковец, і я не зусім упэўнены, што я па спецыяльнасці 161 00:08:20,840 --> 00:08:22,820 але я свайго роду схіляецца да эканомікі. 162 00:08:22,820 --> 00:08:25,680 Як Daniel да мяне, я ніколі не рабіў ніякіх CS, але гучыць крута. 163 00:08:25,680 --> 00:08:28,120 Я родам з Чыкага. 164 00:08:28,120 --> 00:08:31,640 Awesome. Так праверце яго раздрукоўкі тут. 165 00:08:31,640 --> 00:08:34,630 Я хацеў спытаць, зрабілі гэта друк, як вы чакалі? 166 00:08:34,630 --> 00:08:37,650 >> Не, я забыўся раздрукаваць новую радок. 167 00:08:37,650 --> 00:08:41,270 Я на самай справе забыўся, што, калі я пісаў сваю справу 168 00:08:41,270 --> 00:08:43,090 у першы раз, таксама. 169 00:08:43,090 --> 00:08:46,330 Гэта свайго роду боль, каб не забудзьцеся пакласці гэтыя ўручную. 170 00:08:46,330 --> 00:08:50,560 Было б нядрэнна, калі б ён проста ведаю, што тое, што Вы хацелі. 171 00:08:50,560 --> 00:08:53,630 >> Добра, Кэлі. 172 00:08:53,630 --> 00:08:56,050 Нічога сабе, у нас ёсць 2 Kellys, 2 Daniels, 2 Kellys. 173 00:08:56,050 --> 00:09:00,490 Так Kelly - вы ідзяце Кэлі Ren? 174 00:09:00,490 --> 00:09:03,870 Добра, дзіўны. 175 00:09:03,870 --> 00:09:07,270 Ці Кэлі, я маю на ўвазе. 176 00:09:07,270 --> 00:09:10,260 >> Так што так, таму я Кэлі. 177 00:09:10,260 --> 00:09:12,930 Я на другім курсе Pfoho. 178 00:09:12,930 --> 00:09:17,000 Я атрымаў электронную пошту сёння, што мяне ўсё яшчэ ёсць 7 тыдняў аб'явіць маю канцэнтрацыю, 179 00:09:17,000 --> 00:09:20,940 таму я стараюся не думаць пра гэта, 180 00:09:20,940 --> 00:09:24,090 і мне падабаецца выпечка, працуе, і Craisins. 181 00:09:24,090 --> 00:09:29,110 У мяне няма вопыту з большасцю CS; 182 00:09:29,110 --> 00:09:32,700 Я сам навучыўся ствараць вэб-сайты, калі я быў вельмі малады, 183 00:09:32,700 --> 00:09:35,750 Але я думаю, што я, верагодна, навучыў сябе няправільна шмат разоў. 184 00:09:35,750 --> 00:09:39,260 Спадзяюся, я буду вучыцца крыху больш 185 00:09:39,260 --> 00:09:41,450 і - так. 186 00:09:41,450 --> 00:09:44,100 >> Высокі, добра, дзякуй. 187 00:09:44,100 --> 00:09:47,190 Пойдзем у іншую Кэлі; 188 00:09:47,190 --> 00:09:48,880 Я нічога не маю - ты сказаў нешта тут? 189 00:09:48,880 --> 00:09:51,880 >> [Неразборліва] 190 00:09:51,880 --> 00:09:56,180 Там гэта! 191 00:09:56,180 --> 00:09:58,120 Sweet! 192 00:09:58,120 --> 00:10:01,400 >> Добра, так што я Кэлі. 193 00:10:01,400 --> 00:10:03,980 Я першы год аспірант. 194 00:10:03,980 --> 00:10:05,560 Я па спецыяльнасці розуму, мозгу і адукацыі. 195 00:10:05,560 --> 00:10:07,940 Я скончыў у Franklin & Marshall College ў 2008 годзе 196 00:10:07,940 --> 00:10:10,840 са спецыялізацыяй ў галіне псіхалогіі і сацыялогіі 197 00:10:10,840 --> 00:10:13,120 і нязначнае па-французску. 198 00:10:13,120 --> 00:10:15,330 Я бяру CS50 199 00:10:15,330 --> 00:10:18,080 таму што я зацікаўлены ў тым, каб кандыдат у неўралогіі 200 00:10:18,080 --> 00:10:21,220 і я адчуваю, што гэта дапаможа мне зразумець, што выкарыстоўваюцца тэхналогій. 201 00:10:21,220 --> 00:10:23,150 Awesome. 202 00:10:26,980 --> 00:10:29,390 Рухаемся далей, Мікаэла. 203 00:10:29,390 --> 00:10:31,640 Гэта правільнае вымаўленне? 204 00:10:31,640 --> 00:10:32,990 Добра, дзіўны. 205 00:10:32,990 --> 00:10:34,640 >> >> Я Міхаіла. 206 00:10:34,640 --> 00:10:36,870 Я на другім курсе ў Kirkland House, 207 00:10:36,870 --> 00:10:39,950 і я засяроджаны ў галіне машынабудавання. 208 00:10:39,950 --> 00:10:43,180 Мне вельмі падабаецца язда на ровары, пабудаваны на ровары летам гэтага года. 209 00:10:43,180 --> 00:10:46,140 Я бяру CS, на самай справе, 210 00:10:46,140 --> 00:10:48,350 як канцэнтрацыя патрабаванне, 211 00:10:48,350 --> 00:10:52,550 Але вы ведаеце, я думаю, гэта яшчэ халаднавата роду інжынерныя класа. 212 00:10:52,550 --> 00:10:55,150 Awesome - Вы пабудавалі ровар гэтым летам? 213 00:10:55,150 --> 00:10:56,730 >> Так. 214 00:10:56,730 --> 00:10:58,900 Ух ты, як рама і ўсё такое? 215 00:10:58,900 --> 00:11:00,120 >> Э-э-hunh (станоўчы). 216 00:11:00,120 --> 00:11:01,530 Нічога сабе, гэта сапраўды выдатна. 217 00:11:01,530 --> 00:11:06,370 >> [Неразборліва кадрам чат] 218 00:11:06,370 --> 00:11:10,000 [Смех] 219 00:11:12,640 --> 00:11:14,200 Так, гэта было так даўно. 220 00:11:14,200 --> 00:11:16,730 Вы ніколі не ведаеце, праўда? 221 00:11:16,730 --> 00:11:19,420 Ну, прахалодным, добра, дзякуй, Міхаіла. 222 00:11:19,420 --> 00:11:21,390 >> Добра, місія. 223 00:11:21,390 --> 00:11:23,280 >> Мяне клічуць міс, я на першым курсе, 224 00:11:23,280 --> 00:11:25,500 так, значыць, я нічога не ведаю! 225 00:11:25,500 --> 00:11:29,180 Я хачу сканцэнтравацца ў астрафізіцы. 226 00:11:29,180 --> 00:11:31,220 У CS50, 227 00:11:31,220 --> 00:11:33,350 Я адчуваю, што, безумоўна, дапаможа ў гэтым. 228 00:11:33,350 --> 00:11:37,750 Дзіўны факт пра мяне, я нацыянальным сертыфікаваны пажарны. 229 00:11:37,750 --> 00:11:39,960 Вось гэта так! 230 00:11:39,960 --> 00:11:42,440 Як гэта здарылася? 231 00:11:42,440 --> 00:11:45,570 >> Я наведаў Акадэмію 232 00:11:45,570 --> 00:11:49,000 і прайшоў праз пекла для многіх тыдняў 233 00:11:49,000 --> 00:11:51,200 і атрымаў сертыфікацыю. 234 00:11:51,200 --> 00:11:54,090 Ого, віншую! 235 00:11:54,090 --> 00:11:57,280 Гэта не маленькі подзвіг, вядома. 236 00:11:57,280 --> 00:11:59,070 Такім чынам, зараз мы будзем рабіць мне. 237 00:11:59,070 --> 00:12:01,290 Я наступны ў шэрагу. 238 00:12:01,290 --> 00:12:04,510 I'm - запусціце яго. 239 00:12:04,510 --> 00:12:07,580 >> Так мяне завуць Нейт. 240 00:12:07,580 --> 00:12:11,160 Я быў клас 2009 года ў Стэнфардзе. 241 00:12:11,160 --> 00:12:13,840 Я быў сімвалічных сістэм буйных, 242 00:12:13,840 --> 00:12:17,370 які падобны на розум, мозг, паводзіны канцэнтрацыі тут, 243 00:12:17,370 --> 00:12:19,300 але гэта свайго роду сумесь 244 00:12:19,300 --> 00:12:22,350 інфарматыкі, лінгвістыкі, псіхалогіі і філасофіі. 245 00:12:22,350 --> 00:12:26,600 Выгляд - Так, шмат дзіўных рэчаў, але гэта было выдатна, 246 00:12:26,600 --> 00:12:29,880 а потым я зрабіў магістра ў галіне камп'ютэрных навук там, як добра. 247 00:12:29,880 --> 00:12:33,250 Так што я пачатковец у Гарвардзе ў гэтым годзе. 248 00:12:33,250 --> 00:12:35,750 Я сапраўды хацеў, каб патрапіць у навучанні. 249 00:12:35,750 --> 00:12:39,860 Я правёў апошнія 4 гады ў Стэнфардскім TA-ING класы інфарматыкі 250 00:12:39,860 --> 00:12:43,370 і так Дэвідам дазвольце мне давай, 251 00:12:43,370 --> 00:12:45,550 і я збіраюся быць дапамагчы з CS50, 252 00:12:45,550 --> 00:12:47,890 так я раблю гэта поўная, я не ў аспірантуру. 253 00:12:47,890 --> 00:12:50,330 Гэта было весела. 254 00:12:50,330 --> 00:12:53,130 Спадзяемся, што яна будзе працягваць быць весела, і я ўпэўнены, што гэта будзе. 255 00:12:53,130 --> 00:12:56,040 >> Усё ў парадку, Сэм. 256 00:13:01,910 --> 00:13:05,470 >> Мяне клічуць Сэм, я на другім курсе ў каледжы, у законе канкрэтна. 257 00:13:05,470 --> 00:13:10,110 Мая галоўная будзе гісторыя навукі, напэўна, і VES другасныя, 258 00:13:10,110 --> 00:13:13,240 і мой любімы колер жоўты. 259 00:13:18,790 --> 00:13:21,100 Не трэба судзіць або што-небудзь, але гэта добры колер! 260 00:13:21,100 --> 00:13:24,780 І Стэла. 261 00:13:24,780 --> 00:13:26,980 >> Прывітанне, я Стэла, я пачатковец у шэрых. 262 00:13:26,980 --> 00:13:30,070 Я паняцця не маю, што я засяроджаны ў раней, 263 00:13:30,070 --> 00:13:32,500 так CS50 была проста нейкая выпадковая, 264 00:13:32,500 --> 00:13:34,220 што цікава. 265 00:13:34,220 --> 00:13:36,080 Цікавы факт, Джымі быў першым сябрам Гарвардскага мой, 266 00:13:36,080 --> 00:13:38,360 таму што мы абодва з Чыкага. 267 00:13:38,360 --> 00:13:42,450 Cool, і грацыя - які павінен быць сапраўды добрым, правільна? 268 00:13:42,450 --> 00:13:45,220 >> Я думаў, [неразборліва]. 269 00:13:45,220 --> 00:13:46,690 О, так. 270 00:13:46,690 --> 00:13:51,210 [Неразборліва / выключэння камеры чат] 271 00:13:51,210 --> 00:13:54,420 Добра, я ўсё яшчэ вучуся, усё яшчэ вучуся. 272 00:13:54,420 --> 00:13:57,800 >> Такім чынам, у нас ёсць сёе-тое яшчэ, што гэта даволі цікава тут. 273 00:13:59,600 --> 00:14:02,870 Так, мне проста цікава, у вас ёсць ідэя, што тут адбываецца? 274 00:14:02,870 --> 00:14:05,890 Вы ведаеце, як гэта інтэрпрэтаваць? 275 00:14:05,890 --> 00:14:13,340 >> Я павінен быў паставіць кропку з коскай пасля кожнага радка. 276 00:14:13,340 --> 00:14:16,370 Гэта свайго роду боль. 277 00:14:16,370 --> 00:14:19,100 Часам гэтыя кропкі з коскай можа быць рэальнай болю адсачыць. 278 00:14:19,100 --> 00:14:21,420 Такім чынам, атрымліваецца, што 279 00:14:21,420 --> 00:14:22,820 адмысловай праграмы мы выкарыстоўваем у гэтым годзе 280 00:14:22,820 --> 00:14:26,670 скампіляваць код C завецца Clang, 281 00:14:26,670 --> 00:14:29,460 і па гэтай прычыне мы пачалі выкарыстоўваць Clang ў гэтым годзе - 282 00:14:29,460 --> 00:14:32,030 таму што мы не выкарыстоўвалі гэтую праграму ў мінулым; 283 00:14:32,030 --> 00:14:35,710 Мы выкарыстоўвалі іншы называецца GCC, што гэта сапраўды папулярным - 284 00:14:35,710 --> 00:14:38,420 Clang самай справе дае вам паведамленні пра памылкі, якія маюць сэнс. 285 00:14:38,420 --> 00:14:41,420 Гэта адзін кажа: "чакаецца"; "пасля выказвання", 286 00:14:41,420 --> 00:14:45,260 і ён нават кажа вам, выказвання, пасля чаго вам патрэбна кропка з коскі. 287 00:14:45,260 --> 00:14:47,830 Так вы яе выпраўленне? 288 00:14:47,830 --> 00:14:48,930 >> Так, прама цяпер. 289 00:14:48,930 --> 00:14:52,040 Высокі, дайце мне ведаць, і мы будзем пацягніце яго ўверх, і мы будзем яго запуску. 290 00:14:52,040 --> 00:14:55,830 Але так, паклаўшы гэтыя кропкі з коскі ў гэта выгляд болю. 291 00:14:55,830 --> 00:14:59,580 >> Я усталяваў яго, так што я думаю, што гэта павінна працаваць. 292 00:14:59,580 --> 00:15:02,760 Awesome - перагляд 3. 293 00:15:02,760 --> 00:15:05,250 Гэта падобна на гэта. 294 00:15:05,250 --> 00:15:08,580 Добра, так што цяпер, калі мы запусцім яго, 295 00:15:08,580 --> 00:15:11,020 там яна ідзе. 296 00:15:11,020 --> 00:15:13,830 Прышпільных рэчаў. 297 00:15:13,830 --> 00:15:15,340 >> Добра. 298 00:15:15,340 --> 00:15:18,230 Так што дзякуй за гэта. 299 00:15:18,230 --> 00:15:20,210 Гэта выдатна сустрэцца з вамі, хлопцы. 300 00:15:20,210 --> 00:15:22,880 Тое, што мы збіраемся зрабіць цяпер, гэта правесці наступны трохі 301 00:15:22,880 --> 00:15:24,740 свайго роду апусканне ў раздзеле праблемы 302 00:15:24,740 --> 00:15:27,550 , Якія прыходзяць ад пастаўленай задачы з гэтым тыдні 303 00:15:27,550 --> 00:15:29,920 і мы зробім усё, што для большасці з раздзелаў 304 00:15:29,920 --> 00:15:32,110 за астатнюю частку тэрміна, 305 00:15:32,110 --> 00:15:35,580 і тады мы выратуем апошнія 15, 20 хвілін або каля таго 306 00:15:35,580 --> 00:15:38,490 казаць аб праблеме ставіць перад сабой 307 00:15:38,490 --> 00:15:41,420 , А затым проста любыя іншыя пытанні вы маеце ў цэлым аб класе. 308 00:15:43,380 --> 00:15:45,670 Тым не менш, тое, што мы сапраўды хочам зрабіць 309 00:15:45,670 --> 00:15:49,390 гэта было ўсім якія ўдзельнічаюць 310 00:15:49,390 --> 00:15:51,500 выкарыстанне прасторы матэрыял, 311 00:15:51,500 --> 00:15:53,500 кідалі ў кодзе, кідаючы ў прапановы, 312 00:15:53,500 --> 00:15:56,500 і казаць пра тое, калі такія рэчы перапынак 313 00:15:56,500 --> 00:15:58,360 або не працуюць, толькі таму, што гэтыя рэчы, якія 314 00:15:58,360 --> 00:16:00,870 Я ведаю, я наткнуўся на 315 00:16:00,870 --> 00:16:03,180 Калі я пачаў кадавання, 316 00:16:03,180 --> 00:16:05,490 і былі сапраўды цікавае расчараванне ў разы 317 00:16:05,490 --> 00:16:08,690 таму што, калі гэта як 2 раніцы перад праблемай набору тлумачыцца, 318 00:16:08,690 --> 00:16:11,330 так што - толькі для раскрыцця, 319 00:16:11,330 --> 00:16:14,590 Я не пачаць праграмаванне, пакуль я быў на другім курсе ў каледжы. 320 00:16:14,590 --> 00:16:17,360 Гэта была нейкая дзіўная, невядомая рэч 321 00:16:17,360 --> 00:16:20,360 што я пачуў, было крута 322 00:16:20,360 --> 00:16:23,590 і я таксама чуў, гэта можа быць рэальная боль у прыклад 323 00:16:23,590 --> 00:16:27,610 калі вы прапусцілі кропку з коскай, і гэта толькі памылка захавання вашай праграмы ад працы 324 00:16:27,610 --> 00:16:30,890 і трымаць вас у спячы рэжым, 325 00:16:30,890 --> 00:16:32,650 так вызначана, 326 00:16:32,650 --> 00:16:34,020 калі ў вас ёсць пытанні, як, што, 327 00:16:34,020 --> 00:16:37,060 калі ў вас ёсць праблемы, як, што, дайце мне ведаць, 328 00:16:37,060 --> 00:16:40,050 таму што я хачу, каб гэта добры вопыт для вас, хлопцы. 329 00:16:40,050 --> 00:16:44,620 >> Так што вы, хлопцы, усе загружаныя задачу, пастаўленую яшчэ? 330 00:16:44,620 --> 00:16:47,160 Свайго роду ведаеце, дзе гэта? Добра. 331 00:16:47,160 --> 00:16:51,490 Такім чынам, мы паедзем у cs50.net, таму што я яго не маюць на гэты конт, 332 00:16:51,490 --> 00:16:54,110 падцягнуць праблемы наборы, 333 00:16:54,110 --> 00:16:57,940 падцягнуць праблема набору 2, і мы будзем глядзець на стандартнае выданне Сёння. 334 00:16:57,940 --> 00:17:01,190 Мы будзем цягнуць да спецыфікацыя тут. 335 00:17:02,640 --> 00:17:04,420 Пракрутка ўніз. 336 00:17:06,790 --> 00:17:11,109 Такім чынам, мы збіраемся пачаць глядзець на гэтую частку пытання. 337 00:17:14,069 --> 00:17:16,710 Хіба вы, хлопцы, глядзелі гэтыя шорты яшчэ? 338 00:17:16,710 --> 00:17:18,329 Добра. 339 00:17:18,329 --> 00:17:21,329 Такім чынам, ёсць шорты на завесах, 340 00:17:21,329 --> 00:17:24,700 якая ажыццяўляецца шляхам Томі, адзін з хлопцаў галава навучання. 341 00:17:24,700 --> 00:17:27,230 Там адзін на вобласць, 342 00:17:27,230 --> 00:17:30,530 Я лічу, зроблена яшчэ адно вучэнне хлопец па імі Дэвід 343 00:17:30,530 --> 00:17:33,400 , А затым адзін на Caesar Cipher таксама зрабіў Дэвід. 344 00:17:33,400 --> 00:17:35,550 Яны даволі халаднавата. 345 00:17:35,550 --> 00:17:37,770 Хіба вы, хлопцы назіралі за свае шорты да гэтага часу? 346 00:17:37,770 --> 00:17:39,270 Дарэчы, як яны былі? 347 00:17:39,270 --> 00:17:41,490 Карысныя? Добра, добра ведаю. 348 00:17:41,490 --> 00:17:44,210 Калі гэта не так, можна сказаць і так. 349 00:17:46,290 --> 00:17:49,870 Але перш чым вы гэта зробіце, 350 00:17:49,870 --> 00:17:52,600 вы, хлопцы паглядзелі на гэтыя пытанні 351 00:17:52,600 --> 00:17:55,430 на ўсіх? 352 00:17:55,430 --> 00:17:57,480 >> Давайце пагаворым аб гэтым няшмат. 353 00:17:57,480 --> 00:18:00,600 Такім чынам, мы ўвялі за апошнія пару тыдняў 354 00:18:00,600 --> 00:18:02,480 У лекцыі 355 00:18:02,480 --> 00:18:04,910 колькасць розных цыклаў. 356 00:18:04,910 --> 00:18:06,140 Там у цыкл, 357 00:18:06,140 --> 00:18:09,570 час цыклу, а затым зрабі той час як цыкл, 358 00:18:09,570 --> 00:18:13,100 і ў лекцыі, мы шмат гаварылі пра 359 00:18:13,100 --> 00:18:16,010 як гэтыя завесы ўсё 360 00:18:16,010 --> 00:18:18,320 даволі падобныя ў многіх адносінах 361 00:18:18,320 --> 00:18:21,210 і вы можаце многае зрабіць тое ж самае з нейкі час цыклу 362 00:18:21,210 --> 00:18:23,260 што вы можаце з цыклу. 363 00:18:23,260 --> 00:18:26,300 Вы проста павінны выгляду выкарыстання правільных камбінацый зменных і да таго падобнае. 364 00:18:26,300 --> 00:18:28,680 і так на самай справе 365 00:18:28,680 --> 00:18:31,200 рэальнае адрозненне паміж усімі завес з'яўляецца тое, што 366 00:18:31,200 --> 00:18:33,620 Часам яны больш карысныя 367 00:18:33,620 --> 00:18:36,930 выкарыстоўваць іх у адзін час, чым у іншы час. 368 00:18:36,930 --> 00:18:39,340 >> Так, напрыклад, 369 00:18:39,340 --> 00:18:42,260 у той час як цыкл адрозніваецца ад DO-цыклу. 370 00:18:42,260 --> 00:18:45,680 Ці ўсё адчуваюць, што яны маюць добрыя ручкі, калі 371 00:18:45,680 --> 00:18:48,650 Зрабі той час як цыкл больш 372 00:18:48,650 --> 00:18:50,990 карысна або ў чым розніца? 373 00:18:50,990 --> 00:18:53,410 >> Я думаю, што розніца зрабі той час як цыкл 374 00:18:53,410 --> 00:18:56,960 працуе - я не ведаю зусім тое, што тэрміналогія, 375 00:18:56,960 --> 00:18:59,750 але шэраг функцый ўнутры цыклу. 376 00:18:59,750 --> 00:19:02,020 Яны аўтаматычна - ён робіць сваю выконваецца па крайняй меры 377 00:19:02,020 --> 00:19:05,390 Перад правярае стан, ці ў той час як цыкл будзе працаваць толькі, калі 378 00:19:05,390 --> 00:19:08,290 ён увесь час працуе - ці не ўмова задавальняецца. 379 00:19:08,290 --> 00:19:11,010 Так, не ў гэтым сэнс? 380 00:19:11,010 --> 00:19:14,200 >> Давайце паглядзім на трохі кода. 381 00:19:14,200 --> 00:19:16,930 Так што проста паўтарыць пытанне, 382 00:19:16,930 --> 00:19:19,230 або адказ, а; 383 00:19:19,230 --> 00:19:22,050 Адказ быў, што 384 00:19:22,050 --> 00:19:25,850 час цыклу будзе правяраць, калі ўмова 385 00:19:25,850 --> 00:19:27,440 што вы паказалі, сустрэліся 386 00:19:27,440 --> 00:19:31,320 перад выкананнем цела цыкла ў першы раз, 387 00:19:31,320 --> 00:19:35,000 а зрабі той час як цыкл будзе аўтаматычна запускацца цела цыклу, 388 00:19:35,000 --> 00:19:38,450 Мы называем яго - гэта дзіўна тэрміналогіі, 389 00:19:38,450 --> 00:19:41,460 але калі я калі-небудзь казаў, што не мае сэнсу, дайце мне ведаць - 390 00:19:41,460 --> 00:19:45,360 Цела цыкла з'яўляецца тое, што рэчы, якія вы пакладзеце паміж фігурнымі дужкамі. 391 00:19:45,360 --> 00:19:47,840 І зрабі той час як цыкл, 392 00:19:47,840 --> 00:19:50,220 , Што цела атрымліваюць бегчы па меншай меры адзін раз, 393 00:19:50,220 --> 00:19:54,460 і тады ўмова атрымлівае праверыў перад выкананнем кожнага наступнага часу. 394 00:19:54,460 --> 00:19:56,580 >> Такім чынам, на самай справе, Сэм, 395 00:19:56,580 --> 00:20:00,820 Вы не пярэчыце напісанне простага у той час як пятля 396 00:20:00,820 --> 00:20:02,840 у прасторах? 397 00:20:02,840 --> 00:20:05,600 >> Як вы, здаецца, як 398 00:20:05,600 --> 00:20:07,060 зрабіць новую ...? 399 00:20:07,060 --> 00:20:09,220 Я проста выдаліць усё, што вы там. 400 00:20:09,220 --> 00:20:11,300 Так, проста зніміце яе. 401 00:20:11,300 --> 00:20:14,510 >> Ну, я лічу, у мяне гэта - 402 00:20:14,510 --> 00:20:16,640 які з іх вы хочаце, у той час як, ці вы хочаце ...? 403 00:20:16,640 --> 00:20:19,350 Так, проста ў той час як сапраўдныя, раздрукаваць нешта. 404 00:20:21,050 --> 00:20:23,140 І давайце паглядзім. 405 00:20:23,140 --> 00:20:25,850 Аляксандр, я зразумеў, што мы ніколі не пазнаёмілі вас. 406 00:20:25,850 --> 00:20:27,510 >> О, гэта выдатна. 407 00:20:27,510 --> 00:20:30,760 Вы - ці можаце вы код да зрабі той час як цыкл для нас? 408 00:20:30,760 --> 00:20:32,520 >> Так, я паспрабую. 409 00:20:32,520 --> 00:20:34,370 Усё ў парадку, мы проста цягнуць гэтыя на экране, 410 00:20:34,370 --> 00:20:38,240 так што вы, здаецца, ёсць ручка, што адрозненні. 411 00:20:38,240 --> 00:20:41,280 >> Такім чынам, вось што Сэм зрабіў. 412 00:20:41,280 --> 00:20:44,460 У яго ёсць цэлы лік, званае я 413 00:20:44,460 --> 00:20:47,480 што ён ініцыялізаваны да 17 гадоў. 414 00:20:47,480 --> 00:20:51,570 Затым ён кажа, у той час як (INT я = 17) 415 00:20:51,570 --> 00:20:54,230 Е ("Мяне клічуць Сэм."); 416 00:20:54,230 --> 00:20:57,300 Так што ж адбываецца, калі мы запусцім гэты код? 417 00:20:57,300 --> 00:21:00,340 Там ў памылцы, што ж памылкі сказаць? 418 00:21:00,340 --> 00:21:02,890 Давайце пацягніце яго ўверх, і казаць пра гэта. 419 00:21:02,890 --> 00:21:05,040 Адбылася памылка, ён кажа. 420 00:21:05,040 --> 00:21:07,400 Давайце пракруткі ўніз. 421 00:21:07,400 --> 00:21:09,460 Такім чынам, ён даў нам гэтую памылку, і яна сказала: 422 00:21:09,460 --> 00:21:12,690 "Гэй, я чакаў выразы". 423 00:21:12,690 --> 00:21:16,180 Гэта свайго роду загадкавым. 424 00:21:19,160 --> 00:21:23,140 Так, менавіта так - і зноў, 425 00:21:23,140 --> 00:21:27,140 там будзе яшчэ адна маленькая памылка, што мы будзем лавіць толькі ў секунду. 426 00:21:27,140 --> 00:21:31,800 Але гэта яшчэ адзін з тых дзіўныя рэчы тэрміналогіі, 427 00:21:31,800 --> 00:21:36,150 так што гэта Int я = 17 428 00:21:36,150 --> 00:21:39,290 не з'яўляецца выразам. 429 00:21:39,290 --> 00:21:41,220 Што, падобна, ён робіць, гэта 430 00:21:41,220 --> 00:21:43,410 абвясціўшы цэлы лік, званае я 431 00:21:43,410 --> 00:21:45,540 і усталяваўшы яго роўным да 17 432 00:21:45,540 --> 00:21:48,780 ці, хутчэй, паклаўшы 17 у, што называецца Int я. 433 00:21:50,560 --> 00:21:53,350 І гэта не мае сэнсу 434 00:21:53,350 --> 00:21:55,790 У кантэксце гэтага цыклу. 435 00:21:55,790 --> 00:21:58,190 Гэта не мае сэнсу, як мы ўбачым, 436 00:21:58,190 --> 00:22:01,250 ў кантэксце цыклу, таму што для гэтага цыклу дэкларацый пачаць 437 00:22:01,250 --> 00:22:05,800 с, што для внутр роўна я нешта 438 00:22:05,800 --> 00:22:07,830 і ідзе далей. 439 00:22:07,830 --> 00:22:09,500 >> Гэтак жа вы - 440 00:22:09,500 --> 00:22:12,630 нешта выправіць, усё ў парадку. 441 00:22:12,630 --> 00:22:15,270 Вось ён ідзе, дзіўны. 442 00:22:15,270 --> 00:22:17,920 Так што цяпер усё выглядае крыху інакш. 443 00:22:17,920 --> 00:22:19,030 Некалькі рэчаў змянілася. 444 00:22:19,030 --> 00:22:21,300 Ці можаце вы распавесці нам, што ўсё змянілася? 445 00:22:21,300 --> 00:22:24,950 >> Я дастаў INT, так што няма ніякай дэкларацыі [неразборліва], а не прызначэнне. 446 00:22:24,950 --> 00:22:28,770 Той знак роўнасці, я паставіў 2 роўныя знакі, што азначае роўныя. 447 00:22:28,770 --> 00:22:30,560 Awesome. 448 00:22:30,560 --> 00:22:33,320 Так, так, што Сэм быў так ён дастаў Int 449 00:22:33,320 --> 00:22:35,770 , Які быў тут раней, 450 00:22:35,770 --> 00:22:39,340 так што калі я проста гляджу на гэта - гэта тое, што было раней, ён сказаў, INT, 451 00:22:39,340 --> 00:22:41,970 які быў аб'явіць яго - такім чынам, мы вынялі тыпу. 452 00:22:41,970 --> 00:22:44,710 Там у Int, Char, String, карацей кажучы, 453 00:22:44,710 --> 00:22:47,380 Гэта называецца тыпаў. 454 00:22:47,380 --> 00:22:49,510 Такім чынам, вы вынялі тыпу 455 00:22:49,510 --> 00:22:51,580 і раней, 456 00:22:51,580 --> 00:22:54,190 ён толькі аднаго знака роўнасці 457 00:22:54,190 --> 00:22:57,300 і тое, што ён сказаў, было праблематычна пра гэта было 458 00:22:57,300 --> 00:22:59,580 калі ў вас ёсць 1 знак роўнасці, 459 00:22:59,580 --> 00:23:01,780 гэта аператар прысвойвання. 460 00:23:01,780 --> 00:23:04,930 Гэта не праверка ці не 2 рэчы роўныя. 461 00:23:04,930 --> 00:23:07,920 Гэта на самай справе ўстаноўка нешта роўнае нешта. 462 00:23:07,920 --> 00:23:11,110 Мы працуем № 17 у зменную я. 463 00:23:11,110 --> 00:23:13,850 Такім чынам, каб зрабіць такое параўнанне, 464 00:23:13,850 --> 00:23:16,430 Вы павінны выкарыстоўваць падвойныя роўных, 465 00:23:16,430 --> 00:23:19,640 якая з'яўляецца своеасаблівай дзіўныя рэчы 466 00:23:19,640 --> 00:23:22,760 але гэта даволі распаўсюджаная памылка. 467 00:23:23,980 --> 00:23:27,830 Такім чынам, яшчэ адна рэч, якую я пакажу, калі вы не пярэчыце, 468 00:23:27,830 --> 00:23:30,610 з'яўляецца тое, што ў 469 00:23:30,610 --> 00:23:33,210 наша функцыя тут, у Int асноўны, 470 00:23:33,210 --> 00:23:36,740 Вы бачыце, што цела наша функцыі 471 00:23:36,740 --> 00:23:39,810 зняты з левага боку 472 00:23:39,810 --> 00:23:42,400 на 4 прабелу або табуляцыі. 473 00:23:42,400 --> 00:23:44,730 Таму мы робім гэта 474 00:23:44,730 --> 00:23:47,000 толькі для чытання. 475 00:23:47,000 --> 00:23:51,620 Як вы можаце бачыць, у той час як цыкл Сэма тут, 476 00:23:51,620 --> 00:23:53,120 ён не водступ на ўсіх, 477 00:23:53,120 --> 00:23:55,390 і гэта не ўплывае на функцыянальнасць кода. 478 00:23:55,390 --> 00:23:57,860 Ён будзе працаваць дакладна так жа. 479 00:23:57,860 --> 00:24:00,950 >> Так, напрыклад, калі мы прыйдзем да верхняй тут 480 00:24:00,950 --> 00:24:02,680 і націснуць кнопку прайгравання наш, ён будзе будаваць, 481 00:24:02,680 --> 00:24:04,470 яна будзе запусціць яго, 482 00:24:04,470 --> 00:24:06,700 і тое, што адбудзецца? 483 00:24:06,700 --> 00:24:08,360 Чаму ён да гэтага часу кажуць працуеце? 484 00:24:08,360 --> 00:24:10,560 >> Таму што ён будзе паўтараць прывітанне. 485 00:24:10,560 --> 00:24:12,900 Менавіта так, і чаму гэта паўтараць прывітанне? 486 00:24:12,900 --> 00:24:15,850 >> Таму што цэлае ніколі не змяняецца, так што заўсёды 17. 487 00:24:15,850 --> 00:24:18,030 Так, сапраўды, так 488 00:24:18,030 --> 00:24:20,970 Давайце паглядзім, пасля - нагадваюць мне цябе завуць? 489 00:24:20,970 --> 00:24:24,020 Джымі. Так Джымі сказаў, што 490 00:24:24,020 --> 00:24:27,340 Прычына гэтага не стамляецца паўтараць, прывітанне зноў і зноў 491 00:24:27,340 --> 00:24:30,510 таму, што гэта ўмова заўсёды праўдзіва. 492 00:24:30,510 --> 00:24:33,270 Мы ніколі не змяніць значэнне я. 493 00:24:33,270 --> 00:24:36,170 Мы ніколі не змяняць змест таго, што захоўваецца ў гэтай зменнай. 494 00:24:36,170 --> 00:24:39,180 Такім чынам, на дадзены момант мы атрымалі гэтую памылку, 495 00:24:39,180 --> 00:24:42,170 Ваша праграма генеруецца занадта шмат выходных, 496 00:24:42,170 --> 00:24:45,100 і калі мы пракруціць ўніз і выгляд погляду на тое, што тут адбываецца, 497 00:24:45,100 --> 00:24:49,160 Вы можаце бачыць, што гэта прывітанне, прывітанне, прывітанне, прывітанне, прывітанне, прывітанне, прывітанне ўсё шляхам. 498 00:24:49,160 --> 00:24:51,200 Awesome. 499 00:24:51,200 --> 00:24:53,750 >> Так выгляду вярнуцца да зыходнай кропкі 500 00:24:53,750 --> 00:24:57,020 што наяўнасць водступаў тут 501 00:24:57,020 --> 00:25:00,110 у целе ў той час як цыкл не ўплывае. 502 00:25:00,110 --> 00:25:03,050 Праграма па-ранейшаму бег вельмі добра. 503 00:25:03,050 --> 00:25:06,790 Як правіла, для добрага стылю - 504 00:25:06,790 --> 00:25:10,210 і гэта тое, што мы шукаем ў вашым мноства праблем - 505 00:25:10,210 --> 00:25:13,930 мы просім вас водступ гэтым на 4 прастор, якія вы можаце зрабіць 506 00:25:13,930 --> 00:25:16,440 , Проста націснуўшы клавішу табуляцыі 507 00:25:16,440 --> 00:25:18,860 або ўручную пакласці ў 4 прабелу сябе. 508 00:25:21,880 --> 00:25:25,050 Cool, нармальна так давайце вернемся і паглядзім на 509 00:25:25,050 --> 00:25:30,460 Аляксандр рабіць-то час. 510 00:25:30,460 --> 00:25:32,980 >> Проста свайго роду невялікія праблемы. 511 00:25:32,980 --> 00:25:34,390 Добра, ну давайце працаваць праз яго. 512 00:25:34,390 --> 00:25:36,400 Хіба гэта крута? 513 00:25:36,400 --> 00:25:37,430 >> Так. 514 00:25:37,430 --> 00:25:39,200 >> Такім чынам, тут мы ідзем. 515 00:25:39,200 --> 00:25:41,010 Гэта код, які напісаў Аляксандр. 516 00:25:41,010 --> 00:25:43,410 Вы ідзяце Алекс - нармальна. 517 00:25:43,410 --> 00:25:46,380 Дык вось код, што Алекс напісаў. 518 00:25:46,380 --> 00:25:50,500 Такім чынам, мы атрымалі нашу дэкларацыю асноўных правоў тут, 519 00:25:50,500 --> 00:25:54,410 а потым мы атрымалі гэты лік зменнай я 520 00:25:54,410 --> 00:25:57,320 былі абвешчаныя прама тут. 521 00:25:57,320 --> 00:26:01,060 У нас ёсць зрабі заяву 522 00:26:01,060 --> 00:26:04,600 , А затым цела зноў з гэтымі дужкамі, 523 00:26:04,600 --> 00:26:06,520 так што гэта цела DO-а - 524 00:26:06,520 --> 00:26:09,210 Дазвольце мне наблізіць гэта так, гэта больш зручным для чытання - 525 00:26:09,210 --> 00:26:12,730 і ў целе, мы спрабуем друкаваць "гэта цела", 526 00:26:12,730 --> 00:26:14,300 я + +, 527 00:26:14,300 --> 00:26:17,710 такім чынам павялічыць ўтрыманне я і зрабіць гэта 528 00:26:17,710 --> 00:26:19,470 пакуль я не дабіраецца, каб быць 3, 529 00:26:19,470 --> 00:26:22,440 і тады наша праграма сканчаецца. 530 00:26:22,440 --> 00:26:24,680 >> Так што ж адбываецца, калі мы запусцім гэтую праграму? 531 00:26:24,680 --> 00:26:27,580 >> Я чакаў ідэнтыфікатар. 532 00:26:27,580 --> 00:26:32,070 Такім чынам, ствараць, запускаць, памылка. 533 00:26:32,070 --> 00:26:34,820 Што адбываецца? 534 00:26:34,820 --> 00:26:37,060 Мы пракруціць ўніз тут, 535 00:26:37,060 --> 00:26:40,260 Мы атрымаем гэта некалькі загадкава гледзячы рэч, 536 00:26:40,260 --> 00:26:43,930 Чакаецца коскі пасля верхняга ўзроўню дэкларацыю. 537 00:26:43,930 --> 00:26:46,620 Гэта свайго роду дзіўным. 538 00:26:46,620 --> 00:26:50,990 Хто-небудзь ёсць ідэя, што можа быць справа? 539 00:26:53,080 --> 00:26:54,640 Свайго роду дзіўна, так. 540 00:26:54,640 --> 00:26:57,640 >> [Неразборліва] быць абвешчаныя па-за дужкамі? 541 00:26:57,640 --> 00:27:03,480 Так што гэта не ўжываецца тады, калі вы выкарыстоўваеце дужкі? 542 00:27:03,480 --> 00:27:07,390 Так ён заявіў, што гэты хлопец, па-за якім дужкі? 543 00:27:09,670 --> 00:27:12,240 Ох, ужо гэтыя хлопцы - фігурныя дужкі? 544 00:27:12,240 --> 00:27:13,850 >> Так. 545 00:27:13,850 --> 00:27:15,310 Так, менавіта так. 546 00:27:15,310 --> 00:27:17,120 Такім чынам, атрымліваецца, што 547 00:27:17,120 --> 00:27:21,550 Вы не можаце фактычна абвясціць зменную прама тут, як гэта. 548 00:27:23,750 --> 00:27:26,690 Што вы маглі б спрабавалі зрабіць, - 549 00:27:26,690 --> 00:27:30,110 скараціць яго адтуль - 550 00:27:30,110 --> 00:27:34,330 Вы можаце пакласці яго ў фігурныя дужкі тут 551 00:27:34,330 --> 00:27:37,400 ці іншая альтэрнатыва 552 00:27:37,400 --> 00:27:40,350 гэта паставіць яго цалкам звонку. 553 00:27:42,480 --> 00:27:46,610 І вось гэтыя - у залежнасці ад таго, дзе вы на самой справе паклаў заяву 554 00:27:46,610 --> 00:27:48,550 гэтай цэлай зменнай, 555 00:27:48,550 --> 00:27:53,540 Вы можаце атрымаць 2 вельмі розных відаў зменных; 556 00:27:53,540 --> 00:27:55,100 калі ён знаходзіцца па-за асноўнага, 557 00:27:55,100 --> 00:27:58,240 гэта тое, што мы называем глабальнай зменнай. 558 00:27:58,240 --> 00:28:00,070 Гэта выходзіць за рамкі любой з функцый - 559 00:28:00,070 --> 00:28:03,420 гэта не ў межах функцыі - 560 00:28:03,420 --> 00:28:07,050 а калі пакласці яго ўнутр галоўнага, 561 00:28:07,050 --> 00:28:10,000 хацелася прама тут, то гэта называецца лакальнай зменнай, 562 00:28:10,000 --> 00:28:13,830 таму што гэта лакальныя рамкі асноўны. 563 00:28:13,830 --> 00:28:16,720 І мы пагаворым крыху аб тым, што адрозненні 564 00:28:16,720 --> 00:28:20,970 паміж 2 тыпамі і чаму вы выкарыстоўваеце розныя віды зменных, 565 00:28:20,970 --> 00:28:23,040 але цяпер, 566 00:28:23,040 --> 00:28:25,070 Вы можаце проста захаваць усё лакальныя зменныя, 567 00:28:25,070 --> 00:28:28,320 таму што ў нас няма ніякай неабходнасці для глабальных зменных. 568 00:28:28,320 --> 00:28:31,390 >> Такім чынам, гэта адна справа прама там. 569 00:28:31,390 --> 00:28:34,680 Давайце паспрабуем запусціць гэты раз, паглядзець, што адбываецца. 570 00:28:37,420 --> 00:28:40,270 Выканаць, атрымаць іншую памылку. 571 00:28:40,270 --> 00:28:43,320 Павялічыць трохі, што мы атрымліваем? 572 00:28:45,110 --> 00:28:50,000 Мы атрымліваем гэтую чакаецца дужках пасля зрабіць / час. 573 00:28:53,660 --> 00:28:55,260 Любыя ідэі, што адбываецца? Дэн? 574 00:28:55,260 --> 00:28:58,880 >> Ёсць час, то дужку, а затым - 575 00:28:58,880 --> 00:29:01,990 Я не ведаю, калі вам трэба перавызначыць INT, 576 00:29:01,990 --> 00:29:04,980 але зрабіць у той час (я <3). 577 00:29:04,980 --> 00:29:06,930 Сапраўды, так. 578 00:29:06,930 --> 00:29:08,830 Вось і атрымліваецца, што Дэн Цалкам дакладна. 579 00:29:08,830 --> 00:29:11,230 Нам не трэба, каб паставіць гэты тып тут зноў. 580 00:29:11,230 --> 00:29:14,440 Мы можам замест гэтага забіў тыпу 581 00:29:14,440 --> 00:29:17,220 і проста зрабіць гэта. 582 00:29:19,270 --> 00:29:21,640 Добра. 583 00:29:21,640 --> 00:29:24,950 Я маштаб, паспрабуйце яго яшчэ раз. 584 00:29:26,360 --> 00:29:29,580 Паглядзіце на гэта, яна працуе паспяхова. 585 00:29:29,580 --> 00:29:33,260 Калі мы пракруціць ўніз, "гэта цела" распячатаў 3 разы. 586 00:29:33,260 --> 00:29:35,820 Гэта вельмі салодкі. 587 00:29:35,820 --> 00:29:38,670 Малайцы, малайцы, хлопцы. 588 00:29:38,670 --> 00:29:41,080 Малайцы. 589 00:29:41,080 --> 00:29:43,250 Як гэта адбываецца да гэтага часу? 590 00:29:43,250 --> 00:29:46,200 Годны тэмп? 591 00:29:46,200 --> 00:29:49,200 Добра, халаднавата. 592 00:29:49,200 --> 00:29:52,590 >> Так што, як мы збольшага вярнуцца да першапачатковага пытанні, 593 00:29:52,590 --> 00:29:55,430 Мы - і цяпер, калі мы бачым розніцу, 594 00:29:55,430 --> 00:29:58,240 Вы бачыце, што ў гэтым зрабі той час як цыкл, 595 00:29:58,240 --> 00:30:00,030 Умова прыходзіць апошнім. 596 00:30:00,030 --> 00:30:02,530 Так як кампутар счытвае праграму 597 00:30:02,530 --> 00:30:06,050 З C праграмы выконваюцца выгляд у гэтым паслядоўным парадку, 598 00:30:06,050 --> 00:30:09,450 дзе яны ў літаральным сэнсе пачаць з першай лініі галоўнага, 599 00:30:09,450 --> 00:30:13,450 , А затым выканаць лінію 6, радок 7, радок 8, радок 9, 600 00:30:13,450 --> 00:30:16,150 радок 10, радок 11, 601 00:30:16,150 --> 00:30:18,440 усе гэтыя рэчы ў правым верхнім тут 602 00:30:18,440 --> 00:30:20,020 збіраецца выканаць адзін раз 603 00:30:20,020 --> 00:30:23,350 перш, чым мы калі-небудзь праверыць гэта ўмова, каб убачыць 604 00:30:23,350 --> 00:30:26,240 я ці не - ці змесціва я, хутчэй - 605 00:30:26,240 --> 00:30:29,750 менш, чым колькасць 3. 606 00:30:29,750 --> 00:30:33,300 І толькі тады, калі мы атрымаем на лініі 12, 607 00:30:33,300 --> 00:30:36,260 Змест я менш за 3 608 00:30:36,260 --> 00:30:39,150 мы на самай справе вярнуцца назад да лініі 7 609 00:30:39,150 --> 00:30:41,140 , А затым паўтарыць працэс, 610 00:30:41,140 --> 00:30:44,620 , А затым мы правяраем стан зноў і зноў і зноў. 611 00:30:44,620 --> 00:30:47,440 >> Так што мы можам супрацьпаставіць гэтаму 612 00:30:47,440 --> 00:30:50,240 с - маштабаванне назад, 613 00:30:50,240 --> 00:30:56,500 пракруціць ўніз да версіі Сэма, 614 00:30:56,500 --> 00:31:00,760 мы будзем глядзець на гэта, трохі зменены так, што гэта ўжо не бясконцы цыкл - 615 00:31:00,760 --> 00:31:03,570 дзе, калі мы павялічыць, 616 00:31:03,570 --> 00:31:06,300 мы бачым, што гэтая праграма выконваецца, 617 00:31:06,300 --> 00:31:09,120 яна збіраецца спачатку аб'явіць Int я, 618 00:31:09,120 --> 00:31:12,030 ўсталяваць ўтрыманне я бы 0, 619 00:31:12,030 --> 00:31:15,820 а затым ён трапляе ў стан у той час як пятля першага, 620 00:31:15,820 --> 00:31:19,210 таму ў дадзеным выпадку, гэта цела, гэты Е ("прывітанне") і я + + 621 00:31:19,210 --> 00:31:21,630 нават не будзе выконваць 622 00:31:21,630 --> 00:31:24,310 калі я на самай справе менш або роўна 2. 623 00:31:24,310 --> 00:31:26,750 Так што, калі я 3, напрыклад, 624 00:31:26,750 --> 00:31:28,840 калі мы пакладзем гэтаму прама тут 625 00:31:28,840 --> 00:31:32,160 роўная 4 - ці я зраблю 3, таму што я сказаў 3 - 626 00:31:32,160 --> 00:31:34,890 , А затым запусціць яго, 627 00:31:34,890 --> 00:31:38,320 ён будзе будаваць, яна будзе працаваць у поўным парадку, 628 00:31:38,320 --> 00:31:40,530 але ён не будзе на самой справе раздрукаваць што-небудзь, 629 00:31:40,530 --> 00:31:43,030 таму што не змагла гэта выпрабаванне для першага выпадку. 630 00:31:44,780 --> 00:31:47,530 Такім чынам, у класе, мы як-то казалі пра тое, чаму гэтыя зрабі той час як завесы 631 00:31:47,530 --> 00:31:49,800 гэта часам карысна 632 00:31:49,800 --> 00:31:53,140 і чаму мы павінны выкарыстоўваць яго, у адрозненне ад цыклу. 633 00:31:53,140 --> 00:31:56,450 >> Ёсць - вы, хлопцы, ёсць якія-небудзь прапановы 634 00:31:56,450 --> 00:31:59,090 , Чаму зрабі той час як цыкл можа быць больш карысным? 635 00:31:59,090 --> 00:32:02,560 >> Ну, я думаю, што рабіць, у той час як завесы, калі вы хочаце карыстацкага ўводу, 636 00:32:02,560 --> 00:32:05,020 таму што такім чынам вы можаце дазволіць ім 637 00:32:05,020 --> 00:32:07,780 пакласці нешта ў адзін раз, калі гэта правільна, 638 00:32:07,780 --> 00:32:09,300 мы можам перайсці да астатняй часткі праграмы, 639 00:32:09,300 --> 00:32:11,250 Але калі гэта не правільна, то вы працягваеце запыту карыстальніка 640 00:32:11,250 --> 00:32:13,250 пакуль вы не пакладзеце правую ўваход. 641 00:32:13,250 --> 00:32:14,260 Так, сапраўды - сапраўды, 642 00:32:14,260 --> 00:32:16,840 так робяць, у той час як цыкл карысны 643 00:32:16,840 --> 00:32:18,930 таму што, калі запыты на ўвод дадзеных карыстачом 644 00:32:18,930 --> 00:32:23,000 таму што вы павінны атрымаць ўвод карыстальніка, перш чым вы сапраўды можаце гэта праверыць. 645 00:32:23,000 --> 00:32:27,330 Такім чынам, у PSET 1, у PSET 2, 646 00:32:27,330 --> 00:32:29,650 дзе вы запыту на ўвод дадзеных карыстачом шмат, 647 00:32:29,650 --> 00:32:31,200 гэта зручная рэч, каб выкарыстоўваць 648 00:32:31,200 --> 00:32:33,740 у адрозненне ад простай цыкл час. 649 00:32:33,740 --> 00:32:36,780 Калі вы выкарыстоўваеце нейкі час цыклу, вы можаце зрабіць тое ж самае - 650 00:32:36,780 --> 00:32:38,750 Вы можаце зрабіць тое ж самае з нейкі час цыклу 651 00:32:38,750 --> 00:32:40,580 як вы робіце з DO-цыклу. 652 00:32:40,580 --> 00:32:43,380 Вы проста павінны мець выгляд гэтага дубліката працэсу 653 00:32:43,380 --> 00:32:47,010 дзе вы атрымаеце ўваход, а затым пачаць свой цыкл. 654 00:32:47,010 --> 00:32:49,800 Прымаючы пад увагу, зрабі той час як цыкл, вы проста павінны напісаць яго адзін раз 655 00:32:49,800 --> 00:32:52,430 і гэта нашмат чысцей. 656 00:32:52,430 --> 00:32:54,650 >> Добра. 657 00:32:55,970 --> 00:32:57,330 Ёсць пытанні? 658 00:32:59,350 --> 00:33:01,380 Сэнс? 659 00:33:01,380 --> 00:33:06,200 >> Вяртанне 0 - гэта проста выгляд кабіны ці гэта -? 660 00:33:06,200 --> 00:33:08,960 Так, так што мы можам - 661 00:33:08,960 --> 00:33:11,960 Ну, мы разгледзім гэта крыху больш позні 662 00:33:11,960 --> 00:33:13,290 але аказваецца, што 663 00:33:13,290 --> 00:33:15,720 гэта вяртанне 0, пакладзем 664 00:33:15,720 --> 00:33:19,090 У канцы асноўнага ўвесь час - 665 00:33:19,090 --> 00:33:21,980 Вы можаце цікавае проста прыняць гэта як тое, што мы робім 666 00:33:21,980 --> 00:33:24,930 у цяперашні час. 667 00:33:24,930 --> 00:33:28,860 Тое, што мы пачалі гаварыць з функцыямі 668 00:33:28,860 --> 00:33:31,600 выгляд у канцы мінулага тыдня, а затым зноў на гэтым тыдні 669 00:33:31,600 --> 00:33:33,550 з'яўляецца тое, што функцыя 670 00:33:33,550 --> 00:33:37,680 мае ўваходы, якія гэтыя рэчы ў дужках; 671 00:33:37,680 --> 00:33:41,690 гэтыя 2 ўваходу, нашы аргументы або параметры, 672 00:33:41,690 --> 00:33:44,540 што яны таксама называюцца да нашай асноўнай функцыі, 673 00:33:44,540 --> 00:33:48,510 , А затым функцыя фармуе выхадны 674 00:33:48,510 --> 00:33:51,290 , Які мы называем вяртаецца значэння. 675 00:33:51,290 --> 00:33:56,260 І вяртаецца значэння ў выпадку галоўнае, гэта INT, 676 00:33:56,260 --> 00:33:58,320 гэты лік, 677 00:33:58,320 --> 00:34:01,160 і тое, як вы кажаце функцыі: "Гэй, гэта тое, што вашы выходныя 678 00:34:01,160 --> 00:34:05,840 будзе "З гэтым словам« вяртанне », 679 00:34:05,840 --> 00:34:07,960 гэта ключавое слова, хутчэй, 680 00:34:07,960 --> 00:34:11,000 і таму асноўная вяртаецца 0 681 00:34:11,000 --> 00:34:13,389 ці галоўны выснову 0 682 00:34:13,389 --> 00:34:15,139 з'яўляецца стандартным для праграм C 683 00:34:15,139 --> 00:34:18,110 таму што вяртанне 0 з асноўных сродкаў, што 684 00:34:18,110 --> 00:34:21,600 "Гэй, усё выканана з маёй праграмай проста выдатна." 685 00:34:21,600 --> 00:34:24,639 Калі б мы маглі паставіць нешта выдатнае ад 0, 686 00:34:24,639 --> 00:34:27,440 як 1, напрыклад, 687 00:34:27,440 --> 00:34:31,080 які выкарыстоўваецца, каб паведаміць, хто запусціў гэтую праграму 688 00:34:31,080 --> 00:34:33,540 , Што нешта пайшло не так. 689 00:34:35,739 --> 00:34:39,989 Так як мы атрымліваем больш складаны з рэчамі на працягу семестра, 690 00:34:39,989 --> 00:34:42,670 калі вы калі-небудзь мае патрэбу сказаць, 691 00:34:42,670 --> 00:34:46,650 "Ой, вы ведаеце, что-то пайшло не так з гэтай праграмай", 692 00:34:46,650 --> 00:34:49,409 замест таго, каб мая праграма аварыі, я хачу папярэдзіць 693 00:34:49,409 --> 00:34:52,310 бягун з маёй праграмы, што нешта пайшло не так, 694 00:34:52,310 --> 00:34:54,530 Вы можаце выкарыстоўваць вяртаецца значэнне, 695 00:34:54,530 --> 00:34:57,230 як мы яго называем, гэта не 0. 696 00:35:00,180 --> 00:35:02,240 >> Такім чынам, мы распавядзем, што крыху больш 697 00:35:02,240 --> 00:35:05,480 Як толькі мы трапляем у функцыях. 698 00:35:05,480 --> 00:35:09,030 Такога роду мае сэнс? 699 00:35:09,030 --> 00:35:11,240 Добра. 700 00:35:11,240 --> 00:35:13,530 Функцыі з'яўляюцца свайго роду дзіўным - 701 00:35:13,530 --> 00:35:17,270 Я думаю, што для людзей, якія маюць шмат матэматыкі фону, 702 00:35:17,270 --> 00:35:20,100 гаворка ідзе крыху лягчэй, 703 00:35:20,100 --> 00:35:22,540 Асабліва калі ў вас ёсць трохі больш абстрактным матэматычным адукацыяй 704 00:35:22,540 --> 00:35:24,240 і вы прывыклі казаць аб функцыях 705 00:35:24,240 --> 00:35:27,370 і ўсё ў такім жа родзе. 706 00:35:28,590 --> 00:35:30,610 Але мы паспрабуем ахапіць іх 707 00:35:30,610 --> 00:35:33,280 і ісці прыгожа і павольна, як яны прыходзяць. 708 00:35:34,730 --> 00:35:37,870 Акрамя таго, увесь гэты агдс INT, 709 00:35:37,870 --> 00:35:41,090 сімвал * ARGV [], 710 00:35:41,090 --> 00:35:44,960 для прама зараз, Вы таксама можаце прыняць гэта як пліце катла. 711 00:35:46,650 --> 00:35:49,050 Мы пачалі ахопліваць тых, хто трохі ў лекцыі 712 00:35:49,050 --> 00:35:53,060 калі мы кажам пра аргументаў, якія атрымліваюць перайшла ў праграмах каманднага радка, 713 00:35:53,060 --> 00:35:55,700 але ў вашай праблеме мностваў і вашых праграм, 714 00:35:55,700 --> 00:35:58,760 гэта цалкам нармальна толькі пісаць несапраўдным і трымаць яго простая. 715 00:35:58,760 --> 00:36:01,490 І тое, што гэтая пустата азначае, што 716 00:36:01,490 --> 00:36:04,630 "Гэй, асноўнай не збіраецца прымаць ніякіх уваходаў; 717 00:36:04,630 --> 00:36:07,440 гэта ўсяго толькі праграма, якую мы збіраемся проста запусціць. 718 00:36:07,440 --> 00:36:09,320 Мы не збіраемся даць яму любую дадатковую інфармацыю 719 00:36:09,320 --> 00:36:12,420 кожны раз, калі мы пачынаем яго выкананні ». 720 00:36:14,730 --> 00:36:16,600 Такім чынам, на дадзены момант, вы можаце зрабіць гэта; 721 00:36:16,600 --> 00:36:19,710 Вы таксама можаце нават апусціць вяртанне 0 722 00:36:19,710 --> 00:36:22,650 У канцы вашай праграмы, і яны будуць працаваць нармальна, 723 00:36:22,650 --> 00:36:26,150 але я рэкамендую проста трымаць, што цаля 724 00:36:26,150 --> 00:36:28,320 Праз пару тыдняў мы пачнем выгляд 725 00:36:28,320 --> 00:36:31,340 пацягніце крышку трохі і зразумець больш аб 726 00:36:31,340 --> 00:36:34,380 усе гэтыя розныя мала рухаюцца частак. 727 00:36:34,380 --> 00:36:38,160 >> Добра, зараз давайце пагаворым аб нашай другое пытанне. 728 00:36:38,160 --> 00:36:43,190 Такім чынам, што ж "неаб'яўленай ідэнтыфікатар" звычайна паказваюць на 729 00:36:43,190 --> 00:36:46,040 калі выдаюцца Clang? 730 00:36:46,040 --> 00:36:49,290 Я думаю, што мы, магчыма, бачылі, што ўжо сёння. 731 00:36:51,170 --> 00:36:54,370 Можа хто-небудзь даць рэзюмэ, што гэта значыць? 732 00:36:54,370 --> 00:36:57,680 Давайце паглядзім, Кэлі - адзін з Kellys. 733 00:37:02,580 --> 00:37:05,300 >> Так што - 734 00:37:05,300 --> 00:37:07,080 Так, тое, што робіць - 735 00:37:07,080 --> 00:37:10,140 >> Я думаю, калі вы, напрыклад, не абвясціць зменныя, і вы спрабуеце выкарыстоўваць яго. 736 00:37:10,140 --> 00:37:13,310 Так, сапраўды, сапраўды. 737 00:37:13,310 --> 00:37:15,250 Так што калі вы калі-небудзь бачылі гэты выхад 738 00:37:15,250 --> 00:37:17,690 калі вы спрабуеце скампіляваць праграму, 739 00:37:17,690 --> 00:37:19,470 як сказаў Кэлі, 740 00:37:19,470 --> 00:37:24,210 гэта азначае, што вы выкарыстоўвалі зменную, што вы не заяўляем, 741 00:37:24,210 --> 00:37:28,460 так што калі я вярнуся ў нашу прастору, 742 00:37:28,460 --> 00:37:31,150 і я раблю нешта накшталт 743 00:37:31,150 --> 00:37:34,800 Е ( 744 00:37:34,800 --> 00:37:38,260 "Прывітанне% S") 745 00:37:40,070 --> 00:37:42,440 і паспрабаваць запоўніць гэты% з 746 00:37:42,440 --> 00:37:45,640 з пераменным тым, што я не заявілі аб любым 747 00:37:45,640 --> 00:37:48,330 і я стараюся, каб запусціць яго, 748 00:37:48,330 --> 00:37:51,330 Вы ўбачыце, што я спускаюся ў гэтай правым ніжнім тут: 749 00:37:51,330 --> 00:37:54,010 "Выкарыстанне неаб'яўленай ідэнтыфікатар 'S'"; 750 00:37:54,010 --> 00:37:57,710 гэта проста азначае, што вы не абвясьцеце зменную. 751 00:37:57,710 --> 00:38:00,750 Тое ж самае адбываецца, калі 752 00:38:00,750 --> 00:38:05,240 ў вас ёсць х, і вы спрабуеце і захоўваць 7 у гэта 753 00:38:05,240 --> 00:38:08,720 і я не заяўляю X. 754 00:38:08,720 --> 00:38:10,200 Я разумею, што ж памылку: 755 00:38:10,200 --> 00:38:13,480 "Выкарыстанне" х "неаб'яўленай ідэнтыфікатар". 756 00:38:16,390 --> 00:38:18,250 >> Усё ў парадку, 757 00:38:18,250 --> 00:38:21,720 так шыфр Цэзара, не будучы вельмі надзейнай, 758 00:38:21,720 --> 00:38:24,590 Я паведамлю вам, хлопцы глядзець гэты кароткі, накшталт разумею, чаму, 759 00:38:24,590 --> 00:38:27,590 і, спадзяюся, пасля выканання задачы на ​​гэтым тыдні ўстаноўлены 760 00:38:27,590 --> 00:38:29,270 дзе вы на самой справе пісаць шыфр Цэзара, вы зразумееце, трохі больш 761 00:38:29,270 --> 00:38:32,600 пра тое, што значыць быць бяспечным і небяспечным - 762 00:38:36,180 --> 00:38:38,960 ці не бяспечна, я думаю, - небяспечны трохі адрозніваецца. 763 00:38:40,560 --> 00:38:43,140 Іншая рэч была ў нас ёсць гэтыя іншыя пытанні тут 764 00:38:43,140 --> 00:38:45,470 Пра функцыі 765 00:38:45,470 --> 00:38:47,330 і тое, што функцыі, 766 00:38:47,330 --> 00:38:52,820 і мы неяк казалі аб тым, што некаторы час, калі мы казалі аб вяртанні каштоўнасцяў; 767 00:38:52,820 --> 00:38:54,560 для кагосьці, хто быў на лекцыі, 768 00:38:54,560 --> 00:38:57,790 Вы можаце рэзюмаваць, хто быў чытаць лекцыю на сённяшні дзень? 769 00:38:57,790 --> 00:38:59,670 Добра. 770 00:39:01,210 --> 00:39:04,320 Давайце паглядзім, давайце - можа хто-небудзь сказаць нам, якія функцыі? 771 00:39:04,320 --> 00:39:06,060 Кэлі? 772 00:39:07,800 --> 00:39:11,260 >> >> Асноўным тое, што вы абапірацца на тое, што напісана ў бібліятэцы, што гэта 773 00:39:11,260 --> 00:39:14,460 больш складаная там, а затым вы проста напісаць кароткую форму яго, 774 00:39:14,460 --> 00:39:17,360 так як вы маеце на ўвазе, што назад у бібліятэку, выкарыстоўваючы 775 00:39:17,360 --> 00:39:19,650 усё, што доўгі код і [неразборліва]. 776 00:39:19,650 --> 00:39:22,680 Так, сапраўды, а затым вы жадаеце нешта дадаць да гэтага? 777 00:39:22,680 --> 00:39:27,050 >> Так, я думаю пра яго, як падобна на паняцце формулы па матэматыцы 778 00:39:27,050 --> 00:39:30,130 дзе вы проста напісаць формулу, а затым вы можаце падключыць зменных у 779 00:39:30,130 --> 00:39:32,660 і вось, што функцыя [неразборліва]. 780 00:39:32,660 --> 00:39:35,390 >> Так, такім чынам, мы атрымалі некалькі адказаў тут 781 00:39:35,390 --> 00:39:38,080 , Якія адначасова з'яўляюцца сапраўды добрым і правільным на. 782 00:39:38,080 --> 00:39:43,040 Там мае на ўвазе код, які быў запісаны ў бібліятэку дзесьці 783 00:39:43,040 --> 00:39:45,390 , Што з'яўляецца больш складанай 784 00:39:45,390 --> 00:39:47,130 а затым вы можаце абапірацца на гэты код 785 00:39:47,130 --> 00:39:50,480 і фактычна выкарыстоўваць яго, проста пішу кароткай форме гэта - 786 00:39:50,480 --> 00:39:54,060 ці, хутчэй, яе назва - 787 00:39:54,060 --> 00:39:57,590 і тады ёсць таксама гэта параўнанне з формулай ў матэматыцы 788 00:39:57,590 --> 00:40:00,400 ці фізіцы, усё ў такім жа родзе 789 00:40:00,400 --> 00:40:02,980 дзе ў вас ёсць формула 790 00:40:02,980 --> 00:40:05,690 а затым вы можаце падключыць 791 00:40:05,690 --> 00:40:08,100 зменных, што формула 792 00:40:08,100 --> 00:40:11,130 , Каб затым атрымаць вынік формулы, 793 00:40:11,130 --> 00:40:14,580 так што вы думаеце пра яго, як як квадратнае раўнанне. 794 00:40:14,580 --> 00:40:17,690 Уявіце, калі б замест таго, каб даведацца пра 795 00:40:17,690 --> 00:40:21,310 што квадратычнай формула ў матэматычным класе, 796 00:40:21,310 --> 00:40:24,610 Вы проста была маленькая праграма калькулятар, які зрабіў гэта за вас. 797 00:40:24,610 --> 00:40:28,930 Хто-небудзь выкарыстанні калькулятар праграмы ў матэматычныя класы ў сярэдняй школе? 798 00:40:28,930 --> 00:40:31,020 Так, фізіка класаў? 799 00:40:31,020 --> 00:40:34,670 Дзе вы можаце проста сказаць: "Гэй, квадратычнай формулы. 800 00:40:34,670 --> 00:40:37,740 Гэтыя зменныя, якія я хачу ўваходу. 801 00:40:37,740 --> 00:40:40,250 Цяпер дайце мне адказ ". 802 00:40:40,250 --> 00:40:42,170 Гэта накшталт таго, што функцыя. 803 00:40:42,170 --> 00:40:44,850 Гэта спосаб для нас 804 00:40:44,850 --> 00:40:47,720 выгляд запісу, як маленькія падпраграмы 805 00:40:47,720 --> 00:40:51,700 ў межах нашай вялікай праграмы 806 00:40:51,700 --> 00:40:55,090 і выкарыстаць яго зноў і зноў 807 00:40:55,090 --> 00:40:58,380 так што мы не павінны скапіяваць і ўставіць код, 808 00:40:58,380 --> 00:41:04,220 мы можам даць яму розныя ўваходы і атрымаць розныя выхады, 809 00:41:04,220 --> 00:41:07,090 гэта супер зручна 810 00:41:07,090 --> 00:41:11,420 калі вы спрабуеце пісаць розныя праграмы ў розны час. 811 00:41:11,420 --> 00:41:14,580 >> Так, напрыклад, функцыі, якія мы выкарыстоўваем зноў і зноў і зноў 812 00:41:14,580 --> 00:41:17,310 на працягу ўсяго курсу з'яўляецца Printf. 813 00:41:17,310 --> 00:41:19,680 Printf само па сабе з'яўляецца функцыяй 814 00:41:19,680 --> 00:41:23,360 і аказваецца, што на самой справе гэта даволі доўгі і складаны, 815 00:41:23,360 --> 00:41:26,420 адваротны погляд, функцыю запісу. 816 00:41:26,420 --> 00:41:29,590 Так жа проста, як нам здаецца, 817 00:41:29,590 --> 00:41:31,810 друкаваць рэчы з на экран, 818 00:41:31,810 --> 00:41:34,820 таму што ўсе мы толькі што зрабілі, што ў пачатку падзелу сёння, 819 00:41:34,820 --> 00:41:36,870 Аказваецца, што гэта на самай справе, вы ведаеце, 820 00:41:36,870 --> 00:41:39,900 добрая пара соцень радкоў кода. 821 00:41:42,030 --> 00:41:45,620 Гэта не тое, што я ніколі не хачу пісаць, вядома, 822 00:41:45,620 --> 00:41:47,480 але мы атрымліваем, каб выкарыстоўваць яго кожны дзень, гэта крута, 823 00:41:47,480 --> 00:41:49,020 такім чынам, мы атрымаем падзяліцца адзін з адным, 824 00:41:49,020 --> 00:41:51,790 з рознымі праграмамі, 825 00:41:51,790 --> 00:41:54,520 так што мы будзем дайвінга больш у функцыі; 826 00:41:54,520 --> 00:41:56,090 на дадзены момант, мы не - 827 00:41:56,090 --> 00:41:59,150 Адзіная функцыя, мы збіраемся пісаць з'яўляецца асноўнай. 828 00:41:59,150 --> 00:42:01,570 Галоўнае сама па сабе таксама функцыі, 829 00:42:01,570 --> 00:42:04,270 і вы можаце бачыць ён атрымаў сваю прадукцыю, 830 00:42:04,270 --> 00:42:06,610 яго уваходаў, як мы казалі, 831 00:42:06,610 --> 00:42:08,930 і затым яго імя, якое з'яўляецца асноўным. 832 00:42:08,930 --> 00:42:11,800 Галоўнае гэта свайго роду - гэта асаблівая функцыя ёсць. 833 00:42:11,800 --> 00:42:14,800 У праграме C, там павінен быць асноўнай функцыяй, 834 00:42:14,800 --> 00:42:17,900 і таму цяпер, у нас накшталт апушчаны пісьмовай 835 00:42:17,900 --> 00:42:21,400 прататып, або дэкларацыя, асноўны. 836 00:42:21,400 --> 00:42:23,050 Мы, улічваючы, што для вас, 837 00:42:23,050 --> 00:42:25,650 і мы толькі што б вы запоўніце ў выглядзе нарыхтовак. 838 00:42:25,650 --> 00:42:29,120 >> >> Так што для другога набору праблемы, мы не павінны 839 00:42:29,120 --> 00:42:31,350 напісаць яго ў другі функцыі? 840 00:42:31,350 --> 00:42:34,200 Я не веру ў гэта. 841 00:42:34,200 --> 00:42:37,600 Я лічу, што ўсё тут. 842 00:42:37,600 --> 00:42:41,710 Так, так Caesar Cipher, 843 00:42:41,710 --> 00:42:45,000 Вам не трэба, гэта не падобна, 844 00:42:48,740 --> 00:42:53,150 і Vigenere, вы не ведаеце як, 845 00:42:53,150 --> 00:42:56,400 так - і аказваецца, што вы ніколі не на самай справе трэба напісаць 846 00:42:56,400 --> 00:42:58,250 Функцыя, правільна? 847 00:42:58,250 --> 00:43:01,950 Вы называеце заўсёды ставіць ўвесь свой код у галоўным, 848 00:43:01,950 --> 00:43:04,500 і многія праграмісты робяць гэта. 849 00:43:04,500 --> 00:43:07,130 Як мы рухацца далей, 850 00:43:07,130 --> 00:43:09,480 мы пачынаем ўкараненне функцый у якасці спосабу 851 00:43:09,480 --> 00:43:11,530 , Каб ачысціць ваш код, 852 00:43:11,530 --> 00:43:13,380 каб зрабіць яго больш элегантным, 853 00:43:13,380 --> 00:43:16,890 у выпадку, калі ў вас ёсць задачы - накшталт як калі мы казалі аб завесах, 854 00:43:16,890 --> 00:43:20,400 як часам ёсць рэчы, якія вы хочаце зрабіць зноў і зноў, і зноў, 855 00:43:20,400 --> 00:43:23,510 і ў вас ёсць выгляд наіўны спосаб - 856 00:43:23,510 --> 00:43:26,360 або тое, што мы часта называем «саламянае пудзіла» рашэнні, 857 00:43:26,360 --> 00:43:29,390 гэта проста скапіюйце і ўстаўце зноў і зноў - 858 00:43:29,390 --> 00:43:31,000 Вы можаце зрабіць тое ж самае з функцыямі, дзе вы проста скапіяваць і ўставіць 859 00:43:31,000 --> 00:43:33,360 той жа код зноў і зноў, 860 00:43:33,360 --> 00:43:35,750 але раздзімае код - 861 00:43:35,750 --> 00:43:38,550 ён заканчвае робіць код вельмі доўга - 862 00:43:38,550 --> 00:43:41,550 і гэта таксама становіцца трохі заблытаным, 863 00:43:41,550 --> 00:43:43,470 і гэта азначае, што вы не ў стане любіць - 864 00:43:43,470 --> 00:43:45,250 калі вы жадаеце выкарыстоўваць гэты код яшчэ раз у іншай праграме, 865 00:43:45,250 --> 00:43:48,610 Вы таксама затрымаўся капіяванне і ўстаўка яго зноў, 866 00:43:48,610 --> 00:43:51,170 так што адна з рэчаў, мы будзем казаць пра тое, 867 00:43:51,170 --> 00:43:54,960 від дызайну і стылю вашай праграмы, 868 00:43:54,960 --> 00:43:57,010 і таму, калі мае сэнс выгляд 869 00:43:57,010 --> 00:43:59,800 Пакет нешта і паклаў яго ў якасці асобнай функцыі, 870 00:43:59,800 --> 00:44:02,080 Мы рэкамендуем вам зрабіць гэта, 871 00:44:02,080 --> 00:44:04,700 і гэта тое, што, зноў жа, 872 00:44:04,700 --> 00:44:07,790 няма жорсткіх правілаў. 873 00:44:07,790 --> 00:44:11,540 Мы рэдка кажам, што вы павінны напісаць функцыю з імем гэтага 874 00:44:12,870 --> 00:44:16,320 але гэта хутчэй адна з тых рэчаў, якія вы толькі што з цягам часу 875 00:44:16,320 --> 00:44:19,470 як вы пішаце больш і больш праграм. 876 00:44:21,940 --> 00:44:24,790 >> Ёсць яшчэ пытанні? 877 00:44:26,340 --> 00:44:30,610 Такім чынам, давайце зараз 878 00:44:30,610 --> 00:44:34,750 Вярнуцца да гэтага хлопца прама тут, 879 00:44:34,750 --> 00:44:37,800 так што я яшчэ ў гэтым раздзеле пытанняў. 880 00:44:37,800 --> 00:44:39,900 Мы гаварылі аб усіх гэтых розных, 881 00:44:39,900 --> 00:44:42,050 што функцыя, таму пісаць функцыі, 882 00:44:42,050 --> 00:44:44,700 калі вы можаце проста скапіяваць і ўставіць? 883 00:44:44,700 --> 00:44:47,700 Спадзяюся, мы пераканалі вас, што напісанне функцый з'яўляецца добрай рэччу. 884 00:44:47,700 --> 00:44:50,870 Такім чынам, цяпер давайце пяройдзем да гэтай праграме MySpace, 885 00:44:50,870 --> 00:44:53,080 і мы будзем выдаткаваць трохі часу рабіць гэта. 886 00:44:54,600 --> 00:44:56,480 >> Такім чынам, давайце паглядзім, 887 00:44:56,480 --> 00:45:00,230 можа я кагосьці чытаць гэта для мяне? 888 00:45:02,640 --> 00:45:04,660 Давайце Міхаіла - вы будзеце чытаць гэта для нас? 889 00:45:07,660 --> 00:45:08,890 >> Ты маеш на ўвазе назад, калі MySpace - 890 00:45:08,890 --> 00:45:10,920 Назад, калі MySpace было халаднавата. 891 00:45:10,920 --> 00:45:12,070 >> "Назад, калі MySpace была прахалоднай, 892 00:45:12,070 --> 00:45:14,900 ён быў у модзе, каб тып накшталт гэтага. 893 00:45:14,900 --> 00:45:17,320 Можа быць, яшчэ ёсць? Я не зусім упэўнены. 894 00:45:17,320 --> 00:45:19,990 У любым выпадку, выкарыстоўваючы CS50 Appliance, 895 00:45:19,990 --> 00:45:22,600 CS50 Run, або CS50 прасторы, 896 00:45:22,600 --> 00:45:25,370 напісаць праграму, якая запытвае ў карыстача паведамленне 897 00:45:25,370 --> 00:45:29,350 і затым выводзіць паведамленне з першай літарай, 898 00:45:29,350 --> 00:45:31,800 з усімі іншымі літарамі ў пераменным выпадку, 899 00:45:31,800 --> 00:45:34,010 у адпаведнасці з узорам выхаду ніжэй, 900 00:45:34,010 --> 00:45:37,060 дзе тлустымі тэкст ўяўляе сабою ўваход некаторых карыстальнікаў. 901 00:45:37,060 --> 00:45:39,800 Для прастаты можна лічыць, што карыстач 902 00:45:39,800 --> 00:45:42,810 будзе толькі ўваход малой літары і прабелы. 903 00:45:42,810 --> 00:45:45,900 Разгледзім гэтую праблему магчымасць на практыцы; 904 00:45:45,900 --> 00:45:48,640 Вам не будзе прапанавана прадставіць гэтую праграму ". 905 00:45:48,640 --> 00:45:51,640 >> Awesome, дзякуй. 906 00:45:51,640 --> 00:45:54,750 Так як Міхаіла сказалі, 907 00:45:54,750 --> 00:45:58,850 Мы збіраемся напісаць праграму, якая MySpaces код. 908 00:45:58,850 --> 00:46:02,230 Гэтак жа любы з вас, хлопцы выкарыстоўваюць MySpace? 909 00:46:02,230 --> 00:46:04,100 Любы з вас MySpace рахункі? 910 00:46:04,100 --> 00:46:05,920 Ах, так, так! 911 00:46:05,920 --> 00:46:08,300 Гэта было даволі халаднавата. 912 00:46:08,300 --> 00:46:09,950 [Смех] 913 00:46:09,950 --> 00:46:12,060 Я ведаю. 914 00:46:12,060 --> 00:46:14,500 Знаёмствы сябе. 915 00:46:15,490 --> 00:46:18,300 Такім чынам, што мы спрабуем зрабіць, гэта напісаць праграму 916 00:46:18,300 --> 00:46:21,110 , Якая праходзіць праз 917 00:46:21,110 --> 00:46:24,490 і капитализирует першыя літары 918 00:46:24,490 --> 00:46:27,140 , А затым кожную літару пасля гэтага - 919 00:46:27,140 --> 00:46:29,350 або любога іншага лісты пасля гэтага, мне вельмі шкада. 920 00:46:29,350 --> 00:46:32,910 >> Так што - і вы можаце бачыць у дадзеным прыкладзе, 921 00:46:32,910 --> 00:46:35,260 гэта тое, як мы запусцілі праграму, 922 00:46:35,260 --> 00:46:38,780 і так гэта проста кажа: "Мы працуе праграма пад назвай a.out. 923 00:46:41,490 --> 00:46:44,630 Уваход, які мы збіраемся надаўшы яму 924 00:46:44,630 --> 00:46:47,090 гэта будзе прапанавана. 925 00:46:47,090 --> 00:46:51,150 Мы не збіраемся пастаўляць ўваходу ў камандным радку ". 926 00:46:51,150 --> 00:46:54,100 Калі вы сачылі усе лекцыі 927 00:46:54,100 --> 00:46:56,710 і слых аб аргументаў каманднага радка, 928 00:46:57,810 --> 00:47:00,080 гэта збольшага ад таго, дзе тыя - што напалоханыя сінтаксісу 929 00:47:00,080 --> 00:47:04,530 на галоўнай прыходзіць з внутр агдс, усе гэтыя рэчы, 930 00:47:04,530 --> 00:47:07,630 так што тут мы не выкарыстоўваем, што, мы маем справу не з любым з гэтага. 931 00:47:09,400 --> 00:47:12,650 Мы проста збіраюся атрымаць гэтую тыпізаваных ў карыстальнікам, 932 00:47:12,650 --> 00:47:15,700 і тады гэта другая лінія з фанкі капіталізацыі 933 00:47:15,700 --> 00:47:18,550 тое, што мы хочам, каб нашы праграмы на выхад. 934 00:47:19,790 --> 00:47:22,860 >> Такім чынам, замест выкарыстання прыбора або Run, мы будзем выкарыстоўваць прабелы, 935 00:47:22,860 --> 00:47:25,360 таму што ў нас прасторах, 936 00:47:25,360 --> 00:47:28,640 і таму, калі б вы, хлопцы, 937 00:47:28,640 --> 00:47:32,380 атрымаць код, каб выглядаць так, 938 00:47:32,380 --> 00:47:35,930 так што я збіраюся захаваць гэты перагляд 939 00:47:35,930 --> 00:47:38,390 проста так у цябе на пліце катла прама тут 940 00:47:38,390 --> 00:47:42,840 , Што выглядае так, Int асноўных (несапраўднымі), нічога ў ёй. 941 00:47:44,480 --> 00:47:48,460 На самай справе, тое, што мы будзем рабіць гэта мы будзем проста выдаліць усе, усе разам. 942 00:47:48,460 --> 00:47:50,330 Мы хочам чыстага ліста, 943 00:47:50,330 --> 00:47:52,470 таму што мы не збіраемся прыступіць да напісання кода; 944 00:47:52,470 --> 00:47:55,380 Хутчэй за ўсё, мы будзем старацца пісаць некаторыя псевдокод 945 00:47:55,380 --> 00:47:58,580 які на самай справе проста азначае, што мы збіраемся напісаць тое, што не код 946 00:47:58,580 --> 00:48:01,010 такой апісвае тое, што мы хочам зрабіць, 947 00:48:01,010 --> 00:48:05,180 накшталт як зрабіў Давід, у першы дзень лекцый, 948 00:48:05,180 --> 00:48:08,310 ці я мяркую, што гэта быў другі дзень лекцыі, калі ён зрабіў усё дэма шкарпэткі. 949 00:48:08,310 --> 00:48:10,990 Вы, хлопцы, памятаеце, што - бачачы шкарпэткі? 950 00:48:10,990 --> 00:48:13,300 Іосіф быў там выгляд набраўшы на англійскай мове? 951 00:48:13,300 --> 00:48:16,300 Так што мы збіраемся зрабіць тое ж самае. 952 00:48:16,300 --> 00:48:18,380 >> Так што, калі я пачынаю пісаць псевдокод, 953 00:48:18,380 --> 00:48:22,640 Я хацеў бы пачаць, гледзячы на ​​тое, што ўваход будзе. 954 00:48:22,640 --> 00:48:24,950 І я даю сабе ўзору выпадку, 955 00:48:24,950 --> 00:48:28,780 так як "дзякуй за дадаткі!" 956 00:48:35,030 --> 00:48:38,010 А потым я таксама пішу, што я хачу быць выхад, 957 00:48:38,010 --> 00:48:42,210 які ў дадзеным выпадку нешта накшталт гэтага. 958 00:48:53,790 --> 00:48:56,050 І такая дае мне добры, як, пачынаючы з месца, каб думаць, 959 00:48:56,050 --> 00:48:59,730 "Добра, я хачу ўзяць лінію 1 960 00:48:59,730 --> 00:49:03,560 і я хачу, каб ператварыць яго ў радку 2 " 961 00:49:03,560 --> 00:49:06,570 і такога роду дапамагае накіроўваць маё мысленне. 962 00:49:06,570 --> 00:49:09,990 Гэта добрае месца для пачатку. 963 00:49:09,990 --> 00:49:12,190 Іншы спосаб думаць аб гэтым, таксама, як мы цікавае рухацца далей 964 00:49:12,190 --> 00:49:15,020 і як вы робіце гэта ў вашых уласных праграмах, з'яўляецца 965 00:49:15,020 --> 00:49:18,530 думаць пра накшталт як, якія крайнія выпадкі на гэта? 966 00:49:18,530 --> 00:49:20,740 Якія віды дзіўныя сцэнары? 967 00:49:20,740 --> 00:49:23,660 Якія дзіўныя матэрыялы, якія мы маглі б атрымаць? 968 00:49:23,660 --> 00:49:26,550 А што, калі гэтыя выхады выглядаць? 969 00:49:26,550 --> 00:49:29,670 Напрыклад, адзін дзіўны ўваход 970 00:49:29,670 --> 00:49:33,200 б гэтага, 971 00:49:33,200 --> 00:49:35,630 стварэнне абсалютна нічога, 972 00:49:35,630 --> 00:49:37,840 як тое, што мы павінны выводзіць у такім выпадку? 973 00:49:37,840 --> 00:49:40,530 Тое, што мы хочам, каб думаць, таксама. 974 00:49:40,530 --> 00:49:44,450 >> Гэтак жа, як пытанне, 975 00:49:44,450 --> 00:49:46,870 што можа мы хочам выхад? 976 00:49:46,870 --> 00:49:50,740 Калі мы не атрымаем любога ўваходу на ўсё, што павінна быць нашай праграмы высновы? 977 00:49:53,740 --> 00:49:54,860 >> Нічога. 978 00:49:54,860 --> 00:49:57,340 Нічога? Гучыць нядрэнна. 979 00:49:57,340 --> 00:49:59,280 Такім чынам, мы хочам пераканацца, што мы не пішам нічога з 980 00:49:59,280 --> 00:50:01,500 калі мы нічога не атрымліваем цалі 981 00:50:01,500 --> 00:50:04,320 Cool. Добра. 982 00:50:04,320 --> 00:50:07,370 Так 983 00:50:07,370 --> 00:50:09,380 Я збіраюся патэлефанаваць на пару людзей, як мы праходзім 984 00:50:09,380 --> 00:50:12,790 і проста высветліць, накшталт як, што агульны алгарытм 985 00:50:12,790 --> 00:50:15,250 і мы будзем роду пачаць працаваць праз гэта разам. 986 00:50:16,240 --> 00:50:19,710 >> Такім чынам, давайце паглядзім. Місіі. 987 00:50:19,710 --> 00:50:21,220 Як вы думаеце, мы б пачаць? 988 00:50:21,220 --> 00:50:24,830 Што б быць добрым месцам, каб пачаць тут 989 00:50:24,830 --> 00:50:27,900 калі мы хочам пераўтварыць, скажам, лінія 1 990 00:50:27,900 --> 00:50:29,440 у радку 2? 991 00:50:29,440 --> 00:50:32,650 Ці можаце вы як-то проста растлумачыце мне, на англійскай мове, пра што ты думаеш? 992 00:50:32,650 --> 00:50:34,770 Нават не турбавацца пра код. 993 00:50:34,770 --> 00:50:38,250 >> Першая рэч, якую я хацеў бы зрабіць, 994 00:50:38,250 --> 00:50:41,170 выгляд прамых карыстальнікаў, каб сказаць ім, што вы хочаце. 995 00:50:41,170 --> 00:50:44,730 Добра, так, скажам, 996 00:50:44,730 --> 00:50:47,450 "Гэй, карыстальнік. Хачу 997 00:50:47,450 --> 00:50:50,560 Радок "- дзіўны. 998 00:50:50,560 --> 00:50:52,990 Так што давайце гэта запісаць. 999 00:50:52,990 --> 00:50:56,140 Падкажыце у карыстальніка радок. 1000 00:50:56,140 --> 00:50:59,270 Гэта гучыць, як добры старт. 1001 00:51:03,920 --> 00:51:06,460 Добра. 1002 00:51:06,460 --> 00:51:09,750 Давайце спытаем у Кэлі Ren гэты час. 1003 00:51:09,750 --> 00:51:11,580 Што б мы тады хочам рабіць далей? 1004 00:51:11,580 --> 00:51:14,220 Што накшталт нашага наступнага - 1005 00:51:14,220 --> 00:51:18,080 >> Збярыце свой уклад і захоўваць яго ў якасці зменнай. 1006 00:51:18,080 --> 00:51:20,470 Вялікі. 1007 00:51:20,470 --> 00:51:24,280 Так што збіраць радкі, 1008 00:51:25,450 --> 00:51:27,880 захоўваць яго ў зменнай. 1009 00:51:34,840 --> 00:51:36,460 Так ёсць нічога асаблівага, мы хочам зрабіць тут? 1010 00:51:36,460 --> 00:51:39,700 Хочам Ці мы, каб праверыць іх уклад 1011 00:51:39,700 --> 00:51:42,260 раней -? 1012 00:51:42,260 --> 00:51:43,790 >> Так. 1013 00:51:43,790 --> 00:51:46,330 Што можа мы хочам, каб праверыць? 1014 00:51:46,330 --> 00:51:48,980 >> Ну, вы сказалі, што мы не павінны праверыць, калі ён побач, дакладна? 1015 00:51:48,980 --> 00:51:52,400 Таму што будзем лічыць, што гэта маленькая? 1016 00:51:52,400 --> 00:51:55,650 Так. 1017 00:51:56,380 --> 00:51:58,920 >> Вось і атрымліваецца, што - так. 1018 00:51:58,920 --> 00:52:01,850 Так GetString гарантавана вяртае нам радок. 1019 00:52:01,850 --> 00:52:05,050 Ён не збіраецца вяртацца ліку да нас або што-небудзь падобнае. 1020 00:52:05,050 --> 00:52:09,140 Там могуць быць лічбы знакаў у гэтай радку, аднак. 1021 00:52:09,140 --> 00:52:13,460 І тыя, можна занядбаць, як мы рабілі капіталізацыі. 1022 00:52:13,460 --> 00:52:16,620 Але пустая радок цалкам нармальна, 1023 00:52:16,620 --> 00:52:19,900 так што справа тут, на лініі 4 і 5, 1024 00:52:19,900 --> 00:52:22,020 Права, дзе няма ўваходу, 1025 00:52:22,020 --> 00:52:25,190 і мы нічога не паклаў, як наш выхад. 1026 00:52:25,190 --> 00:52:28,730 Мы не павінны турбавацца аб тым, каб пераканацца, што ёсць нешта ў радок 1027 00:52:28,730 --> 00:52:31,840 або што радкі не менш за 4 знакаў; 1028 00:52:31,840 --> 00:52:34,190 усё ў парадку. 1029 00:52:34,190 --> 00:52:38,270 Так што гэта кантрастуе, напрыклад, з падобнымі праграмамі грошы, што вы напісалі 1030 00:52:38,270 --> 00:52:42,340 дзе вы павінны былі пераканацца, што вы атрымліваеце неадмоўных лікаў; 1031 00:52:42,340 --> 00:52:46,430 Вы павінны былі пераканацца, што вы атрымліваеце правільнае колькасць дзён у месяцы. 1032 00:52:46,430 --> 00:52:49,630 А як вы, хлопцы, робіце? 1033 00:52:49,630 --> 00:52:51,470 Як бы вы гэта зрабіць тэст? 1034 00:52:51,470 --> 00:52:54,090 Што гэта патрабуецца выкарыстоўваць? 1035 00:52:54,090 --> 00:52:55,650 >> Зрабі той час як завесы. 1036 00:52:55,650 --> 00:53:00,840 Зрабі той час як завесы, іншыя віды завес таксама, так. 1037 00:53:02,190 --> 00:53:04,520 Такім чынам, аказваецца, што мы не павінны выкарыстоўваць цыкл, у дадзеным выпадку, 1038 00:53:04,520 --> 00:53:07,360 калі мы запытам радок, якая з'яўляецца збольшага добра. 1039 00:53:08,280 --> 00:53:10,620 >> Добра, як рухацца далей. 1040 00:53:12,410 --> 00:53:14,270 Такім чынам, Стэла. 1041 00:53:14,270 --> 00:53:17,530 Ці можаце Вы расказаць нам крыху аб тым, што мы павінны рабіць далей? 1042 00:53:17,530 --> 00:53:20,270 Так што цяпер у нас ёсць радок, што ў нас ёсць яно захоўваецца ў зменнай; 1043 00:53:20,270 --> 00:53:23,360 Што мы павінны рабіць са радком? 1044 00:53:26,790 --> 00:53:33,530 >> Мы павінны - 1045 00:53:33,530 --> 00:53:36,550 вызначыць 2 - 1046 00:53:36,550 --> 00:53:39,290 Так, проста сказаць, што гэта на англійскай мове, што з'яўляецца дзіўным. 1047 00:53:39,290 --> 00:53:42,670 Вызначыць >> [неразборліва] сталіц - ці, у верхнім рэгістры. 1048 00:53:44,420 --> 00:53:48,130 Так, так што вам вызначыць, якія з іх з'яўляюцца вялікімі і малымі літарамі. 1049 00:53:50,020 --> 00:53:54,180 Мы не можам верхні або ніжні рэгістр іх, пакуль мы вызначылі, якія менавіта. 1050 00:54:03,790 --> 00:54:06,350 Такім чынам, мы пакладзем, што ў тут. 1051 00:54:06,350 --> 00:54:10,210 >> Так што, проста думаючы пра гэты працэс, 1052 00:54:10,210 --> 00:54:13,200 як мы робім гэта атаясненне? 1053 00:54:13,200 --> 00:54:15,050 Ці ведаеце вы, Дэн? 1054 00:54:15,050 --> 00:54:18,120 Выгляд таго, што мы - тое, што інструмент, які мы павінны былі б выкарыстаць з нашых інструментаў? 1055 00:54:18,120 --> 00:54:22,500 >> Я б паставіў яго ў чымсьці, як у масіве ці кожную лінію 1056 00:54:22,500 --> 00:54:24,240 з'яўляецца яго ўласнай маленькай скрынцы, 1057 00:54:24,240 --> 00:54:27,240 , А затым верхні яго адтуль ці не. 1058 00:54:27,240 --> 00:54:30,440 Такім чынам, адзін інструмент, мы можам выкарыстоўваць масіў. 1059 00:54:30,440 --> 00:54:33,760 Што мы павінны глядзець на ў радку, 1060 00:54:33,760 --> 00:54:36,680 хоць, каб высветліць - у нас было глядзець на знакі. 1061 00:54:36,680 --> 00:54:40,890 >> Так што ў вас ёсць, каб паглядзець на даўжыню радка? 1062 00:54:40,890 --> 00:54:43,880 Так, і частка, якая атрымлівае даўжыню радка. 1063 00:54:50,450 --> 00:54:54,150 Проста з цікаўнасці, што ж мы выкарыстоўваем, каб атрымаць даўжыню радка? 1064 00:54:54,150 --> 00:54:58,080 >> StrLen? 1065 00:54:58,080 --> 00:55:02,870 Так, StrLen, мы называем гэта "StrLen" 1066 00:55:04,180 --> 00:55:08,620 Усе гэтыя радкі функцыі, так StrLen з'яўляецца функцыяй, 1067 00:55:08,620 --> 00:55:10,670 і гэта супер зручна, таму што мы можам выкарыстоўваць яго, каб проста сказаць: 1068 00:55:10,670 --> 00:55:13,430 Гэй, StrLen: Вось радкі, скажыце мне, як доўга гэта. 1069 00:55:13,430 --> 00:55:17,350 У сённяшняй лекцыі, Дэвід шмат казалі пра тое, як StrLen будзе рэалізаваны, 1070 00:55:17,350 --> 00:55:20,370 што на самой справе адбываецца за кулісамі. 1071 00:55:20,370 --> 00:55:25,450 Але гэта адна з самых супер зручная іх. 1072 00:55:25,450 --> 00:55:29,170 Ёсць іншыя, якія таксама знаходзяцца ў радку бібліятэку, 1073 00:55:29,170 --> 00:55:34,690 такіх як STRCMP, якая пішацца "STRCMP», 1074 00:55:34,690 --> 00:55:38,010 які выкарыстоўваецца для параўнання радкоў адзін з адным. 1075 00:55:41,220 --> 00:55:45,020 Іншы тыя, якія вы будзеце выкарыстоўваць, як strstr, 1076 00:55:45,020 --> 00:55:48,770 і гэта добра для знаходжання пад струны і гэтак далей. 1077 00:55:48,770 --> 00:55:53,380 Па большай частцы, усе яны пачынаюцца з вул а затым ісці далей быць нешта яшчэ. 1078 00:55:53,380 --> 00:55:57,080 Таму яны на самай справе не запісаць іх як радкі і г. д. 1079 00:55:57,080 --> 00:56:00,260 Таму як яшчэ ў першыя дні C, 1080 00:56:00,260 --> 00:56:04,100 калі людзі ўпершыню былі пісьмова і ўсё такое, 1081 00:56:04,100 --> 00:56:07,580 у іх былі абмежаванні на колькасць знакаў, якія можна выкарыстоўваць 1082 00:56:07,580 --> 00:56:09,950 для імёнаў функцый і пераменных імёны, 1083 00:56:09,950 --> 00:56:12,620 такім чынам, усе, як супер кандэнсаваных. 1084 00:56:12,620 --> 00:56:15,750 Але ў любы час вы бачыце тое, што пачынаецца з вул 1085 00:56:15,750 --> 00:56:18,600 Звычайна гэта азначае, што гэта мае нейкае дачыненне да радка. 1086 00:56:20,990 --> 00:56:23,350 >> Такім чынам, у вас ёсць, каб атрымаць даўжыню радка, 1087 00:56:23,350 --> 00:56:27,110 а затым, што мы будзем рабіць з героямі? 1088 00:56:27,110 --> 00:56:29,020 Ці ведаеце вы, Сэм? 1089 00:56:29,020 --> 00:56:32,410 >> Я паняцця не маю, я спрабаваў высветліць гэта. 1090 00:56:32,410 --> 00:56:35,410 Я сапраўды не ведаю, - я хацеў было нейкім чынам - 1091 00:56:35,410 --> 00:56:38,990 Я маю на ўвазе, я думаю, можа быць, мы маглі б зрабіць нешта з цотныя і няцотныя, 1092 00:56:38,990 --> 00:56:40,860 Але я не ведаю ні адной функцыі, як, што. 1093 00:56:40,860 --> 00:56:42,240 Так. 1094 00:56:43,160 --> 00:56:45,200 >> Але што - гэта не абавязкова будзе працаваць, 1095 00:56:45,200 --> 00:56:48,690 таму што тады вы атрымаеце прастору, каб быць - 1096 00:56:48,690 --> 00:56:51,130 Вы павінны былі б мець месца, каб атрымаць парады аб тым, як - 1097 00:56:51,130 --> 00:56:54,310 Добра. 1098 00:56:54,310 --> 00:56:56,490 >> Я не ведаю - я б страціў у гэтай кропцы. 1099 00:56:56,490 --> 00:56:58,120 Так - не, не, не, гэта добрыя акуляры. 1100 00:56:58,120 --> 00:57:00,420 Такім чынам, што мы павінны зрабіць, гэта, як сказаў Сэм, 1101 00:57:00,420 --> 00:57:02,970 мы павінны адсочваць, якія лісты з'яўляюцца няцотнымі літарамі, 1102 00:57:02,970 --> 00:57:05,540 і якія з іх нават літары. 1103 00:57:06,650 --> 00:57:09,090 Але мы хочам пераканацца, што мы не проста шукае 1104 00:57:09,090 --> 00:57:12,110 на цотныя і няцотныя 1105 00:57:12,110 --> 00:57:14,030 Індэксы ў радок, 1106 00:57:14,030 --> 00:57:17,660 а гледзячы на ​​цотных і няцотных літар у радку, 1107 00:57:17,660 --> 00:57:20,190 таму мы павінны мець свайго роду гэта адрозненне паміж 1108 00:57:20,190 --> 00:57:25,190 літар - як тое, што на самой справе A, B, C, D, або так далей, 1109 00:57:25,190 --> 00:57:29,090 і тое, што рэчы не з'яўляюцца літарамі, але па-ранейшаму ў нашых радок. 1110 00:57:29,090 --> 00:57:32,390 Напрыклад, тут, як гэта клічнік не з'яўляецца літарай, 1111 00:57:32,390 --> 00:57:36,060 але гэта ўсё яшчэ частка нашай радкоў, гэта па-ранейшаму знак. 1112 00:57:36,060 --> 00:57:38,820 Акрамя таго, усе гэтыя прасторы - 1113 00:57:38,820 --> 00:57:41,710 гэта не мае сэнсу для сваёй выгады прасторы, ці не так? 1114 00:57:41,710 --> 00:57:46,160 Такім чынам, мы хочам пераканацца, што мы нейкім чынам прапусціць тыя, 1115 00:57:46,160 --> 00:57:49,410 у той жа час адсочвання цотныя і няцотныя. 1116 00:57:50,900 --> 00:57:54,990 >> Так, відаць, у нашым праграмавання інструментаў 1117 00:57:54,990 --> 00:57:57,270 да гэтага часу, калі хочаце, 1118 00:57:57,270 --> 00:58:01,310 у нас ёсць цэлы шэраг розных інструментаў, якія мы ўжо абмяркоўвалі. 1119 00:58:01,310 --> 00:58:04,640 Так што, напрыклад, з'яўляюцца зменнымі, 1120 00:58:04,640 --> 00:58:07,120 як мы ўжо казалі тут. 1121 00:58:07,120 --> 00:58:10,730 Іншым інструментам, мы гаварылі пра функцыі. 1122 00:58:10,730 --> 00:58:15,800 Такім чынам, мы гаварылі пра зменных у нашым псевдокоде тут 1123 00:58:15,800 --> 00:58:19,760 як тое, што мы збіраемся выкарыстаць для захоўвання нашу радок. 1124 00:58:19,760 --> 00:58:24,630 Мы гаварылі аб функцыях, каб атрымаць даўжыню радка, як StrLen. 1125 00:58:28,510 --> 00:58:31,170 Мы гаварылі пра штосьці іншае, і мы гаварылі пра гэта 1126 00:58:31,170 --> 00:58:34,850 на шмат вышэй у раздзеле Сёння: завесы. 1127 00:58:39,390 --> 00:58:42,030 >> Што вы, хлопцы, думаеце аб выкарыстанні завесы ў гэтай праграме? 1128 00:58:42,030 --> 00:58:44,110 Джарэд, што ты думаеш? 1129 00:58:47,150 --> 00:58:50,030 Ці будзем мы выкарыстоўваць цыкл у гэтай праграме? 1130 00:58:50,030 --> 00:58:52,500 >> Напэўна, не, не, таму што вам не давядзецца прайсці праз гэта некалькі разоў. 1131 00:58:52,500 --> 00:58:55,260 Добра, вы не павінны прайсці праз тое, што больш за адзін раз? 1132 00:58:55,260 --> 00:58:57,190 >> Усю радок. 1133 00:58:57,190 --> 00:59:00,660 Права, так што вам не давядзецца прайсці праз усю радок адразу. 1134 00:59:00,660 --> 00:59:03,330 Выбачайце, што мела абсалютна ніякага сэнсу! 1135 00:59:03,330 --> 00:59:06,360 Вам не давядзецца прайсці праз усю радок некалькі разоў. 1136 00:59:06,360 --> 00:59:08,660 Добра. 1137 00:59:09,790 --> 00:59:11,920 Што вы думаеце? 1138 00:59:11,920 --> 00:59:14,110 >> Я думаю, што лепш іх выкарыстоўваць 1139 00:59:14,110 --> 00:59:16,640 так што мы можам зрабіць, як капіталізаваць у той час як 1140 00:59:16,640 --> 00:59:19,750 размяшчэнне гэта [неразборліва] ліку. 1141 00:59:19,750 --> 00:59:22,940 Вялікі, і таму выгады і што? 1142 00:59:22,940 --> 00:59:25,200 Такім чынам, мы кажам, што 1143 00:59:25,200 --> 00:59:28,130 Мы павінны выкарыстоўваць цыкл, таму што мы хочам 1144 00:59:28,130 --> 00:59:32,550 загалоўнай літары, хоць гэта не лік. 1145 00:59:35,130 --> 00:59:37,140 Так што - прабачце, вы хочаце дадаць? 1146 00:59:37,140 --> 00:59:39,340 >> Я хачу сказаць, што, як вы ставіцеся радком 1147 00:59:39,340 --> 00:59:42,290 і гэта [неразборліва] асобныя [неразборліва] на знакі? 1148 00:59:42,290 --> 00:59:43,710 Так. 1149 00:59:43,710 --> 00:59:45,850 >> І тады мы можам прысвоіць нумары - 1150 00:59:45,850 --> 00:59:47,780 або на аснове размяшчэння літар у радку? 1151 00:59:47,780 --> 00:59:49,720 Так. 1152 00:59:49,720 --> 00:59:53,640 >> А вызначыць, ці з'яўляецца гэта цотная ці няцотная і скарыстацца само ліст 1153 00:59:53,640 --> 00:59:57,750 у той час як размяшчэнне ліст [неразборліва] - прабачце. 1154 00:59:57,750 --> 01:00:00,150 Вялікі. 1155 01:00:00,150 --> 01:00:03,430 >> Так што рэзюмэ. 1156 01:00:03,430 --> 01:00:05,840 Ці можаце вы нагадваеце мне вашага імя яшчэ раз - прабачце. 1157 01:00:05,840 --> 01:00:06,900 >> Шарлота. 1158 01:00:06,900 --> 01:00:08,490 Шарлота, усё ў парадку. 1159 01:00:08,490 --> 01:00:11,130 Так што Шарлота кажа: 1160 01:00:11,130 --> 01:00:14,950 які цалкам маеце рацыю - божа, гэта любіць аўто водступ на мяне - 1161 01:00:14,950 --> 01:00:17,770 з'яўляецца тое, што калі мы паглядзім на радок 1162 01:00:17,770 --> 01:00:19,160 такіх як гэты уверсе - 1163 01:00:19,160 --> 01:00:21,590 "Дзякуй за дапаўненні", - 1164 01:00:21,590 --> 01:00:24,790 ў выглядзе паслядоўнасці сімвалаў 1165 01:00:24,790 --> 01:00:29,010 дзе знаходзіцца ў становішчы 0, 1166 01:00:29,010 --> 01:00:32,260 ч знаходзіцца ў становішчы 1. 1167 01:00:32,260 --> 01:00:36,880 А на 2, то мы атрымалі 3, 4, 5; 1168 01:00:36,880 --> 01:00:40,830 прастору знаходзіцца ў становішчы 6. 1169 01:00:42,380 --> 01:00:45,300 Прымаючы да ўвагі, - тое, што пазіцыя е? 1170 01:00:45,300 --> 01:00:47,610 7! 1171 01:00:47,610 --> 01:00:49,300 O? 8. 1172 01:00:49,300 --> 01:00:52,070 R? 9. 1173 01:00:52,070 --> 01:00:54,340 І тады ў нас 10, а затым я не магу пісаць без яго 1174 01:00:54,340 --> 01:00:57,430 свайго роду атрыманне брудна на экране. 1175 01:00:57,430 --> 01:01:02,340 Але гэта на самай справе, як мы можам казаць пра радках ў памяці. 1176 01:01:02,340 --> 01:01:04,660 Гэта радкі 1177 01:01:04,660 --> 01:01:07,920 ўяўляе сабой паслядоўнасць знакаў, 1178 01:01:07,920 --> 01:01:12,430 і калі мы гаворым аб асобных знакаў у радку, 1179 01:01:12,430 --> 01:01:15,280 Мы часта робяць гэта, спасылаючыся на пазіцыю, што персанаж 1180 01:01:15,280 --> 01:01:17,620 у радку, 1181 01:01:17,620 --> 01:01:19,910 Верагодна, гэтак жа, як мы кажам пра верасні 1182 01:01:19,910 --> 01:01:22,870 дзявятым месяцы года 1183 01:01:22,870 --> 01:01:27,730 ці ў панядзелак як першы дзень тыдня. 1184 01:01:29,280 --> 01:01:33,070 Такім чынам, гэта дае нам магчымасць 1185 01:01:33,070 --> 01:01:37,030 высветліць, якія з іх з'яўляюцца няцотнымі нават у параўнанні з 1186 01:01:37,030 --> 01:01:39,540 таму што вы можаце ўбачыць тут, 1187 01:01:39,540 --> 01:01:43,640 калі мы Супастаўляны яго з гэтай T, 1188 01:01:46,310 --> 01:01:49,360 Вы можаце бачыць, што ўсе тыя, капіталізаваць 1189 01:01:49,360 --> 01:01:53,040 знаходзяцца на цотных пазіцыях, 1190 01:01:53,040 --> 01:01:55,880 па крайняй меры, першае слова, 1191 01:01:55,880 --> 01:01:59,080 а потым усё становіцца скінуў раз мы патрапілі, што прастора, 1192 01:01:59,080 --> 01:02:02,460 таму што мы не лічым гэта прастора як ліст, 1193 01:02:02,460 --> 01:02:05,150 так што гэта як калі б мы пачалі 1194 01:02:05,150 --> 01:02:08,930 і пайшлі 0, 1, 2, 3, 4, 5, 1195 01:02:08,930 --> 01:02:12,600 прасторы, 6, 7, 8, прастора, 1196 01:02:12,600 --> 01:02:16,440 9, а затым 10, 11, 12, і так далей. 1197 01:02:19,300 --> 01:02:22,910 >> Cool, так што мы вызначана хочам выкарыстоўваць нейкі цыкл 1198 01:02:22,910 --> 01:02:27,760 перайсці на кожнага з персанажаў па чарзе. 1199 01:02:31,330 --> 01:02:34,580 Такім чынам, на дадзены момант, 1200 01:02:36,490 --> 01:02:38,360 мы вернемся да нашага старому псевдокод тут. 1201 01:02:40,970 --> 01:02:42,650 У рамках гэтага вызначэння, якія з іх 1202 01:02:42,650 --> 01:02:45,350 у верхнім рэгістры, а якія малымі літарамі, 1203 01:02:45,350 --> 01:02:48,340 мы хочам зрабіць гэта ў нейкай цыкл. 1204 01:02:51,080 --> 01:02:53,390 Loop, тоўстай кішкі. 1205 01:02:55,070 --> 01:03:01,220 Якія завесы, з відаў завес, якія ў нас ёсць, 1206 01:03:01,220 --> 01:03:03,670 здаецца добрым, каб выкарыстоўваць у гэтым выпадку? 1207 01:03:03,670 --> 01:03:05,610 >> Я думаў цыклу. 1208 01:03:05,610 --> 01:03:07,500 А чаму вы думаеце для цыклу? 1209 01:03:07,500 --> 01:03:10,000 >> Таму што ён пачынаецца з нуля, а затым 1210 01:03:10,000 --> 01:03:13,000 калі мы дасягаем даўжыні радка, 1211 01:03:13,000 --> 01:03:16,170 , А затым кожнай ітэрацыі можна [неразборліва], таксама? 1212 01:03:16,170 --> 01:03:18,260 Так, менавіта так. 1213 01:03:18,260 --> 01:03:21,490 Так, з розных варыянтаў завес, 1214 01:03:21,490 --> 01:03:25,350 у нас ёсць для завес, а завесы, і рабіць-то час завес. 1215 01:03:25,350 --> 01:03:28,550 Дзе цыклу асабліва карысна 1216 01:03:28,550 --> 01:03:32,120 калі вы хочаце ведаць, 1217 01:03:32,120 --> 01:03:34,940 выгляд, дзе вы знаходзіцеся ў цыкле, 1218 01:03:34,940 --> 01:03:38,520 колькі разоў цыкл быў выкананы да гэтага часу. 1219 01:03:38,520 --> 01:03:42,490 Якія менавіта тое, што мы хочам ведаць, у гэтай сітуацыі, 1220 01:03:42,490 --> 01:03:44,640 як сказаў Кэлі, 1221 01:03:44,640 --> 01:03:47,400 заснаваныя ад ранніх каментарыяў Шарлоты, што мы хочам ведаць становішча 1222 01:03:47,400 --> 01:03:49,900 знака ў радку, 1223 01:03:49,900 --> 01:03:51,750 і цыкл дасць нам толькі, што, 1224 01:03:51,750 --> 01:03:54,680 таму што, калі мы пачнем выгляд азіраючыся на нашу радок, 1225 01:03:54,680 --> 01:03:57,140 калі мы пачнем наш цыкл на 0, 1226 01:03:57,140 --> 01:04:00,350 і ідзем уверх па даўжыні ўсёй радкі, 1227 01:04:00,350 --> 01:04:04,740 Затым можна супаставіць літару Т 1228 01:04:04,740 --> 01:04:08,110 з 0 у наш цыкл, 1229 01:04:09,950 --> 01:04:13,080 Ліст з H 1 у нашым цыкл, і гэтак далей, 1230 01:04:13,080 --> 01:04:16,600 прайшоўшы ўвесь шлях да канца радка. 1231 01:04:18,810 --> 01:04:21,890 >> Такім чынам, давайце пачнем кадавання гэта проста трохі 1232 01:04:21,890 --> 01:04:24,930 толькі так вы, хлопцы, адчуць, на што гэта падобна. 1233 01:04:24,930 --> 01:04:27,980 Я збіраюся захаваць, 1234 01:04:27,980 --> 01:04:31,230 такім чынам, мы атрымалі нашы псеўда-код тут, 1235 01:04:33,490 --> 01:04:38,120 і я хачу выдаліць усе. 1236 01:04:38,120 --> 01:04:42,210 Так што ў мяне чыстага ліста. 1237 01:04:42,210 --> 01:04:45,910 Я збіраюся пачаць з напісання Int асноўных (несапраўднымі) 1238 01:04:45,910 --> 01:04:48,440 { 1239 01:04:48,440 --> 01:04:51,380 Я збіраюся паставіць вяртанне 0 у 1240 01:04:51,380 --> 01:04:53,320 , А затым}. 1241 01:04:53,320 --> 01:04:56,130 Так што звычайна, калі я пачынаю праграму, гэта тое, што я пачынаю з. 1242 01:04:56,130 --> 01:04:59,370 Я выратую яго так, што вы, хлопцы, ёсць. 1243 01:05:06,290 --> 01:05:08,440 Такім чынам, адна з першых рэчаў, пра якія мы гаварылі было 1244 01:05:08,440 --> 01:05:10,920 атрымання ўваходных дадзеных ад карыстальніка 1245 01:05:10,920 --> 01:05:13,740 і захоўваць яго ў радок. 1246 01:05:13,740 --> 01:05:16,420 Як мы можам атрымаць ўвод ад карыстача? 1247 01:05:16,420 --> 01:05:19,640 >> GetString. 1248 01:05:19,640 --> 01:05:21,870 GetString, усё ў парадку. 1249 01:05:23,150 --> 01:05:26,820 Так што, калі я друкую GetString () 1250 01:05:26,820 --> 01:05:32,150 і кропка з коскі. 1251 01:05:32,150 --> 01:05:36,630 Давайце паспрабуем запусціць гэты, гэта будзе перспектыве, у першую чаргу? 1252 01:05:36,630 --> 01:05:38,430 А чаму не будзе гэтага бегчы? 1253 01:05:38,430 --> 01:05:40,090 >> Вы павінны абвясьціць зменную. 1254 01:05:40,090 --> 01:05:43,040 Я павінен абвясціць зменную. Добра. 1255 01:05:43,040 --> 01:05:45,700 >> Так як я магу гэта зрабіць? 1256 01:05:45,700 --> 01:05:48,400 Вы не пярэчыце, нешта пісаў, падзяляючы яго? 1257 01:05:48,400 --> 01:05:51,270 І тады мы можам пацягніце яго ўверх. 1258 01:05:51,270 --> 01:05:54,630 Давайце паглядзім, Дэн, права, добра. 1259 01:05:54,630 --> 01:05:59,100 Ці Данііл. Скапіюйце што ў Расеі, радок уводу = GetString (). 1260 01:05:59,100 --> 01:06:01,340 Awesome. 1261 01:06:01,340 --> 01:06:02,890 Ці будзе гэта працаваць? 1262 01:06:02,890 --> 01:06:05,210 Давайце паспрабуем. 1263 01:06:05,210 --> 01:06:08,890 Трапнасць перспектыве, загрузкі зыходнага кода, будаўніцтва, адбылася памылка. 1264 01:06:08,890 --> 01:06:11,040 Добра. 1265 01:06:11,040 --> 01:06:14,950 Так, што тут адбываецца? 1266 01:06:14,950 --> 01:06:18,700 Выкарыстанне 'радок' неаб'яўленай ідэнтыфікатар. 1267 01:06:18,700 --> 01:06:22,840 >> Мы павінны ўключыць бібліятэкі? 1268 01:06:22,840 --> 01:06:25,130 Так, так што Дэн кажа, што мы павінны ўключаць бібліятэкі. 1269 01:06:25,130 --> 01:06:28,270 Гэта тое, што вы збіраецеся сказаць, Стэла? Awesome. 1270 01:06:29,450 --> 01:06:31,430 Гэта ўзрушаюча, таму Стэла, ты можаш 1271 01:06:31,430 --> 01:06:34,800 скапіруйце код з касмічнага Данііла? 1272 01:06:34,800 --> 01:06:37,580 Калі вы націснеце на Daniel Roland Гі, скапіюйце яго, 1273 01:06:37,580 --> 01:06:41,360 і тады вы зможаце паставіць ўключаюць лінейны ўваход, а затым захаваць яго? 1274 01:06:46,580 --> 01:06:49,360 Дайце мне ведаць, калі вы будзеце гатовыя. 1275 01:06:57,160 --> 01:06:59,490 Так што гэты сінтаксіс ўключае таксама віды фанк; 1276 01:06:59,490 --> 01:07:02,210 там усё роўна, што хэш-тэг, 1277 01:07:02,210 --> 01:07:05,760 і там ўключаць, і тады гэтыя вуглавыя дужкі. 1278 01:07:12,490 --> 01:07:15,360 Вы памятаеце, як гэта працуе, ці я павінен пакласці яго на гэты код прама тут? 1279 01:07:15,360 --> 01:07:17,850 >> Я ў парадку. 1280 01:07:17,850 --> 01:07:19,810 Добра. 1281 01:07:19,810 --> 01:07:23,260 >> Я надрукаваў яго - я не быў упэўнены, які бібліятэкай, аднак. 1282 01:07:23,260 --> 01:07:25,570 Ну, добра - так, так што гэта CS50 бібліятэкі. 1283 01:07:25,570 --> 01:07:27,660 >> О, я паклаў STDIO бібліятэкі. 1284 01:07:27,660 --> 01:07:30,950 >> Ах, ён атрымаў - так, Не, гэта - 1285 01:07:30,950 --> 01:07:34,380 так атрымліваецца, што радок на самай справе тое, што з'яўляецца асаблівым для CS50. 1286 01:07:36,590 --> 01:07:41,240 Там на самай справе не з'яўляецца сапраўдным тыпам радок 1287 01:07:41,240 --> 01:07:45,000 , Таму што менавіта тут, радок у тып пазіцыі, - 1288 01:07:45,000 --> 01:07:49,140 Мы аб'яўленні зменнай завецца уваходам тыпу радок - 1289 01:07:49,140 --> 01:07:53,320 і мы змяшчаем ўнутр ўваход 1290 01:07:53,320 --> 01:07:58,440 значэнне, якое атрымлівае вярнуўся да нас: выхад гэтага GetString выкліку функцыі. 1291 01:07:58,440 --> 01:08:02,910 Вы можаце сказаць, што гэта выклік функцыі, таму што ў яго ёсць дужкі, як Printf робіць, 1292 01:08:02,910 --> 01:08:05,920 як StrLen робіць. 1293 01:08:05,920 --> 01:08:09,860 Але радок на самай справе не сапраўдная тыпу 1294 01:08:09,860 --> 01:08:11,760 У мове Сі. 1295 01:08:11,760 --> 01:08:15,710 Мы зрабілі гэта у тып, і мы будзем прымаць нешта большае, тое, што ёсць на самой справе 1296 01:08:15,710 --> 01:08:19,000 У C, таму што ёсць спосаб працы са радкамі; 1297 01:08:19,000 --> 01:08:22,479 мы толькі што зрабілі нешта, каб ён выглядаў трохі лепш. 1298 01:08:22,479 --> 01:08:25,240 >> Такім чынам, тут мы ідзем. 1299 01:08:25,240 --> 01:08:28,439 Вось код Стеллы. 1300 01:08:28,439 --> 01:08:32,470 Яна атрымала # ўключыць . 1301 01:08:32,470 --> 01:08:36,390 Іншыя людзі будуць называць гэта як хэш часам ўключаць або рэзкае ўключыць. 1302 01:08:36,390 --> 01:08:39,580 Цяпер мы можам запусціць яго, запусціць яго, 1303 01:08:39,580 --> 01:08:43,649 і мы ўсё яшчэ атрымліваеце паведамленне пра памылку. 1304 01:08:43,649 --> 01:08:46,290 Давайце паглядзім, што адбываецца. 1305 01:08:48,069 --> 01:08:50,569 "Без складнікаў зменныя" уваход ". 1306 01:08:50,569 --> 01:08:53,350 Такім чынам, гэта крута, гэта крута. 1307 01:08:53,350 --> 01:08:55,859 Я маю на ўвазе, гэта не вельмі выдатна, 1308 01:08:55,859 --> 01:08:57,930 таму што мы атрымліваю паведамленне пра памылку, і ён не працуе, 1309 01:08:57,930 --> 01:09:00,410 але тое, што гэта гаворыць, што 1310 01:09:00,410 --> 01:09:03,130 мы не выкарыстоўвалі нашы зменнай, якая мае сэнс. 1311 01:09:03,130 --> 01:09:06,090 Мы не спрабавалі нічога зрабіць з ім. 1312 01:09:07,819 --> 01:09:10,490 Гэта так, што 1313 01:09:10,490 --> 01:09:14,170 Clang спрабуе дапамагчы нам пераканацца, што мы не толькі з дапамогай зменных 1314 01:09:14,170 --> 01:09:18,819 а потым выпадкова называючы іх нешта яшчэ пазней у нашым кодзе, 1315 01:09:18,819 --> 01:09:21,649 дапамагае нам пазбегнуць памылак, якія шляхам. 1316 01:09:23,130 --> 01:09:28,810 >> Добра, у нас ёсць уваход ад карыстальніка, 1317 01:09:28,810 --> 01:09:31,910 Мы захавалі яго ў зменную. 1318 01:09:31,910 --> 01:09:34,569 Наступным крокам было тое 1319 01:09:34,569 --> 01:09:37,609 пачаць глядзець на ўсе сімвалы ў радку 1320 01:09:37,609 --> 01:09:41,830 і вызначэння, якія з іх павінны быць загалоўнымі 1321 01:09:41,830 --> 01:09:44,600 і якія з іх павінны быць у ніжнім рэгістры. 1322 01:09:44,600 --> 01:09:49,439 І, як Кэлі і Шарлота выхаваны, 1323 01:09:49,439 --> 01:09:52,340 Зробім гэта з дапамогай цыклу. 1324 01:09:52,340 --> 01:09:55,520 Так хто-небудзь памятае сінтаксіс для цыклу 1325 01:09:55,520 --> 01:09:58,670 і хацелі б прыняць ўдар на проста пісаць 1326 01:09:58,670 --> 01:10:03,170 Першы радок цыклу, толькі для біт? 1327 01:10:05,740 --> 01:10:07,330 Кэлі, ты хочаш паспрабаваць? 1328 01:10:07,330 --> 01:10:10,300 >> Так, так што вы павінны ініцыялізаваць першай, 1329 01:10:10,300 --> 01:10:13,170 так што я паклаў = 0, 1330 01:10:13,170 --> 01:10:15,390 а потым зрабіў я 01:10:18,570 Ці ёсць у вашай Space - я магу выцягнуць яго? 1332 01:10:18,570 --> 01:10:21,330 >> Так, я аблажаўся трохі, але так. 1333 01:10:21,330 --> 01:10:24,180 >> Добра, давайце пацягніце яго ўверх. 1334 01:10:24,180 --> 01:10:26,490 Awesome. 1335 01:10:26,490 --> 01:10:29,510 >> Але тады я не ведаў, калі ў вас што - 1336 01:10:29,510 --> 01:10:32,180 Так, усё ў парадку. 1337 01:10:33,020 --> 01:10:36,030 Такім чынам, вось што Кэлі атрымаў: давайце паглядзім на гэта хутка. 1338 01:10:36,030 --> 01:10:40,290 Так што яна ўключаная CS50 бібліятэцы на самым версе. 1339 01:10:40,290 --> 01:10:44,790 Яна ўключана ў стандартную бібліятэку ўводу-высновы ў верхняй частцы, 1340 01:10:45,550 --> 01:10:48,990 і стандартнага ўводу-высновы мае такія функцыі, як Printf, 1341 01:10:48,990 --> 01:10:51,690 так што калі вы хочаце выкарыстоўваць Printf, трэба гэтую лінію. 1342 01:10:53,060 --> 01:10:56,140 А потым яна ўключаная радок бібліятэкі, 1343 01:10:56,140 --> 01:10:58,200 якіх мы будзем мець патрэбу, 1344 01:10:58,200 --> 01:11:01,010 таму што радок бібліятэцы StrLen функцыі, 1345 01:11:01,010 --> 01:11:04,320 якія мы атрымаем у толькі трохі. 1346 01:11:04,320 --> 01:11:07,560 Такім чынам, калі мы паглядзім на тое, што Кэлі зрабіў тут, 1347 01:11:07,560 --> 01:11:10,260 Вы можаце ісці з намі праз што ты зрабіў? 1348 01:11:10,260 --> 01:11:13,600 >> Так, так - я маю на ўвазе, у мяне ёсць памылкі, а значыць - 1349 01:11:13,600 --> 01:11:15,380 Так, Не, гэта - 1350 01:11:15,380 --> 01:11:18,580 >> Так я хацеў назваць радок, што я атрымаў толькі "радок". 1351 01:11:18,580 --> 01:11:22,230 Я хацеў, каб раздрукаваць радок 1352 01:11:22,230 --> 01:11:25,640 а потым - 1353 01:11:27,450 --> 01:11:30,930 Я хацеў бы хацела задаць радок як масіў кожнага знака 1354 01:11:30,930 --> 01:11:33,170 быць рознымі [неразборліва], правільна? 1355 01:11:33,170 --> 01:11:38,080 І тады я хацеў бы пачаць у пазіцыі 0 1356 01:11:38,080 --> 01:11:40,630 , А затым кожныя 2 месца, 1357 01:11:40,630 --> 01:11:42,580 Я збіраўся скарыстацца, 1358 01:11:42,580 --> 01:11:45,680 так што я проста апісаў яго як 23, так як я глядзеў на ASCII табліцы. 1359 01:11:45,680 --> 01:11:48,730 Дык вось што я думаю - я ведаю, што гэта не так. 1360 01:11:48,730 --> 01:11:50,920 >> Зразумеў, так што гэта выдатнае пачатак. 1361 01:11:50,920 --> 01:11:54,120 Я думаю, што шмат рамкі ў месца тут. 1362 01:11:54,120 --> 01:11:57,500 Давайце разгледзім віды радок за радком і паглядзець, што адбываецца. 1363 01:11:57,500 --> 01:12:01,040 Такім чынам, я хацеў бы зрабіць гэта толькі пачатак скампіляваць код 1364 01:12:01,040 --> 01:12:04,300 і дазволіць кампілятару скажы мне, як тое, што здарылася з маім кодам, 1365 01:12:04,300 --> 01:12:07,450 таму што кампілятар сапраўды добра кажу вам, што не так з вашым кодам. 1366 01:12:09,790 --> 01:12:12,780 Такім чынам, калі мы граем, будаўніцтва, і яно не будаваць. 1367 01:12:12,780 --> 01:12:14,860 Яна кажа, што была памылка, 1368 01:12:14,860 --> 01:12:17,320 таму, калі мы пракруціць ўніз і паглядзіце на першую памылку, 1369 01:12:17,320 --> 01:12:20,960 ён сказаў - 1370 01:12:20,960 --> 01:12:22,040 Мы пракруціць назад да самага верху, 1371 01:12:22,040 --> 01:12:26,070 мы бачым, ёсць 5 памылак, якія ўзнікаюць тут унізе. 1372 01:12:26,070 --> 01:12:30,180 На жаль, гэта сапраўды адрэзалі. 1373 01:12:31,810 --> 01:12:35,790 Я думаю, што проста не атрымаеце нічога лепшага. 1374 01:12:36,970 --> 01:12:38,500 >> Тут мы ідзем. 1375 01:12:39,790 --> 01:12:42,530 Такім чынам, існуе ўсяго 5 памылак, генераваных. 1376 01:12:42,530 --> 01:12:45,140 Тут я бачу толькі першыя 2, 1377 01:12:45,140 --> 01:12:49,100 так я магу рухацца да гэтага трохі, а затым выгляд пракруткі ўверх. 1378 01:12:49,100 --> 01:12:53,220 Гэта каманда, якая была запушчана для кампіляцыі кода, 1379 01:12:53,220 --> 01:12:59,030 , А затым першая памылка была ў file.c прама тут: 1380 01:12:59,030 --> 01:13:03,300 "Чакаецца вызначыць ці '('", і менавіта на гэтай лініі 1381 01:13:03,300 --> 01:13:06,680 дзе мы сказалі String = GetString (). 1382 01:13:07,660 --> 01:13:12,920 Вы можаце паглядзець прама тут, што гэта было на радок 8 file.c, 1383 01:13:12,920 --> 01:13:17,230 і тады я лічу, што гэта сімвал 12 - гэта памылка. 1384 01:13:17,230 --> 01:13:20,390 Так што ж адбываецца няправільна ў радку 8 - Кэлі? 1385 01:13:20,390 --> 01:13:22,810 >> Вам проста трэба называць гэта, быццам бы, ліст ці нешта, 1386 01:13:22,810 --> 01:13:24,400 як радок з або нешта? 1387 01:13:24,400 --> 01:13:28,250 Так, так атрымліваецца, што гэтыя спецыяльныя імёны тыпу, 1388 01:13:28,250 --> 01:13:31,770 так што радок, Int, Char, кароткія, 1389 01:13:31,770 --> 01:13:35,740 яны ўсе спецыяльныя ключавыя словы, 1390 01:13:35,740 --> 01:13:38,940 і вы не можаце выкарыстаць іх як імёны вашых зменных, 1391 01:13:38,940 --> 01:13:41,430 таму што кампілятар глядзіць на гэта і кажа: 1392 01:13:41,430 --> 01:13:43,680 "О, я ведаю, што гэта тыпу" 1393 01:13:43,680 --> 01:13:46,530 таму вы не можаце на самай справе ёсць радок зменнай радкі, 1394 01:13:46,530 --> 01:13:50,800 як я спрабую рабіць тут, гэта не будзе працаваць. 1395 01:13:52,610 --> 01:13:58,250 Але замест гэтага, мы можам назваць гэта нешта накшталт з і й або вул. 1396 01:13:58,250 --> 01:14:01,540 Мы таксама не маглі б назваць гэта Int. 1397 01:14:01,540 --> 01:14:03,740 Мы не можам ёсць радок называецца Int. 1398 01:14:03,740 --> 01:14:06,740 Мы не можам ёсць радок называецца сімвал, і ніхто з тых, хто будзе працаваць. 1399 01:14:06,740 --> 01:14:09,420 >> Так што мы проста называем гэта з у цяперашні час. 1400 01:14:10,630 --> 01:14:13,170 Awesome. 1401 01:14:13,170 --> 01:14:17,500 Так што ж далей адбываецца ў гэтым радку? 1402 01:14:21,390 --> 01:14:24,350 String - гэтая лінія выглядае даволі добра? 1403 01:14:24,350 --> 01:14:27,830 Давайце дамо яму яшчэ адзін шанец, давайце запусціць яго. 1404 01:14:27,830 --> 01:14:30,360 Такім чынам, мы па-ранейшаму атрымліваю памылкі. 1405 01:14:30,360 --> 01:14:32,080 На гэты раз, мы да 4 памылкі. 1406 01:14:32,080 --> 01:14:34,350 Такім чынам, мы атрымалі адну з іх. 1407 01:14:34,350 --> 01:14:36,130 Давайце рухацца ўверх. 1408 01:14:36,130 --> 01:14:38,890 "Нечаканы імя тыпу 'радок': чакаецца выраз" так? 1409 01:14:38,890 --> 01:14:41,780 >> Так, гэта таму, што я паспрабаваў назваць радок. 1410 01:14:41,780 --> 01:14:44,270 Так, так што, падобна, мы зараз павінны ісці выпраўленне 1411 01:14:44,270 --> 01:14:46,560 Усе гэтыя спасылкі на радка. 1412 01:14:46,560 --> 01:14:50,070 Вы можаце бачыць, што ёсць спасылка на радок, па адным, па адным тут, 1413 01:14:50,070 --> 01:14:53,440 так што мы можам перамясціць ўсе гэтыя ў с. 1414 01:14:56,040 --> 01:15:00,930 Вялікі. Добра, запусціце яго зноў. 1415 01:15:00,930 --> 01:15:03,260 Будаўніцтва - іншая памылка. 1416 01:15:03,260 --> 01:15:06,900 >> Добра, зараз мы да адной памылкі, 1417 01:15:06,900 --> 01:15:11,090 так Int I = S, а затым у квадратных дужках. 1418 01:15:11,090 --> 01:15:14,880 Такім чынам, вы можаце расказаць нам крыху аб тым, што вы робіце тут, Кэлі? 1419 01:15:14,880 --> 01:15:17,120 >> Так. 1420 01:15:17,120 --> 01:15:19,410 Гэта было на лініі 10. 1421 01:15:19,410 --> 01:15:22,760 >> Я не ведаю, калі мы мелі патрэбу ў ім усё, 1422 01:15:22,760 --> 01:15:25,560 Але я думаю, што я спрабаваў - 1423 01:15:25,560 --> 01:15:27,580 Я выратую яе, каб вы маглі сачыць разам. 1424 01:15:27,580 --> 01:15:30,470 >> Я думаю, што я быў 1425 01:15:30,470 --> 01:15:33,150 спрабаваў сказаць яму, каб пачаць у становішча 0 1426 01:15:33,150 --> 01:15:35,030 У пачатку майго цыклу, 1427 01:15:35,030 --> 01:15:38,370 так што я думаю, можа быць, казаў, было непатрэбным. 1428 01:15:39,690 --> 01:15:41,350 Так проста Нагадаем, што 1429 01:15:41,350 --> 01:15:44,850 Вы казалі, што гэта - Вы спрабавалі пачаць гэта ў пазіцыі 0 1430 01:15:44,850 --> 01:15:47,030 і атрымаць гэта - так, 1431 01:15:47,030 --> 01:15:50,460 таму я думаю, раней, таксама, калі вы ішлі праз код, 1432 01:15:50,460 --> 01:15:54,070 Вы казалі пра тое, як вы хацелі лячыць радок як масіў 1433 01:15:54,070 --> 01:15:57,440 так што мы можам атрымаць доступ кожнага персанажа ў асобнасці. 1434 01:15:57,440 --> 01:16:00,660 Я думаю, што Дэн згаданых масіваў, таксама спрабуе пераўтварыць радкі ў масівы. 1435 01:16:01,400 --> 01:16:03,300 >> Аказваецца, што выгляд пад капотам, 1436 01:16:03,300 --> 01:16:06,060 Радок на самай справе захоўваецца ў выглядзе масіва ўжо, 1437 01:16:06,060 --> 01:16:08,060 і вы можаце звяртацца да яго як масіў; 1438 01:16:08,060 --> 01:16:12,390 няма пераўтварэнні, якія вы павінны зрабіць. 1439 01:16:12,390 --> 01:16:15,770 Радок хіба - так - 1440 01:16:15,770 --> 01:16:18,200 Радок на самай справе не масіў, 1441 01:16:18,200 --> 01:16:21,940 але Вы можаце атрымаць доступ да яго як такога, паколькі ўсе сімвалы захоўваюцца 1442 01:16:21,940 --> 01:16:25,160 адно проста побач адзін з адным у памяці, 1443 01:16:25,160 --> 01:16:28,310 так што калі вы хочаце, каб атрымаць першы знак радкі, 1444 01:16:28,310 --> 01:16:31,910 гэта тое ж самае, як атрымаць першае чысло ў масіў цэлых лікаў. 1445 01:16:31,910 --> 01:16:35,010 Такім чынам, мы часта - МЫ 1446 01:16:35,010 --> 01:16:36,360 ставяцца да 2, як 1447 01:16:36,360 --> 01:16:38,590 ой, як радок, як масіў, 1448 01:16:38,590 --> 01:16:40,830 хоць на самай справе - яны вельмі розныя рэчы, 1449 01:16:40,830 --> 01:16:43,410 але вы можаце ставіцца да іх вельмі тое ж самае. 1450 01:16:44,700 --> 01:16:47,400 Вось і атрымліваецца, што гэтая лінія на самай справе - 1451 01:16:47,400 --> 01:16:51,270 нам не трэба рабіць якія-небудзь пераўтварэнні, 1452 01:16:51,270 --> 01:16:53,500 і на самай справе, 1453 01:16:53,500 --> 01:16:56,790 гэта на самай справе не з'яўляецца дапушчальным выразам, 1454 01:16:56,790 --> 01:16:59,040 што і наш кампілятар кажа нам. 1455 01:16:59,040 --> 01:17:01,290 Ён кажа: "Гэй, гэта чакалася выраз, 1456 01:17:01,290 --> 01:17:04,610 і што я атрымаў тут з'яўляецца тое, што гэта не словы ". 1457 01:17:04,610 --> 01:17:07,310 Каб абвясціць масіў, 1458 01:17:07,310 --> 01:17:11,780 Усё, што вам трэба зрабіць, гэта нешта накшталт гэтага з коскі, 1459 01:17:11,780 --> 01:17:15,080 а затым вы кажаце масіва, як доўга вы хочаце, каб ён, 1460 01:17:15,080 --> 01:17:18,370 такія як 5, так што гэтая лінія 10 1461 01:17:18,370 --> 01:17:23,880 будзе аб'явіць масіў завецца я з 5 лікаў у ім. 1462 01:17:23,880 --> 01:17:26,540 >> Гэта ў бок, гэта не з'яўляецца неабходным для кода, 1463 01:17:26,540 --> 01:17:30,970 Але гэта - гэта накшталт таго, што заява выглядае. 1464 01:17:30,970 --> 01:17:35,310 >> Як бы вам не выкарыстоўваць сімвал I [StrLen (ы)]? 1465 01:17:35,310 --> 01:17:38,500 Char я [StrLen (ы)]? 1466 01:17:38,500 --> 01:17:41,500 >> CHAR I, а затым у дужках, StrLen (ы). 1467 01:17:43,900 --> 01:17:47,710 Так, так што мы маглі - 1468 01:17:47,710 --> 01:17:49,460 Мы маглі б зрабіць гэта, 1469 01:17:49,460 --> 01:17:52,160 і гэта было б абвясціць - што б гэта зрабіць? 1470 01:17:52,160 --> 01:17:55,900 >> Я думаю, было б абвясціць масіў 1471 01:17:55,900 --> 01:18:01,780 з, напрыклад, - з - 1472 01:18:01,780 --> 01:18:04,540 Ах, вам не патрэбна я, - о, 1473 01:18:04,540 --> 01:18:06,420 Так, вы дакладна не патрэбна я. 1474 01:18:06,420 --> 01:18:10,250 Вы аб'яўляеце масіў сімвалаў 1475 01:18:10,250 --> 01:18:13,150 даўжыні з. 1476 01:18:14,680 --> 01:18:16,770 І тое, што Сэм кажа, што 1477 01:18:16,770 --> 01:18:20,660 гэты радок 10 - дазвольце мне некаторы прастору паміж ім і астатняй такім чынам мы можам ізаляваць яго - 1478 01:18:20,660 --> 01:18:23,440 гэты радок 10 будзе аб'явіць масіў 1479 01:18:23,440 --> 01:18:28,520 з сімвалаў, StrLen (ы) варта з іх, 1480 01:18:28,520 --> 01:18:32,270 але на самой справе нам патрэбна я, 1481 01:18:32,270 --> 01:18:35,710 і па гэтай прычыне мы маем патрэбу ў мяне, таму што мы павінны даць імя масіва; 1482 01:18:35,710 --> 01:18:38,900 У адваротным выпадку мы не мелі б спосаб звярнуцца да масіву пазней у кодзе. 1483 01:18:38,900 --> 01:18:41,180 >> Так што гэта прама тут з'яўляецца імя масіва 1484 01:18:41,180 --> 01:18:43,420 і ўнутры даўжыню. 1485 01:18:43,420 --> 01:18:45,010 Гэта дасць нам масіў, 1486 01:18:45,010 --> 01:18:47,430 Але гэта - зноў жа, гэта заяву. 1487 01:18:47,430 --> 01:18:50,380 Гэта не прызначэнне, гэта не ініцыялізацыі. 1488 01:18:50,380 --> 01:18:52,330 Калі аб'явіць гэты масіў, як гэта, 1489 01:18:52,330 --> 01:18:54,490 там на самай справе нічога ў змесціва масіва. 1490 01:18:54,490 --> 01:18:57,490 Гэта проста смецце - усё, што там. 1491 01:18:57,490 --> 01:18:59,780 І, як мы ўжо казалі, 1492 01:18:59,780 --> 01:19:01,340 мы на самай справе нават не трэба для гэтага пераўтварэнні, 1493 01:19:01,340 --> 01:19:04,810 таму што мы ўжо можам разглядаць радок як з масівам. 1494 01:19:06,750 --> 01:19:09,170 Я ведаю, што вы працуеце трохі доўга па часе, 1495 01:19:09,170 --> 01:19:12,330 але я хачу вельмі-вельмі хутка дабрацца да гэтага цыклу 1496 01:19:12,330 --> 01:19:14,850 і паказаць вам, як атрымаць доступ да асобных сімвалаў ў масіве, 1497 01:19:14,850 --> 01:19:17,170 таму што гэта ключавы для нашага задання. 1498 01:19:17,170 --> 01:19:20,790 І тады мы дамо вам ісці адтуль. 1499 01:19:20,790 --> 01:19:24,610 >> Дык вось, у нас ёсць цыкл 1500 01:19:24,610 --> 01:19:28,310 , Які выглядае амаль добра. 1501 01:19:28,310 --> 01:19:30,960 Што не зусім амаль няма? 1502 01:19:30,960 --> 01:19:33,240 Як там - тое, што гэта не зусім правільна пра гэта цыкле? 1503 01:19:33,240 --> 01:19:36,010 >> Няма фігурныя дужкі? 1504 01:19:36,010 --> 01:19:38,420 Няма фігурныя дужкі, напрыклад. 1505 01:19:38,420 --> 01:19:42,580 Хочаце пераканацца, што ў нас ёсць цела цыкла ў фігурныя дужкі. 1506 01:19:42,580 --> 01:19:45,240 На жаль, не квадратныя дужкі! 1507 01:19:45,240 --> 01:19:48,660 І што наступная рэч, якую мы павінны зрабіць з гэтай завесы? 1508 01:19:48,660 --> 01:19:52,640 Калі я спрабую і запусціць яго, 1509 01:19:52,640 --> 01:19:56,740 Што гэта памылка, што я атрымліваю? 1510 01:19:56,740 --> 01:20:00,990 Я атрымліваю усе гэтыя памылкі - у мяне ёсць для ініцыялізацыі я. 1511 01:20:00,990 --> 01:20:03,610 Вялікі. 1512 01:20:03,610 --> 01:20:05,770 Такім чынам, гэта будзе цыкл - гэта не зусім там, 1513 01:20:05,770 --> 01:20:08,680 але гэта становіцца вельмі блізкія. 1514 01:20:08,680 --> 01:20:11,260 Гэты код мы можам запускаць, 1515 01:20:11,260 --> 01:20:14,620 будаваць, памылка ўсё роўна ўзнікае. 1516 01:20:17,960 --> 01:20:19,800 Чаму ён да гэтага часу скардзіцца, 1517 01:20:19,800 --> 01:20:22,030 кажучы выраз не выкарыстоўваецца, 1518 01:20:22,030 --> 01:20:24,600 і гэта таму, што гэтая лінія не рабіць нічога. 1519 01:20:24,600 --> 01:20:27,620 Мы не захоўваць яго ў любым месцы, мы не захаваць вынік. 1520 01:20:27,620 --> 01:20:30,210 Дзе мы павінны быць захаванне гэтага выніку? 1521 01:20:30,210 --> 01:20:32,920 >> S ці я? 1522 01:20:32,920 --> 01:20:35,990 Цалкам дакладна, і гэта фанк сінтаксісу, 1523 01:20:35,990 --> 01:20:38,550 гэта з з квадратнымі дужкамі 1524 01:20:38,550 --> 01:20:41,500 азначае, што доступ да I-ы сімвал с. 1525 01:20:41,500 --> 01:20:45,650 Гэта будзе нешта, што сапраўды важна для выканання задання. 1526 01:20:45,650 --> 01:20:48,070 На жаль, мы збіраемся, каб спыняцца на дасягнутым, 1527 01:20:48,070 --> 01:20:50,550 так што Себасцьян раздзеле можна прыйсці, 1528 01:20:50,550 --> 01:20:53,980 але я шчаслівы застацца пасля звонку, так і будзе прадпрымаць ніякіх пытанняў. 1529 01:20:53,980 --> 01:20:56,680 Так што дзякуй вам, хлопцы, што прыйшлі. 1530 01:20:56,680 --> 01:20:59,730 Гэта павінна цяпер загружаць, ствараць, запускаць. 1531 01:21:01,570 --> 01:21:04,320 Мы можам увесці радок накшталт "прывітанне" 1532 01:21:06,570 --> 01:21:08,730 і гэта выводзіць "QOX". 1533 01:21:08,730 --> 01:21:11,030 [Смех] 1534 01:21:11,030 --> 01:21:14,640 >> Так што не зусім там, але перамяшчэнне, атрыманне на тых завес! 1535 01:21:14,640 --> 01:21:18,640 Дзякуй, што прыйшлі, і я буду звонку.