1 00:00:00,000 --> 00:00:02,880 >> [TÓNLIST spila] 2 00:00:02,880 --> 00:00:10,580 3 00:00:10,580 --> 00:00:13,500 >> Ræðumaður 1: Þetta er CS50 og þetta er upphaf viku tvö. 4 00:00:13,500 --> 00:00:18,400 Svo skulum kafa rétt í eitthvað sem er þrjótur, svo að segja. 5 00:00:18,400 --> 00:00:24,015 Svo, hérna er CS50 IDE og ég hef dregið upp fyrirfram þetta screen-- fjandinn 6 00:00:24,015 --> 00:00:25,070 það. 7 00:00:25,070 --> 00:00:25,760 Spilla viðvörun. 8 00:00:25,760 --> 00:00:26,260 Allt í lagi. 9 00:00:26,260 --> 00:00:29,060 Ég hef dregið upp þennan skjá hérna, sem hefur mjög einfalt forrit. 10 00:00:29,060 --> 00:00:32,659 Ef við skruna niður, mest þetta er bara athugasemdir, 11 00:00:32,659 --> 00:00:36,730 en hér í línum 13 gegnum 17 við erum með forrit. 12 00:00:36,730 --> 00:00:40,580 >> Það er setningafræðilega gilt, sem þýðir að ef Ég þýða það, það mun taka saman og hlaupa, 13 00:00:40,580 --> 00:00:41,920 en það er þrjótur. 14 00:00:41,920 --> 00:00:47,330 Þetta forrit segist í athugasemdum upp efst að það ætti að prenta 10 stjörnum, 15 00:00:47,330 --> 00:00:48,870 en það er ekki. 16 00:00:48,870 --> 00:00:53,290 Og byggjast á reynslu þína, eða fljótlega að vera reynsla C, 17 00:00:53,290 --> 00:00:56,820 getur þú greina rökrétt hvers vegna þetta er, í raun, þrjótur? 18 00:00:56,820 --> 00:00:57,804 Já? 19 00:00:57,804 --> 00:00:59,220 Áhorfendur: Það fer frá núll til 10. 20 00:00:59,220 --> 00:01:01,884 Það er 11 endurtekningar. 21 00:01:01,884 --> 00:01:02,550 Ræðumaður 1: Já. 22 00:01:02,550 --> 00:01:06,030 Svo, það er að fara frá núll upp í gegnum og jafnt og 10, 23 00:01:06,030 --> 00:01:08,140 sem að sjálfsögðu er 11 endurtekningar. 24 00:01:08,140 --> 00:01:10,020 Svo, það er að fara að prenta, reyndar 11 stjörnur. 25 00:01:10,020 --> 00:01:13,040 Svo, tölvunarfræði samningur í flestum forritunarmál 26 00:01:13,040 --> 00:01:15,270 er reyndar bara að byrja að telja á núlli, 27 00:01:15,270 --> 00:01:18,800 en telja, en þó ekki í gegnum gildi sem þér þykir vænt raunverulega um. 28 00:01:18,800 --> 00:01:21,216 >> Nú, þetta er eitt sem tekur smá að venjast 29 00:01:21,216 --> 00:01:25,350 og jafnvel Scratch, hannað eins og það er fyrir utan forritari eða non tölvunni 30 00:01:25,350 --> 00:01:28,070 vísindamenn og fyrir börn að mestu leyti, er hannað til að hafa 31 00:01:28,070 --> 00:01:29,570 þú byrjar að telja almennt á einn. 32 00:01:29,570 --> 00:01:30,277 Og það er allt í lagi. 33 00:01:30,277 --> 00:01:33,110 Þú getur alveg byrjað að telja á einn ef það er þægilegra. 34 00:01:33,110 --> 00:01:37,210 Og telja upp að og í gegnum 10, en þú munt gera sér grein sérstaklega í þessari viku 35 00:01:37,210 --> 00:01:39,950 og umfram það bara svo margt í forritun 36 00:01:39,950 --> 00:01:42,465 gera ráð fyrir að 0 er fyrsti stafa sem þú telja, 37 00:01:42,465 --> 00:01:45,590 að þú ert að fara að finna það auðveldara bara til að komast inn í þennan vana að byrjun 38 00:01:45,590 --> 00:01:49,490 frá núlli og telja upp að verðmæti þér þykir vænt um núna frá 39 00:01:49,490 --> 00:01:49,990 fá að fara. 40 00:01:49,990 --> 00:01:50,990 >> Svo, sem hefur fasta að. 41 00:01:50,990 --> 00:01:53,670 Við breyttum minna en eða jafngildir bara minna en. 42 00:01:53,670 --> 00:01:56,050 Við skulum taka a líta á Annað dæmi hér. 43 00:01:56,050 --> 00:01:59,585 >> Svo, þetta forrit segist líka í sinni segir upp efst að það ætti að prenta 44 00:01:59,585 --> 00:02:02,260 tíu stjörnur, en það gerir það ekki. 45 00:02:02,260 --> 00:02:05,540 Hvað er padda hér? 46 00:02:05,540 --> 00:02:07,930 >> Svo, what-- og því miður, við skulum vera skýr. 47 00:02:07,930 --> 00:02:08,610 10 stjörnur. 48 00:02:08,610 --> 00:02:11,644 Eina í hverja línu, en það gerir það ekki. 49 00:02:11,644 --> 00:02:14,810 Svo, í raun, láta mig fara á undan og taka saman þetta vegna þess að það er aðeins minna 50 00:02:14,810 --> 00:02:16,900 hreinsa byggt á þeim lýsingu. 51 00:02:16,900 --> 00:02:18,720 Leyfðu mér að fara inn í uppspretta okkar. 52 00:02:18,720 --> 00:02:25,110 Gera Buggy einn punktur rista, þrjótur einn. 53 00:02:25,110 --> 00:02:28,680 OK, ég 11 stjörnur, sem er enn erfið, 54 00:02:28,680 --> 00:02:30,090 en þeir eru líka allt í einni línu. 55 00:02:30,090 --> 00:02:31,500 Hvað er málið hérna? 56 00:02:31,500 --> 00:02:32,339 Já. 57 00:02:32,339 --> 00:02:33,255 Áhorfendur: [inaudible]. 58 00:02:33,255 --> 00:02:36,194 59 00:02:36,194 --> 00:02:36,860 Ræðumaður 1: Já. 60 00:02:36,860 --> 00:02:40,210 Þannig að þetta er lipurðar sem þú getur muna mig gera stutta minnast á. 61 00:02:40,210 --> 00:02:42,793 Jafnvel þótt allt útlit falleg, og það er fallega inndregin, 62 00:02:42,793 --> 00:02:45,850 og það lítur svona Scratch-eins í þeirri línu 16 og 17 eru, 63 00:02:45,850 --> 00:02:47,600 reyndar, inndregin undir að fyrir lykkju. 64 00:02:47,600 --> 00:02:48,400 Það er óverulegt. 65 00:02:48,400 --> 00:02:50,460 The tölva er ekki vita eða sjá hvítt rúm. 66 00:02:50,460 --> 00:02:52,910 White pláss er bara fyrir mennirnir, stylistically. 67 00:02:52,910 --> 00:02:57,010 The tölva er vita þegar þú ert hrokkið axlabönd, sem myndi reyndar 68 00:02:57,010 --> 00:02:58,280 laga þetta vandamál. 69 00:02:58,280 --> 00:03:02,350 >> Svo, ef við fórum reyndar í og sérstaklega að setja í þessum hrokkið axlabönd 70 00:03:02,350 --> 00:03:05,220 sem myndi laga þetta vandamál með því að gera ljóst að þýðanda 71 00:03:05,220 --> 00:03:07,930 að ég vil í raun að framkvæma tvær línur af kóða aftur, 72 00:03:07,930 --> 00:03:09,220 og aftur, og aftur. 73 00:03:09,220 --> 00:03:11,680 En hvað er grundvallaratriði skýring? 74 00:03:11,680 --> 00:03:12,180 Ekki satt? 75 00:03:12,180 --> 00:03:15,260 Við gerum ekki stranglega þurfa hrokkið axlabönd allan tímann, 76 00:03:15,260 --> 00:03:18,210 jafnvel þó að það er líklega best æfa sig til að komast inn í þessi vana samt 77 00:03:18,210 --> 00:03:20,878 jafnvel þó að það bætir tvö stafir í kóðanum þínum. hvers vegna? 78 00:03:20,878 --> 00:03:22,380 >> Áhorfendur: [inaudible]? 79 00:03:22,380 --> 00:03:24,630 Ræðumaður 1: Já svo er það Önnur lausn að öllu leyti. 80 00:03:24,630 --> 00:03:25,130 Ekki satt? 81 00:03:25,130 --> 00:03:28,250 Sérstaklega ef við fyrstu sýn þú ert ekki raunverulega þakka það sem er að gerast. 82 00:03:28,250 --> 00:03:31,070 Jæja, þá er vissulega gat bara gera tvo hluti í einu 83 00:03:31,070 --> 00:03:32,710 og bara forðast vandamál með öllu. 84 00:03:32,710 --> 00:03:36,080 Og það er allt í lagi, en nú, tilgangi í dag, hvað 85 00:03:36,080 --> 00:03:38,200 er skýringin á galla? 86 00:03:38,200 --> 00:03:39,810 Hvers vegna voru allir þessir stjörnur á einni línu? 87 00:03:39,810 --> 00:03:40,806 Já? 88 00:03:40,806 --> 00:03:43,296 >> Áhorfendur: Það virðist sem að ef þú þarft eina línu af kóða, 89 00:03:43,296 --> 00:03:46,649 þú getur gert það án þess að þeim. 90 00:03:46,649 --> 00:03:47,440 Ræðumaður 1: Einmitt. 91 00:03:47,440 --> 00:03:48,750 Þetta er bara mannlegur samningur. 92 00:03:48,750 --> 00:03:50,750 Fólk átta sig á að það er svolítið pirrandi eða leiðinlegur 93 00:03:50,750 --> 00:03:53,470 að þurfa að setja hrokkið axlabönd allt af þeim tíma ef allt sem þú vilt gera 94 00:03:53,470 --> 00:03:55,090 er framkvæma eina línu af kóða. 95 00:03:55,090 --> 00:03:57,660 Svo, menn ákváðu sumir síðan að það er allt í lagi. 96 00:03:57,660 --> 00:04:01,180 Ef þú vilt að setja öll lykkja á bara að ein lína eins og þetta, 97 00:04:01,180 --> 00:04:04,030 það er í lagi með einn semíkommu í lokin. 98 00:04:04,030 --> 00:04:07,210 En þú getur aðeins gert eitt slíkt lína án hrokkið axlabönd. 99 00:04:07,210 --> 00:04:09,900 >> Svo, þegar CS50 stíl fylgja sem mun benda þér á, 100 00:04:09,900 --> 00:04:11,980 þú munt sjá að almennt það er góð venja 101 00:04:11,980 --> 00:04:14,920 að komast inn í þetta fyrr en þú ert alveg þægilegt villtur 102 00:04:14,920 --> 00:04:17,404 frá þessum tegundum af samningum og gera eigin hlutur. 103 00:04:17,404 --> 00:04:18,820 Svo lengi sem þú ert sjálf stöðug. 104 00:04:18,820 --> 00:04:21,540 Og við munum tala meira um stíll svolítið síðar í dag. 105 00:04:21,540 --> 00:04:23,200 >> Svo, láta mig opna eitt annað forrit. 106 00:04:23,200 --> 00:04:24,930 Auðvitað, við ættum festa þessi 10 eins og heilbrigður. 107 00:04:24,930 --> 00:04:32,470 Leyfðu mér að fara á undan og skrifa alvöru fljótur program sem ég kalla, 108 00:04:32,470 --> 00:04:38,140 við skulum segja, lykkja punktur C. Svo, lykkja punktur C. Og í lykkju punktur C ég ætla að hafa, 109 00:04:38,140 --> 00:04:41,970 eru stöðluð I / O punktur H int helstu tóm. 110 00:04:41,970 --> 00:04:44,020 Og nú skulum bara gera reyndar lykkju. 111 00:04:44,020 --> 00:04:46,020 Svo, 4 INT ég fær núll. 112 00:04:46,020 --> 00:04:48,660 Ég er minna en, segjum, 50. 113 00:04:48,660 --> 00:04:49,950 Ég plús, plús. 114 00:04:49,950 --> 00:04:53,350 Og þá hér skulum fara á undan og gera prenta F. 115 00:04:53,350 --> 00:04:56,400 Og þá vil ég að prenta I og ný lína, semíkommu. 116 00:04:56,400 --> 00:05:00,015 >> Og þetta ætti að prenta allt tölur frá núll upp í 50? 117 00:05:00,015 --> 00:05:02,900 118 00:05:02,900 --> 00:05:03,680 Nokkrar höfuð kinkar kolli. 119 00:05:03,680 --> 00:05:04,270 Nokkrar Nos. 120 00:05:04,270 --> 00:05:05,339 Hvað er padda þegar? 121 00:05:05,339 --> 00:05:06,630 Hvað er auðvelt mistök sem ég gerði? 122 00:05:06,630 --> 00:05:07,170 Já. 123 00:05:07,170 --> 00:05:08,544 >> Áhorfendur: [inaudible]. 124 00:05:08,544 --> 00:05:09,210 Ræðumaður 1: Já. 125 00:05:09,210 --> 00:05:11,520 Svo jafnvel þótt það lítur eins og þetta er það sem ég ætla, 126 00:05:11,520 --> 00:05:13,920 muna að ég er líka bara ASCII staf. 127 00:05:13,920 --> 00:05:14,955 >> Svo, ef ég segi, prenta "I." 128 00:05:14,955 --> 00:05:16,670 Það er bókstaflega að fara að prenta I. Svo ef ég 129 00:05:16,670 --> 00:05:20,030 langar að stinga í tákn gildi sem ég þarf í raun að gera þetta 130 00:05:20,030 --> 00:05:22,630 og þá stinga í gildi I virk. 131 00:05:22,630 --> 00:05:25,200 Annars er ég bara að fara að færð 50 I er á skjánum. 132 00:05:25,200 --> 00:05:28,140 >> Svo, láta mig fara á undan og gera þessa lykkju, keyra hana, 133 00:05:28,140 --> 00:05:30,650 og reyndar höfum við öll leið upp í gegnum 49. 134 00:05:30,650 --> 00:05:34,140 Og ef ég fletta aftur í tímann sé ég númer núll í upphafi. 135 00:05:34,140 --> 00:05:36,050 >> Jæja, hvað ef ég skrúfa konar upp? 136 00:05:36,050 --> 00:05:37,800 Hvað ef ég geri þetta? 137 00:05:37,800 --> 00:05:40,120 Bara vegna þess að ég er ekki að hugsa. 138 00:05:40,120 --> 00:05:40,970 Hvað er þetta forrit. 139 00:05:40,970 --> 00:05:43,970 Þegar aftur saman og hlaupa, fara að gera rökrétt? 140 00:05:43,970 --> 00:05:44,870 >> Áhorfendur: Ekkert. 141 00:05:44,870 --> 00:05:45,661 >> Ræðumaður 1: Ekkert. 142 00:05:45,661 --> 00:05:47,156 Afhverju er það? 143 00:05:47,156 --> 00:05:49,124 >> Áhorfendur: Ég er hannað fyrir núll. 144 00:05:49,124 --> 00:05:51,899 Svo, the ástand er falskur. 145 00:05:51,899 --> 00:05:52,940 Ræðumaður 1: Já, einmitt. 146 00:05:52,940 --> 00:05:55,110 Allt kóðinn er réttur, setningafræðilega. 147 00:05:55,110 --> 00:05:57,310 Þetta mun þýða, þetta merkjamál vilja hlaupa, en það er ekki 148 00:05:57,310 --> 00:06:00,110 að fara að gera neitt gagnlegt vegna þess að ég frumstilla ég núll. 149 00:06:00,110 --> 00:06:02,240 Við athugum þá er ég meira en 50? 150 00:06:02,240 --> 00:06:03,810 Vitanlega, nei, það er ekki. 151 00:06:03,810 --> 00:06:05,760 Svo lykkja keyrir aldrei á öllum. 152 00:06:05,760 --> 00:06:09,580 >> Hvað ef við gerum eitthvað aðeins meira kærulaus? 153 00:06:09,580 --> 00:06:12,890 Svo, hvað ef við gerum eins int ég fær núll. 154 00:06:12,890 --> 00:06:15,640 Og nú langar mig að nota á meðan lykkja, sem var annar ástand. 155 00:06:15,640 --> 00:06:21,810 Og á meðan ég segi, á meðan ég er meiri en eða jöfn núlli, og þá hér I 156 00:06:21,810 --> 00:06:26,070 fara á undan og vista skrána, gera lykkju. 157 00:06:26,070 --> 00:06:27,070 Og ég er að fara að keyra það. 158 00:06:27,070 --> 00:06:30,230 Hvað er ég að fara að sjá þetta tíma með while lykkju? 159 00:06:30,230 --> 00:06:30,852 Já. 160 00:06:30,852 --> 00:06:32,120 >> Áhorfendur: óendanlega lykkju? 161 00:06:32,120 --> 00:06:35,360 >> Ræðumaður 1: óendanlega lykkju? 162 00:06:35,360 --> 00:06:36,662 Já, og hvers vegna? 163 00:06:36,662 --> 00:06:38,120 Áhorfendur: Vegna þess að það er alltaf núll. 164 00:06:38,120 --> 00:06:38,786 Ræðumaður 1: Já. 165 00:06:38,786 --> 00:06:40,100 Svo er ég frumstilla sem núll. 166 00:06:40,100 --> 00:06:44,470 Auðvitað ég er alltaf meiri en eða jafnt og 0 í kjölfarið. 167 00:06:44,470 --> 00:06:46,460 Svo, ég ætla bara að fara að sjá þetta óendanlega. 168 00:06:46,460 --> 00:06:49,850 Og nú, þetta hefur komið upp þegar eða tvisvar til höfuð Námskeiðið er. 169 00:06:49,850 --> 00:06:52,417 Hvað gerist þegar þú hafa óendanlega lykkju? 170 00:06:52,417 --> 00:06:53,314 >> Áhorfendur: Control C. 171 00:06:53,314 --> 00:06:53,980 Ræðumaður 1: Já. 172 00:06:53,980 --> 00:06:56,250 Svo Control C mun að lokum svara. 173 00:06:56,250 --> 00:06:59,520 Því miður, höfum við prentað út milljónir og milljónir zeroes þegar 174 00:06:59,520 --> 00:07:01,520 og svo hefur tölvan konar fékk undan mér. 175 00:07:01,520 --> 00:07:03,394 Svo, það er að fara að hunsa mér fyrir smá. 176 00:07:03,394 --> 00:07:06,560 En ef þú högg bara stjórna C nokkrar sinnum á Mac eða PC lyklaborðinu, 177 00:07:06,560 --> 00:07:08,790 loksins það ætti reyndar að segja. 178 00:07:08,790 --> 00:07:11,770 Og ef ekki, munum við sýna þér sumir tækni fyrir tíma þar sem þú 179 00:07:11,770 --> 00:07:14,850 geta í raun valdi drepa forrit, mikið eins og í Windows og Mac OS, 180 00:07:14,850 --> 00:07:15,562 ef þörf krefur. 181 00:07:15,562 --> 00:07:16,770 En við skulum reyna eitthvað annað. 182 00:07:16,770 --> 00:07:19,895 Við skulum hækka raun I. Er þetta enn að fara að vera óendanlega? 183 00:07:19,895 --> 00:07:22,870 184 00:07:22,870 --> 00:07:25,140 Leyfðu mér að keyra þetta. 185 00:07:25,140 --> 00:07:27,090 Og nú getur þú konar sjá hvað er að gerast. 186 00:07:27,090 --> 00:07:30,140 Þetta líka, er óendanlegur lykkja. 187 00:07:30,140 --> 00:07:33,080 En þetta er hluti af bragð spurningu. 188 00:07:33,080 --> 00:07:35,460 Er þetta að fara að prenta tölur eilífu? 189 00:07:35,460 --> 00:07:36,647 >> Áhorfendur: Nei 190 00:07:36,647 --> 00:07:37,230 Ræðumaður 1: Nei 191 00:07:37,230 --> 00:07:37,620 Hvers vegna? 192 00:07:37,620 --> 00:07:38,820 Ég heyrði nokkrar Nos hérna. 193 00:07:38,820 --> 00:07:41,859 Someone-- Já. 194 00:07:41,859 --> 00:07:44,275 Áhorfendur: Þú hefur ekki nóg bita að virkilega halda áfram. 195 00:07:44,275 --> 00:07:44,730 Ræðumaður 1: Allt í lagi. 196 00:07:44,730 --> 00:07:46,000 Þannig að ég hef ekki nóg bita til að halda áfram. 197 00:07:46,000 --> 00:07:47,124 Svo, hvað er að fara að gerast? 198 00:07:47,124 --> 00:07:49,320 Það er bara að fara að hætta? 199 00:07:49,320 --> 00:07:52,542 >> Áhorfendur: Á einhverjum tímapunkti það mun leggja the-- 200 00:07:52,542 --> 00:07:54,500 Ræðumaður 1: Það mun leggja lykkja niður, en hvers vegna? 201 00:07:54,500 --> 00:07:57,950 Hvað er að fara að gerast á mjög enda landamæri sín? 202 00:07:57,950 --> 00:07:58,479 Já? 203 00:07:58,479 --> 00:08:00,520 Áhorfendur: Það mun hringrás aftur til neikvæðar tölur. 204 00:08:00,520 --> 00:08:02,900 Ræðumaður 1: Til að neikvæðum tölum eða ef við vorum bara að meðhöndla jákvæð, 205 00:08:02,900 --> 00:08:03,570 núll amk. 206 00:08:03,570 --> 00:08:04,550 Svo já, algerlega. 207 00:08:04,550 --> 00:08:08,059 Muna að við sáum síðast að ef þú hækka bits eitt of mörgum sinnum, 208 00:08:08,059 --> 00:08:10,225 og þú eiga því flæða getu int þinn 209 00:08:10,225 --> 00:08:13,058 eða hvað sem gögn tegund er, þú ert fara að vefja í kring, líklega, 210 00:08:13,058 --> 00:08:14,020 tvær neikvæðar tölur. 211 00:08:14,020 --> 00:08:16,644 Eða ef þú hefur skilgreint sem þinn svið ætti aðeins að vera jákvæð, 212 00:08:16,644 --> 00:08:18,560 sem þú getur gert, en við höfum ekki séð það enn, 213 00:08:18,560 --> 00:08:21,420 þú might endir upp að minnsta kosti aftur á núlli. 214 00:08:21,420 --> 00:08:22,410 Þó, já í raun. 215 00:08:22,410 --> 00:08:24,320 Í þessu tilviki, neikvæð tölur, en í því tilviki 216 00:08:24,320 --> 00:08:26,870 lykkja er að fara að segja vegna þess að ég er ekki í raun, 217 00:08:26,870 --> 00:08:29,220 stærra en eða jafnt og núll ef það er neikvætt. 218 00:08:29,220 --> 00:08:31,780 >> Svo, því miður, hvernig lengi vildi að við þurfum að bíða? 219 00:08:31,780 --> 00:08:35,490 Núna erum við allt að hvað, 2 milljónir-ish? 220 00:08:35,490 --> 00:08:37,705 Við erum eins og 2 milljarða króna við erum að fara að þurfa að bíða 221 00:08:37,705 --> 00:08:39,330 þangað til við getum raunverulega séð þetta einkenni. 222 00:08:39,330 --> 00:08:46,200 En við getum séð það svolítið hraðar, maybe-- skulum sjá hvort við getum trufla. 223 00:08:46,200 --> 00:08:46,700 Láttu ekki svona. 224 00:08:46,700 --> 00:08:49,500 225 00:08:49,500 --> 00:08:51,331 Jafnvel valmyndir eru að birtast hægt. 226 00:08:51,331 --> 00:08:51,830 Allt í lagi. 227 00:08:51,830 --> 00:08:54,270 Svo munum við koma aftur til að áður en langur. 228 00:08:54,270 --> 00:08:56,320 Það er góð time-- fjandinn það, hvolpar. 229 00:08:56,320 --> 00:08:58,280 >> Það er góður tími fyrir suma tilkynningum. 230 00:08:58,280 --> 00:09:01,225 Svo, ef þú might eins og til að taka þátt í YHack, 231 00:09:01,225 --> 00:09:03,600 sem er atburður vera styrkt af vinum okkar á Yale. 232 00:09:03,600 --> 00:09:05,990 Og reyndar sumir af the sjálfsögðu er TFS í Yale er að ræða með þetta. 233 00:09:05,990 --> 00:09:08,610 YHack er alþjóðlegt hack-a-Thon hýst og hélt 234 00:09:08,610 --> 00:09:12,395 í Yale, koma saman 1.500 eins og hugarfar tölvusnápur og birtingarmyndir öllum 235 00:09:12,395 --> 00:09:13,120 um allan heim. 236 00:09:13,120 --> 00:09:14,610 Ef þetta er áhugaverð, taka a líta hér. 237 00:09:14,610 --> 00:09:17,401 Ef þetta er of stuttlega á skjár, taka a líta á glærum í dag 238 00:09:17,401 --> 00:09:19,622 fyrir vefslóðinni fyrir yhack.org. 239 00:09:19,622 --> 00:09:21,080 Svo, einnig nokkrar fljótur tilkynningar. 240 00:09:21,080 --> 00:09:24,410 Svo, opinberlega kafla hefst í næstu viku bæði hér og New Haven. 241 00:09:24,410 --> 00:09:27,660 Hafðu í huga að þú munt vera getting óákveðinn greinir í ensku Netfangið síðar þessa helgi líklegast. 242 00:09:27,660 --> 00:09:29,390 Það tekur langan tíma fyrir CS50 í lið, 243 00:09:29,390 --> 00:09:32,080 gefið allt fólk í flokki og allir að fara um. 244 00:09:32,080 --> 00:09:34,871 Og allir Kennsla Fellows ' báta eru einnig enn að treysta, 245 00:09:34,871 --> 00:09:38,110 en dvöl lag fyrir tölvupóst og ef þörf að, getur þú aftur kafla þar eftir. 246 00:09:38,110 --> 00:09:39,580 >> Study.cs50.net. 247 00:09:39,580 --> 00:09:43,280 Svo, jafnvel ef þú ert stöðug Þátttakendur á köflum, átta sig á að nánast öll 248 00:09:43,280 --> 00:09:46,786 auðlindir sem við notum í köflum eru aðgengilegar á CS50 249 00:09:46,786 --> 00:09:48,460 Læra á þessari vefslóð hér. 250 00:09:48,460 --> 00:09:51,630 Svo, ef þú vilt alltaf eins og til aftur endurskoðun efni úr kafla, eða lesa á undan, 251 00:09:51,630 --> 00:09:54,170 eða þú getur ekki gert það sumir viku, átta sig á að sýnishorn skyggnur, 252 00:09:54,170 --> 00:09:58,210 og vandamál, og skilgreiningar, og fleiri eru allt það eins og heilbrigður. 253 00:09:58,210 --> 00:10:00,645 >> Viðtalstími halda í dag, og á morgun, og miðvikudagur, 254 00:10:00,645 --> 00:10:03,020 og fimmtudagur athuga sjálfsögðu er website fyrir áætlun. 255 00:10:03,020 --> 00:10:05,690 >> Og einnig, nú hefja í dag er CS50 Ræðið. 256 00:10:05,690 --> 00:10:09,230 Svo, ef og þegar þú hefur spurningar til hvor aðra eða fyrir starfsmenn Auðvitað er, 257 00:10:09,230 --> 00:10:12,099 og eru yfirleitt að vinna á einhverjum Heimadæmi, 258 00:10:12,099 --> 00:10:15,015 gera sér grein fyrir að þú ert ekki endilega að snúa sér til mönnum næsta þér. 259 00:10:15,015 --> 00:10:17,810 Ef það er enginn þar, þú getur ná til okkar og bekkjarfélaga 260 00:10:17,810 --> 00:10:19,890 á netinu í gegnum CS50 Ræðið. 261 00:10:19,890 --> 00:10:22,600 Svo, þetta er umræða borð fyrir námskeiðið, 262 00:10:22,600 --> 00:10:24,550 og átta sig á að þetta er kannski besta 263 00:10:24,550 --> 00:10:28,480 staður til að byrja þegar þú ert spurningar utan skrifstofutíma 264 00:10:28,480 --> 00:10:29,470 sérstaklega. 265 00:10:29,470 --> 00:10:31,070 >> Lunches mun byrja í þessari viku líka. 266 00:10:31,070 --> 00:10:33,170 Á Fire and Ice [Inaudible] í New Haven. 267 00:10:33,170 --> 00:10:35,379 Taka a líta á námskeiðið er website í því skyni að RSVP. 268 00:10:35,379 --> 00:10:36,753 Fyrstur kemur, fyrstur fær fyrir það. 269 00:10:36,753 --> 00:10:39,380 Ef þú færð ekki í þessari viku við munum gera þetta mest á hverjum föstudegi 270 00:10:39,380 --> 00:10:40,400 á gildistíma. 271 00:10:40,400 --> 00:10:41,830 >> OK, og nú orðið um flokkun. 272 00:10:41,830 --> 00:10:44,690 Sérstaklega eins og við inn vandamál setja einn, sem er út í þessari viku, 273 00:10:44,690 --> 00:10:46,670 og vandamál setja tvö og eftir það. 274 00:10:46,670 --> 00:10:51,680 Hvernig eigum við að fara um mat P setur og meta gæði þeirra? 275 00:10:51,680 --> 00:10:55,560 Svo er það fjóra ása sem við notum í CS50, og þeir eru þessir fjórir hér. 276 00:10:55,560 --> 00:10:59,200 >> Gildissvið, sem tekur á tölugildi Grunnur bara hversu mikið af P setja 277 00:10:59,200 --> 00:10:59,860 fórstu takast. 278 00:10:59,860 --> 00:11:02,890 Það er u.þ.b. samsvarar átak, og það er leið okkar að handtaka 279 00:11:02,890 --> 00:11:05,190 Vissir þú að reyna helmingur P setja, allar þær P setja. 280 00:11:05,190 --> 00:11:08,860 Þetta er auðvelt einn til að fá fullkomið skorar á ef þú gerir það, reyndar, 281 00:11:08,860 --> 00:11:11,020 reyna á alla þætti í P setja. 282 00:11:11,020 --> 00:11:12,010 Svo, hafa það í huga. 283 00:11:12,010 --> 00:11:13,420 >> Nákvæmni er einmitt það. 284 00:11:13,420 --> 00:11:17,760 Er kóða vinnu þína eins og forskrift og eins starfsfólk 'sýnislausninni 285 00:11:17,760 --> 00:11:19,730 benda til þess að númerið þitt ætti í raun að vinna. 286 00:11:19,730 --> 00:11:23,260 Athugaðu 50, ef þú hefur ekki hitt hana enn er í P setja einn texta 287 00:11:23,260 --> 00:11:25,060 og mun almennt gefa þér já / nei svör 288 00:11:25,060 --> 00:11:26,518 um hvort númerið þitt sé rétt. 289 00:11:26,518 --> 00:11:30,680 Að minnsta kosti svo langt sem við erum að fara Til að meta það á grundvelli prófana 290 00:11:30,680 --> 00:11:32,430 að við að keyra í þeirri áætlun. 291 00:11:32,430 --> 00:11:33,850 >> Hönnun er miklu meira huglægt. 292 00:11:33,850 --> 00:11:35,994 Þetta er hversu vel skrifað er númerið þitt. 293 00:11:35,994 --> 00:11:38,410 Og þetta er eitthvað sem þú munt fá betri á tímanum, 294 00:11:38,410 --> 00:11:41,201 og það er eitthvað sem við munum veita meiri eigindleg álit á. 295 00:11:41,201 --> 00:11:43,350 Og af ásettu ráði að ég gæti meina áður en langt þú 296 00:11:43,350 --> 00:11:47,650 gæti freistast í sumum P sett til að gera eitthvað loopingly, 297 00:11:47,650 --> 00:11:51,590 en að hafa kannski þrjár eða fjórar, eða fimm hreiður fore lykkjur eða hreiður en 298 00:11:51,590 --> 00:11:52,090 lykkjur. 299 00:11:52,090 --> 00:11:54,130 Sem almennt ætti byrja að gera þér cringe 300 00:11:54,130 --> 00:11:56,070 og myndi almennt vera talið slæmt hönnun. 301 00:11:56,070 --> 00:11:59,490 Og þú munt byrja að sjá í bekknum og úr flokki góðum leiðir til að gera hlutina, 302 00:11:59,490 --> 00:12:02,920 slæmur leiðir til að gera það sem skyldu allir rétt, en ekki 303 00:12:02,920 --> 00:12:04,304 endilega vel hönnuð. 304 00:12:04,304 --> 00:12:05,220 Eins og að skrifa ritgerð. 305 00:12:05,220 --> 00:12:08,100 Þú might vera fær til að setja orð á a síðu sem eru málfræðilega rétt, 306 00:12:08,100 --> 00:12:10,016 en ritgerð eða ritgerð þeir eru í er bara 307 00:12:10,016 --> 00:12:11,810 alveg samhengislaust eða unpersuasive. 308 00:12:11,810 --> 00:12:15,930 Og svo það gæti verið byggður á hliðstæðum í skrifað heimur slæmt eða góða hönnun. 309 00:12:15,930 --> 00:12:18,490 >> Og stíl, og er það nokkuð huglægt. 310 00:12:18,490 --> 00:12:20,060 En að minnsta kosti við búast samræmi. 311 00:12:20,060 --> 00:12:21,480 Þetta er hvernig nokkuð er númerið þitt. 312 00:12:21,480 --> 00:12:22,840 Eru hlutirnir inndregin fallega? 313 00:12:22,840 --> 00:12:26,600 Eru breytur vel heitir / Eru allir af sviga þínum og hrokkið axlabönd 314 00:12:26,600 --> 00:12:27,920 takt eins og þeir ættu að vera? 315 00:12:27,920 --> 00:12:31,490 Við hafa a CS50 stíl fylgja sem vandamálið sett mun benda þér á. 316 00:12:31,490 --> 00:12:33,730 Þeir öruggari eru velkomið að víkja frá því 317 00:12:33,730 --> 00:12:35,771 svo lengi sem þú ert sjálf stöðug. 318 00:12:35,771 --> 00:12:38,020 Og þetta líka, er lexía við munum styrkja í kafla. 319 00:12:38,020 --> 00:12:40,990 Svo, ef allt þetta var svolítið hratt, átta sig á P sett og hlutar 320 00:12:40,990 --> 00:12:42,900 mun fara í meira dýpi áður en langur. 321 00:12:42,900 --> 00:12:45,490 >> En almennt höfum við mjög fáir fötunum fyrir CS50. 322 00:12:45,490 --> 00:12:48,170 Stigagjöfin er yfirleitt á kvarðanum af einum til þremur, eða einum til fimm. 323 00:12:48,170 --> 00:12:50,836 Við erum literally-- og ég get ekki sagt þetta nóg í fyrstu viku. 324 00:12:50,836 --> 00:12:51,582 Þrír er góð. 325 00:12:51,582 --> 00:12:54,290 Svo, jafnvel þó, já, þrír fimm venjulega, stærðfræðilega, 326 00:12:54,290 --> 00:12:57,240 gæti verið 60 prósent eða eins og D mínus. 327 00:12:57,240 --> 00:12:58,840 Þrjú er í raun gott. 328 00:12:58,840 --> 00:13:01,050 Og í raun, búast við flestir nemendur í bekknum 329 00:13:01,050 --> 00:13:04,280 að byrja á hugtakið um twos, og threes og fleira lið. 330 00:13:04,280 --> 00:13:05,510 Sennilega ekki svo margir fives. 331 00:13:05,510 --> 00:13:06,661 Ekki of margir sjálfur. 332 00:13:06,661 --> 00:13:08,910 En almennt að byrja í að sætur blettur í ferlinum 333 00:13:08,910 --> 00:13:11,694 þannig að eftir því sem tíminn líður, það er í raun pláss fyrir, 334 00:13:11,694 --> 00:13:13,360 og tækifæri til efri framrás. 335 00:13:13,360 --> 00:13:15,810 Svo skaltu ekki jafngilda þremur með 60%. 336 00:13:15,810 --> 00:13:17,410 Það er miklu meira abstrakt en það. 337 00:13:17,410 --> 00:13:20,160 Formúlan sem við reiknum einkunna er vegin þannig. 338 00:13:20,160 --> 00:13:21,610 Nákvæmni er þess virði mest. 339 00:13:21,610 --> 00:13:23,010 Design er þess virði smá minna. 340 00:13:23,010 --> 00:13:24,490 Style er þess virði smá minna. 341 00:13:24,490 --> 00:13:26,950 Og þetta almennt fangar tíma 342 00:13:26,950 --> 00:13:29,800 sem fer í að fá hver þessara ása bara rétt. 343 00:13:29,800 --> 00:13:31,810 Stíllinn er frábær auðvelt, ætti að vera frábær fljótur, 344 00:13:31,810 --> 00:13:33,657 en það er auðvelt venja til að fá latur um. 345 00:13:33,657 --> 00:13:35,490 Nákvæmni gæti tekið þú mest af þeim tíma. 346 00:13:35,490 --> 00:13:38,990 Elta niður nokkur galla kannski taka þessi auka klukkutíma eða meira, 347 00:13:38,990 --> 00:13:41,737 og svo, sindur lokum tekur það. 348 00:13:41,737 --> 00:13:43,070 Og svo, nú alvarlegri orð. 349 00:13:43,070 --> 00:13:45,240 Þar CS50 hefur greinarmun, því að betri 350 00:13:45,240 --> 00:13:47,440 eða verri, að vera kannski betra kynnast 351 00:13:47,440 --> 00:13:50,065 við málefni fræðileg heiðarleika en flest önnur námskeið. 352 00:13:50,065 --> 00:13:53,720 Og reyndar er það við þekkingu mína sem við senda fleiri nemendur, því miður, 353 00:13:53,720 --> 00:13:56,690 fyrir aga tilgangi á hverju ári í kjölfarið. Svo, 354 00:13:56,690 --> 00:13:59,040 í þágu fullur upplýsingagjöf, við skulum tala stuttlega 355 00:13:59,040 --> 00:14:02,820 um hvað gengur á í CS50, og hvað þér getur gert, og hvað þú getur að hafa í huga. 356 00:14:02,820 --> 00:14:05,530 >> Svo, hér síðan 2007, þegar Ég erfði námskeið, 357 00:14:05,530 --> 00:14:07,870 er fjöldi stjórnarmanna Ad tilvikum. 358 00:14:07,870 --> 00:14:10,690 Board auglýsing er refsiaðgerða Harvard er líkama, eða nú Honor lögfræðingur, 359 00:14:10,690 --> 00:14:13,790 sem mál er vísað þegar nemendur gera eitthvað sem að sjálfsögðu er 360 00:14:13,790 --> 00:14:15,470 kennsluáætlun telur óraunhæft. 361 00:14:15,470 --> 00:14:17,220 Það er engin alvöru mynstur hér, myndi ég segja. 362 00:14:17,220 --> 00:14:19,530 Það sveiflast yfir ár en almennt 363 00:14:19,530 --> 00:14:22,262 þetta er fjöldi mál sem eru vísað. 364 00:14:22,262 --> 00:14:23,970 Fjölda nemenda sem taka þátt? 365 00:14:23,970 --> 00:14:25,290 Það er mismunandi líka. 366 00:14:25,290 --> 00:14:27,930 Venjulega, á síðasta ári fyrir dæmis 29 nemendur í Harvard 367 00:14:27,930 --> 00:14:29,740 voru Ad gekk, svo að segja. 368 00:14:29,740 --> 00:14:32,670 29 Af þeim núverandi nemendur, Tveir af þeim fyrri nemenda, 369 00:14:32,670 --> 00:14:35,610 Hverjir voru samstarfi á einhvern óæskileg hátt. 370 00:14:35,610 --> 00:14:38,400 Og þá í skilmálar af the hlutfall, það er yfirleitt um 3% 371 00:14:38,400 --> 00:14:41,360 í bekknum sem, því miður, gerir þessar tegundir af ákvörðunum. 372 00:14:41,360 --> 00:14:44,470 >> Svo, á síðasta ári var 3,5% af nemendahópsins CS50 er 373 00:14:44,470 --> 00:14:46,820 sem var Ad gekk, svo að segja. 374 00:14:46,820 --> 00:14:48,490 >> Svo, hvað þýðir allt þetta? 375 00:14:48,490 --> 00:14:49,660 Og hvað gerum við í raun? 376 00:14:49,660 --> 00:14:52,930 >> Svo, fyrir fulla birtingu, við algerlega, eins og tölva vísindamenn, 377 00:14:52,930 --> 00:14:57,620 hafa hugbúnað verkfæri til ráðstöfunar okkar og það er mjög auðvelt fyrir okkur, í sanngirni, 378 00:14:57,620 --> 00:15:00,980 bekkjarfélagar sem ekki að önnur er yfir þessar línur að fara yfir bera saman 379 00:15:00,980 --> 00:15:04,570 hverju uppgjöf á þessu ári á móti hverjum uppgjöf síðastliðin átta ár. 380 00:15:04,570 --> 00:15:05,445 Software er þetta. 381 00:15:05,445 --> 00:15:07,440 Og að lokum er það manna augum að ákveða 382 00:15:07,440 --> 00:15:11,410 hvort eigi að vísa sumir máli fyrir frekari dóms, 383 00:15:11,410 --> 00:15:12,737 en hugbúnaður hjálpar vissulega. 384 00:15:12,737 --> 00:15:15,820 Og þetta, hreinskilnislega, er ástæðan fyrir því að ég held við höfum svo miklu magni í CS50. 385 00:15:15,820 --> 00:15:18,540 Það er ekki vegna þess að CS50 nemendur eða CS nemendur meira 386 00:15:18,540 --> 00:15:20,840 yfirleitt eru allir minna heiðarleg en allir aðrir nemendur, 387 00:15:20,840 --> 00:15:22,340 það er bara að við höfum verkfæri og aðferðir 388 00:15:22,340 --> 00:15:24,095 sem að taka þetta fyrstu umferð. 389 00:15:24,095 --> 00:15:25,960 >> En við gerum að hafa auga á öllum þessum hlutum 390 00:15:25,960 --> 00:15:30,340 svo, aftur, í þágu viðurkenna þá vinnu sem er verið að setja 391 00:15:30,340 --> 00:15:32,397 í því frábær meirihluta bekknum. 392 00:15:32,397 --> 00:15:34,230 Og stefna Námskeiðið er á fræðilegum heiðarleika, 393 00:15:34,230 --> 00:15:37,021 jafnvel þó að það er fullt af liðum lengi með fullt af byssukúlum 394 00:15:37,021 --> 00:15:40,490 sem eru vonandi alveg læsileg, það raunverulega hjartarskinn sjóða niður til að vera sanngjarn. 395 00:15:40,490 --> 00:15:44,000 Og það besta þumalputtaregla að bjóðum við upp upp innan kennsluáætlun 396 00:15:44,000 --> 00:15:46,020 er þetta, kjarninn af öllum vinnu sem þér 397 00:15:46,020 --> 00:15:47,850 leggja þessu námskeiði verður þitt eigið. 398 00:15:47,850 --> 00:15:51,510 Og reyndar, í nánast öllum þeim tilvikum sem um getur fyrir viðurlögum 399 00:15:51,510 --> 00:15:55,640 það var vegna þess að sumir nemenda seint eitt nótt sneri oftast númerið hans eða hennar 400 00:15:55,640 --> 00:15:58,130 yfir beinlínis til bekkjarfélaga, sem þá samþykkt það 401 00:15:58,130 --> 00:16:00,840 í heild sinni eða verulega þegar í stað. 402 00:16:00,840 --> 00:16:02,680 >> En í raun, þetta er í lagi. 403 00:16:02,680 --> 00:16:04,684 Og reyndar, á skrifstofu klukkustundir, laumar á pappír 404 00:16:04,684 --> 00:16:07,850 þú hefur verið afhent ef þú komst með skrifstofu klst í síðustu viku hvetur eins mikið. 405 00:16:07,850 --> 00:16:09,710 Þú ert alveg fagnað og hvatt 406 00:16:09,710 --> 00:16:12,340 til að ræða vandamál setur með bekkjarfélögum. 407 00:16:12,340 --> 00:16:14,461 Að hjálpa hver öðrum þegar hrasa. 408 00:16:14,461 --> 00:16:17,710 En almennt þumalputtaregla ætti vera þetta, "þegar þú ert að biðja um hjálp, 409 00:16:17,710 --> 00:16:20,412 þú getur birt númerið þitt til annarra, en þú getur ekki skoðað þeirra. " 410 00:16:20,412 --> 00:16:22,620 Svo, með öðrum orðum, ef ég er erfiðleikum með einhverjum P setja 411 00:16:22,620 --> 00:16:25,290 og ég sit þar í matsal eða í safninu, 412 00:16:25,290 --> 00:16:28,470 eða í skólastofunni reyna að finna einhverja sök, 413 00:16:28,470 --> 00:16:30,340 Ég get vissulega sýna númerið mitt á skjánum mínum 414 00:16:30,340 --> 00:16:32,590 að sá sem sat við hliðina mér, vissulega starfsfólk, 415 00:16:32,590 --> 00:16:33,600 en einnig bekkjarfélaga. 416 00:16:33,600 --> 00:16:36,580 En ef lausnin sem bekkjarfélaga minn býður er, ó, 417 00:16:36,580 --> 00:16:39,200 hér bara taka a líta á það Ég gerði það, sem fer yfir strikið. 418 00:16:39,200 --> 00:16:43,120 >> Og ég myndi þora að segja það er almennt sanngjarnt hlutur fyrir fólk 419 00:16:43,120 --> 00:16:45,030 mjög auðveldlega blettur á línu. 420 00:16:45,030 --> 00:16:47,195 Og svo, sjá kennsluáætlun fyrir fleiri smáatriði. 421 00:16:47,195 --> 00:16:49,070 Og nú einn af the fleiri umdeild atriði 422 00:16:49,070 --> 00:16:52,529 CS50 kennsluáætlun sem ég hélt að ég myndi tala við í niðurstöðu hér 423 00:16:52,529 --> 00:16:53,820 er svokölluð eftirsjá ákvæði. 424 00:16:53,820 --> 00:16:55,340 Svo, hér er allt smáletur. 425 00:16:55,340 --> 00:16:58,090 En almennt við höfum séð Á síðustu 8 plús ár 426 00:16:58,090 --> 00:17:01,510 sem reyndar næstum öll CS50 er tilvik fræðilegum óheiðarleika 427 00:17:01,510 --> 00:17:04,390 hafa verið afleiðing þess bara léleg ákvarðanatöku seint á kvöldin. 428 00:17:04,390 --> 00:17:07,144 Árangurinn af streitu, niðurstaðan skorts á borða, skortur á svefni, 429 00:17:07,144 --> 00:17:09,560 of margir P setur, of margir fresti, of margir skuldbindingar. 430 00:17:09,560 --> 00:17:13,520 Streita byggja upp í 2:00 AM, 03:00 AM, 4:00 AM, með frest yfirvofandi. 431 00:17:13,520 --> 00:17:17,020 Flestir nemendur í þessum tilvikum hafa bara gert slæmar ákvarðanir 432 00:17:17,020 --> 00:17:20,619 að þeir gætu vel eftirsjá Næsta morgun ef ekki mínútum síðar, 433 00:17:20,619 --> 00:17:25,490 en þar til á síðasta ári að það var engin út loki að þessir nemendur gætu 434 00:17:25,490 --> 00:17:29,140 raun að opna allt að raun takast á við Vandamálið höfuð á án ótta um að vera 435 00:17:29,140 --> 00:17:30,850 stígvélum úr háskóla með öllu. 436 00:17:30,850 --> 00:17:33,260 >> Og reyndar kynnti við þetta eftirsjá ákvæði síðasta ári, 437 00:17:33,260 --> 00:17:35,970 sem segir að ef innan 72 klst, þrjá daga, 438 00:17:35,970 --> 00:17:37,970 af yfir nokkrar línu mælt í kennsluáætlun 439 00:17:37,970 --> 00:17:41,178 þú kemur fram að einn af sjálfsögðu er höfuð og við munum hafa spjallað um það. 440 00:17:41,178 --> 00:17:43,720 Það eru enn vera nokkur niðurstaða, þvert á það sem er 441 00:17:43,720 --> 00:17:44,990 verið tilkynnt um hið gagnstæða. 442 00:17:44,990 --> 00:17:49,190 Það er enn nokkur niðurstaða sem er gripið til aðgerða námskeiðinu, 443 00:17:49,190 --> 00:17:51,611 almennt zeroing á P sett eða taka einhver önnur aðgerð, 444 00:17:51,611 --> 00:17:53,610 En við munum örugglega, höndla það sjálf og ekki 445 00:17:53,610 --> 00:17:58,460 vísa það voru hærri niðurstaða gæti verið mun alvarlegri. 446 00:17:58,460 --> 00:18:01,810 Og reyndar að deila því sem gerðist á síðasta ári, í átta ár, og nú 447 00:18:01,810 --> 00:18:04,950 níu ár, er kennt þetta námskeið og eftir tinkering með ýmsum hnappa, 448 00:18:04,950 --> 00:18:07,866 beygja ýmis hringsjár yfir fortíðinni nokkur ár á fræðilegum heiðarleika, 449 00:18:07,866 --> 00:18:11,920 og sjá fyrir gögnum neitun augljós áhrif, jafnvel af ræðum eins og þetta, 450 00:18:11,920 --> 00:18:15,490 þetta var hendur niður besta sem við höfum kynnt pedagogically 451 00:18:15,490 --> 00:18:18,090 í átta ár eftir þessar línur í CS50. 452 00:18:18,090 --> 00:18:21,010 >> 19 nemendur komu fram samkvæmt þessari grein á síðasta ári. 453 00:18:21,010 --> 00:18:23,389 Við tók engin aðgerð fyrir sjö af þeim nemendum, 454 00:18:23,389 --> 00:18:25,430 ákveða að þeir væru óþörfu áhyggjur. 455 00:18:25,430 --> 00:18:27,304 Þeir höfðu ekki í raun, yfir línu, en það 456 00:18:27,304 --> 00:18:28,960 var góður spjall til að hafa engu að síður. 457 00:18:28,960 --> 00:18:31,190 Við núllstilltur 11 af skori sem voru lögð fram. 458 00:18:31,190 --> 00:18:33,840 Og í einu tilviki sem við spurði nemandi að gera vandamál sett. 459 00:18:33,840 --> 00:18:36,370 En meira sannfærandi, heiðarlega, með þessum 19 spjall, 460 00:18:36,370 --> 00:18:39,020 sem var miklu meira en ég gert ráð fyrir að hafa, hvert þeirra 461 00:18:39,020 --> 00:18:41,370 10 mínútur til kannski klukkutíma langur, einnig fært 462 00:18:41,370 --> 00:18:44,920 í ljós nokkur atriði varðandi ættgeng málefni, vinur málefni, 463 00:18:44,920 --> 00:18:46,940 andlega heilsu málefnum að við þátt þá, 464 00:18:46,940 --> 00:18:50,200 með nemanda blessun, búsettur Deildarforseti, eða vinir, eða eitthvert annað númer 465 00:18:50,200 --> 00:18:51,450 þjónustu við notendur. 466 00:18:51,450 --> 00:18:54,454 Þannig að þetta var lang einn af bestu notkun okkar tíma 467 00:18:54,454 --> 00:18:55,870 og einn af bestu inngrip. 468 00:18:55,870 --> 00:18:58,870 >> Með því að segja, hafði það engin inntak á hraða greiningu 469 00:18:58,870 --> 00:19:00,909 akademískra óheiðarleika almennt. 470 00:19:00,909 --> 00:19:02,950 Og ég þori að segja, þetta hlutmengi nemenda á síðasta ári 471 00:19:02,950 --> 00:19:06,350 Var lýðfræðilegar sem við áður aldrei greind áður 472 00:19:06,350 --> 00:19:08,140 og hafði aldrei tengdur við áður. 473 00:19:08,140 --> 00:19:10,020 Og svo voru þetta dásamlegt árangurssögur 474 00:19:10,020 --> 00:19:13,390 jafnvel þó þeir voru leiddi í ljós í minna en ákjósanlegur aðstæður. 475 00:19:13,390 --> 00:19:15,640 Svo, halda þetta í huga eins og þú gerir, ef til vill, 476 00:19:15,640 --> 00:19:17,390 sumir léleg ákvörðun sjálfur seint á kvöldin, 477 00:19:17,390 --> 00:19:20,151 að það er leitað svo lengi sem nemandi í því ástandi 478 00:19:20,151 --> 00:19:23,400 eiga sig og koma fram svo að við getum hafa svona spjall og takast á við það 479 00:19:23,400 --> 00:19:27,310 á þann hátt sem er í námi, og þá við getum sett það á bak við okkur daginn eftir. 480 00:19:27,310 --> 00:19:30,335 >> Svo án frekari fjaðrafok, taka brún burt af þessu samtali, 481 00:19:30,335 --> 00:19:35,080 ástæðan hvolparnir eru upp er bara til að brjóta ísinn um stund. 482 00:19:35,080 --> 00:19:39,560 Og því miður, þá eru þeir allir sofna, en það sem átti að gerast hér 483 00:19:39,560 --> 00:19:41,760 var allir átti að ótti og tegund slaka 484 00:19:41,760 --> 00:19:43,910 eftir að mjög þungur samtali. 485 00:19:43,910 --> 00:19:46,930 En svo virðist sem ég setti hvolparnir að sofa. 486 00:19:46,930 --> 00:19:50,070 En ef þú ferð til CS50 er website Slash hvolpar, 487 00:19:50,070 --> 00:19:51,610 þú getur horft á þau allan daginn. 488 00:19:51,610 --> 00:19:55,280 Sérstaklega kannski 02:00 eða 03:00, eða 04:00 á kvöldin 489 00:19:55,280 --> 00:19:57,480 sjá smá streita léttir það. 490 00:19:57,480 --> 00:19:58,805 Svo er að rista hvolpa. 491 00:19:58,805 --> 00:20:01,700 492 00:20:01,700 --> 00:20:02,200 Allt í lagi. 493 00:20:02,200 --> 00:20:03,020 Var þetta ekki gaman? 494 00:20:03,020 --> 00:20:04,200 OK. 495 00:20:04,200 --> 00:20:07,140 Svo aftur að einhverju tölvu vísindi, ef ég má. 496 00:20:07,140 --> 00:20:10,600 >> Svo, muna að síðasta skipti við byrjuðum leita ekki bara á main, sem 497 00:20:10,600 --> 00:20:13,930 var sjálfgefið virka, þegar grænn fáni smellt jafngildir, 498 00:20:13,930 --> 00:20:16,999 en við byrjuðum líka stuttlega skrifa sumir af eigin aðgerðum okkar. 499 00:20:16,999 --> 00:20:20,040 Og svona langt ekkert af þessum aðgerðum hafa verið sérstaklega stór eða kjötmikill. 500 00:20:20,040 --> 00:20:24,570 Þú munt fá í þeim stærri virka sennilega, P sett 2, P setja 3, 501 00:20:24,570 --> 00:20:26,410 örugglega P sett 4 og áfram. 502 00:20:26,410 --> 00:20:29,340 Núna flest forrit, ef ekki alla þá, vissulega fyrir P 503 00:20:29,340 --> 00:20:31,550 setja 1 er hægt að gera alveg í main. 504 00:20:31,550 --> 00:20:33,810 Ef forrit er bara fimm línur, 10 línur, 505 00:20:33,810 --> 00:20:37,070 jafnvel 20 línur lengi, fullkomlega sanngjarnt að skrifa það 506 00:20:37,070 --> 00:20:40,930 allt í helstu og ekki til yfir flækt númerið þitt, en það sem við erum að gera í dag 507 00:20:40,930 --> 00:20:44,360 og áfram er að reyna að einnig kynna nokkrar góðar aðferðir hönnun 508 00:20:44,360 --> 00:20:48,660 þannig að eins númerið þitt fær fleiri flókið og eins og vandamál 509 00:20:48,660 --> 00:20:51,690 þú vilt að leysa fá erfiðara og meira áhugavert að þú ert, eiginlega, 510 00:20:51,690 --> 00:20:55,850 verkfæri í Verkfæri sem að hanna góðar lausnir fyrir þá. 511 00:20:55,850 --> 00:21:01,210 >> Svo, við skulum taka a fljótur líta til baka á þetta forrit frá síðustu viku mína, sem 512 00:21:01,210 --> 00:21:06,550 var hlutverk núll punktur C. Og taka eftir því, einfaldlega, 513 00:21:06,550 --> 00:21:10,310 það lítur út eins og þetta með tveimur aðgerðir, helstu og nafn prenta. 514 00:21:10,310 --> 00:21:13,160 Og hugsa til baka eða kannski andstæða verkfræði dag, 515 00:21:13,160 --> 00:21:16,880 hvað var hvatning til að kynna fall í línu 28 sem heitir, 516 00:21:16,880 --> 00:21:18,180 Prenta nafn? 517 00:21:18,180 --> 00:21:21,745 Eða hvað var þetta dæmi um í skilmálar meginreglu eða takeaway, 518 00:21:21,745 --> 00:21:22,605 ef þú vilt. 519 00:21:22,605 --> 00:21:26,560 520 00:21:26,560 --> 00:21:27,300 Sumir muldur. 521 00:21:27,300 --> 00:21:28,830 Hvað? 522 00:21:28,830 --> 00:21:32,210 >> Já svo Functional Niðurbrot er góður af fínum leið að segja, 523 00:21:32,210 --> 00:21:34,690 brotna program í efnisþáttum sem hún 524 00:21:34,690 --> 00:21:37,530 og þá nota þá hluta að setja saman eina heild. 525 00:21:37,530 --> 00:21:39,620 Svo, það líka er bara svona af munnfylli nú þegar, 526 00:21:39,620 --> 00:21:42,050 en þetta er jafnvel heil betra dæmi um eitthvað 527 00:21:42,050 --> 00:21:43,081 hringdi abstrakt. 528 00:21:43,081 --> 00:21:43,580 Ekki satt? 529 00:21:43,580 --> 00:21:46,950 Abstrakt er að fara að vera einn af endurteknum þemum í CS50 530 00:21:46,950 --> 00:21:49,085 og einnig tölvunarfræði almennt þar sem það er 531 00:21:49,085 --> 00:21:53,060 tækni sem þú getur leyst vandamál betur vegna þess að þú 532 00:21:53,060 --> 00:21:56,807 getur skrifað lausnir meira innsæi og á þann hátt sem vog 533 00:21:56,807 --> 00:21:58,390 og er skiljanlegt af öðru fólki. 534 00:21:58,390 --> 00:21:59,860 Hvað geri ég meina með því? 535 00:21:59,860 --> 00:22:04,340 >> Svo, að öllum líkindum er það miklu læsilegri að líta á dagskrá eins og þetta, 536 00:22:04,340 --> 00:22:05,990 frábær stutt þó það sé. 537 00:22:05,990 --> 00:22:10,050 Þegar þú sérð á línu 22 að það er fall sem heitir, nafn prenta. 538 00:22:10,050 --> 00:22:12,620 Að nafn eitt og sér segir það sem það gerir. 539 00:22:12,620 --> 00:22:15,780 Sem virka greinilega tekur inntak milli sviga sínum, 540 00:22:15,780 --> 00:22:18,600 og virðist gerir eitthvað, væntanlega prentar nafn. 541 00:22:18,600 --> 00:22:20,880 Og svo, jafnvel þótt við algerlega gæti hafa 542 00:22:20,880 --> 00:22:25,280 gert það sem við gerðum fyrir viku síðan, sem var bara taka þetta raunverulegt línu af kóða, 543 00:22:25,280 --> 00:22:28,710 að losna við þetta, og fá losna við þetta allt saman, 544 00:22:28,710 --> 00:22:31,436 við horfir konar burtu hugmyndin um prentun nafn. 545 00:22:31,436 --> 00:22:33,060 Mér er alveg sama ef þú ert að nota prenta def. 546 00:22:33,060 --> 00:22:35,601 Mér er alveg sama ef þú ert a prósent S og sviga N. Þetta 547 00:22:35,601 --> 00:22:37,270 eru ótrúlega Bogagöng upplýsingar. 548 00:22:37,270 --> 00:22:40,090 Það sem ég er alveg sama um sem forritari er prentun nafn. 549 00:22:40,090 --> 00:22:43,414 Og svo, hvaða betri leið til að gera það en með því að hringja í virka, prenta nafn? 550 00:22:43,414 --> 00:22:46,330 Og svo, sem var einn af motivations fyrir að gera eitthvað eins og this. 551 00:22:46,330 --> 00:22:50,370 Gerð kóðann læsilegri, meira einnota, og einnig sjálf lýsandi. 552 00:22:50,370 --> 00:22:52,120 Nú, við skulum taka a líta annað dæmi, 553 00:22:52,120 --> 00:22:56,220 sem var virka einn, sem við höfðum hérna. 554 00:22:56,220 --> 00:23:00,367 >> Svo, þetta er jafnvel meira sannfærandi vegna þess að, í þessu tilfelli, 555 00:23:00,367 --> 00:23:01,700 Ég vil ekki bara fá int. 556 00:23:01,700 --> 00:23:03,320 Ég vil fá jákvæða int. 557 00:23:03,320 --> 00:23:06,470 Og það kemur í ljós að fá jákvætt int þú þarft að gera fullt af legwork. 558 00:23:06,470 --> 00:23:06,969 Ekki satt? 559 00:23:06,969 --> 00:23:09,600 Það er ekki einföld lína kalla eins nafn prenta var, 560 00:23:09,600 --> 00:23:11,480 sem er að vísu minna sannfærandi. 561 00:23:11,480 --> 00:23:16,000 >> Til að fá jákvæða int, logically-- láta mig fletta aftur niður til að fela þetta. 562 00:23:16,000 --> 00:23:18,887 Hvað þarftu að gera? 563 00:23:18,887 --> 00:23:20,720 Eins og öll þau tæki sem við höfum í augnablikinu eru 564 00:23:20,720 --> 00:23:24,440 hlutir eins og prenta def frá Standard Bókasafn og einnig frá CS50 bókasafn 565 00:23:24,440 --> 00:23:26,990 við höfum Fá Int, og fá fljóta, Fá Long Long, fá String, 566 00:23:26,990 --> 00:23:29,260 en aðeins eitt, germane, núna er að ná Int. 567 00:23:29,260 --> 00:23:32,970 Svo, ef bara tól sem þú þarft í tól kassi er Get Int, 568 00:23:32,970 --> 00:23:35,505 hvernig eigum við að fara um framkvæmd það að fá jákvæð int? 569 00:23:35,505 --> 00:23:35,929 >> Áhorfendur: Búa til skrá þig inn og athuga hvort inntak sem þeir gáfu 570 00:23:35,929 --> 00:23:36,762 var jákvæð eða ekki. 571 00:23:36,762 --> 00:23:39,390 572 00:23:39,390 --> 00:23:40,640 >> Ræðumaður 1: Perfect. 573 00:23:40,640 --> 00:23:41,200 Nákvæmlega. 574 00:23:41,200 --> 00:23:43,950 Annar tól sem við höfum í okkar Verkfæri frá viku eða tvær síðan 575 00:23:43,950 --> 00:23:45,419 er bara lykkja reisa. 576 00:23:45,419 --> 00:23:48,210 Og svo, já, ef við notum á meðan lykkja, eða gera á meðan lykkja, eða yfirborðið 577 00:23:48,210 --> 00:23:50,850 lykkja við gætum sennilega komast upp með einhverjum af þeim að einhverju leyti. 578 00:23:50,850 --> 00:23:55,140 Við getum framkvæma hugmynd af fá jákvæð INT bara með því að nota Fá Int, 579 00:23:55,140 --> 00:23:57,830 og þá bara að halda að kalla það aftur og halda pestering notanda 580 00:23:57,830 --> 00:24:00,320 þar til hann eða hún í raun gefur okkur það sem við viljum. 581 00:24:00,320 --> 00:24:03,260 >> Og svo nú, þetta abstrakt af ferlinu 582 00:24:03,260 --> 00:24:05,680 um að fá jákvætt int í aðgerð sem kallast 583 00:24:05,680 --> 00:24:08,930 Fá Jákvæð Int er svolítið meira sannfærandi vegna þess að líta á þetta. 584 00:24:08,930 --> 00:24:10,990 Þetta eru eins og 10 plús línur af kóða sem 585 00:24:10,990 --> 00:24:15,090 taka þátt í að fá jákvæð int, og ég er ekki alveg sama hvernig þú gerir það. 586 00:24:15,090 --> 00:24:17,850 Mér sama er að þér getur gert það, og svo ég hef 587 00:24:17,850 --> 00:24:21,660 falinn allar þessar upplýsingar á bak við virka heitir Fá Jákvæð INT að 588 00:24:21,660 --> 00:24:23,430 reyndar hefur þetta að gera á meðan lykkja. 589 00:24:23,430 --> 00:24:27,660 >> Og sjá í síðustu viku fyrir setningafræði þar, en það segir bara N, 590 00:24:27,660 --> 00:24:29,800 og það prentar út kennsla til notanda. 591 00:24:29,800 --> 00:24:33,330 Það kallar Fá Int og þá athugar það þetta ástand aftur og aftur, 592 00:24:33,330 --> 00:24:35,230 og aftur þar til notandi samstarf. 593 00:24:35,230 --> 00:24:38,000 >> Svo nú, nokkrum eftirlit geðheilsu. 594 00:24:38,000 --> 00:24:40,370 Fyrir þá kannski kannast með nokkrum forritun, 595 00:24:40,370 --> 00:24:46,410 hvers vegna er N lýst, hvers vegna ég til N utan gera á meðan lykkja? 596 00:24:46,410 --> 00:24:50,370 Hvers vegna er það á línu 29 og ekki á eins 33, til dæmis. 597 00:24:50,370 --> 00:24:53,529 >> Áhorfendur: Vegna þess að þegar þú lýsa það utan, það góður 598 00:24:53,529 --> 00:24:56,688 af meiri, stærri scope-- 599 00:24:56,688 --> 00:24:58,146 >> Ræðumaður 1: Good. 600 00:24:58,146 --> 00:24:59,604 >> Áhorfendur: --and ef þú lýsa það inni í lykkju, [inaudible] 601 00:24:59,604 --> 00:25:00,979 vegna þess að það veit ekki um það. 602 00:25:00,979 --> 00:25:02,819 603 00:25:02,819 --> 00:25:03,610 Ræðumaður 1: Einmitt. 604 00:25:03,610 --> 00:25:06,330 Ef ég get simplify-- það er spurning um gildissvið. 605 00:25:06,330 --> 00:25:11,530 Og umfang vísar til samhengi í sem breyta til eða er nothæft. 606 00:25:11,530 --> 00:25:15,050 Og ágætur þumalputtaregla hér er að yfirleitt þegar þú lýsa eða búa 607 00:25:15,050 --> 00:25:21,642 breytilegum þú getur aðeins notað það inni af næst faðma hrokkið axlabönd. 608 00:25:21,642 --> 00:25:22,600 Svo hvað þýðir það? 609 00:25:22,600 --> 00:25:26,551 Ef ég, í stað, losa þetta og fara með eitthvað sem líður svolítið einfaldara. 610 00:25:26,551 --> 00:25:27,050 Ekki satt? 611 00:25:27,050 --> 00:25:29,360 >> Line 32 lítur bara hreinni mér núna. 612 00:25:29,360 --> 00:25:31,500 Ég ætla að gera bæði hluti í einu sinni og þá úthluta 613 00:25:31,500 --> 00:25:33,070 hægri hönd á vinstri hendi. 614 00:25:33,070 --> 00:25:35,180 Vandamálið byggist nú á að skilgreining á umfangi 615 00:25:35,180 --> 00:25:41,130 er að N hægt er að nota í línum 31 og 32 inni þessa lykkju, 616 00:25:41,130 --> 00:25:45,100 en þar sem sú skilgreining það er ekki hægt að nota? 617 00:25:45,100 --> 00:25:45,660 Í línu hvað? 618 00:25:45,660 --> 00:25:46,160 Já. 619 00:25:46,160 --> 00:25:47,490 >> Áhorfendur: 35. 620 00:25:47,490 --> 00:25:49,180 >> Ræðumaður 1: 35. 621 00:25:49,180 --> 00:25:50,480 Örugglega ekki 35. 622 00:25:50,480 --> 00:25:52,349 Og einnig hvar annars? 623 00:25:52,349 --> 00:25:52,890 Áhorfendur: 34. 624 00:25:52,890 --> 00:25:55,040 Ræðumaður 1: Jafnvel 34 er erfið vegna þess að það er 625 00:25:55,040 --> 00:25:56,450 utan hrokkið axlabönd. 626 00:25:56,450 --> 00:25:58,200 Og svo í raun, við skulum sjá hvað gerist. 627 00:25:58,200 --> 00:25:58,700 Ekki satt? 628 00:25:58,700 --> 00:26:00,722 Þetta kann að virðast svolítið eða gæti leiðandi ekki, 629 00:26:00,722 --> 00:26:02,680 en við skulum sjá hvað þýðanda er að segja þegar 630 00:26:02,680 --> 00:26:04,730 við förum inn uppspretta skrá dag. 631 00:26:04,730 --> 00:26:08,950 Gera virka einn. 632 00:26:08,950 --> 00:26:11,231 Guð minn góður. 633 00:26:11,231 --> 00:26:12,980 Jæja, lauk ég loksins að, við the vegur. 634 00:26:12,980 --> 00:26:14,030 Allt í lagi. 635 00:26:14,030 --> 00:26:15,510 Og hvað er málið hér? 636 00:26:15,510 --> 00:26:17,430 Mjög yfirnáttúrulegt að líta á. 637 00:26:17,430 --> 00:26:19,570 En hér er það sem ég typed-- gera virka einn. 638 00:26:19,570 --> 00:26:21,640 Hér er það gert völdum, sem er í raun 639 00:26:21,640 --> 00:26:23,705 með þýðanda clang með eitthvað af þeim fánar 640 00:26:23,705 --> 00:26:25,080 að við munum sjá ný áður en langt. 641 00:26:25,080 --> 00:26:26,829 Og aftur, alltaf að líta á fyrsta villa, 642 00:26:26,829 --> 00:26:30,540 vegna þess að það gæti bara hafa Cascading tilgangslaust áhrif á aðrar línur. 643 00:26:30,540 --> 00:26:34,410 >> Svo hvað þýðir þetta er að Vandamálið er í virka 1.c. 644 00:26:34,410 --> 00:26:36,890 Það er á línu 32. 645 00:26:36,890 --> 00:26:39,712 Og það er á súlu eða eðli, 13. 646 00:26:39,712 --> 00:26:42,670 Svo þegar texti ritstjóri sem getur hjálpa þér að finna þar sem málið er. 647 00:26:42,670 --> 00:26:47,079 Svo ef ég skruna upp, hvað er lína 32? 648 00:26:47,079 --> 00:26:49,120 Það er örugglega þetta sem er þegar auðkenndur 649 00:26:49,120 --> 00:26:50,607 rétt here-- ónotaður breyta n. 650 00:26:50,607 --> 00:26:51,440 En það er ekki ónotað. 651 00:26:51,440 --> 00:26:52,320 Ég ætla að nota það. 652 00:26:52,320 --> 00:26:56,110 En þýðandinn er ruglaður, því það er aðeins innan þessa ramma. 653 00:26:56,110 --> 00:26:57,727 Og svo ég get ekki notað það hér. 654 00:26:57,727 --> 00:26:58,560 Ég get ekki notað það hér. 655 00:26:58,560 --> 00:27:01,320 Og þýðanda, því ekki einu sinni sama að ég er að reyna. 656 00:27:01,320 --> 00:27:03,940 Það virðist vera ónotað innan raunverulegu umfangi þess. 657 00:27:03,940 --> 00:27:08,854 >> Þannig að við getum víkka með því að gera einmitt það sem við byrjuðum with-- int n. 658 00:27:08,854 --> 00:27:11,020 Og jafnvel þó það hjartarskinn ekki líta út eins og glæsilegur, ef til vill, 659 00:27:11,020 --> 00:27:15,110 og við erum að taka við auka línu hér, nú er það að umfangi alls staðar. 660 00:27:15,110 --> 00:27:15,970 Svo skulum reyna aftur. 661 00:27:15,970 --> 00:27:19,040 Svo gera virka einn. 662 00:27:19,040 --> 00:27:19,610 Nice. 663 00:27:19,610 --> 00:27:23,370 Og nú ef ég ef ég hlaupa virka einn, við skulum gefa það neikvæð 10, 664 00:27:23,370 --> 00:27:27,170 neikvætt 1, 0, 1, og það virkar örugglega. 665 00:27:27,170 --> 00:27:28,610 >> Svo er það önnur lausn hér. 666 00:27:28,610 --> 00:27:29,280 Veistu hvað? 667 00:27:29,280 --> 00:27:31,230 Hvað ef ég virkilega er að glíma við þetta? 668 00:27:31,230 --> 00:27:33,140 Ég veit ekki hvar n er ætlast til að fara. 669 00:27:33,140 --> 00:27:33,723 Veistu hvað? 670 00:27:33,723 --> 00:27:39,220 Ég ætla bara að fara að setja það allt leið efst á skránni minni hér. 671 00:27:39,220 --> 00:27:42,835 Hvað myndi þetta ekki, finnst þér? 672 00:27:42,835 --> 00:27:43,335 Já? 673 00:27:43,335 --> 00:27:44,251 >> Áhorfendur: [inaudible]. 674 00:27:44,251 --> 00:27:47,964 675 00:27:47,964 --> 00:27:48,630 Ræðumaður 1: Já. 676 00:27:48,630 --> 00:27:50,560 Þannig að ég hef gert það á heimsvísu, svo að segja. 677 00:27:50,560 --> 00:27:54,430 Ef þú ert með breytu sem er utan allar aðgerðir þínar sem er leyft, 678 00:27:54,430 --> 00:27:58,780 og númer ætti að taka saman, og n mun nú vera aðgengileg ekki aðeins í að fá 679 00:27:58,780 --> 00:28:02,490 jákvæð int, en einnig í main-- sem er svolítið áhyggjuefni vegna þess að það er 680 00:28:02,490 --> 00:28:04,864 nú þegar n í helstu, svo fleiri á að í aðeins moment-- 681 00:28:04,864 --> 00:28:06,530 en þetta myndi teljast slæm hönnun. 682 00:28:06,530 --> 00:28:06,910 Allt í lagi. 683 00:28:06,910 --> 00:28:08,570 Ef þú þarft að grípa til eitthvað eins og, ó, ég 684 00:28:08,570 --> 00:28:10,125 bara setja það upp hér því kóðinn virðist að safna saman 685 00:28:10,125 --> 00:28:12,180 er yfirleitt ekki sú besta æfa. 686 00:28:12,180 --> 00:28:14,590 Frekar þú vilt að velja narrowest mögulegt umfang 687 00:28:14,590 --> 00:28:18,720 fyrir breytur, sem myndi þýða að fara með fyrstu hönnun okkar, sem 688 00:28:18,720 --> 00:28:19,920 er hérna. 689 00:28:19,920 --> 00:28:24,400 >> Nú sem innskot, ef þú did hafa An samur heitir breyta hér, 690 00:28:24,400 --> 00:28:27,750 hvernig c myndi höndla this-- þó að þetta mun ekki gerast of often-- 691 00:28:27,750 --> 00:28:30,150 er að þetta er enn fullkomlega fínn hér. 692 00:28:30,150 --> 00:28:35,000 En þessi skilgreining n í línu 22 mun skuggi á heimsvísu einn. 693 00:28:35,000 --> 00:28:38,190 Svo þetta mun virka innan Helstu og alþjóðlegt einn 694 00:28:38,190 --> 00:28:41,670 mun í raun gilda þegar þú ert í fá jákvætt INT En meira um það 695 00:28:41,670 --> 00:28:43,890 annar tími, en bara fyrir þá forvitinn. 696 00:28:43,890 --> 00:28:45,970 >> Svo í stuttu máli, að laga við þetta hér. 697 00:28:45,970 --> 00:28:49,220 Nú skulum stríða í sundur tvö önnur stykki Áður en við skoðum eitt síðasta lína af kóða 698 00:28:49,220 --> 00:28:50,170 í þessari áætlun. 699 00:28:50,170 --> 00:28:52,170 Fá jákvæð int. 700 00:28:52,170 --> 00:28:54,450 Á vinstri hönd hlið af Bæta hennar er orðið Int. 701 00:28:54,450 --> 00:28:56,860 Hvað þýðir að signify finnst þér? 702 00:28:56,860 --> 00:28:58,900 Þannig langt við höfum að mestu séð ógilt. 703 00:28:58,900 --> 00:28:59,400 Já? 704 00:28:59,400 --> 00:29:01,810 >> Áhorfendur: Það er tegund af breyta sem þú ert að spyrja um. 705 00:29:01,810 --> 00:29:04,550 >> Ræðumaður 1: Já það er tegund af, láttu mig ekki segja breytileg, en gerð af value 706 00:29:04,550 --> 00:29:05,990 að ég ætla að biðja aftur fyrir. 707 00:29:05,990 --> 00:29:08,070 Og reyndar, það er innsæi hér, vonandi. 708 00:29:08,070 --> 00:29:08,200 Ekki satt? 709 00:29:08,200 --> 00:29:10,250 Ef þú vilt fá jákvæð int, hvað er það sem þú 710 00:29:10,250 --> 00:29:12,920 vilt function-- eins okkar sjálfboðaliðar frá síðustu viku 711 00:29:12,920 --> 00:29:15,720 að skila þér aftur stykki pappír með int á það? 712 00:29:15,720 --> 00:29:19,190 Og svo við höfum tilgreint að svokölluð aftur gerð þessa aðgerð 713 00:29:19,190 --> 00:29:20,450 er að fá jákvæða int. 714 00:29:20,450 --> 00:29:22,990 Ef við ekki vilja það til aftur eitthvað, þú segir ógilt. 715 00:29:22,990 --> 00:29:25,270 Ef þú vilt það til að fara aftur band, þú segir band. 716 00:29:25,270 --> 00:29:27,310 Ef þú vilt það til að fara aftur fljóta, segir þú fljóta. 717 00:29:27,310 --> 00:29:30,440 En eina sem gildir hér rökrétt, því ég er að nota GET int, 718 00:29:30,440 --> 00:29:34,130 jafnvel þó að ég er að takmarka hana við jákvæð gildi, er að skila int. 719 00:29:34,130 --> 00:29:38,380 >> Svo öfugt, hvað þýðir það að það er ógilt í sviga? 720 00:29:38,380 --> 00:29:40,130 Hvað gera sviga skilgreina almennt? 721 00:29:40,130 --> 00:29:40,588 Já? 722 00:29:40,588 --> 00:29:42,880 >> Áhorfendur: Það þýðir að virka er ekki í raun að fá það. 723 00:29:42,880 --> 00:29:44,650 >> Ræðumaður 1: Það þýðir að fall er ekki í raun að fá það? 724 00:29:44,650 --> 00:29:45,430 >> Áhorfendur: An inntak. 725 00:29:45,430 --> 00:29:46,763 >> Ræðumaður 1: An inntak, af neinu tagi. 726 00:29:46,763 --> 00:29:49,870 Svo reyndar, ef svigi hér þú tilgreinir ógilt, 727 00:29:49,870 --> 00:29:51,650 það bara þýðir að ég vil ekki allir inntak. 728 00:29:51,650 --> 00:29:53,269 Ég takast á við vandamál sjálfur. 729 00:29:53,269 --> 00:29:55,810 Og reyndar, þú þarft ekki að segja fá jákvæð int neitt. 730 00:29:55,810 --> 00:29:59,630 Þú segir bara, fá jákvæð int, og að aðgerð mun fara burt og gera hlutur hans. 731 00:29:59,630 --> 00:30:02,970 >> En það hefur verið smá bragð sem ég hef verið að spila hér allan þennan tíma 732 00:30:02,970 --> 00:30:04,970 að ganga úr skugga um að þetta númer safnar. 733 00:30:04,970 --> 00:30:09,620 Takið eftir að int-- fá jákvætt INT void-- er á línu 27. 734 00:30:09,620 --> 00:30:14,530 En af einhverjum virðist undarlegt ástæða það er líka hér á línu 16. 735 00:30:14,530 --> 00:30:18,530 Og bara gott mál ég endurtek þetta svo það er fullkomlega eins. 736 00:30:18,530 --> 00:30:21,640 Og ég hef sagt frumgerð með smá einn-lína athugasemd. 737 00:30:21,640 --> 00:30:28,850 Hvað gerist ef ég eytt það og nú endursýning gera virka 1, inn. 738 00:30:28,850 --> 00:30:29,350 Úpps. 739 00:30:29,350 --> 00:30:32,527 740 00:30:32,527 --> 00:30:33,110 Bíddu aðeins. 741 00:30:33,110 --> 00:30:34,764 Hvar er flipinn minn? 742 00:30:34,764 --> 00:30:35,263 Huh? 743 00:30:35,263 --> 00:30:37,969 744 00:30:37,969 --> 00:30:39,620 Standby. 745 00:30:39,620 --> 00:30:41,570 Gera valkostinum 1. 746 00:30:41,570 --> 00:30:42,150 Það sem við förum. 747 00:30:42,150 --> 00:30:42,310 OK. 748 00:30:42,310 --> 00:30:43,400 Hefði ekki vistað það almennilega. 749 00:30:43,400 --> 00:30:45,220 Svo held ég að það sé lítið padda hér þar sem ég er ekki 750 00:30:45,220 --> 00:30:46,636 sjá flipann nafnið í augnablikinu. 751 00:30:46,636 --> 00:30:47,940 Svo hvað er að gerast hér? 752 00:30:47,940 --> 00:30:52,210 Óbeina yfirlýsingu um virka fá jákvæð int er ógilt í C99. 753 00:30:52,210 --> 00:30:53,940 Svo ruglingslegt aftur. 754 00:30:53,940 --> 00:30:55,200 Svo er það þetta til marks um? 755 00:30:55,200 --> 00:30:57,287 Jæja, það kemur í ljós að C er ansi heimskur. 756 00:30:57,287 --> 00:30:59,912 Jæja, það er forritun tungumál, eða öllu heldur þýðandinn er. 757 00:30:59,912 --> 00:31:02,940 Það veit aðeins hvað þú hefur kenna mér það, og það er bara 758 00:31:02,940 --> 00:31:05,640 að fara að vita eitthvað ef þú kennt það áður. 759 00:31:05,640 --> 00:31:07,960 Með öðrum orðum, í Helstu í augnablikinu, ég er 760 00:31:07,960 --> 00:31:10,900 reyna að hringja í aðgerð kallaði fá jákvæð int. 761 00:31:10,900 --> 00:31:14,120 En þýðandinn er ekki að fara að taka eftir því að fá jákvæð int 762 00:31:14,120 --> 00:31:16,500 hendi til línu 26. 763 00:31:16,500 --> 00:31:21,360 Og svo það sem þýðandinn gerir er bara villur um leið og það fær að stilla 17, 764 00:31:21,360 --> 00:31:23,700 segja óbeina yfirlýsingu af fá jákvætt int, sem 765 00:31:23,700 --> 00:31:27,740 er bara fínt leið til að segja, ég er ekki vita hvað fá jákvætt int er enn. 766 00:31:27,740 --> 00:31:31,240 >> Önnur tungumál eins og Java og Python og Ruby gæti líta undan. 767 00:31:31,240 --> 00:31:32,240 C er ekki. 768 00:31:32,240 --> 00:31:35,110 Og svo hvernig við gætum þetta er einn af tvo vegu. 769 00:31:35,110 --> 00:31:40,160 Annaðhvort einn, ef vandamálið er að fá jákvæð INT hefur ekki sést áður, 770 00:31:40,160 --> 00:31:42,150 Jæja, láttu mig fara bara það að ofan. 771 00:31:42,150 --> 00:31:43,650 Sem myndi laga þetta vandamál. 772 00:31:43,650 --> 00:31:46,790 En almennt, það er talin betri tækni 773 00:31:46,790 --> 00:31:50,220 að setja helstu virka á mjög efst svo að mönnum að lesa kóðann þinn 774 00:31:50,220 --> 00:31:52,710 veit hvað forritið gerir, vegna helsta er ekki grafinn allt 775 00:31:52,710 --> 00:31:53,960 leið neðst eða í miðjunni. 776 00:31:53,960 --> 00:31:55,130 Það er á mjög toppur. 777 00:31:55,130 --> 00:31:56,410 Svo sem ekki finnst tilvalið. 778 00:31:56,410 --> 00:31:58,326 Og þú getur raunverulega fá inn í aðstæður þar 779 00:31:58,326 --> 00:32:00,820 ef einn virka símtöl annars, sem kallar annað, 780 00:32:00,820 --> 00:32:04,630 þú getur fengið inn í málefni þar sem hvorki getur farið yfir öðrum, þá er rökrétt. 781 00:32:04,630 --> 00:32:05,920 Það er bara ekki hægt. 782 00:32:05,920 --> 00:32:09,290 >> Og svo leið til að vinna í kringum þetta er að bara taka 783 00:32:09,290 --> 00:32:13,200 undirskrift fallsins, svo að speak-- fyrsta línan þar sem það er declared-- 784 00:32:13,200 --> 00:32:16,850 og bara að afrita, líma það á að efst, en ekki með hrokkið braces-- 785 00:32:16,850 --> 00:32:17,980 bara með semíkommu. 786 00:32:17,980 --> 00:32:20,840 Það er eins og lítill vott um hvað er að koma. 787 00:32:20,840 --> 00:32:26,630 Og í raun, allan tíma þegar við hafa séð hlutina eins og staðall io.h 788 00:32:26,630 --> 00:32:33,040 og cs50.h sama skapi í þeim punktur h skrár eru það aðrar frumgerðir. 789 00:32:33,040 --> 00:32:35,250 Og við munum sjá að áður en langur. 790 00:32:35,250 --> 00:32:39,340 >> Svo í stuttu máli, þegar þú ert með forrit í skrá með margar aðgerðir 791 00:32:39,340 --> 00:32:42,300 auk helstu, þú næstum vilja alltaf að lýsa þeim 792 00:32:42,300 --> 00:32:45,360 bara með því að fyrst þeirra lína, fylgt eftir með semíkommu, 793 00:32:45,360 --> 00:32:48,410 á the mjög toppur af the skrá. 794 00:32:48,410 --> 00:32:50,460 Það var mikið í einu. 795 00:32:50,460 --> 00:32:53,130 Einhverjar spurningar? 796 00:32:53,130 --> 00:32:53,920 Einhverjar spurningar? 797 00:32:53,920 --> 00:32:54,530 Allt í lagi. 798 00:32:54,530 --> 00:32:59,760 >> Svo við skulum fara á þá að eitthvað eins hósta. 799 00:32:59,760 --> 00:33:00,260 Oh. 800 00:33:00,260 --> 00:33:00,570 Hvernig mátun. 801 00:33:00,570 --> 00:33:01,220 Allt í lagi. 802 00:33:01,220 --> 00:33:02,260 Hósti. 803 00:33:02,260 --> 00:33:05,080 Svo hér er C framkvæmd áætlunar 804 00:33:05,080 --> 00:33:07,560 við gerðum um daginn í Scratch að mjög einfaldlega bara 805 00:33:07,560 --> 00:33:08,691 segir hósti, hósti, hósti. 806 00:33:08,691 --> 00:33:09,190 Allt í lagi. 807 00:33:09,190 --> 00:33:11,136 Einhver sagði nokkrar dögum að það er 808 00:33:11,136 --> 00:33:12,760 leið að þrífa þennan kóða upp nú þegar. 809 00:33:12,760 --> 00:33:12,880 Allt í lagi? 810 00:33:12,880 --> 00:33:15,440 Um leið og þú ert að afrita og líma sennilega slæmt hönnun. 811 00:33:15,440 --> 00:33:18,725 Að minnsta kosti einu sinni við fáum að fjórum eða fimm eða 20 hósti, finnst það slæmt starf. 812 00:33:18,725 --> 00:33:19,850 Við höldum bara eintak, stæling. 813 00:33:19,850 --> 00:33:22,213 Hvað er augljós lausn að þrífa þetta forrit upp? 814 00:33:22,213 --> 00:33:23,120 >> Áhorfendur: Loop. 815 00:33:23,120 --> 00:33:23,350 >> Ræðumaður 1: Já. 816 00:33:23,350 --> 00:33:24,070 Svo nota lykkju. 817 00:33:24,070 --> 00:33:27,697 Og við getum notað til að lykkja, á meðan lykkja, allir tala um aðferðir. 818 00:33:27,697 --> 00:33:29,780 Og reyndar, það er það við gerum í útgáfu eitt hér. 819 00:33:29,780 --> 00:33:32,250 Ég hef í staðinn endurskrifa það í útgáfu eitt af cough.c 820 00:33:32,250 --> 00:33:35,170 að vera bara hósti innan fyrir-lykkju. 821 00:33:35,170 --> 00:33:38,240 Allt í lagi, en það er tækifæri nú að eins konar byrjun 822 00:33:38,240 --> 00:33:41,630 að hanna þetta svolítið meira eins lexía sem við kennt í smá stund síðan, 823 00:33:41,630 --> 00:33:46,190 sem er this--, að ég vildi til að búa til fall sem kallast hósti, 824 00:33:46,190 --> 00:33:49,730 við skulum íhuga fyrir aðeins augnablik hvað það er að fara að líta út. 825 00:33:49,730 --> 00:33:51,900 Þannig að ef ég vil eitthvað að hósta, ég þarf bara 826 00:33:51,900 --> 00:33:53,800 að nota prenta f inni í virka. 827 00:33:53,800 --> 00:33:55,030 Og reyndar er ég. 828 00:33:55,030 --> 00:33:56,990 Og í raun, allt þetta tími hvenær þú ert 829 00:33:56,990 --> 00:33:59,000 prentun eitthvað til skjárinn, forritari 830 00:33:59,000 --> 00:34:00,610 myndi kalla þessi aukaverkun. 831 00:34:00,610 --> 00:34:02,990 Það er mér ekki fötlun aftur einhver gildi. 832 00:34:02,990 --> 00:34:06,170 Það er mér að taka til aðgerða sem gæti verið sjónrænt augljóst. 833 00:34:06,170 --> 00:34:10,672 En þessi aðgerð hósti, er það aftur nokkuð miðað fyrstu línu? 834 00:34:10,672 --> 00:34:12,880 Nei, vegna þess að gerð aftur þess er ógilt, sem þýðir bara 835 00:34:12,880 --> 00:34:14,250 það er ekki fötlun mér neitt til baka. 836 00:34:14,250 --> 00:34:16,791 Það gæti verið að gera eitthvað sjónrænt, en það er ekki fötlun mig 837 00:34:16,791 --> 00:34:18,639 aftur a stykki af pappír eins og í síðustu viku. 838 00:34:18,639 --> 00:34:21,310 >> Er það þarf allir inntak? 839 00:34:21,310 --> 00:34:21,810 Nei 840 00:34:21,810 --> 00:34:23,134 Og svo er það ógilt hér líka. 841 00:34:23,134 --> 00:34:25,600 Þannig að þetta er líka svona yfir-verkfræði þetta vandamál. 842 00:34:25,600 --> 00:34:26,099 Ekki satt? 843 00:34:26,099 --> 00:34:28,820 Ég hef gert forritið meira flóknari, fleiri línur af kóða, 844 00:34:28,820 --> 00:34:31,889 Ég hef ekki gert það lengur fleiri hagnýtur, en þetta 845 00:34:31,889 --> 00:34:34,210 væri stepping steinn, kannski, fyrir breiðari 846 00:34:34,210 --> 00:34:36,830 samhengi við flóknari kóða. 847 00:34:36,830 --> 00:34:38,150 En hvað um þetta? 848 00:34:38,150 --> 00:34:42,050 Hvað hef ég done-- bara glancing þetta án þess að horfa á the athugasemd 849 00:34:42,050 --> 00:34:46,076 á the mjög toppur af the file-- hvað hafa Ég hef gert grundvallaratriðum hér með hósta minn 850 00:34:46,076 --> 00:34:47,409 framkvæmd sem er öðruvísi? 851 00:34:47,409 --> 00:34:48,327 Já, í bak? 852 00:34:48,327 --> 00:34:51,384 >> Áhorfendur: Gerðu það svo þú getur hafa eðli slökkva. 853 00:34:51,384 --> 00:34:52,050 Ræðumaður 1: Já. 854 00:34:52,050 --> 00:34:53,270 Svo finnst svona gaman. 855 00:34:53,270 --> 00:34:53,389 Ekki satt? 856 00:34:53,389 --> 00:34:56,600 Það er eins og að bæta möguleika til þinn forrit eða aðgerð, í þessu tilfelli. 857 00:34:56,600 --> 00:34:57,830 Það skilar samt ekkert. 858 00:34:57,830 --> 00:35:00,538 Það gæti hafa sjón aukaverkun vegna þess að það er að kalla prenta f. 859 00:35:00,538 --> 00:35:02,800 En nú hef ég parametrized fallið, sem 860 00:35:02,800 --> 00:35:06,470 þýðir að ég hef tilgreint tekið inntak int og kalla það n, 861 00:35:06,470 --> 00:35:08,510 en ég gæti kalla það eitthvað sem ég vil. 862 00:35:08,510 --> 00:35:11,550 Í raun gæti það bara verið sinnum til að vera jafnvel meira skýr. 863 00:35:11,550 --> 00:35:13,310 Og þá gæti ég bara að breyta þessu hér. 864 00:35:13,310 --> 00:35:16,450 En málið er að þetta er hvernig ég búa til fall sem tekur inntak. 865 00:35:16,450 --> 00:35:19,530 Og ef þú manst ósvífni gegnum kannski á netinu í einu 866 00:35:19,530 --> 00:35:23,000 af göngu throughs er Fjórða og síðasta hósti dæmi, 867 00:35:23,000 --> 00:35:27,150 þú munt taka eftir hér ég hef almennt númerið mitt further-- konar óhlutbundin 868 00:35:27,150 --> 00:35:27,690 það frekar. 869 00:35:27,690 --> 00:35:31,390 Eins hósta og hnerra, bæði eru um eins og að segja eitthvað eða gera 870 00:35:31,390 --> 00:35:32,330 einhvers konar hljóð. 871 00:35:32,330 --> 00:35:34,725 Vista væri samsvarandi Scratch blokk. 872 00:35:34,725 --> 00:35:37,350 Og svo það sem ég gerði í þessari útgáfu, sem við getum bara litið á, 873 00:35:37,350 --> 00:35:43,170 er hósti er bara eins og að segja, [hósti], hósta, og á meðan, hnerri er 874 00:35:43,170 --> 00:35:44,570 eins og að segja, [Achoo]. 875 00:35:44,570 --> 00:35:46,900 Og svo ég hef almennt framkvæmd þeirra 876 00:35:46,900 --> 00:35:48,970 nú að innleiða þetta almenn aðgerð, 877 00:35:48,970 --> 00:35:51,490 segja, sem er áhugavert tilgangi í dag 878 00:35:51,490 --> 00:35:54,300 aðeins vegna þess að það samt hefur ekki aftur gerð. 879 00:35:54,300 --> 00:35:56,398 En hversu margir inntak er á honum? 880 00:35:56,398 --> 00:35:56,981 Áhorfendur: Two. 881 00:35:56,981 --> 00:35:57,430 Ræðumaður 1: Two. 882 00:35:57,430 --> 00:35:59,263 Og svo ef þú vilt taka í tveimur rök, 883 00:35:59,263 --> 00:36:00,710 bara aðskilið þau með kommum. 884 00:36:00,710 --> 00:36:03,110 Og ef þú vilt að þá kalla að virka, 885 00:36:03,110 --> 00:36:05,800 eftir því að þú bara kalla td vitna, unquote, 886 00:36:05,800 --> 00:36:09,090 í fyrsta rifrildi, algengar n, fyrir seinni rök. 887 00:36:09,090 --> 00:36:12,130 Svo aftur, höfum við bara nú kubbar svo að við getum í raun 888 00:36:12,130 --> 00:36:15,686 framkvæma sumir af eigin störfum okkar. 889 00:36:15,686 --> 00:36:16,570 Allt í lagi. 890 00:36:16,570 --> 00:36:19,690 Einhverjar spurningar um þetta? 891 00:36:19,690 --> 00:36:22,400 >> Svo nú skulum afhýða aftur lag ef svo. 892 00:36:22,400 --> 00:36:24,840 Og markmiðið, að lokum, er í næstu viku Heimadæmi 893 00:36:24,840 --> 00:36:27,710 er að fara að vera á cryptogrophy-- listin að spæna upplýsingar. 894 00:36:27,710 --> 00:36:30,640 Og sérstaklega, þær upplýsingar verður þú dulkóða eða hallmæla 895 00:36:30,640 --> 00:36:31,605 er að fara að vera texti. 896 00:36:31,605 --> 00:36:33,980 Og svo að eins konar boðum spurningin í dag eins vel, 897 00:36:33,980 --> 00:36:38,480 hvað er að gerast undir hetta með texta utan ASCII frá viku núll, 898 00:36:38,480 --> 00:36:40,730 Og hvernig getum við í raun byrja að vinna það? 899 00:36:40,730 --> 00:36:43,070 Svo er hér nafn Zamyla er. 900 00:36:43,070 --> 00:36:47,380 Og í texta, sem gæti verið inputted í eins fá band virka. 901 00:36:47,380 --> 00:36:52,540 Og að byrja núna þegar þú sérð string eins this-- Z-A-M-Y-L-A-- 902 00:36:52,540 --> 00:36:56,550 byrja að hugsa um það eins og hver af þeim stafi er í kassa af þess 903 00:36:56,550 --> 00:36:57,050 eigin. 904 00:36:57,050 --> 00:36:59,460 Og reyndar, í viku eða svo er tími, hver af þessum kassa 905 00:36:59,460 --> 00:37:04,280 er að fara til að tákna það sérstaklega blokk af memory-- bita af minni. 906 00:37:04,280 --> 00:37:07,050 Svo að hver af þessum bréfum, lokum, mun tákna 8 bita. 907 00:37:07,050 --> 00:37:10,560 Og við munum í raun sjá hvað er að gerast á undir hetta í tölvunni minni. 908 00:37:10,560 --> 00:37:13,440 >> En fyrir ekki það nægir bara að líta á Zamyla 909 00:37:13,440 --> 00:37:17,520 í gegnum þessa linsu, þar sem sérhver af þessi bréf er í eigin kassa sínum. 910 00:37:17,520 --> 00:37:22,697 Og fallega nóg í C við getum fá aðgang að hvert af þessum kassa beint. 911 00:37:22,697 --> 00:37:25,530 Svo ef þú vilt fá sem fyrst staf í nafni hennar, frábær auðvelt í C. 912 00:37:25,530 --> 00:37:28,410 Ef þú vilt fá síðasta bréf, frábær auðvelt eins og heilbrigður 913 00:37:28,410 --> 00:37:30,240 með stykki af nýju setningafræði. 914 00:37:30,240 --> 00:37:36,250 >> Þannig að ég ætla að fara á undan í CS50 IDE og opna strenginn núll punktur C. 915 00:37:36,250 --> 00:37:40,270 Og í þessu dæmi hér, það eru a par af nýjum hlutum að gerast. 916 00:37:40,270 --> 00:37:44,360 Svo fyrst í línu 19, höfum við séð þetta before-- fá band. 917 00:37:44,360 --> 00:37:49,840 Svo bara eins og a fljótur andleg heilbrigði stöðva, ef einhver gæti boðið upp munnlega 918 00:37:49,840 --> 00:37:52,662 skýring leikmaður er á hvað er að gerast í línu 19. 919 00:37:52,662 --> 00:37:55,370 Eins og bara þýða þetta í English að herbergisfélagi ekki í CS50 920 00:37:55,370 --> 00:37:56,416 skildu. 921 00:37:56,416 --> 00:37:56,916 Já. 922 00:37:56,916 --> 00:37:59,749 >> Áhorfendur: Hafa notanda inntak A band og geyma það í breytu s. 923 00:37:59,749 --> 00:38:01,934 924 00:38:01,934 --> 00:38:02,600 Ræðumaður 1: Good. 925 00:38:02,600 --> 00:38:05,579 Hafa notandi inntak streng og geyma það í breytu s. 926 00:38:05,579 --> 00:38:06,120 Það er frábært. 927 00:38:06,120 --> 00:38:08,090 Svo á hægri hönd hlið, köllum fá band. 928 00:38:08,090 --> 00:38:10,340 Sem skilar gildi sem ekki fá úthlutað 929 00:38:10,340 --> 00:38:14,230 frá hægri hlið til vinstri hendi hlið í breytu sem heitir s sem er 930 00:38:14,230 --> 00:38:15,950 hannað til að geyma streng. 931 00:38:15,950 --> 00:38:16,800 Nákvæmlega. 932 00:38:16,800 --> 00:38:20,000 >> Svo nú línu 22, fyrir athugasemd í línu 21, 933 00:38:20,000 --> 00:38:22,780 augljóslega prentar þessi band einn staf í hverja línu. 934 00:38:22,780 --> 00:38:23,740 En hvernig? 935 00:38:23,740 --> 00:38:27,040 Svo fyrst af öllu, frumstilla við ég við 0. 936 00:38:27,040 --> 00:38:31,061 Og þá hvernig fáum við að enda nafni Zamyla er? 937 00:38:31,061 --> 00:38:32,810 Jæja, í lok Nafnið Zamyla, ég gat 938 00:38:32,810 --> 00:38:38,151 höndunum tegund í síðustu eðli nafn hennar einhvern veginn, eða fjöldi af það. 939 00:38:38,151 --> 00:38:38,650 Ekki satt? 940 00:38:38,650 --> 00:38:43,500 Ef við förum aftur here-- Z-A-M-L-- Y-L-A-- svo ég gæti slegið í. 941 00:38:43,500 --> 00:38:47,340 Hvað er vísitala Síðasta bréf Zamyla er? 942 00:38:47,340 --> 00:38:52,517 Ef þetta er 0-- tala eins og programmer-- 0, 1, 2, 3, 4, 5, 943 00:38:52,517 --> 00:38:56,570 Ég heard-- svo reyndar síðasta bréf í nafni Zamyla er sjötti 944 00:38:56,570 --> 00:38:58,890 en ef við teljum frá 0, það er að fara að vera númer 5. 945 00:38:58,890 --> 00:39:01,320 Svo halda að í huga hér. 946 00:39:01,320 --> 00:39:04,929 >> Það kemur í ljós að það er aðgerð í C heitir strlen og aftur í dag 947 00:39:04,929 --> 00:39:06,720 og til þessa dags enn, a einhver fjöldi af forriturum 948 00:39:06,720 --> 00:39:09,524 velja að samræma nöfn fyrir þeirra aðgerðir sem hljóma eins og orð 949 00:39:09,524 --> 00:39:10,440 þeir eru að reyna að segja. 950 00:39:10,440 --> 00:39:12,590 Svo strlen er band lengd. 951 00:39:12,590 --> 00:39:18,168 Og svo hvað myndi string lengd S aftur þegar Zamyla er inntak? 952 00:39:18,168 --> 00:39:19,569 >> Áhorfendur: Fimm. 953 00:39:19,569 --> 00:39:22,090 >> Ræðumaður 1: Z-A-M-Y-L. Six. 954 00:39:22,090 --> 00:39:22,590 Ekki satt? 955 00:39:22,590 --> 00:39:23,940 Hvað er lengd nafni Zamyla er? 956 00:39:23,940 --> 00:39:24,440 Ekki satt? 957 00:39:24,440 --> 00:39:26,240 Og bara í raun og veru, sex bréf. 958 00:39:26,240 --> 00:39:26,740 Ekki satt? 959 00:39:26,740 --> 00:39:28,940 Og svo hvað þýðir það fyrir lykkju okkar? 960 00:39:28,940 --> 00:39:32,130 Við erum að fara að fara frá 0 upp í sex, sem 961 00:39:32,130 --> 00:39:33,650 er að fara að gefa okkur fimm endurtekningar. 962 00:39:33,650 --> 00:39:34,890 Hvað gerum við á hverjum endurtekning? 963 00:39:34,890 --> 00:39:36,870 Jæja, prósent C, einhver giska um daginn, 964 00:39:36,870 --> 00:39:38,710 merkir tákn fyrir hvað? 965 00:39:38,710 --> 00:39:39,335 >> Áhorfendur: Char. 966 00:39:39,335 --> 00:39:40,293 Ræðumaður 1: Just a bleikju. 967 00:39:40,293 --> 00:39:42,877 Svo einn character-- ekki margar persónur eins og band. 968 00:39:42,877 --> 00:39:45,251 Og þá er hér nýja línu sem við höfum fengið að prenta út. 969 00:39:45,251 --> 00:39:46,580 Og þá er hér nýja setningafræði. 970 00:39:46,580 --> 00:39:51,130 Ef þú vilt prenta út i-ta staf í streng S, svo að segja, 971 00:39:51,130 --> 00:39:54,060 þú getur einfaldlega sagt Heiti band S, 972 00:39:54,060 --> 00:39:58,230 og þá opna veldi krappi, og þá lokað ferningur krappi, með i 973 00:39:58,230 --> 00:39:58,780 miðjan. 974 00:39:58,780 --> 00:40:01,430 Og það er góður af gaman í það það lítur svolítið eins og ferningur 975 00:40:01,430 --> 00:40:06,210 bara eins og ferninga sem Zamyla er stafir eru á þeirri mynd þar. 976 00:40:06,210 --> 00:40:09,970 >> Þannig að ef ég hlaupa í raun þetta nú, við skulum sjá hvað gerist. 977 00:40:09,970 --> 00:40:15,190 Gera band 0 punktur rista band 0, og þá er ég 978 00:40:15,190 --> 00:40:16,720 að fara að skrifa í nafni Zamyla er. 979 00:40:16,720 --> 00:40:19,428 Það er engin hvetja, vegna þess að ég gerði ekki nota prenta f, en það er allt í lagi. 980 00:40:19,428 --> 00:40:20,660 Ég veit bara hvað ég á að gera. 981 00:40:20,660 --> 00:40:23,240 Og reyndar, prentar það út Nafnið Zamyla, einn í hverja línu. 982 00:40:23,240 --> 00:40:25,760 >> Nú skulum vera svolítið kærulaus. 983 00:40:25,760 --> 00:40:28,461 Segjum sem svo að ég vissi ekki um strlen og ég mynstrağur, 984 00:40:28,461 --> 00:40:31,460 allt í lagi, enginn er að fara að hafa nefna stærri en eins og 50 stafi. 985 00:40:31,460 --> 00:40:36,360 Við skulum fara á undan og laun þetta og endursýning það, og þá tegund í Zamyla 986 00:40:36,360 --> 00:40:37,160 aftur. 987 00:40:37,160 --> 00:40:40,850 Rökrétt, hvað er program að fara að reyna að prenta? 988 00:40:40,850 --> 00:40:49,545 Z-A-M-Y-L-A þá eins og 45 óþekkt bytes af minni. 989 00:40:49,545 --> 00:40:51,670 Og reyndar, munum við koma aftur þessari hugmynd minni. 990 00:40:51,670 --> 00:40:54,180 En bara rökrétt, ef Nafnið Zamyla er þetta lengi, 991 00:40:54,180 --> 00:40:56,450 eins og á myndinni hér, hvað við erum að segja 992 00:40:56,450 --> 00:40:59,810 er að halda prentun, halda prentun, halda prentun, halda prentun, halda prentun, 993 00:40:59,810 --> 00:41:03,781 alla leið til 50 eðli, sem hver veit hvað er að fara að gerast. 994 00:41:03,781 --> 00:41:05,030 Svo skulum taka raunverulega útlit. 995 00:41:05,030 --> 00:41:06,720 Við skulum slá í Zamyla. 996 00:41:06,720 --> 00:41:07,250 Áhugavert. 997 00:41:07,250 --> 00:41:08,190 Við fengum heppinn. 998 00:41:08,190 --> 00:41:09,700 Bara allt fullt af hvítum rúm. 999 00:41:09,700 --> 00:41:09,930 Oh. 1000 00:41:09,930 --> 00:41:11,120 Það er eitt angurvær staf. 1001 00:41:11,120 --> 00:41:14,577 Það lítur svona út eins og skrýtin spurning merkja það, en það er nafn Zamyla er. 1002 00:41:14,577 --> 00:41:15,660 Við skulum fá raunverulega kærulaus. 1003 00:41:15,660 --> 00:41:20,000 Hvernig væri að við að prenta út 500 blokkir í hið óþekkta? 1004 00:41:20,000 --> 00:41:24,380 Við skulum fara á undan og gera þetta eins vel og þá með tilvísun til-hlaupa. 1005 00:41:24,380 --> 00:41:27,980 Og við skulum fullur skjár það, vegna þess að við þurfum að sjá meira pláss. 1006 00:41:27,980 --> 00:41:30,460 Zamyla. 1007 00:41:30,460 --> 00:41:31,830 Fékk heppinn aftur. 1008 00:41:31,830 --> 00:41:33,070 >> Þora við að fá meira kærulaus? 1009 00:41:33,070 --> 00:41:36,070 Skulum fá meira kærulaus. 1010 00:41:36,070 --> 00:41:39,350 50.000 stafir. 1011 00:41:39,350 --> 00:41:41,390 Þetta er eflaust ekki góð hugmynd. 1012 00:41:41,390 --> 00:41:41,890 Allt í lagi. 1013 00:41:41,890 --> 00:41:42,990 Gera band 0. 1014 00:41:42,990 --> 00:41:44,720 Þetta mun vera síðasta kynningu okkar. 1015 00:41:44,720 --> 00:41:47,261 Zamyla. 1016 00:41:47,261 --> 00:41:48,632 Ugh. 1017 00:41:48,632 --> 00:41:50,010 Ugh. 1018 00:41:50,010 --> 00:41:50,680 OK. 1019 00:41:50,680 --> 00:41:54,407 Svo er minnið mitt raunverulega tóm núna, sem er í raun eins konar þægilegt. 1020 00:41:54,407 --> 00:41:55,990 Það sem ég er að reyna að fá to-- allt í lagi. 1021 00:41:55,990 --> 00:41:57,614 Og núna er ég bara að fara að fá kærulaus. 1022 00:41:57,614 --> 00:41:58,570 500.000. 1023 00:41:58,570 --> 00:42:03,860 Make-- skulum allan skjáinn það. 1024 00:42:03,860 --> 00:42:04,990 Sláðu. 1025 00:42:04,990 --> 00:42:05,490 Zamyla. 1026 00:42:05,490 --> 00:42:12,050 1027 00:42:12,050 --> 00:42:13,390 Það sem við förum. 1028 00:42:13,390 --> 00:42:15,610 Ég hef ekki hugmynd um hvað það er, en það hljómar illa. 1029 00:42:15,610 --> 00:42:16,110 Allt í lagi. 1030 00:42:16,110 --> 00:42:20,322 Og í raun, fljótlega, ef þú ert meðal heppinn fáir í skrifstofutíma 1031 00:42:20,322 --> 00:42:22,780 og í vandamál setja einn, þér gæti mjög vel fundur þetta. 1032 00:42:22,780 --> 00:42:25,490 Skiptingu kenna í raun er hafa vel skilgreinda merkingu. 1033 00:42:25,490 --> 00:42:28,450 Það þýðir einhvers konar mistök varðandi hluti af minni. 1034 00:42:28,450 --> 00:42:30,490 Og í skilmálum leikmaður er, það þýðir að við snert 1035 00:42:30,490 --> 00:42:34,780 memory-- við notuðum vinnsluminni í tölvunni minni að ég ætti ekki að hafa haft aðgang að. 1036 00:42:34,780 --> 00:42:37,050 Og það er það sem er bæði öflugur og líka hættulegt 1037 00:42:37,050 --> 00:42:39,910 um C er að þér í raun hafa ótakmarkaðan aðgang 1038 00:42:39,910 --> 00:42:45,910 að heild minni forritsins þíns eða bytes eða RAM, nánar tiltekið. 1039 00:42:45,910 --> 00:42:49,510 >> Svo jafnvel þótt nafn Zamyla er er aðeins sex stafir að lengd, 1040 00:42:49,510 --> 00:42:51,450 Ég get samt farið neitt í minni sem ég vil. 1041 00:42:51,450 --> 00:42:53,491 Og eins og til hliðar, ef þú hefur alltaf að lesa einhverja grein 1042 00:42:53,491 --> 00:42:55,610 í gegnum árin um sum miðlara eða eitthvað forrit 1043 00:42:55,610 --> 00:42:58,654 fá klikkaður eða tölvusnápur sem er tekið forskot á einhverju 1044 00:42:58,654 --> 00:43:00,820 kallað biðminni flæða nýta sem við munum í raun 1045 00:43:00,820 --> 00:43:04,970 tala um í nokkrar vikur, sem er almennt vísa til einhvern veginn svikull 1046 00:43:04,970 --> 00:43:09,090 tölva í að fara vel út fyrir landamæri minni 1047 00:43:09,090 --> 00:43:11,410 að það ætti að hafa, og finna eitthvað safaríkur 1048 00:43:11,410 --> 00:43:13,530 í því memory-- a lykilorð, ef til vill, leið 1049 00:43:13,530 --> 00:43:16,990 af sniðganga sumir raðnúmer athuga, eða bara almennt fær 1050 00:43:16,990 --> 00:43:20,360 að plata tölva er að framkvæma númer sem ekki var ætlað. 1051 00:43:20,360 --> 00:43:22,360 En við skulum koma aftur til veruleika fyrir aðeins augnablik 1052 00:43:22,360 --> 00:43:24,550 þar sem þetta forrit var útfærð með strlen, 1053 00:43:24,550 --> 00:43:26,110 og kynna eitt hérna. 1054 00:43:26,110 --> 00:43:30,030 Hvað er nýtt meðal þessara efstu þremur línum? 1055 00:43:30,030 --> 00:43:30,910 >> Svo string punktur klst. 1056 00:43:30,910 --> 00:43:35,490 Það kemur í ljós að það er þetta bókasafn heitir String Dot H, eða String Library, 1057 00:43:35,490 --> 00:43:38,490 sem haus skrá, svo að segja, er band punktur klst sem gefur mér 1058 00:43:38,490 --> 00:43:40,860 aðgang að þessum strlen virka. 1059 00:43:40,860 --> 00:43:43,841 Ef ég sleppa því, þýðanda er að fara að æpa á mig í einhverri mynd. 1060 00:43:43,841 --> 00:43:44,590 En þú veist hvað? 1061 00:43:44,590 --> 00:43:46,090 Nú skulum fá raunverulega nuanced. 1062 00:43:46,090 --> 00:43:50,820 Í samræmi 22, eitthvað góður af inefficient-- illa hannað, 1063 00:43:50,820 --> 00:43:53,990 arguably-- um þessa línu af kóða. 1064 00:43:53,990 --> 00:43:56,280 Hugsaðu til baka um hvernig fyrir-lykkju sé framfylgt 1065 00:43:56,280 --> 00:44:00,140 og hvaða skref gerast aftur og aftur og again-- í frumstilling, 1066 00:44:00,140 --> 00:44:04,110 ástand, kóðinn sem fær framkvæmt, þá stighækkun 1067 00:44:04,110 --> 00:44:07,880 eða breyting því skilyrði, þá kóðann, þá breyting, þá 1068 00:44:07,880 --> 00:44:11,280 ástand, þá kóðann, þá breyting, og svo framvegis. 1069 00:44:11,280 --> 00:44:15,320 Svo það gæti verið smá áhyggjuefni eða illa gert hér? 1070 00:44:15,320 --> 00:44:16,387 Já, í bláu. 1071 00:44:16,387 --> 00:44:18,220 Áhorfendur: strlen er kallað margir, margir sinnum. 1072 00:44:18,220 --> 00:44:20,654 1073 00:44:20,654 --> 00:44:21,320 Ræðumaður 1: Já. 1074 00:44:21,320 --> 00:44:23,700 Svo strlen heitir oft, en það er 1075 00:44:23,700 --> 00:44:27,113 lengd nafni Zamyla er að fyrsta skipti sem lykkja keyrir? 1076 00:44:27,113 --> 00:44:27,860 >> Áhorfendur: Six. 1077 00:44:27,860 --> 00:44:28,110 >> Ræðumaður 1: Six. 1078 00:44:28,110 --> 00:44:30,976 Jæja, hvað er lengd hennar nafni í annað sinn fyrir framkvæmir? 1079 00:44:30,976 --> 00:44:31,432 >> Áhorfendur: Six. 1080 00:44:31,432 --> 00:44:31,890 >> Ræðumaður 1: Allt í lagi. 1081 00:44:31,890 --> 00:44:32,720 Það er samt sex. 1082 00:44:32,720 --> 00:44:33,220 Ekki satt? 1083 00:44:33,220 --> 00:44:35,260 Nafnið Zarla hefur ekki breytt, jafnvel þótt ég er að leita 1084 00:44:35,260 --> 00:44:38,240 á aðeins hluta af bréfum í nafni hennar. 1085 00:44:38,240 --> 00:44:41,349 Og svo sú staðreynd að ég er í raun spyrja þessa spurningu, hvað er 1086 00:44:41,349 --> 00:44:44,640 lengd Zamyla, hvað er lengd af Zamyla, hvað er lengd Zamyla, 1087 00:44:44,640 --> 00:44:47,990 sex aðskilin sinnum, eða sjö jafnvel er bara heimskur, 1088 00:44:47,990 --> 00:44:50,390 því það er óbreytanleg sem svar. 1089 00:44:50,390 --> 00:44:53,550 Og svo það sem ég gat í raun gera er this-- í streng einum 1090 00:44:53,550 --> 00:44:55,680 Ég er með ívið betri útgáfu hér. 1091 00:44:55,680 --> 00:45:00,110 There-- whoops-- string tvö sem ég hef eilitlu betri útgáfa þar 1092 00:45:00,110 --> 00:45:05,010 Ég this-- staðinn af réttlátur Frumstilli i 0, ég líka með kommu 1093 00:45:05,010 --> 00:45:07,990 lýsa annað breytu sem heitir n- Ég þarf ekki að segja int aftur. 1094 00:45:07,990 --> 00:45:09,220 Ég ætti ekki í raun. 1095 00:45:09,220 --> 00:45:10,380 En ég segi n. 1096 00:45:10,380 --> 00:45:13,610 Og þá er ég frumstilla n að að strlen af ​​N, þannig að nú 1097 00:45:13,610 --> 00:45:17,110 hversu oft er strlen fá fram í samtals? 1098 00:45:17,110 --> 00:45:17,610 Bara einu sinni. 1099 00:45:17,610 --> 00:45:20,257 Og svo er þetta það sem við er átt áðan um betri hönnun. 1100 00:45:20,257 --> 00:45:23,090 Reyndar númerið þitt er einu sinni rétt, fara aftur og hugsa um, 1101 00:45:23,090 --> 00:45:26,820 ég nota eins lítið minni eða nokkrar sekúndur 1102 00:45:26,820 --> 00:45:30,409 eða millisekúndur tölva tími sem hægt að framkvæma sumir vandamál? 1103 00:45:30,409 --> 00:45:32,200 Og ég ætla að fletta upp og bara nefna 1104 00:45:32,200 --> 00:45:34,283 að það er þetta minnst af null í þessari útgáfu, 1105 00:45:34,283 --> 00:45:36,390 en við munum koma aftur til að áður en langur. 1106 00:45:36,390 --> 00:45:41,010 Þar fyrir nú, við skulum taka a líta á þar sem þetta er að fara að leiða okkur. 1107 00:45:41,010 --> 00:45:44,110 Svo einn, kemur í ljós að nú að við höfum getu 1108 00:45:44,110 --> 00:45:46,860 að líta á einstökum persónum, við getum nýta eitthvað 1109 00:45:46,860 --> 00:45:50,807 frá viku 0 sem var mjög yfirnáttúrulegt og konar uninteresting á þeim tíma. 1110 00:45:50,807 --> 00:45:53,390 En nú, og sérstaklega þegar við fá að Dulmálsvísindi í viku, 1111 00:45:53,390 --> 00:45:54,820 það er að fara að vera nokkuð öflug. 1112 00:45:54,820 --> 00:45:57,450 Það kemur í ljós að sum Gögn types-- ints og flýtur 1113 00:45:57,450 --> 00:46:00,300 og stafir og strengir og annað things-- sumir þeirra 1114 00:46:00,300 --> 00:46:02,800 getur verið mjög auðvelt að breyta í annað. 1115 00:46:02,800 --> 00:46:05,840 >> Til dæmis, þegar við ræddum um ASCII nokkurn tíma ago-- hér er 1116 00:46:05,840 --> 00:46:07,796 höfuðborg bréf A til M, punktur, punktur, 1117 00:46:07,796 --> 00:46:12,530 dot-- við sögðum að það er kortlagning milli þessara bókstafa og tölustafa. 1118 00:46:12,530 --> 00:46:14,970 Og í raun, heldur það satt fyrir lágstöfum eins og heilbrigður. 1119 00:46:14,970 --> 00:46:17,470 Lágstafir a er 97, höfuðborg a er 65. 1120 00:46:17,470 --> 00:46:20,860 Og það er a tala í ASCII, sem er bara þetta kortlagning 1121 00:46:20,860 --> 00:46:23,240 kerfi fyrir öllum þeim öðrum bréfum. 1122 00:46:23,240 --> 00:46:25,030 Svo hvað þýðir það? 1123 00:46:25,030 --> 00:46:28,390 Jæja, ég ætla að fara á undan og opna upp alvöru fljótt eitthvað sem kallast 1124 00:46:28,390 --> 00:46:31,240 ASCII 0, sem flest er athugasemdir. 1125 00:46:31,240 --> 00:46:33,860 Og aftur á netinu sem þú getur alltaf litið í gegnum athugasemdir. 1126 00:46:33,860 --> 00:46:36,180 >> Og kíkja hvað þetta er að fara að gera. 1127 00:46:36,180 --> 00:46:38,410 Svo það er got a aðalæð virka. 1128 00:46:38,410 --> 00:46:41,490 Ég hef harður-dulmáli tölurnar bara fyrir nú, vegna þess að ég veit hvað ég er að gera. 1129 00:46:41,490 --> 00:46:42,950 Ég veit hvað ég vil sjá hér. 1130 00:46:42,950 --> 00:46:45,220 Og ég hef frumstilla ég að 65. 1131 00:46:45,220 --> 00:46:48,490 Og ég er að telja upp gegnum 26 bréf alls. 1132 00:46:48,490 --> 00:46:52,990 Og hvað er ég að fara að prenta eina línu í einu 1133 00:46:52,990 --> 00:46:54,930 ef þú getur túlkað þetta hápunktur línu? 1134 00:46:54,930 --> 00:46:55,970 Hvað fær prentað? 1135 00:46:55,970 --> 00:46:56,797 Já. 1136 00:46:56,797 --> 00:46:57,264 >> Áhorfendur: Ert þú að fara að prenta bréf sem 1137 00:46:57,264 --> 00:46:59,805 svarar til kort af bréf gildi og tala gildi? 1138 00:46:59,805 --> 00:47:01,199 1139 00:47:01,199 --> 00:47:01,990 Ræðumaður 1: Einmitt. 1140 00:47:01,990 --> 00:47:04,740 Ég ætla að prenta bréf sem svarar til integer, 1141 00:47:04,740 --> 00:47:06,131 og öfugt, eins og hér segir. 1142 00:47:06,131 --> 00:47:08,880 Jæja þetta, einhver sagði áðan, er bara tákn fyrir bleikju. 1143 00:47:08,880 --> 00:47:09,490 Það er enn. 1144 00:47:09,490 --> 00:47:12,280 Þetta, auðvitað, er tákn fyrir að int-- ekki ný lína. 1145 00:47:12,280 --> 00:47:18,140 Og nú eftir, fyrsta gildi mína að Ég er að tengja í fyrir þessi tákn 1146 00:47:18,140 --> 00:47:22,320 er ekki bara I. ég er að segja, í sviga, bleikju I, 1147 00:47:22,320 --> 00:47:26,700 sem parenthetical bleikju er segja þýðanda, meðhöndla ég 1148 00:47:26,700 --> 00:47:28,490 ekki það sem það er, sem er tala. 1149 00:47:28,490 --> 00:47:30,490 Meðhöndla það eins og raunveruleg persóna. 1150 00:47:30,490 --> 00:47:34,490 Í annarri gildi ég tengja in-- I-- ætti bara að vera tala. 1151 00:47:34,490 --> 00:47:38,140 >> Þannig að ef ég saman þetta program-- svo er þetta gera ASCII 0, 1152 00:47:38,140 --> 00:47:41,720 punktur rista ASCII 0-- Ég fæ bara Þessi handhæga litla graf sem 1153 00:47:41,720 --> 00:47:44,950 sýnir mér allar hugsanlegar kortlagning án þess að þurfa að hugsa það 1154 00:47:44,950 --> 00:47:46,450 um eða reikna það út á eigin vegum. 1155 00:47:46,450 --> 00:47:48,783 Og ég ætla líka að prenta út, taka eftir lágstöfum, 1156 00:47:48,783 --> 00:47:51,410 því nokkrum línum síðar, ég einnig prentað út þessa kortlagning 1157 00:47:51,410 --> 00:47:53,737 eins og heilbrigður, sem er bara að segja að þegar þú skilur 1158 00:47:53,737 --> 00:47:55,570 hvað er að gerast undir hetta, getur þú 1159 00:47:55,570 --> 00:47:57,111 sjálfkrafa umbreyta fram og til baka. 1160 00:47:57,111 --> 00:48:00,160 Og í raun, ef einhver ykkar alltaf gerði þetta í grunnskóla 1161 00:48:00,160 --> 00:48:03,490 eða heyrt um einhvern mythically taka mið 1162 00:48:03,490 --> 00:48:05,620 og liggur það til hans eða vinkona hennar í bekknum, 1163 00:48:05,620 --> 00:48:08,300 en þú spæna á bréf með eins A verður B, 1164 00:48:08,300 --> 00:48:11,240 og B verður C, eða eitthvað flóknara en það, vel, 1165 00:48:11,240 --> 00:48:13,410 hvernig væri að fara um framkvæmd að sem krakki? 1166 00:48:13,410 --> 00:48:16,340 Jæja, þú bara svona vita A verður B, B verður C, 1167 00:48:16,340 --> 00:48:19,700 en stærðfræðilega, hvað var að strákurinn gera? 1168 00:48:19,700 --> 00:48:22,050 Hvað varstu að bæta við hvern staf? 1169 00:48:22,050 --> 00:48:23,340 Í raun, 1. 1170 00:48:23,340 --> 00:48:27,740 >> Svo, það er þegar þú skiptir A til B svona eins og að breyta 65 í 66, 1171 00:48:27,740 --> 00:48:29,590 sem stærðfræðilega þýðir bara bæta 1. 1172 00:48:29,590 --> 00:48:33,300 Og svo ef þú varst að innleiða að lítið villandi tækni 1173 00:48:33,300 --> 00:48:36,380 fyrir kennara í kóða, þú gæti gert nákvæmlega það bara 1174 00:48:36,380 --> 00:48:38,552 með því að bæta einum staf saman. 1175 00:48:38,552 --> 00:48:40,260 Svo áður en langt, við erum fara að sjá hvernig við 1176 00:48:40,260 --> 00:48:43,300 geta nýtt sér það að í raun og veru virkilega Scramble og Unscramble 1177 00:48:43,300 --> 00:48:43,991 upplýsingar. 1178 00:48:43,991 --> 00:48:47,240 Í millitíðinni, ég veit að við höfum byrjað að kynna nokkrar aðrar bókasöfnum 1179 00:48:47,240 --> 00:48:48,990 here-- strengurinn einn dag. 1180 00:48:48,990 --> 00:48:51,180 Og mjög hjálpsamur staður vonandi þú munt finna 1181 00:48:51,180 --> 00:48:55,010 heitir reference.cs50.net, sem kennara hafa sett saman, 1182 00:48:55,010 --> 00:48:57,510 þannig að ef þú vilt að líta upp hvernig strlen verk, 1183 00:48:57,510 --> 00:48:59,300 þú getur byrjað að skrifa nafn fallsins, 1184 00:48:59,300 --> 00:49:02,890 smelltu strlen þar, og þá a minna þægilegt skýring 1185 00:49:02,890 --> 00:49:03,700 er að fara að birtast. 1186 00:49:03,700 --> 00:49:06,880 Eða ef þú vilt opinbera Linux-undirstaða skýringu, 1187 00:49:06,880 --> 00:49:08,945 þú getur smellt meira notalega efst til hægri, og það 1188 00:49:08,945 --> 00:49:12,070 mun kynna sömu upplýsingar, en í flóknari kjörum. 1189 00:49:12,070 --> 00:49:15,070 Það er gagnlegt úrræði til í raun veit hvað allt gerir. 1190 00:49:15,070 --> 00:49:17,320 >> Næst þegar við erum að fara að taka a líta á Ovaltine 1191 00:49:17,320 --> 00:49:20,070 og fleiri, og kynna okkur í heim dulmál. 1192 00:49:20,070 --> 00:49:21,930 Áður þá munum við sjá þú síðar í þessari viku. 1193 00:49:21,930 --> 00:49:23,390 Og nú, Colton Ogden. 1194 00:49:23,390 --> 00:49:26,730 Sjáumst á miðvikudag. 1195 00:49:26,730 --> 00:49:30,216 >> [TÓNLIST spila] 1196 00:49:30,216 --> 00:49:33,702 >> [TÓNLIST spila] 1197 00:49:33,702 --> 00:49:38,682 1198 00:49:38,682 --> 00:49:42,200 >> Ræðumaður 1: Hvað [Bleep] ertu að gera? 1199 00:49:42,200 --> 00:49:45,720 >> Ræðumaður 1: Ég er að borða eftirrétt minn? 1200 00:49:45,720 --> 00:49:47,160 Hvernig borðar þú það? 1201 00:49:47,160 --> 00:49:47,860 Með höndunum? 1202 00:49:47,860 --> 00:49:54,050 1203 00:49:54,050 --> 00:49:57,940 >> [TÓNLIST spila] 1204 00:49:57,940 --> 00:50:03,453