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