1 00:00:00,000 --> 00:00:02,742 >> [TÓNLIST spila] 2 00:00:02,742 --> 00:00:05,030 3 00:00:05,030 --> 00:00:09,090 >> ANDI Peng: Þetta er CS50, og velkomið að viku tvö kafla. 4 00:00:09,090 --> 00:00:11,740 Þetta er í raun á meðan viku tveir class-- okkar í raun, 5 00:00:11,740 --> 00:00:14,550 fyrstu viku sem við höfum haft kafla. 6 00:00:14,550 --> 00:00:18,897 Sýning af höndum, hversu margir af ykkur öllum kom til frábær lið síðustu viku? 7 00:00:18,897 --> 00:00:19,480 OK, það er allt í lagi. 8 00:00:19,480 --> 00:00:20,020 Það er allt í lagi. 9 00:00:20,020 --> 00:00:23,110 Hversu margir af þú horfði frábær kafla síðustu viku? 10 00:00:23,110 --> 00:00:23,610 OK. 11 00:00:23,610 --> 00:00:25,702 Og þú krakkar gerði fínt á vandamálinu setja einn? 12 00:00:25,702 --> 00:00:28,660 Þannig að ég ætla að taka það sem við höfum fullt af mjög greindur krakka 13 00:00:28,660 --> 00:00:32,310 í þessum flokki og það verður allt í lagi. 14 00:00:32,310 --> 00:00:33,180 OK. 15 00:00:33,180 --> 00:00:33,980 Svo first-- 16 00:00:33,980 --> 00:00:37,900 17 00:00:37,900 --> 00:00:41,090 >> Fyrst, við erum bara að fara að stuttlega fara yfir dagskrá í dag. 18 00:00:41,090 --> 00:00:42,700 Við munum tala um námskeið skipulagning. 19 00:00:42,700 --> 00:00:45,480 A einhver fjöldi af þú sennilega hefur einhverjar spurningar varðandi 20 00:00:45,480 --> 00:00:46,920 hvernig hlutirnir keyra í þessu námskeiði. 21 00:00:46,920 --> 00:00:47,897 Við munum svara þeim. 22 00:00:47,897 --> 00:00:49,730 Við erum að fara að stuttlega fara yfir lykkjur í tilfelli 23 00:00:49,730 --> 00:00:51,410 eitthvað af ykkur ungfrú frábær kafla. 24 00:00:51,410 --> 00:00:53,240 Við munum tala um ASCII kortlagning. 25 00:00:53,240 --> 00:00:56,180 Við munum tala um fylki, aðgerðir, stjórn lína rifrildi. 26 00:00:56,180 --> 00:01:00,210 Og að lokum, hvað þú krakkar sennilega allir virkilega að vera hér til að fræðast um, 27 00:01:00,210 --> 00:01:01,270 er pset2 þitt. 28 00:01:01,270 --> 00:01:04,209 Við munum hafa sumir ágætur bragðarefur og ábendingar um hvernig á að gera það. 29 00:01:04,209 --> 00:01:07,910 30 00:01:07,910 --> 00:01:08,690 >> OK. 31 00:01:08,690 --> 00:01:11,450 Einnig, í öðru lagi, höfum við hellingur af sælgæti hér. 32 00:01:11,450 --> 00:01:13,583 Einhver sem hefur gaman nammi, bara koma upp hér. 33 00:01:13,583 --> 00:01:14,430 Grípa sumir. 34 00:01:14,430 --> 00:01:15,100 Ég er með fullt. 35 00:01:15,100 --> 00:01:16,390 Við hafa a tonn á skrifstofunni. 36 00:01:16,390 --> 00:01:18,230 Ég í raun ekki vilja að borða nammi allan daginn. 37 00:01:18,230 --> 00:01:20,300 Þú krakkar ættu að borða allt nammi, vegna þess að ég færði það hér fyrir ykkur. 38 00:01:20,300 --> 00:01:20,990 Bara borða nammi. 39 00:01:20,990 --> 00:01:24,080 Það verður nammi hvert kafla. 40 00:01:24,080 --> 00:01:25,330 >> Svo fyrst, hver er ég? 41 00:01:25,330 --> 00:01:27,080 Mitt nafn er Andi Peng. 42 00:01:27,080 --> 00:01:30,270 Ég er yfirmaður TA CS50 hér í Yale. 43 00:01:30,270 --> 00:01:32,540 Og auk þess sem mun ég einnig be-- 44 00:01:32,540 --> 00:01:35,600 ef einhver myndi like-- gangi félagi, öxl til að gráta á. 45 00:01:35,600 --> 00:01:39,140 Ef kvöldið áður vegna pset þinnar, þú hefur ekki hugmynd um hvað er að gerast, 46 00:01:39,140 --> 00:01:40,080 lamdir mig upp. 47 00:01:40,080 --> 00:01:42,770 Við munum commiserate saman, et cetera. 48 00:01:42,770 --> 00:01:46,100 Bara veit að ég er hér sem úrræði fyrir þig sem fremstu víglínu 49 00:01:46,100 --> 00:01:51,830 í að hjálpa ykkur að reikna út hvernig til að leysa vandamál í CS50 og víðar. 50 00:01:51,830 --> 00:01:54,590 >> Netfangið mitt er andi.peng@yale.edu. 51 00:01:54,590 --> 00:01:58,390 Ég líka að senda út mann tölvupóst með símanúmeri minn í það 52 00:01:58,390 --> 00:02:01,860 svo að ekki allir á Netið getur séð símanúmerið mitt. 53 00:02:01,860 --> 00:02:03,640 Feel frjáls til að hringja í mig hvenær sem er. 54 00:02:03,640 --> 00:02:07,510 Í alvöru, síminn minn er venjulega fest við hönd mína. 55 00:02:07,510 --> 00:02:10,240 Ég kann ekki að svara innan nokkra mínútna. 56 00:02:10,240 --> 00:02:11,984 Ég kann ekki að svara innan fárra klukkustunda. 57 00:02:11,984 --> 00:02:14,400 En ég get ábyrgst að þú, ef þú að senda mér netpóst, ef þú kallar mig, 58 00:02:14,400 --> 00:02:17,404 texta mig, mun ég svara innan 24 klst. 59 00:02:17,404 --> 00:02:19,820 Oftsinnis, mun ég svara fyrir að vegna þess að ég skil 60 00:02:19,820 --> 00:02:23,900 að allir fékk nokkur vandamál, og þú vilt svörin 61 00:02:23,900 --> 00:02:26,110 til að svara mjög fljótt. 62 00:02:26,110 --> 00:02:28,945 >> Hins vegar, ef þú kallar me 30 mínútum fyrir 63 00:02:28,945 --> 00:02:31,570 þessi stykki sem er vegna Fimmtudagur night-- vera eins, Andi, hjálpa mér, 64 00:02:31,570 --> 00:02:35,380 Ég hef ekki started-- ég gæti gefið þú sem öxl að gráta á. 65 00:02:35,380 --> 00:02:41,520 En það kann að vera tími til að hugsa um hvernig á að ekki gera það næst. 66 00:02:41,520 --> 00:02:44,040 OK. 67 00:02:44,040 --> 00:02:44,944 Oops. 68 00:02:44,944 --> 00:02:45,850 Hvernig fer ég aftur? 69 00:02:45,850 --> 00:02:48,140 Það sem við förum. 70 00:02:48,140 --> 00:02:52,310 >> Svo í þessu námskeiði höfum við tonn af stuðningi við alla. 71 00:02:52,310 --> 00:02:54,640 Auk þess að aðeins kafla hér, sem þér 72 00:02:54,640 --> 00:02:57,000 í hverri viku fá að eyða 90 dásamlegt mínútur með mér, 73 00:02:57,000 --> 00:02:58,330 Við höfum einnig skrifstofutíma. 74 00:02:58,330 --> 00:03:01,021 Hversu margir af ykkur hafa þegar verið að skrifstofutíma um hjálp? 75 00:03:01,021 --> 00:03:01,520 Great. 76 00:03:01,520 --> 00:03:05,700 Það er mjög gott að sjá, vegna þess að við hafa starfsfólk yfir 45 Tas og VS 77 00:03:05,700 --> 00:03:11,780 þjálfaðir fyrir þetta námskeið sem eru hér fyrir að hjálpa ykkur með psets þínum. 78 00:03:11,780 --> 00:03:14,580 >> Mánudaga þeir eru haldnir í Teal Salurinn í 17 Hill House hér 79 00:03:14,580 --> 00:03:15,350 í Yale. 80 00:03:15,350 --> 00:03:17,349 Þriðjudaga og fimmtudaga, þeir eru haldnir í Commons. 81 00:03:17,349 --> 00:03:20,010 08:00 til 11:00 nánast alla virka daga. 82 00:03:20,010 --> 00:03:21,620 Komdu inn, koma út. 83 00:03:21,620 --> 00:03:24,030 Allir vandamál, engin problem-- bara koma á í, 84 00:03:24,030 --> 00:03:26,650 og þá munum við hjálpa þér út með það. 85 00:03:26,650 --> 00:03:31,640 >> Í öðru lagi, í viðbót við skrifstofutíma og hlutar, höfum við einnig stuttur. 86 00:03:31,640 --> 00:03:35,930 Hefur einhver séð nokkra af stuttbuxur eða walkthroughs í myndbönd 87 00:03:35,930 --> 00:03:36,750 á heimasíðu? 88 00:03:36,750 --> 00:03:37,250 OK. 89 00:03:37,250 --> 00:03:39,510 Svo þeir eru í raun, mjög gagnlegt. 90 00:03:39,510 --> 00:03:42,470 Yndisleg Harvard framleiðslu okkar lið þarna á þeim skóla 91 00:03:42,470 --> 00:03:47,910 norðan, þeir hafa tekið og framleitt Þetta ótrúlegur Walkthrough myndbönd. 92 00:03:47,910 --> 00:03:52,290 >> Þeir ætla að taka þig skref fyrir skref í gegnum hvernig á að fara um að leysa vandamál. 93 00:03:52,290 --> 00:03:56,340 Oftsinnis, ef þú ert óviss um einfalt hugtak, eintölu hugtak, 94 00:03:56,340 --> 00:03:59,780 taka a líta, því að við höfum sennilega stutt á það einhvers staðar á heimasíðu okkar. 95 00:03:59,780 --> 00:04:03,800 Og það er yfirleitt mikill úrræði að leita þegar þú ert fyrst 96 00:04:03,800 --> 00:04:06,510 glataður á hvernig á að höndla vandamál. 97 00:04:06,510 --> 00:04:09,750 >> Í þriðja lagi höfum við einnig study50 og reference50. 98 00:04:09,750 --> 00:04:15,650 Svo læra 50 á website er bara hlekkur. 99 00:04:15,650 --> 00:04:21,500 Það er, held ég, study.cs50.net eða eitthvað svoleiðis. 100 00:04:21,500 --> 00:04:22,860 Bara Google það. 101 00:04:22,860 --> 00:04:24,229 Við höfum fullt af glærur. 102 00:04:24,229 --> 00:04:26,770 Við höfum fullt af stuttbuxur og walkthroughs-- það allt tekið saman 103 00:04:26,770 --> 00:04:31,070 mjög gott og snyrtilegur fyrir ykkur öllum að fletta í gegnum, sjá neina hugmyndir 104 00:04:31,070 --> 00:04:32,860 sem þú ert óviss um. 105 00:04:32,860 --> 00:04:35,920 Það myndi líklega falla þarna í study50. 106 00:04:35,920 --> 00:04:37,640 >> Reference50-- svipuð. 107 00:04:37,640 --> 00:04:41,510 Við höfum mikið af ýmsum athugasemdum staðar fyrir ráðstöfunar. 108 00:04:41,510 --> 00:04:44,450 Og loks, höfum við það sem er kallað CS50 Ræðið, 109 00:04:44,450 --> 00:04:48,082 vettvangur þar sem, ef kvöldið áður þú ert að gera vandamál, segja, 110 00:04:48,082 --> 00:04:49,880 þú ert með spurningu. 111 00:04:49,880 --> 00:04:52,340 Skráðu þig inn á CS50 Ræðið. 112 00:04:52,340 --> 00:04:53,190 Birta spurninguna. 113 00:04:53,190 --> 00:04:55,820 Og svo einn af hundreds-- kannski, thousands-- jafnaldra 114 00:04:55,820 --> 00:04:57,960 taka þennan flokk á netinu mun skrá þig inn. 115 00:04:57,960 --> 00:05:01,182 Og kannski einhver getur fengið svarið áður en TA dós. 116 00:05:01,182 --> 00:05:03,390 Það er í raun bara á netinu vettvangur sem við getum öll 117 00:05:03,390 --> 00:05:04,556 nota til að ræða vandamál okkar. 118 00:05:04,556 --> 00:05:06,483 Það er flott. 119 00:05:06,483 --> 00:05:10,660 120 00:05:10,660 --> 00:05:11,550 >> OK. 121 00:05:11,550 --> 00:05:13,220 Svo setur vandamál. 122 00:05:13,220 --> 00:05:17,840 Við erum að fara rétt í þykkt Heimadæmi tvö. 123 00:05:17,840 --> 00:05:20,570 A einhver fjöldi af okkur hafa nú þegar barist í gegnum vandamál setja einn. 124 00:05:20,570 --> 00:05:24,460 Við vitum nú þegar að kannski að bíða fyrir í gærkvöldi til að gera pset þinn 125 00:05:24,460 --> 00:05:28,170 er ekki smartest hlutur til gera í CS50. 126 00:05:28,170 --> 00:05:32,380 >> Ábendingar og ábendingar raun fyrir Árangur er lesa alla sérstakur. 127 00:05:32,380 --> 00:05:36,270 Hversu margir af þú ert nú þegar lesa sérstakur fyrir pset 2? 128 00:05:36,270 --> 00:05:36,770 OK. 129 00:05:36,770 --> 00:05:39,840 Það er solid magn. 130 00:05:39,840 --> 00:05:43,210 Ég veit að þú krakkar hafa sennilega viðurkennt nú sérstakur eru mjög lengi. 131 00:05:43,210 --> 00:05:45,700 Þeir eru mjög, mjög langur. 132 00:05:45,700 --> 00:05:49,630 >> Það er mjög erfitt að lesa hverja línu þess vandlega orð með orði. 133 00:05:49,630 --> 00:05:52,780 Þú vilt bara Lögð hvar það segir þér að gera eitthvað. 134 00:05:52,780 --> 00:05:54,459 Ég get ábyrgst að þú, ekki gera það. 135 00:05:54,459 --> 00:05:56,750 Ef þú gerir það, þú ert líklega að missa eitthvað 136 00:05:56,750 --> 00:05:58,458 þar sem það segir þér hvernig á að byrja a vandamál 137 00:05:58,458 --> 00:06:01,140 eða það segir þér hvað á að nafn vandamálið eða það segir þér, 138 00:06:01,140 --> 00:06:03,720 þetta er líklega besta leiðin að byrja að gera vandamál þitt. 139 00:06:03,720 --> 00:06:05,050 Og þá verður þú að vera glataður. 140 00:06:05,050 --> 00:06:08,219 >> Þegar þú reynir að lesa þinn sérstakur hálfa leið í gegnum, 141 00:06:08,219 --> 00:06:10,510 a einhver fjöldi af the mikilvægur information-- í að þú ert ekki 142 00:06:10,510 --> 00:06:12,260 að fara að vera fær til raunverulega aðgang. 143 00:06:12,260 --> 00:06:13,219 Svo lesa alla sérstakur. 144 00:06:13,219 --> 00:06:15,468 Reyndu að lesa alla sérstakur áður en þú kemur að hluta, 145 00:06:15,468 --> 00:06:17,360 því þá, þegar við tala um pset, 146 00:06:17,360 --> 00:06:21,070 við getum öll haft hugmynd um hvað er að gerast. 147 00:06:21,070 --> 00:06:25,169 >> Í öðru lagi, þetta er hugtak að ég vil vísa 148 00:06:25,169 --> 00:06:26,710 mikið um námskeið önn. 149 00:06:26,710 --> 00:06:30,070 En í raun, hitta okkur hálfa leið, ekki satt? 150 00:06:30,070 --> 00:06:33,970 Me, sem ta og Jason sem auðvitað framkvæmdastjóri og Scaz sem prófessor þinn 151 00:06:33,970 --> 00:06:37,120 og David sem prófessor og allt önnur yndislegu TAS á þessu námskeiði, 152 00:06:37,120 --> 00:06:39,830 aðstoðarmenn í þessu course-- við munum gera okkar besta 153 00:06:39,830 --> 00:06:42,965 til að tryggja að þú ert að stilla upp til að ná árangri í þessu námskeiði. 154 00:06:42,965 --> 00:06:43,840 Við munum halda kafla. 155 00:06:43,840 --> 00:06:44,870 Við munum halda skrifstofutíma. 156 00:06:44,870 --> 00:06:47,087 Við munum svara símanum símtöl, svara tölvupóstinn, 157 00:06:47,087 --> 00:06:49,670 gera allt sem við getum til að gera viss spurningum þínum er svarað. 158 00:06:49,670 --> 00:06:51,460 >> Hins vegar hjálpa okkur út líka. 159 00:06:51,460 --> 00:06:52,450 Hitta okkur á miðri leið. 160 00:06:52,450 --> 00:06:56,040 Ef þú kemur til skrifstofutíma hafa ekki farið kafla, ekki 161 00:06:56,040 --> 00:07:02,060 hafa séð fyrirlestra, hafa engin hugmynd um hvað er að gerast, eins og, hjálpa mér. 162 00:07:02,060 --> 00:07:04,350 Ég ætla að vera eins og vel, ég er hryggur. 163 00:07:04,350 --> 00:07:06,410 Það kann að vera tími til að lána sem öxl að gráta á, 164 00:07:06,410 --> 00:07:08,959 vegna þess að ég er ekki viss hvað ég get gert til að hjálpa þér 165 00:07:08,959 --> 00:07:12,000 ef þú reynir ekki að minnsta kosti hjálp sjálfur svolítið í upphafi. 166 00:07:12,000 --> 00:07:12,910 Hitta okkur á miðri leið. 167 00:07:12,910 --> 00:07:15,020 Þú veist, vinsamlegast koma tilbúinn til að svara og fá 168 00:07:15,020 --> 00:07:16,353 tilbúinn til að taka þátt í því efni. 169 00:07:16,353 --> 00:07:19,342 Það gerir það svo miklu auðveldara fyrir alla sem taka þátt. 170 00:07:19,342 --> 00:07:22,970 Já, það er ansi mikið það. 171 00:07:22,970 --> 00:07:23,720 >> Flokkun. 172 00:07:23,720 --> 00:07:29,250 Svo á kennsluáætlun, það er nokkuð í-dýpt um hvernig við einkunn. 173 00:07:29,250 --> 00:07:32,440 En í raun, sundurliðun í þessu er 50% af gráðu þína 174 00:07:32,440 --> 00:07:34,530 verður psets, sem er yndislegt, því það er 175 00:07:34,530 --> 00:07:37,400 þar sem þú ert að eyða mikill Meirihluti auðvitað tíma þínum í. 176 00:07:37,400 --> 00:07:39,854 Skyndipróf 40%, og þitt Lokaverkefni verður 10%. 177 00:07:39,854 --> 00:07:42,520 Það verða tvær Skyndipróf allan að sjálfsögðu á önn. 178 00:07:42,520 --> 00:07:47,050 Ég held að tíma og dagsetningar eru einnig skráð á kennsluáætlun. 179 00:07:47,050 --> 00:07:49,210 >> Leiðin sem við munum að yfirferð psets þína 180 00:07:49,210 --> 00:07:53,930 er að við höfum í raun fjórir gildi sem við gefum hvern bekk. 181 00:07:53,930 --> 00:07:57,250 Við höfum gildi umfangi, rétttrúnaður, hönnun, og stíl. 182 00:07:57,250 --> 00:08:01,530 Svo eins og þú sérð, það er góður af okkar Formúlan fyrir útreikning psets. 183 00:08:01,530 --> 00:08:03,640 Þrír við gefum mest þyngd að réttmæti, 184 00:08:03,640 --> 00:08:06,140 því augljóslega þjálfara skal prófa í þeim tilvikum 185 00:08:06,140 --> 00:08:08,480 að við viljum það til að prófa fyrir. 186 00:08:08,480 --> 00:08:11,000 >> Þú krakkar hafa allir check50 ráðstöfunar. 187 00:08:11,000 --> 00:08:13,730 Það er mjög gagnlegur virka að þið getur allt 188 00:08:13,730 --> 00:08:17,560 hlaða kóða til netþjóna okkar, þar sem við munum athuga það fyrir þig. 189 00:08:17,560 --> 00:08:20,800 Og þú hefur séð þá frowny andlit, broskalla andlit. 190 00:08:20,800 --> 00:08:22,119 Þeir eru mjög, mjög gagnlegt. 191 00:08:22,119 --> 00:08:23,910 Vinsamlegast ekki vera nemandi sem eins tilraunir 192 00:08:23,910 --> 00:08:26,230 að hardcode í öllum svörum við þeim. 193 00:08:26,230 --> 00:08:30,050 Ég hef ákveðið séð pset hvar einhver sá allt gildi check50 194 00:08:30,050 --> 00:08:33,429 og þeir dulmáli bara erfitt in-- ef þessi tala, prenta út þetta númer. 195 00:08:33,429 --> 00:08:35,080 Ef þessi tala er að prenta út það númer. 196 00:08:35,080 --> 00:08:36,090 Ekki gera það. 197 00:08:36,090 --> 00:08:39,360 >> Jafnvel þótt tæknilega check50 er rétt, 198 00:08:39,360 --> 00:08:41,809 leið til að leysa í Vandamálið er ekki rétt. 199 00:08:41,809 --> 00:08:45,770 Svo bara nota check50 sparlega. 200 00:08:45,770 --> 00:08:48,497 En einnig að tryggja að þú skilja hvernig það er að virka, 201 00:08:48,497 --> 00:08:50,580 forritið er að virka í viðbót við check50, 202 00:08:50,580 --> 00:08:53,120 vegna þess að við getum ekki próf á hverjum hægt að ræða check50. 203 00:08:53,120 --> 00:08:55,440 Við munum vera að prófa nokkrar af þeim. 204 00:08:55,440 --> 00:09:00,390 >> Hönnun er í raun, hvernig vel hönnuð er númerið þitt? 205 00:09:00,390 --> 00:09:04,150 Ef þú ert að afrita og líma margfeldi línur af kóða margir, mörgum sinnum. 206 00:09:04,150 --> 00:09:06,960 Kannski þú ert ekki alveg bestu hönnun í kóðann þinn. 207 00:09:06,960 --> 00:09:09,470 Kannski er kominn tími til að bæta við að lykkja. 208 00:09:09,470 --> 00:09:12,090 Í meginatriðum, hér er það bara allt um að reyna að gera númerið þitt, 209 00:09:12,090 --> 00:09:17,010 reyna að skrifa kóðann þinn á eins skilvirkan hátt og auðið er svo að forritið keyrir 210 00:09:17,010 --> 00:09:19,630 eins fljótt og auðið er. 211 00:09:19,630 --> 00:09:20,996 >> Loks höfum við stíl. 212 00:09:20,996 --> 00:09:24,360 Svo er stíll góður af handahófskennt, huglægt hugtak. 213 00:09:24,360 --> 00:09:27,470 Ég veit að við höfum opinberlega stíl 50 leiðarvísir fyrir CS50, 214 00:09:27,470 --> 00:09:30,050 þar sem það segir þér, ó, þér ætti að hafa pláss hér. 215 00:09:30,050 --> 00:09:32,220 Þú ættir konar snið númerið þitt með þessum hætti. 216 00:09:32,220 --> 00:09:34,070 Þú ættir að nefna hlutina með þessum hætti. 217 00:09:34,070 --> 00:09:38,180 >> Ég er ekki alveg sama, í sjálfu sér, hvernig þú velur að stíll númerið þitt, 218 00:09:38,180 --> 00:09:39,840 bara svo lengi sem þú vera í samræmi. 219 00:09:39,840 --> 00:09:43,732 Til dæmis, ef þú vilt að hafðu bil eftir fjögurra þitt 220 00:09:43,732 --> 00:09:45,690 áður fjórum lykkja, bara gera það í hvert skipti. 221 00:09:45,690 --> 00:09:46,523 Ekki góður af að gera það. 222 00:09:46,523 --> 00:09:47,730 Ekki gera það ekki öðrum tímum. 223 00:09:47,730 --> 00:09:51,046 Ef þú vilt halda Curly axlabönd pláss á vissan hátt, 224 00:09:51,046 --> 00:09:52,170 bara alltaf að gera það þannig. 225 00:09:52,170 --> 00:09:54,628 Ekki góður af að gera það einhvers staðar hér og einhvers staðar ekki þar. 226 00:09:54,628 --> 00:09:57,010 Þegar við erum að flokka, það er mjög erfitt 227 00:09:57,010 --> 00:09:59,420 ef ég hef ekki hugmynd um hvernig þú ert að forsníða númerið þitt, 228 00:09:59,420 --> 00:10:02,064 hlutirnir eru wacky og af stað. 229 00:10:02,064 --> 00:10:04,980 Ef þú heldur bara það samræmi, það er miklu auðveldara fyrir mig sem meiri 230 00:10:04,980 --> 00:10:06,310 að vera fær um að lesa kóðann þinn. 231 00:10:06,310 --> 00:10:09,393 Það er miklu auðveldara fyrir þig sem nemanda að vera fær um að líta í gegnum kóðann þinn 232 00:10:09,393 --> 00:10:11,720 og sjá hvað er rangt við það rista hvers vegna það er mál. 233 00:10:11,720 --> 00:10:15,740 Stíll er einn af the auðveldlega það þú krakkar geta gert til að fá fullt skora. 234 00:10:15,740 --> 00:10:18,770 Í meginatriðum, ef þér þykir vænt bara, ef þú borgar fimm mínútur af athygli 235 00:10:18,770 --> 00:10:22,760 að númerið þitt í hverri viku, þú ættir vera að fá fullt stig stíl. 236 00:10:22,760 --> 00:10:26,020 >> Loks höfum við það sem er kallað margfaldað umfangs. 237 00:10:26,020 --> 00:10:28,890 Scope-- Ég veit að það er stór orð, sérstaklega í þessum flokki. 238 00:10:28,890 --> 00:10:31,030 En umfang, allt sem leiðir er að þú ert að reyna 239 00:10:31,030 --> 00:10:33,670 að psets eftir bestu getu þína. 240 00:10:33,670 --> 00:10:37,180 Ef þú kveikir á þremur af fjórum vandamálum þínum 241 00:10:37,180 --> 00:10:39,460 og ekki einu sinni reyna að seinast, ert þú sennilega 242 00:10:39,460 --> 00:10:41,630 að fara að missa nokkur stig á umfangi. 243 00:10:41,630 --> 00:10:44,560 >> Jafnvel ef þú byrjar bara vandamál, gera þitt besta til að ganga í gegnum það. 244 00:10:44,560 --> 00:10:47,691 Jafnvel ef það virkar ekki, snúa það í, því sem sýnir og sannar 245 00:10:47,691 --> 00:10:50,190 að okkur að þú ert að reyna, að þú reynt vandamálið sett 246 00:10:50,190 --> 00:10:51,430 eftir bestu getu þína. 247 00:10:51,430 --> 00:10:53,800 Og þá getum við gefið þér fullur stig fyrir umfangi. 248 00:10:53,800 --> 00:10:58,715 >> Svigrúm er einnig mjög mikilvægt að þegar við tala um lægsta pset skora falla. 249 00:10:58,715 --> 00:11:02,010 Svo á meðan að önn, hafa ykkur níu psets. 250 00:11:02,010 --> 00:11:05,340 Og við munum í raun að sleppa Lægsta skor úr þeim níu, 251 00:11:05,340 --> 00:11:07,670 en aðeins ef þú ert með fullt stig umfang. 252 00:11:07,670 --> 00:11:11,120 >> Þannig að ef þú kveikir í ófullnægjandi pset, Því miður getum við ekki falla sem einn, 253 00:11:11,120 --> 00:11:13,540 vegna umfangs þinn atriði voru ekki lokið. 254 00:11:13,540 --> 00:11:16,570 Svo jafnvel ef þú ert ansi viku þar sem þú ert að deyja og þú ert veikur 255 00:11:16,570 --> 00:11:20,040 eða þinn hundur deyr, kötturinn þinn deyr, og þú ert mikið með heimavinnu, 256 00:11:20,040 --> 00:11:21,074 bara reyna að pset. 257 00:11:21,074 --> 00:11:22,490 Gera það eftir bestu getu þína. 258 00:11:22,490 --> 00:11:23,840 Ef það virkar ekki, það skiptir ekki máli. 259 00:11:23,840 --> 00:11:24,506 Bara kveikja í. 260 00:11:24,506 --> 00:11:26,590 Að minnsta kosti getum við gefið þú bendir á viðleitni. 261 00:11:26,590 --> 00:11:28,510 >> A fyrir viðleitni í þessum flokki. 262 00:11:28,510 --> 00:11:30,170 Að minnsta kosti Lægsta skor falla fyrir viðleitni. 263 00:11:30,170 --> 00:11:32,354 Svo já. 264 00:11:32,354 --> 00:11:33,270 Það er ansi mikið það. 265 00:11:33,270 --> 00:11:36,521 Hjartarskinn einhver hafa spurningar þannig langt á hvernig við bekk í bekknum? 266 00:11:36,521 --> 00:11:37,187 Eða eitthvað af þessu? 267 00:11:37,187 --> 00:11:41,220 Eitthvað af þessu svo far-- köflum, skrifstofa klst? 268 00:11:41,220 --> 00:11:41,720 Cool. 269 00:11:41,720 --> 00:11:46,720 270 00:11:46,720 --> 00:11:47,800 OK. 271 00:11:47,800 --> 00:11:51,260 >> Þannig að þetta er efni sem ekki hefur gaman virkilega að tala um. 272 00:11:51,260 --> 00:11:53,084 Ég í raun ekki eins og að tala um það. 273 00:11:53,084 --> 00:11:55,250 Þið gera ekki raunverulega vilja að heyra mig tala um það. 274 00:11:55,250 --> 00:11:57,690 En því miður, við öll að tala um það. 275 00:11:57,690 --> 00:12:00,110 David var 20 mínútur á fyrirlestur að tala um það. 276 00:12:00,110 --> 00:12:02,580 Og það er efni akademískra heiðarleika. 277 00:12:02,580 --> 00:12:08,110 >> Þannig að við höfum öll hér sennilega skrifuð ritgerð einhvern tíma í Yale ferli okkar. 278 00:12:08,110 --> 00:12:11,800 Við höfum sennilega fengið fyrirlestur þar sem við höfum verið sagt að ekki plagiarize ritgerð okkar, 279 00:12:11,800 --> 00:12:13,940 því að vinna er ekki okkar. 280 00:12:13,940 --> 00:12:18,109 Í tölvunarfræði, höfum við sams konar hugtak. 281 00:12:18,109 --> 00:12:20,150 Öll vinna sem þú sendir inn, allt kóða sem þú skrifar 282 00:12:20,150 --> 00:12:21,900 ætti að vera númer sem þú hefur skrifað. 283 00:12:21,900 --> 00:12:24,280 Ætti ekki að vera kóðann sem þú hefur afritað frá einhvers staðar annars. 284 00:12:24,280 --> 00:12:26,777 Ætti ekki að vera númer sem þú hefur googled og plopped í 285 00:12:26,777 --> 00:12:28,360 og þú í raun ekki vita ef það virkar. 286 00:12:28,360 --> 00:12:32,440 Þú ert góður af tilfinningu hvað það er að gera, en í raun ekki. 287 00:12:32,440 --> 00:12:36,562 Hvenær í vafa, fyrst og fremst, það er bara sanngjarnt. 288 00:12:36,562 --> 00:12:38,520 Á námsskrá okkar, höfum við a heild listi af hlutum 289 00:12:38,520 --> 00:12:40,560 við sjáum sem sanngjarnt móti ekki sanngjarnt. 290 00:12:40,560 --> 00:12:43,820 >> Til dæmis, eðlileg er þú og vinur þinn 291 00:12:43,820 --> 00:12:47,360 ræða hvað er besta leiðin til að fara um rökrétt að leysa vandamál. 292 00:12:47,360 --> 00:12:48,910 Það er nokkuð sanngjarnt. 293 00:12:48,910 --> 00:12:53,244 Það myndi ekki vera sanngjarnt er ef þú krakkar komu saman, slegið inn sama kóða, 294 00:12:53,244 --> 00:12:54,410 og sneri í sama kóða. 295 00:12:54,410 --> 00:12:56,302 Það er ekki sanngjarnt. 296 00:12:56,302 --> 00:12:57,510 Sami hlutur, eins konar ritgerð. 297 00:12:57,510 --> 00:12:59,290 Ef þú vilt ræða með vini þínum, hey, 298 00:12:59,290 --> 00:13:00,220 þetta er það sem ég vil skrifa um. 299 00:13:00,220 --> 00:13:02,500 Þetta eru skrefin sem ég vil taka að skrifa um það, frábært. 300 00:13:02,500 --> 00:13:03,208 Það er dásamlegt. 301 00:13:03,208 --> 00:13:04,790 Vinsamlegast vinna með hvert öðru. 302 00:13:04,790 --> 00:13:06,540 Ef þið byrja skrifa það sama, 303 00:13:06,540 --> 00:13:10,020 snúa í sömu ritgerð, sem er minna lagi. 304 00:13:10,020 --> 00:13:13,200 Svo þegar þú ert í vafa, bara gera það ekki. 305 00:13:13,200 --> 00:13:16,940 >> Hér í CS50, hafa forskriftir að við sem hlaupa til gera sjálfvirkan til að prófa 306 00:13:16,940 --> 00:13:21,740 ekki aðeins rétt á númerið þitt, en einnig sérstöðu kóðann þinn. 307 00:13:21,740 --> 00:13:25,920 Svo vinsamlegast ekki setja okkur í stöðu þess að þurfa að vísa máli til EXCOMM. 308 00:13:25,920 --> 00:13:31,110 Vinsamlegast bara fyrir alla, við skulum bara gera þetta dásamlegur reynsla. 309 00:13:31,110 --> 00:13:33,600 Allir læra betur, við erum öll hamingjusamari, 310 00:13:33,600 --> 00:13:37,926 og við erum öll sett upp til að ná árangri í þessu námskeiði. 311 00:13:37,926 --> 00:13:39,800 Eitthvað sem er mjög sérstakt þessum flokki 312 00:13:39,800 --> 00:13:42,660 að ég held að allir ættu að raunverulega borga eftirtekt til er að við höfum 313 00:13:42,660 --> 00:13:44,930 það sem er kallað eftirsjá ákvæði í námskrá okkar. 314 00:13:44,930 --> 00:13:50,010 Svo í raun, innan 72 klukkustunda, ef þú telur að þú hafir gert eitthvað 315 00:13:50,010 --> 00:13:53,240 þú ert ekki alveg viss var við á, skaltu koma til okkar. 316 00:13:53,240 --> 00:13:57,220 Við lofum þér að innan 72 klukkustunda við munum fjalla um málið sjálf 317 00:13:57,220 --> 00:13:59,820 án þess að vísa til hærri yfirvald á sviði stjórnsýslu. 318 00:13:59,820 --> 00:14:03,100 >> Svo ef þú kemur til mín og segja: Andi, hey, ég er mjög leitt, 319 00:14:03,100 --> 00:14:07,620 en ég held að það er nokkrar línur í mínum númer í gærkvöldi að ég konar googled, 320 00:14:07,620 --> 00:14:10,120 fékk burt af Stack Flæða, afrita og líma, 321 00:14:10,120 --> 00:14:13,680 og ég er virkilega, virkilega miður um að láta mig vita. 322 00:14:13,680 --> 00:14:16,900 Vinsamlegast ekki bara láta það Fester og bara vona að ég grípa það. 323 00:14:16,900 --> 00:14:17,784 Við munum grípa það. 324 00:14:17,784 --> 00:14:18,450 Bara koma til mín. 325 00:14:18,450 --> 00:14:20,520 Láttu mig vita innan 72 klukkustunda. 326 00:14:20,520 --> 00:14:22,240 Við finnum út lausn. 327 00:14:22,240 --> 00:14:26,679 Og við loforð um að við munum ekki vísa til háskóla yfirvöld í meginatriðum. 328 00:14:26,679 --> 00:14:29,220 Svo það er í besta áhuga þinn bara að vera heiðarlegur við alla 329 00:14:29,220 --> 00:14:31,720 þátt í námskeiðinu. 330 00:14:31,720 --> 00:14:34,630 >> OK. 331 00:14:34,630 --> 00:14:35,240 OK. 332 00:14:35,240 --> 00:14:37,800 Svo nú, fljótt áður Ég flyt á, er einhver 333 00:14:37,800 --> 00:14:42,670 hefur einhverjar spurningar varðandi flutninga á hvernig námskeið við erum að fara að hlaupa, 334 00:14:42,670 --> 00:14:45,982 hvernig kafla eru að fara að hlaupa, eitthvað af því? 335 00:14:45,982 --> 00:14:46,711 OK. 336 00:14:46,711 --> 00:14:47,210 Já. 337 00:14:47,210 --> 00:14:48,126 >> Áhorfendur: [inaudible]? 338 00:14:48,126 --> 00:14:50,414 339 00:14:50,414 --> 00:14:51,080 ANDI Peng: Já. 340 00:14:51,080 --> 00:14:54,850 Svo quizzes-- hvernig margir af þú ert í Monday / Miðvikudagur kafla? 341 00:14:54,850 --> 00:14:56,700 Hversu margir af þú ert í Tuesday / fimmtudagur? 342 00:14:56,700 --> 00:14:58,550 OK, svo það er a solid hættu hér. 343 00:14:58,550 --> 00:15:00,900 Svo leið að við að keyra það í Yale er að við 344 00:15:00,900 --> 00:15:04,040 eru að fara að hafa tvo aðskilda quizzes-- einn fyrir hvern section-- sem 345 00:15:04,040 --> 00:15:06,160 verður tekið á bekknum. 346 00:15:06,160 --> 00:15:09,310 Ég held að það er október, í lok október, eitthvað svoleiðis, sem viku eitt 347 00:15:09,310 --> 00:15:10,794 af spurningakeppni. 348 00:15:10,794 --> 00:15:11,960 Já, svo bara koma að bekknum. 349 00:15:11,960 --> 00:15:13,920 Á þeim mánudag eða miðvikudag, þú munt taka prófið. 350 00:15:13,920 --> 00:15:16,336 Á þeim þriðjudag eða fimmtudag, þú munt taka aðra quiz. 351 00:15:16,336 --> 00:15:18,570 En sama efni verður fjallað. 352 00:15:18,570 --> 00:15:19,160 Já. 353 00:15:19,160 --> 00:15:20,660 Góð spurning. 354 00:15:20,660 --> 00:15:21,160 Já. 355 00:15:21,160 --> 00:15:23,260 >> Áhorfendur: Hvar eigum við fara að athuga einkunnir okkar? 356 00:15:23,260 --> 00:15:23,926 >> ANDI Peng: Já. 357 00:15:23,926 --> 00:15:28,420 Svo ég mun vera að senda út E-mail hvað hverri viku 358 00:15:28,420 --> 00:15:31,460 þegar Skyndipróf eru graded-- eða, Því miður, þegar psets er farið. 359 00:15:31,460 --> 00:15:34,120 Psets eru yfirleitt snúið í eftir hádegi eða föstudegi. 360 00:15:34,120 --> 00:15:37,540 Svo ég lofa að ég mun reyna að fá þá til baka til þín 361 00:15:37,540 --> 00:15:40,000 með því að hádegi af eftirfarandi föstudegi. 362 00:15:40,000 --> 00:15:44,950 >> Alltaf þegar ég einkunn í pset, mun ég senda út tilkynningu á bekk bókinni 363 00:15:44,950 --> 00:15:47,070 það segir þér skora Hægt er að skoða á netinu. 364 00:15:47,070 --> 00:15:52,022 Svo rétt í þessari viku, eftir að ég klára einkunnagjöf psets síðustu viku, 365 00:15:52,022 --> 00:15:54,230 þú krakkar vilja fá tölvupóst tilkynning að segja þér, 366 00:15:54,230 --> 00:15:55,870 hey þetta er þar sem þú fara að skoða einkunnum þínum. 367 00:15:55,870 --> 00:15:57,680 Og þú getur séð á hverjum sundurliðun einkunnum þínum. 368 00:15:57,680 --> 00:15:58,555 Þú getur séð ummæli. 369 00:15:58,555 --> 00:16:00,360 Oh, fljótur hlutur einnig. 370 00:16:00,360 --> 00:16:03,060 Kommentunum í the mikill Bókin er þar sem ég ætla sennilega 371 00:16:03,060 --> 00:16:05,300 eyða meirihluta af tíma einkunnagjöf mína. 372 00:16:05,300 --> 00:16:07,094 Svo það er einn hlutur mjög mikilvægt þegar 373 00:16:07,094 --> 00:16:09,010 þú krakkar ert að skoða einkunna þínar á psets þínum 374 00:16:09,010 --> 00:16:11,400 er ekki aðeins að leita á líkamlegri skora 375 00:16:11,400 --> 00:16:14,630 en einnig að taka tíma til að raunverulega lesa athugasemdir mínar. 376 00:16:14,630 --> 00:16:17,820 >> Oft sem gefur þér endurgjöf eftir því hvernig þú ert að leysa vandamál. 377 00:16:17,820 --> 00:16:20,480 Ef þú þarft að gera eitthvað svolítið betur, 378 00:16:20,480 --> 00:16:24,080 uppbyggjandi gagnrýni yfirleitt er Besta gefið í þeim athugasemd hluti. 379 00:16:24,080 --> 00:16:26,950 Svo vinsamlegast, vinsamlegast, ég ætla að eyða tíma í að skrifa athugasemdir. 380 00:16:26,950 --> 00:16:30,440 Vinsamlegast, myndi ég raunverulega þakka það ef þið myndi lesa þær athugasemdir. 381 00:16:30,440 --> 00:16:31,170 OK. 382 00:16:31,170 --> 00:16:34,150 Cool. 383 00:16:34,150 --> 00:16:34,680 >> Allt í lagi. 384 00:16:34,680 --> 00:16:40,680 Þannig að við erum að fara að byrja að tala og bara að skoða fljótt 385 00:16:40,680 --> 00:16:45,040 sumir af efni frá viku núll bara þannig að við erum 386 00:16:45,040 --> 00:16:48,760 á hægri síðu fyrir farin vandamál þessari viku. 387 00:16:48,760 --> 00:16:52,600 Svo á meðan lykkja er einn af þremur gerðum af lykkjum 388 00:16:52,600 --> 00:16:54,510 við ræddum fyrr í þessum flokki. 389 00:16:54,510 --> 00:16:57,060 >> A meðan lykkja raun er skrifað í setningafræði 390 00:16:57,060 --> 00:17:00,666 þar sem, á meðan ákveðnum skilyrðum, gera þetta ítrekað, ekki satt? 391 00:17:00,666 --> 00:17:02,040 Hugsaðu um það með þessum grafík hér. 392 00:17:02,040 --> 00:17:04,780 Þú ert að fara að byrja á a í kóðanum þínum ákveðnum stað. 393 00:17:04,780 --> 00:17:09,030 Þú ert að fara að slá inn lykkja ástand if-- Ég know-- ekki x er minna en einn. 394 00:17:09,030 --> 00:17:11,677 >> Ef það er satt, þú ert að fara að framkvæma lykkja líkamann. 395 00:17:11,677 --> 00:17:14,010 Og þú ert að fara að halda að gera sem aftur, aftur, aftur, 396 00:17:14,010 --> 00:17:17,900 yfir og over-- sem er hvers vegna það er loop-- þar ástand þitt verður 397 00:17:17,900 --> 00:17:19,079 rangar. 398 00:17:19,079 --> 00:17:22,140 Svo á þennan hátt, while lykkju er einn af þeim einfaldari leiðir til 399 00:17:22,140 --> 00:17:25,619 að skrifa hvers konar ástandi sem þarf að endurtaka aftur og aftur og aftur. 400 00:17:25,619 --> 00:17:28,109 Réttlátur vera varkár þegar þú ert að skrifa hvers konar lykkju 401 00:17:28,109 --> 00:17:32,140 að þú hefur útgang ástand sem og uppfærslu á hvað það 402 00:17:32,140 --> 00:17:36,714 er svo að lykkja þinn styður ekki bara hlaupa aftur og aftur óendanlega. 403 00:17:36,714 --> 00:17:38,630 Í öllum tilvikum, þú ert að fara til að vilja ganga úr skugga um 404 00:17:38,630 --> 00:17:42,670 sem þú ert að breyta eitthvað í númerið þitt eða í lok lykkju 405 00:17:42,670 --> 00:17:46,680 bara til að vera viss um að þú hafa a vegur að komast nær þeim ástandi 406 00:17:46,680 --> 00:17:48,400 sem þú vilt að hitta til enda. 407 00:17:48,400 --> 00:17:50,239 Er að skynsamleg að allir? 408 00:17:50,239 --> 00:17:52,530 Við bara viljum ekki að vera lent í þessu spíral hvar 409 00:17:52,530 --> 00:17:55,710 við fara í kring og kring og það er engin leið til að brjóta hliðar. 410 00:17:55,710 --> 00:17:58,844 Og sérhver lykkja raun hefur leið til að gera það. 411 00:17:58,844 --> 00:17:59,344 OK. 412 00:17:59,344 --> 00:18:03,030 413 00:18:03,030 --> 00:18:06,060 >> Í öðru lagi, margir af þú í Mario psets þínum 414 00:18:06,060 --> 00:18:08,910 sennilega þurft að ráða þessi tegund af lykkju. 415 00:18:08,910 --> 00:18:11,802 Það er kallað do while lykkju. 416 00:18:11,802 --> 00:18:14,510 Fyrst af öllu, getur einhver sagt mér hvað munurinn á milli do 417 00:18:14,510 --> 00:18:16,586 meðan lykkja og á meðan lykkja er? 418 00:18:16,586 --> 00:18:17,086 Já. 419 00:18:17,086 --> 00:18:21,030 >> Áhorfendur: The do while lykkju keyrir í fyrstu [inaudible]. 420 00:18:21,030 --> 00:18:22,120 >> ANDI Peng: Já, einmitt. 421 00:18:22,120 --> 00:18:27,130 Svo do while lykkju alltaf það gjörir er inni í do, inni í sviga 422 00:18:27,130 --> 00:18:30,520 það og gerir það ástand áður en að haka fyrir the-- hryggur, 423 00:18:30,520 --> 00:18:32,940 er þessi númer áður stöðva fyrir ástandi. 424 00:18:32,940 --> 00:18:37,200 Og þetta er sérstaklega viðeigandi fyrir okkur hér í þessum flokki, af því að flestum tímum 425 00:18:37,200 --> 00:18:41,450 við erum að fara að vilja til að hvetja notandi fyrir einhvers konar inntak. 426 00:18:41,450 --> 00:18:43,520 Og þá, eftir inntak þeir gefa okkur, 427 00:18:43,520 --> 00:18:46,150 þá getum við metið, ó, við þurfum að hvetja þá aftur? 428 00:18:46,150 --> 00:18:49,930 >> Svo í Mario, ef notandinn gaf þér neikvæð hæð, til dæmis, 429 00:18:49,930 --> 00:18:52,990 þú ert að fara að fyrsta hvetja og gera hvað sem er inni. 430 00:18:52,990 --> 00:18:54,820 Síðan sem þú ert að fara að athuga á meðan. 431 00:18:54,820 --> 00:18:57,570 Þú veist, er neikvæð 1, er að jákvæð tala? 432 00:18:57,570 --> 00:19:00,680 Ef það er ekki, ég ætla að fara aftur og endurtaka gera og endurtaka 433 00:19:00,680 --> 00:19:03,950 og endurtaka og endurtaka þar til þeir að lokum gefa þér númer sem þú vilt, 434 00:19:03,950 --> 00:19:07,002 að við getum öll ráða í númerið okkar. 435 00:19:07,002 --> 00:19:09,210 Það er mjög mikilvægt fyrir í raun hvaða notandi inntak. 436 00:19:09,210 --> 00:19:11,760 Ég get ábyrgst að þú allir tími í pset hvar 437 00:19:11,760 --> 00:19:15,070 við biðjum þig að inntak hvers konar kóða, við erum 438 00:19:15,070 --> 00:19:17,540 líklega að fara að gefa þér að ræða próf sem við erum 439 00:19:17,540 --> 00:19:21,200 að fara að gefa þér eitthvað slæmt það er ætla að reyna að brjóta kóðann. 440 00:19:21,200 --> 00:19:25,044 >> Ef við reynum að biðja þig um að inntak An heiltala, getum við bara gefa þér band 441 00:19:25,044 --> 00:19:26,460 og sjá hvernig þú myndir höndla það. 442 00:19:26,460 --> 00:19:30,610 Ef við biðjum þig um að ráða í aldur, vér megum gefa þér neikvæð tala 443 00:19:30,610 --> 00:19:32,340 til að sjá hvernig þú myndir höndla það. 444 00:19:32,340 --> 00:19:37,260 Bara ganga úr skugga um að þú krakkar eru að prófa fyrir tilvik þar sem þú færð ekki besta 445 00:19:37,260 --> 00:19:38,590 inntak, við skulum bara segja. 446 00:19:38,590 --> 00:19:40,510 Og gera á meðan lykkja er oftsinnis besta 447 00:19:40,510 --> 00:19:45,260 leið til að hanna þinn svo að hann uppfylli þessi umfang. 448 00:19:45,260 --> 00:19:45,760 OK. 449 00:19:45,760 --> 00:19:48,930 450 00:19:48,930 --> 00:19:49,470 >> OK. 451 00:19:49,470 --> 00:19:53,270 Svo er þetta líklega flókið lykkja út af þremur 452 00:19:53,270 --> 00:19:54,990 sem við höfum litið á hingað til. 453 00:19:54,990 --> 00:19:56,689 Og það virðist mjög ógnvekjandi í fyrstu. 454 00:19:56,689 --> 00:19:59,730 En ég ábyrgst að þú, þegar þú krakkar fá the hanga af hvernig á að nota fyrir lykkju, 455 00:19:59,730 --> 00:20:03,320 það er einn af the gagnlegur hlutur, gagnlegur verkfæraskúr í vopnabúr þinn 456 00:20:03,320 --> 00:20:05,300 fyrir áfram í þessum flokki. 457 00:20:05,300 --> 00:20:09,920 >> Svo til dæmis, í grunni, við höfðum þetta mjög einfalt blokk 458 00:20:09,920 --> 00:20:13,180 sem bara sagt endurtaka þetta víst frasar ákveðinn fjölda skipta. 459 00:20:13,180 --> 00:20:16,260 Við the vegur, SAJ-- það er Scaz Andi Jason. 460 00:20:16,260 --> 00:20:18,740 Við undirrita oftsinnis tölvupóst Saj okkar. 461 00:20:18,740 --> 00:20:20,360 Ef við segjum saj, ekki vera að rugla. 462 00:20:20,360 --> 00:20:22,630 Það er bara okkur. 463 00:20:22,630 --> 00:20:28,600 >> Svo í grunni, við varúlfur fær til að hafa blokk þessi, endurtaka ég elska Saj! 464 00:20:28,600 --> 00:20:29,430 10 sinnum. 465 00:20:29,430 --> 00:20:30,130 Mjög einfalt. 466 00:20:30,130 --> 00:20:32,302 The rökfræði á bak við það er mjög, mjög einfalt, ekki satt? 467 00:20:32,302 --> 00:20:35,260 Ég vil fyrst fara í gegnum fyrsta tími og séð að í annað sinn 468 00:20:35,260 --> 00:20:38,510 og séð að þriðja sinn svo framvegis og svo framvegis, þar til þú högg að 10. 469 00:20:38,510 --> 00:20:41,960 >> Og hvernig við viljum tákna að í númerið er bara í gegnum einfalt fyrir lykkju. 470 00:20:41,960 --> 00:20:45,440 Svo að, þú ert að fara að lýsa því yfir breytu hér, í þessu tilfelli, 471 00:20:45,440 --> 00:20:46,349 með int. 472 00:20:46,349 --> 00:20:47,390 Við erum að fara að nefna það að ég. 473 00:20:47,390 --> 00:20:49,500 Við erum að fara að frumstilla hana 0. 474 00:20:49,500 --> 00:20:52,490 Og stífla útgáfa er að fara að vera ég er minna en 10. 475 00:20:52,490 --> 00:20:54,622 Og uppfærsla er að fara að vera ég ++. 476 00:20:54,622 --> 00:20:57,750 >> Og innan í lykkju, það er að fara að framkvæma þar til að lokum það 477 00:20:57,750 --> 00:21:01,490 hits enda condition-- sem ræða, það er að fara að brjóta hliðar. 478 00:21:01,490 --> 00:21:04,600 Það ætti að vera efni sem þú krakkar hafa alls konar séð áður 479 00:21:04,600 --> 00:21:07,270 og þurfti að gera fyrir vandamálið setja einn. 480 00:21:07,270 --> 00:21:12,310 Hefur einhver hefur einhverjar spurningar um fyrir lykkjur núna? 481 00:21:12,310 --> 00:21:12,930 OK. 482 00:21:12,930 --> 00:21:13,430 Great. 483 00:21:13,430 --> 00:21:17,520 484 00:21:17,520 --> 00:21:18,620 >> OK. 485 00:21:18,620 --> 00:21:22,270 Svo fyrir þá sem hafa lesa pset sérstakur fyrir þessa viku 486 00:21:22,270 --> 00:21:27,690 vita að við erum að fara að þurfa að ráða eitthvað sem kallast ASCII og ASCII töflunni. 487 00:21:27,690 --> 00:21:32,380 Og Davíð í fyrirlestri fór yfir stuttlega hvernig tölvur essentially-- allt 488 00:21:32,380 --> 00:21:35,410 er umrita í dulmál í tölvu í tvöfaldur, í núll og sjálfur. 489 00:21:35,410 --> 00:21:39,740 Og hvernig sem tölvur eru fær að geyma mismunandi gildi í viðbót 490 00:21:39,740 --> 00:21:44,360 að núll og sjálfur eru með kortleggja þær tölur til að tákna aðrar tölustafi 491 00:21:44,360 --> 00:21:47,220 eða í raun aðra stafi. 492 00:21:47,220 --> 00:21:49,810 >> Svo í þessu tilfelli, sem ASCII table-- allt það gerir 493 00:21:49,810 --> 00:21:53,600 er kort stafi eða stafir, á númerum. 494 00:21:53,600 --> 00:21:57,385 Svo frumkóða skrá í computer-- það sér þinn, 495 00:21:57,385 --> 00:22:00,010 hey, fullt af núllum og sjálfur, núll og sjálfur, núll og sjálfur. 496 00:22:00,010 --> 00:22:02,350 Það er það geymt í Raunveruleg minni tölvunnar. 497 00:22:02,350 --> 00:22:04,750 >> En þegar við mennirnir viljum samskipti við tölvuna, 498 00:22:04,750 --> 00:22:08,249 Við want-- segja, til dæmis, ef ég vil hástafi A, 499 00:22:08,249 --> 00:22:10,540 Ég ætla að þurfa einhverja leið að segja tölvuna, ó, 500 00:22:10,540 --> 00:22:16,300 þegar ég slá hástafi A, ég meina Þessi framsetning í tvöfaldur. 501 00:22:16,300 --> 00:22:22,260 >> Og svo leiðin sem við gerum sem er kastaði handahófskennt hlutur kallast ASCII töflu, 502 00:22:22,260 --> 00:22:25,020 þar sem við, eins og menn, sem forritari, sumir tími síðan, 503 00:22:25,020 --> 00:22:28,660 við ákváðum geðþótta að vér voru að fara að úthluta fjölda 504 00:22:28,660 --> 00:22:30,960 gildi þessum persónum. 505 00:22:30,960 --> 00:22:32,720 >> Svo þú krakkar geta google þetta á netinu. 506 00:22:32,720 --> 00:22:37,120 Ég held að það er tengill á það í þinn pset-- bara ASCII kort borð, ASCII 507 00:22:37,120 --> 00:22:37,720 borð. 508 00:22:37,720 --> 00:22:40,722 Það þýðir bara tvöfaldur tölur í stafi. 509 00:22:40,722 --> 00:22:42,930 Og það er að fara að vera mjög gagnlegt fyrir Heimadæmi þinn 510 00:22:42,930 --> 00:22:45,470 þegar þú vilt reikna neitt eða ef þú 511 00:22:45,470 --> 00:22:47,880 vilt birta viss stafir eða heiltölur 512 00:22:47,880 --> 00:22:50,327 eða vinna ákveðnar persónur. 513 00:22:50,327 --> 00:22:52,160 Það er að fara að vera mjög mikilvægt að þið öll 514 00:22:52,160 --> 00:22:55,140 vita hvernig á að vafra á ASCII töflunni. 515 00:22:55,140 --> 00:23:01,260 >> Svo til dæmis, hástafi A er táknuð með fjölda 65. 516 00:23:01,260 --> 00:23:04,207 Og lágstafir a er táknuð með 97. 517 00:23:04,207 --> 00:23:07,040 Svo það er mikilvægt að vita að munur á milli tveggja gilda 518 00:23:07,040 --> 00:23:08,320 er 32. 519 00:23:08,320 --> 00:23:13,210 Oftsinnis, ef þú þarft að umbreyta frá hver við annan, munurinn er 32. 520 00:23:13,210 --> 00:23:15,710 Og ekki hafa áhyggjur ef þú ert góður af ruglaður á þessu í fyrstu. 521 00:23:15,710 --> 00:23:20,230 Við munum fara yfir hvernig við gerðum ráða þetta í raun kóða. 522 00:23:20,230 --> 00:23:24,700 523 00:23:24,700 --> 00:23:26,380 >> OK. 524 00:23:26,380 --> 00:23:30,770 Svo fyrir þá með fartölvur út, ekki hika við að draga upp ASCII töflu, 525 00:23:30,770 --> 00:23:36,030 vegna þess að þetta mun líklega þurfa krakkar að vísa 526 00:23:36,030 --> 00:23:38,100 hvað persónurnar eru. 527 00:23:38,100 --> 00:23:38,640 OK. 528 00:23:38,640 --> 00:23:42,840 >> Svo að vita að ákveðin Stafir Map tiltekin númer, 529 00:23:42,840 --> 00:23:47,240 ef ég væri að keyra bara fyrsta lína af að code-- printf A, 530 00:23:47,240 --> 00:23:50,900 lágstafir a, mínus hástafir A. Er einhver 531 00:23:50,900 --> 00:23:55,880 hafa giska á hvað væri prenta út á skjánum núna? 532 00:23:55,880 --> 00:23:58,190 >> Svo fyrst af öllu, hvað þýðir lágstafir a tákna? 533 00:23:58,190 --> 00:24:00,990 Hvað tala er að kóðuð í ASCII töflunni. 534 00:24:00,990 --> 00:24:01,490 Sorry? 535 00:24:01,490 --> 00:24:02,630 >> Áhorfendur: 97? 536 00:24:02,630 --> 00:24:03,630 >> ANDI Peng: 97, frábært. 537 00:24:03,630 --> 00:24:05,077 Og hvað er hástafi A? 538 00:24:05,077 --> 00:24:06,330 >> Áhorfendur: 65. 539 00:24:06,330 --> 00:24:08,255 >> ANDI Peng: Svo er það 97 mínus 65? 540 00:24:08,255 --> 00:24:09,227 >> Áhorfendur: 32. 541 00:24:09,227 --> 00:24:09,810 ANDI Peng: OK. 542 00:24:09,810 --> 00:24:13,530 Svo hvaða gera þú krakkar hugsa er að fara að gerast þegar ég inntak þessi lína af kóða 543 00:24:13,530 --> 00:24:14,670 í tölvunni minni? 544 00:24:14,670 --> 00:24:17,981 545 00:24:17,981 --> 00:24:19,896 >> Áhorfendur: [inaudible]. 546 00:24:19,896 --> 00:24:21,020 ANDI Peng: Því miður, tala upp. 547 00:24:21,020 --> 00:24:22,520 Engar áhyggjur. 548 00:24:22,520 --> 00:24:25,750 Þetta er mjög öruggt umhverfi, mínus myndavél. 549 00:24:25,750 --> 00:24:27,550 Við erum öll að fara to-- engar áhyggjur. 550 00:24:27,550 --> 00:24:30,940 Bara að við erum öll að fara að láta eins og það er bara okkur kælingu í þessu herbergi. 551 00:24:30,940 --> 00:24:31,480 Engar áhyggjur. 552 00:24:31,480 --> 00:24:33,410 Engin spurning er of heimskur. 553 00:24:33,410 --> 00:24:35,300 Ekkert svar er heimskulegt svar. 554 00:24:35,300 --> 00:24:38,260 Ég er líklega að fara að gera mistök í tengslum við kennslu mína. 555 00:24:38,260 --> 00:24:40,740 Í alvöru, strákar, bara blurt það út. 556 00:24:40,740 --> 00:24:43,092 Vertu öruggur í þig, þú veist? 557 00:24:43,092 --> 00:24:43,800 Svo hvað var það? 558 00:24:43,800 --> 00:24:47,990 Hver sagði að á síðasta svar? 559 00:24:47,990 --> 00:24:48,540 OK. 560 00:24:48,540 --> 00:24:50,380 Hrópa að gott og skýrt. 561 00:24:50,380 --> 00:24:51,220 >> Áhorfendur: 32? 562 00:24:51,220 --> 00:24:51,850 >> ANDI Peng: 32. 563 00:24:51,850 --> 00:24:54,141 OK, við skulum keyra þennan kóða og sjá hvort það er það sem gerist. 564 00:24:54,141 --> 00:25:00,260 565 00:25:00,260 --> 00:25:00,760 OK. 566 00:25:00,760 --> 00:25:03,300 567 00:25:03,300 --> 00:25:06,360 Svo eins og þú krakkar geta konar sjá, dæmigerð tákn sem ég hef 568 00:25:06,360 --> 00:25:12,250 sett upp hér fyrir hvernig við myndum ráða hvers konar forrit í tölvunni okkar. 569 00:25:12,250 --> 00:25:14,770 Við höfum meginhlutverki okkar innan meginvirkni okkar. 570 00:25:14,770 --> 00:25:17,265 Ég ætla bara að fara að afrita og líma þessa línu af kóða. 571 00:25:17,265 --> 00:25:21,082 572 00:25:21,082 --> 00:25:23,540 Einnig að vera varkár þegar þú krakkar ert að afrita og líma kóðann. 573 00:25:23,540 --> 00:25:28,750 Stundum ákveðin rekstraraðila ekki líma yfir rétt. 574 00:25:28,750 --> 00:25:31,397 Í því tilviki er mínus merki var reyndar þjóta. 575 00:25:31,397 --> 00:25:32,980 Og þannig að tölvan hafi ekki tekið það upp. 576 00:25:32,980 --> 00:25:35,870 Svo ég þurfti að fara til baka og líkamlega retype það. 577 00:25:35,870 --> 00:25:37,846 Réttlátur vera varkár þegar þið eru að gera það. 578 00:25:37,846 --> 00:25:41,178 579 00:25:41,178 --> 00:25:42,660 >> OK. 580 00:25:42,660 --> 00:25:43,980 Við erum að fara að keyra þetta hér. 581 00:25:43,980 --> 00:25:45,670 Þannig að við erum að fara að cd í section2 okkar. 582 00:25:45,670 --> 00:25:50,470 583 00:25:50,470 --> 00:25:52,030 Ég hef kallað þetta forrit asciimath. 584 00:25:52,030 --> 00:25:55,690 Svo man, þegar við hlaupum allir program, við viljum fyrst taka saman það 585 00:25:55,690 --> 00:25:57,150 með því að keyra það í gegnum gera okkar. 586 00:25:57,150 --> 00:26:00,030 Og þá viljum við í raun að keyra forritið með því að gera punktur-skástrik. 587 00:26:00,030 --> 00:26:01,280 Þannig að við erum að fara að ./asciimath. 588 00:26:01,280 --> 00:26:05,780 589 00:26:05,780 --> 00:26:06,590 >> Rétt, það sem við förum. 590 00:26:06,590 --> 00:26:07,410 Og við sjáum 32. 591 00:26:07,410 --> 00:26:07,930 Vel gert. 592 00:26:07,930 --> 00:26:10,340 Þú eiga skilið stykki af sælgæti. 593 00:26:10,340 --> 00:26:11,160 Nammi fyrir þig. 594 00:26:11,160 --> 00:26:11,900 Sorry. 595 00:26:11,900 --> 00:26:13,100 Allt í lagi. 596 00:26:13,100 --> 00:26:13,670 OK. 597 00:26:13,670 --> 00:26:18,070 Svo við getum farið aftur til okkar dæmi hér. 598 00:26:18,070 --> 00:26:23,530 599 00:26:23,530 --> 00:26:24,345 Aah, nr. 600 00:26:24,345 --> 00:26:29,147 601 00:26:29,147 --> 00:26:31,090 Aah. 602 00:26:31,090 --> 00:26:32,490 OK. 603 00:26:32,490 --> 00:26:34,610 Ég ætla bara að fara að halda því þannig. 604 00:26:34,610 --> 00:26:48,520 605 00:26:48,520 --> 00:26:51,240 OK. 606 00:26:51,240 --> 00:26:51,740 OK. 607 00:26:51,740 --> 00:26:55,340 Svo eins og þú krakkar geta séð, getum við gert hellingur af mjög áhugaverðum hlutum, 608 00:26:55,340 --> 00:26:58,880 a einhver fjöldi af mjög flottum hlutum, a einhver fjöldi af mjög flókið það felur 609 00:26:58,880 --> 00:27:02,720 ASCII stafi og tölur. 610 00:27:02,720 --> 00:27:05,890 Þegar þú færð niður til að stilla fimm, það er mikið til að fylgja eftir. 611 00:27:05,890 --> 00:27:07,640 Við erum ekki að fara að fara gegnum kafla. 612 00:27:07,640 --> 00:27:10,720 Feel frjáls til að, ef þú getur, rökrætt það út á pappír 613 00:27:10,720 --> 00:27:14,750 fyrst á hvað ætti að vera að gerast þegar þú inntak svo band af gildum. 614 00:27:14,750 --> 00:27:19,720 Til dæmis, í þeirri síðustu línu, höfum við z-- sem táknar ákveðna number-- 615 00:27:19,720 --> 00:27:24,740 a-- sem einnig táknar ákveðin number-- plus 1 modulos 26 616 00:27:24,740 --> 00:27:26,750 auk lágstafir a. 617 00:27:26,750 --> 00:27:29,220 >> Ef þú krakkar halda lestur gegnum þetta, þér 618 00:27:29,220 --> 00:27:34,009 má sjá mynstur koma upp í hvernig við erum að notfæra kóðann. 619 00:27:34,009 --> 00:27:36,050 Ég mjög, mjög benda eftir bálkum ykkur öllum 620 00:27:36,050 --> 00:27:38,160 krakkar fara á undan og inntak þá allt í tölvunni þinni 621 00:27:38,160 --> 00:27:40,060 og sjá hvers konar tölur eru að koma út 622 00:27:40,060 --> 00:27:43,090 og hugsið um hvers vegna þeir eru gerast, vegna þess að fyrir psets þínum 623 00:27:43,090 --> 00:27:45,060 það verður mjög mikilvægt fyrir þig að skilja 624 00:27:45,060 --> 00:27:47,132 hvers vegna ákveðin hlutir eru að gerast. 625 00:27:47,132 --> 00:27:48,590 Öll þessi skyggnur verður á netinu. 626 00:27:48,590 --> 00:27:51,510 Svo engar áhyggjur um að reyna að líkamlega afrita niður minnispunkta. 627 00:27:51,510 --> 00:27:52,510 Netinu allt er. 628 00:27:52,510 --> 00:27:54,050 Þessi hluti sjálft verður á netinu. 629 00:27:54,050 --> 00:27:57,500 Allt mitt kóðann sem Ég er að keyra mun vera online. 630 00:27:57,500 --> 00:27:58,180 Já. 631 00:27:58,180 --> 00:27:59,430 Vissir þú ert enn með spurningu? 632 00:27:59,430 --> 00:28:00,587 Áhorfendur: Hvað er modulos? 633 00:28:00,587 --> 00:28:01,170 ANDI Peng: OK. 634 00:28:01,170 --> 00:28:05,620 Svo er Modulo rekstraraðili sem er að fara að vera ansi mikilvægt að pset þinna krakkar fékk 635 00:28:05,620 --> 00:28:06,690 hér. 636 00:28:06,690 --> 00:28:12,280 Svo leið að rekstraraðilar í C og í forritun vinna 637 00:28:12,280 --> 00:28:16,360 er að þú hafir það sem er kallað deild tákn og stuðull tákn, 638 00:28:16,360 --> 00:28:18,350 sem er bara eins og prósent skilti. 639 00:28:18,350 --> 00:28:24,840 >> Svo í C, þegar þú gerir heiltala deilt með heiltölu með skástriki, 640 00:28:24,840 --> 00:28:27,720 C hefur tilhneigingu til að vilja skera burt öllum aukastafa, 641 00:28:27,720 --> 00:28:30,290 vegna þess að heil tala vill að breyta til heiltala. 642 00:28:30,290 --> 00:28:33,550 Það er ekki að fara til að vilja vera tvöfaldur með fullt af brotum allt eftir því. 643 00:28:33,550 --> 00:28:39,322 >> Svo ef ég 3 deilt með 2, það er að fara til að skera burt 0.5 og bara gefa þér 1. 644 00:28:39,322 --> 00:28:41,530 Svo það er eitthvað til að vera mjög varkár um þegar þú ert 645 00:28:41,530 --> 00:28:45,294 gera hvers konar stærðfræði í forritun, er að tölurnar sem þú færð 646 00:28:45,294 --> 00:28:47,210 mega ekki vera tölurnar sem þú varst að hugsa, 647 00:28:47,210 --> 00:28:50,190 sem er ástæðan lokið máli mínu í þínum Síðast pset er svo mikilvægt. 648 00:28:50,190 --> 00:28:51,980 >> Modulo gefur þér afganginn. 649 00:28:51,980 --> 00:28:56,200 Svo til dæmis, ef ég gerði 3 Modulo 2-- svo 3 prósent skilti 2-- 650 00:28:56,200 --> 00:28:58,020 það myndi gefa þér afganginn af því. 651 00:28:58,020 --> 00:29:00,460 Svo 3 deilt með 2 er 1,5. 652 00:29:00,460 --> 00:29:01,410 Það er 1 afgangurinn af 1. 653 00:29:01,410 --> 00:29:04,600 Það myndi gefa þér 1, sem er afgangurinn af því. 654 00:29:04,600 --> 00:29:07,361 >> Svo þegar þú krakkar eru að flytja gegnum ASCII töflunni, 655 00:29:07,361 --> 00:29:09,735 Modulo mun á endanum vera eitthvað sem er mjög mikilvægt, 656 00:29:09,735 --> 00:29:11,240 og við munum fjalla um það síðar. 657 00:29:11,240 --> 00:29:17,750 658 00:29:17,750 --> 00:29:19,040 >> OK. 659 00:29:19,040 --> 00:29:27,300 Svo eitthvað sem er nokkuð, frekar ný og nokkuð einstakt 660 00:29:27,300 --> 00:29:31,920 sem við höfum rætt í þessari viku er hugtakið hvað array er. 661 00:29:31,920 --> 00:29:34,370 Svo er fyrsta array tegund af gögn uppbygging 662 00:29:34,370 --> 00:29:36,320 sem við erum að fara að lenda í þessum flokki. 663 00:29:36,320 --> 00:29:40,010 Öll gögn uppbygging er er einhvers konar handahófskennt, 664 00:29:40,010 --> 00:29:43,370 bókstaflega hluti eins uppbyggingu að við sem forritarar hafa búið til, 665 00:29:43,370 --> 00:29:47,890 sem við höfum sett í númerið okkar sem geta innihaldið önnur stykki af kóða. 666 00:29:47,890 --> 00:29:51,090 >> Svo í þessum skilningi, sem array-- hugsa um það sem skrá skáp, 667 00:29:51,090 --> 00:29:53,470 þar sem ef þú opnar annað hillur á skrá skáp, 668 00:29:53,470 --> 00:29:55,630 þú getur fengið aðgang að mismunandi hluti. 669 00:29:55,630 --> 00:29:58,630 Í minni, fylki er bara að gera sama á tölvunni þinni. 670 00:29:58,630 --> 00:30:01,730 Þú getur haft mismunandi blocks-- vér kalla þá indices-- af fjölda. 671 00:30:01,730 --> 00:30:04,210 Það er bara eins og blokk, hillu minni 672 00:30:04,210 --> 00:30:07,580 sem við höfum búið í þinn tölva sem þú getur inntak 673 00:30:07,580 --> 00:30:10,270 ákveðin atriði í mismunandi rými. 674 00:30:10,270 --> 00:30:18,000 >> Svo með fjölda, þú alltaf að specify-- 675 00:30:18,000 --> 00:30:22,360 Þú verður að gefa að lýsa yfir array á eftirfarandi sniði. 676 00:30:22,360 --> 00:30:24,290 Þú ert að fara að fyrst tilgreina gögn tegund 677 00:30:24,290 --> 00:30:25,831 sem þú vilt búa í fylkinu. 678 00:30:25,831 --> 00:30:28,870 Ef ég vil fjölda heiltalna, Ég ætla að setja int þarna. 679 00:30:28,870 --> 00:30:32,079 Ef ég vil fjölbreytta strengi, Ég ætla að setja strengi þar, 680 00:30:32,079 --> 00:30:34,995 nafn array, og þá þú ert að fara að hafa hornklofa. 681 00:30:34,995 --> 00:30:39,580 Og inni í hornklofum, þú ert fara að hafa stærð fylkisins þinn. 682 00:30:39,580 --> 00:30:42,900 >> Eitthvað sem er mjög mikilvægt að hafa í huga þegar þú býrð fylki er 683 00:30:42,900 --> 00:30:46,530 að þegar þú búa til array, sem stærð getur ekki breytt. 684 00:30:46,530 --> 00:30:50,180 Svo ef þú veist að núna þú ert með fjölbreytta stærð 10, 685 00:30:50,180 --> 00:30:54,550 þú veist að ég er að fara að hafa 10 frumur innan eða 10 vísitölum innan þessu fylki, 686 00:30:54,550 --> 00:30:56,830 og það er aldrei að fara til að auka eða minnka 687 00:30:56,830 --> 00:30:59,850 sama hvað, og að það er nú bara 10 blokkir af plássi 688 00:30:59,850 --> 00:31:04,490 úthlutað í minni sem getur geymt allt að 10 hluti af hvað sem þú hefur sett. 689 00:31:04,490 --> 00:31:08,790 >> Svo á þennan hátt, fylki gögn tegund, gögn uppbygging sem er fylki 690 00:31:08,790 --> 00:31:13,392 er mjög mismunandi frá nokkrum öðrum munum vera nær seinna í þessu námskeiði. 691 00:31:13,392 --> 00:31:15,170 Já. 692 00:31:15,170 --> 00:31:20,080 Til dæmis, ef þú vildir búa til array af stærð 3 sem 693 00:31:20,080 --> 00:31:23,670 sem eru breytur integer-- Ó, fyrirgefðu, á temperature-- 694 00:31:23,670 --> 00:31:25,640 og hiti, af Auðvitað er heiltala. 695 00:31:25,640 --> 00:31:28,710 >> Svo við myndum búa int, sem er gögn tegund af því sem við viljum geyma. 696 00:31:28,710 --> 00:31:32,680 Við erum að fara að kalla þetta hitastig fyrir sakir flokkunarkerfi nafngiftir 697 00:31:32,680 --> 00:31:34,200 eitthvað sem við öll skiljum. 698 00:31:34,200 --> 00:31:35,900 Og við erum að fara að hafa hornklofa. 699 00:31:35,900 --> 00:31:37,200 Og við viljum þrjár tölur. 700 00:31:37,200 --> 00:31:39,000 Þannig að við erum að fara að setja þrír inni af því. 701 00:31:39,000 --> 00:31:41,041 >> Eitthvað sem er í raun mikilvægt að hafa í huga 702 00:31:41,041 --> 00:31:43,530 er að fylki eru núll verðtryggð. 703 00:31:43,530 --> 00:31:46,410 Allt sem þýðir að þú byrja með vísitölu 0, 704 00:31:46,410 --> 00:31:49,800 og þú keyrir upp í gegnum Stærð fylkisins mínus 1. 705 00:31:49,800 --> 00:31:52,730 Svo til dæmis hér, við hafa fjölbreytta stærð 3. 706 00:31:52,730 --> 00:31:54,680 Það er að fara að vera fær um að halda þrjú gildi. 707 00:31:54,680 --> 00:31:57,450 En tölurnar themselves-- sem númer array, sem vísitalan, 708 00:31:57,450 --> 00:32:00,271 array, eru 0 í gegnum 2. 709 00:32:00,271 --> 00:32:03,520 Svo krakkar, vera mjög, mjög varlega þegar þú ert að fara í gegnum vandamál þín eru settar 710 00:32:03,520 --> 00:32:06,500 og skapa hvers konar fylking, vegna þess að mikið af sinnum það er 711 00:32:06,500 --> 00:32:08,490 virkilega, virkilega auðvelt að gleyma því. 712 00:32:08,490 --> 00:32:11,840 Ég í raun ekki í vísitölunni 3, sem ég nú bara 713 00:32:11,840 --> 00:32:13,130 hafa vísitölu 2. 714 00:32:13,130 --> 00:32:16,046 Og ef þú reynir að aðgang þriðja vísitölu, 715 00:32:16,046 --> 00:32:18,170 það er að fara að vera það sem er kallað null Ljúka. 716 00:32:18,170 --> 00:32:19,990 Það er ekki að fara að raunverulega eru í fylkinu. 717 00:32:19,990 --> 00:32:21,781 Og tölvan er ekki að fara að eins og það. 718 00:32:21,781 --> 00:32:24,570 Svo vera varkár þegar þú ert að nálgast hlutina bara 719 00:32:24,570 --> 00:32:28,070 til að tryggja að þú manst sem fylki eru núll-verðtryggð. 720 00:32:28,070 --> 00:32:28,880 >> OK. 721 00:32:28,880 --> 00:32:34,030 Svo er fyrsta dæmið bara ein leið til að búa til array. 722 00:32:34,030 --> 00:32:36,790 Annað dæmi sem ég hef hér er bara sérstakt leið 723 00:32:36,790 --> 00:32:40,210 um að skapa það sem er sömu gögn mannvirki sem við höfum bara inputted. 724 00:32:40,210 --> 00:32:44,347 Svo í stað þess líkamlega að keyra gegnum og setja í hitastiginu 0 725 00:32:44,347 --> 00:32:47,180 jafngildir hvað, hiti 1 jafngildir hvað, hiti 2 er 726 00:32:47,180 --> 00:32:50,950 hvað, gæti ég í raun bara beint að búa það allt í einni línu 727 00:32:50,950 --> 00:32:53,010 í hita hornklofa jafngildir. 728 00:32:53,010 --> 00:32:56,536 >> Og takið eftir í þessu tilfelli, þú þarft ekki að tilgreina hversu stór fylking er, 729 00:32:56,536 --> 00:32:59,160 vegna þess að tölvan er að fara að fara í gegnum og sjá að það er 730 00:32:59,160 --> 00:33:01,570 þrír þættir í þessara hrokkið axlabönd. 731 00:33:01,570 --> 00:33:04,000 Og það er að fara að vita, OK, Ég þarf fjölbreytta stærð 3. 732 00:33:04,000 --> 00:33:07,440 Þú ert ekki að fara að þurfa að inntak það á eftirfarandi hátt. 733 00:33:07,440 --> 00:33:10,170 >> Og einnig, já, þannig. 734 00:33:10,170 --> 00:33:12,610 Hjartarskinn einhver hafa spurningar um hvernig við tökum fylki 735 00:33:12,610 --> 00:33:17,391 eða hvernig uppbygging fjölda virkar? 736 00:33:17,391 --> 00:33:17,890 Já. 737 00:33:17,890 --> 00:33:18,806 >> Áhorfendur: [inaudible]? 738 00:33:18,806 --> 00:33:21,649 739 00:33:21,649 --> 00:33:22,690 ANDI Peng: Já, einmitt. 740 00:33:22,690 --> 00:33:26,150 Svo ef þú varst að lýsa og frumstilla An array eftirfarandi aðferð, 741 00:33:26,150 --> 00:33:28,477 sem er önnur leið, þú getur bara láta þá. 742 00:33:28,477 --> 00:33:30,310 Og tölvan sjálfkrafa veit að það 743 00:33:30,310 --> 00:33:33,950 þarf til að telja hversu margir þættir eru í þeim hrokkið axlabönd, aðskilin 744 00:33:33,950 --> 00:33:34,930 með kommum. 745 00:33:34,930 --> 00:33:37,517 >> Svo hér þeir sjá 65, 87, 30. 746 00:33:37,517 --> 00:33:39,600 Þannig að tölvan veit, ó, það er þrjár heiltölur. 747 00:33:39,600 --> 00:33:45,960 Ég veit að búa til nafn fylkisins hiti með þremur þáttum í það. 748 00:33:45,960 --> 00:33:46,590 Góð spurning. 749 00:33:46,590 --> 00:33:47,090 Já. 750 00:33:47,090 --> 00:33:51,590 >> Áhorfendur: Er ekki hægt að búa til fylki með mismunandi gerðir af gögnum 751 00:33:51,590 --> 00:33:53,021 sem hægt væri að færa inn í það? 752 00:33:53,021 --> 00:33:56,746 Til dæmis með heiltölur [inaudible]? 753 00:33:56,746 --> 00:33:59,120 ANDI Peng: Að því er varðar í þessum bekk, nei, núna. 754 00:33:59,120 --> 00:34:03,070 Þegar þú býrð til gögn uppbygging eins og fylki, 755 00:34:03,070 --> 00:34:04,990 þú ert að segja að tölva, hey, ég þarfnast þín 756 00:34:04,990 --> 00:34:08,159 að úthluta svona mikið minni í harða diskinum mínum, 757 00:34:08,159 --> 00:34:10,690 með hver klefi vera ákveðinn fjölda bita. 758 00:34:10,690 --> 00:34:13,429 >> Mundu að við lærðum í viku núll að mismunandi gögn 759 00:34:13,429 --> 00:34:15,300 tegundir hafa mismunandi stærðir? 760 00:34:15,300 --> 00:34:17,630 Svo til dæmis, a band er mismunandi upphæð 761 00:34:17,630 --> 00:34:20,719 pláss en bleikju sem er mismunandi pláss 762 00:34:20,719 --> 00:34:21,830 frá heiltala. 763 00:34:21,830 --> 00:34:25,534 Og svo ef þú tilgreinir ekki og þú blanda og passa hvers konar breytur 764 00:34:25,534 --> 00:34:27,659 þú þarft, the tölva ' að fara að vera mjög ruglaður. 765 00:34:27,659 --> 00:34:29,950 Og það er ekki að fara að vita hversu mikið minni til að gefa þér. 766 00:34:29,950 --> 00:34:32,480 Svo í þeim tilgangi að hægri nú, tölvur geta aðeins 767 00:34:32,480 --> 00:34:36,120 viðurkenna eina tegund af fylki. 768 00:34:36,120 --> 00:34:37,940 Góð spurning. 769 00:34:37,940 --> 00:34:38,440 OK. 770 00:34:38,440 --> 00:34:45,179 771 00:34:45,179 --> 00:34:47,120 >> Svo náttúrulega er Önnur spurning sem við höfum 772 00:34:47,120 --> 00:34:50,760 er vel, nú að við höfum búið til array og við höfum sett alla þessa hluti 773 00:34:50,760 --> 00:34:54,190 í fylkinu, hvernig eigum við að fara að vera fær um að nálgast það? 774 00:34:54,190 --> 00:34:59,710 Svo dæmigerður skipulag sem við alltaf aðgang fylki er yndisleg okkar til hliðar. 775 00:34:59,710 --> 00:35:03,830 Ég lofa ykkur að við munum vera að sjá mikið af þessum náungi hér. 776 00:35:03,830 --> 00:35:06,470 >> Í meginatriðum, hvenær sem þú vilt að inntak gildi í fylkinu 777 00:35:06,470 --> 00:35:09,940 eða ef þú vilt fá aðgang að þeim, sem Besta leiðin til að gera það er fyrir lykkju, 778 00:35:09,940 --> 00:35:13,730 vegna þess að í for lykkju, þú vita hversu oft þú ert 779 00:35:13,730 --> 00:35:17,290 fara til að vilja hlaupa í gegnum fylking, vegna þess að þú ert með stöðva útgáfu, ekki satt? 780 00:35:17,290 --> 00:35:19,680 Og í hvert skipti sem þú keyrir í gegnum, getur þú fengið aðgang 781 00:35:19,680 --> 00:35:21,310 annað þáttur í fylkinu. 782 00:35:21,310 --> 00:35:26,920 >> Og einnig, þetta er ástæðan fyrir því að yfirleitt við byrjum okkar fyrir lykkjur á 0 virði, 783 00:35:26,920 --> 00:35:30,080 vegna þess að þegar þú skoðar fylki, þú getur fengið aðgang að núll vísitölu. 784 00:35:30,080 --> 00:35:32,070 Og svo fylgdi það mjög vel. 785 00:35:32,070 --> 00:35:35,295 Þið kann að hafa langað til að skrifa int i er 1. 786 00:35:35,295 --> 00:35:37,330 I er minni en eða jafnt og 3. 787 00:35:37,330 --> 00:35:39,890 >> En það myndi ekki virka alveg eins vel hér, vegna þess að þú aðeins 788 00:35:39,890 --> 00:35:42,010 hafa þætti 0, 1 og 2. 789 00:35:42,010 --> 00:35:45,815 Og svo ef þú varst að byrja í I Á Element 1, 2, og 3, 790 00:35:45,815 --> 00:35:48,440 þú ert að fara að enda í gangi út af mörk array þinn, 791 00:35:48,440 --> 00:35:50,440 og slæmir hlutir eru að fara að gerast. 792 00:35:50,440 --> 00:35:54,480 >> Svo ég vona að þú krakkar sjá Segue af hverju í fyrri flokkum 793 00:35:54,480 --> 00:35:58,560 við vorum að kenna ykkur hvernig á að keyra og snið fyrir lykkju á leið að við værum. 794 00:35:58,560 --> 00:36:01,900 Það er vegna þess, nú að við höfum færðum inn fylki, 795 00:36:01,900 --> 00:36:06,760 þú getur séð hvers vegna 0 lánar sjálft mjög vel til að fá aðgang. 796 00:36:06,760 --> 00:36:09,880 >> Svo leið og við gerum það er that-- ég bara prenta það út hér fyrir sakir 797 00:36:09,880 --> 00:36:10,830 af prentun það út. 798 00:36:10,830 --> 00:36:13,750 En ég hef staðgenglinum mína, komma. 799 00:36:13,750 --> 00:36:15,645 Og í raun aðgangur hluti er að gerast. 800 00:36:15,645 --> 00:36:17,520 The nafn af the array var kallað hitastig. 801 00:36:17,520 --> 00:36:21,570 Svo það er hiti og i-ta þáttur í fylkinu. 802 00:36:21,570 --> 00:36:24,400 >> Svo sem fyrir lykkju liggur í gegnum, það er að fara að byrja á 0. 803 00:36:24,400 --> 00:36:27,640 Það er að fara að prenta út 0 Vísitala þessu fylki. 804 00:36:27,640 --> 00:36:29,599 Þá er að fara að prenta út fyrstu frumefni. 805 00:36:29,599 --> 00:36:31,431 Þá er að fara að prenta út seinni. 806 00:36:31,431 --> 00:36:32,880 Og þá erum við að fara að brjóta. 807 00:36:32,880 --> 00:36:36,718 Er allir á hreinu hvernig það er að gerast? 808 00:36:36,718 --> 00:36:37,217 Great. 809 00:36:37,217 --> 00:36:43,230 810 00:36:43,230 --> 00:36:44,100 >> Allt í lagi. 811 00:36:44,100 --> 00:36:47,270 Svo hér höfum við leið segja, ef við vildum ekki 812 00:36:47,270 --> 00:36:50,020 á harða-kóða in-- mig sem forritari. 813 00:36:50,020 --> 00:36:53,320 Ég vildi ekki að í raun líkamlega setja í sérhver einstaklingur þáttur 814 00:36:53,320 --> 00:36:54,020 af þessu fylki. 815 00:36:54,020 --> 00:36:56,500 Ef ég vildi í staðinn hafa notandi inntak gildi, 816 00:36:56,500 --> 00:36:58,100 hvað er besta leiðin til að gera það? 817 00:36:58,100 --> 00:37:00,920 >> Jæja, hér er ég hef búið þetta yndislega virka, 818 00:37:00,920 --> 00:37:03,560 þar sem ég get lýst fylki. 819 00:37:03,560 --> 00:37:06,210 Svo INT scores-- skulum bara segja að við viljum gera 820 00:37:06,210 --> 00:37:10,660 fylki sem haldin einkunnina alla 18 nemenda hér í þessum kafla. 821 00:37:10,660 --> 00:37:12,670 Ég held að við höfum fengið smá meira en 18 börn í dag. 822 00:37:12,670 --> 00:37:16,460 En fyrir sakir dæmis er, við skulum gera ráð bara að við þurftum 18. 823 00:37:16,460 --> 00:37:21,580 Ég myndi búa til nafn array frammistöðu með int, vegna stigafjölda, að sjálfsögðu, 824 00:37:21,580 --> 00:37:22,987 eru tölur. 825 00:37:22,987 --> 00:37:24,820 Og ég ætla að hafa 18 í hornklofum, 826 00:37:24,820 --> 00:37:29,900 því það er hversu margir nemendur I langar að vera fær um að geyma skora á. 827 00:37:29,900 --> 00:37:32,206 >> Og hvernig ég vil byggja array er að ég myndi 828 00:37:32,206 --> 00:37:35,572 keyra það í gegnum a for lykkju, af Auðvitað, með 0 er 0 Vísitala minn. 829 00:37:35,572 --> 00:37:38,030 Og þá með 18 vera minn hætt útgáfu, því það er 830 00:37:38,030 --> 00:37:39,690 18 þættir í array. 831 00:37:39,690 --> 00:37:44,620 Og þá er ég að fara að gera printf, Enter skora fyrir student-- BLA blaðrið. 832 00:37:44,620 --> 00:37:51,171 >> Getur einhver sagt mér hvers vegna hér er ég prentun i plús 1 og ekki ég? 833 00:37:51,171 --> 00:37:52,920 Það er góður af a bragð spurning, í raun ekki. 834 00:37:52,920 --> 00:37:56,020 Það er í raun ekki líkamlega haft áhrif á gangi af kóða. 835 00:37:56,020 --> 00:37:56,520 Já. 836 00:37:56,520 --> 00:37:57,909 >> Áhorfendur: [inaudible] 0? 837 00:37:57,909 --> 00:37:58,950 ANDI Peng: Já, einmitt. 838 00:37:58,950 --> 00:38:02,620 Það er dálítið óþægilega að segja, hey, þú ert 0 nemandi í þessum flokki. 839 00:38:02,620 --> 00:38:03,780 Það er dálítið undarlegt. 840 00:38:03,780 --> 00:38:08,340 Svo okkur, eins og menn, í raun ekki eins að hugsa um hvernig tölvur hugsa. 841 00:38:08,340 --> 00:38:10,930 Svo jafnvel þótt í tölva, það er að geyma gildi 842 00:38:10,930 --> 00:38:13,310 í 0-ta vísitölu, þegar við erum menn, við gerum ekki raunverulega 843 00:38:13,310 --> 00:38:15,520 eins og til að vísa til okkar sjálfra sem núll. 844 00:38:15,520 --> 00:38:18,119 Svo þegar ég prenta bara að Ég ætla að prenta og bæta 845 00:38:18,119 --> 00:38:19,410 1 bara fyrir sakir skýrleika. 846 00:38:19,410 --> 00:38:22,447 Svo þegar ég prenta, ég ætla að vera hægt að prenta nemendum 1 til 18. 847 00:38:22,447 --> 00:38:24,530 Það er í raun ekki áhrif hlaup kóða 848 00:38:24,530 --> 00:38:27,110 á nokkurn hátt, eins og ég prenta. 849 00:38:27,110 --> 00:38:30,380 >> En vera varkár þegar þú ert reyndar aðgang að array. 850 00:38:30,380 --> 00:38:32,780 Þegar þú sérð skora i, eftir hér ég er reyndar 851 00:38:32,780 --> 00:38:38,200 aðgang að 0th vísitölu og ekki 1 plus 0-- eða 1 plús 1, 852 00:38:38,200 --> 00:38:45,530 í þessu tilfelli, Index svo að það er í raun ljóst. 853 00:38:45,530 --> 00:38:48,870 Er allir góður af lagi á hvernig þetta er í gangi í gegnum 854 00:38:48,870 --> 00:38:51,470 og með hverjum vísitölu ég setja gildi í fylkinu 855 00:38:51,470 --> 00:38:55,340 og búa til fylki með 18 tölur sem notandinn er að fara að inntak? 856 00:38:55,340 --> 00:38:58,780 857 00:38:58,780 --> 00:38:59,821 OK. 858 00:38:59,821 --> 00:39:00,321 Cool. 859 00:39:00,321 --> 00:39:05,380 860 00:39:05,380 --> 00:39:07,400 >> OK. 861 00:39:07,400 --> 00:39:12,220 Við snúum okkur í eitthvað sem er nokkuð viðeigandi fyrir þetta verk sett eins og heilbrigður. 862 00:39:12,220 --> 00:39:15,020 Ég veit í fyrirlestri, David-- Því miður, þú hafði spurningu? 863 00:39:15,020 --> 00:39:16,840 >> Áhorfendur: Getur þú stækka það? 864 00:39:16,840 --> 00:39:18,080 >> ANDI Peng: Já, svo ég reyndi. 865 00:39:18,080 --> 00:39:18,788 En ég veit ekki. 866 00:39:18,788 --> 00:39:21,437 Fyrir sumir ástæða, þetta útgáfa af PowerPoint 867 00:39:21,437 --> 00:39:23,270 er í raun ekki að virka vel með skjánum. 868 00:39:23,270 --> 00:39:25,260 Þannig að við erum bara að fara að halda því svona. 869 00:39:25,260 --> 00:39:27,280 Allt þetta verður hlaðið netinu. 870 00:39:27,280 --> 00:39:28,218 Því miður, krakkar. 871 00:39:28,218 --> 00:39:30,090 Já. 872 00:39:30,090 --> 00:39:30,980 OK. 873 00:39:30,980 --> 00:39:35,530 >> Þannig að við getum einnig hafa strengi. 874 00:39:35,530 --> 00:39:39,320 Svo ef þið í raun notice-- I veit Rob fór yfir þetta í þeirri fyrirlestri 875 00:39:39,320 --> 00:39:43,652 að hann did-- band er í raun bara fylki af stöfum, 876 00:39:43,652 --> 00:39:44,860 ef þú hugsar um það, ekki satt? 877 00:39:44,860 --> 00:39:47,500 A band er nafn eða setning eða orð, ekki satt? 878 00:39:47,500 --> 00:39:52,975 >> Ef ég væri að búa til band sem heitir Andi-- bara nafn mitt, A-N-D-I. 879 00:39:52,975 --> 00:39:55,460 Þú hugsa um það sem bara einni breytistærð. 880 00:39:55,460 --> 00:39:58,630 En í raun, það er brotið niður inn bara fjölda stafir. 881 00:39:58,630 --> 00:40:01,910 Svo það er got a eðli a geyma í array gildi. 882 00:40:01,910 --> 00:40:05,420 Það er got a eðli N geymdar í Annað vísitölu og svo framvegis og svo framvegis. 883 00:40:05,420 --> 00:40:08,660 >> Þannig að á þann hátt, við reyndar hafa svona 884 00:40:08,660 --> 00:40:10,970 uppbyggingu sett í staður fyrir strengi okkar. 885 00:40:10,970 --> 00:40:14,660 Svo hér, ef ég væri að inntak í Orðið "borða" - svo jafnt string orð 886 00:40:14,660 --> 00:40:15,540 fá band. 887 00:40:15,540 --> 00:40:19,260 Ef ég væri að inntak orðið "borða" sem er líkamlega leiðin að tölvan mín 888 00:40:19,260 --> 00:40:21,870 er að geyma þessi band í minni mínu. 889 00:40:21,870 --> 00:40:27,140 >> Og ef ég vildi keyra í gegnum það og prenta það out-- svo fyrir í i 890 00:40:27,140 --> 00:40:30,890 jafngildir núll, muna, í fyrirlestri, við fjallað eitthvað sem heitir strlen, 891 00:40:30,890 --> 00:40:32,990 eða lengd strengsins. 892 00:40:32,990 --> 00:40:36,520 Því ég í raun ekki vita hversu stór fylki er 893 00:40:36,520 --> 00:40:38,210 af hvaða inputting-- notanda 894 00:40:38,210 --> 00:40:40,370 >> Til dæmis, inputted I orðið "borða" og ég veit 895 00:40:40,370 --> 00:40:41,870 sem er þrisvar stafir að lengd, ekki satt? 896 00:40:41,870 --> 00:40:44,700 Svo ég gæti sett í þremur þar og allt verður í lagi. 897 00:40:44,700 --> 00:40:49,290 En ef notandi inntak eitthvað þinn það er mismunandi fjöldi gildum, 898 00:40:49,290 --> 00:40:52,760 þú ert að fara að ekki vera fær til raunverulega veit að þegar þú program kóðann þinn. 899 00:40:52,760 --> 00:40:56,040 >> Svo leið að við tökum próf tilvikum svona er að við höfum eitthvað 900 00:40:56,040 --> 00:41:00,070 heitir strlen, sem er bara fall sem segir þér hversu lengi band er. 901 00:41:00,070 --> 00:41:02,080 Svo strlen á orðinu. 902 00:41:02,080 --> 00:41:03,470 Orð mitt er að borða. 903 00:41:03,470 --> 00:41:05,990 n jafngildir strlen á orðinu. 904 00:41:05,990 --> 00:41:08,930 Getur einhver sagt mér hvað það gildi í raun er þarna? 905 00:41:08,930 --> 00:41:12,550 Hvað þýðir n fulltrúi rétt nú, í þessu dæmi, ef ég hefði borðað? 906 00:41:12,550 --> 00:41:13,530 >> Áhorfendur: 3. 907 00:41:13,530 --> 00:41:14,520 >> ANDI Peng: 3, nákvæmlega. 908 00:41:14,520 --> 00:41:18,820 Þannig að við höfum fyrir int i jafngildir núll, n jafngildir 3, í raun. 909 00:41:18,820 --> 00:41:22,355 Og ég er að fara að keyra þar til það er minna en 3i ++. 910 00:41:22,355 --> 00:41:24,980 Og það er að fara að í raun fara gegnum og gera það sama. 911 00:41:24,980 --> 00:41:26,979 Það er að fara að prenta út hvert gildi og gefa þér 912 00:41:26,979 --> 00:41:29,700 E-A-T. Það er bara gefur til kynna a öðruvísi leið til að skrifa það. 913 00:41:29,700 --> 00:41:31,170 Það er að fara að vera mjög hjálpsamur. 914 00:41:31,170 --> 00:41:31,670 Já. 915 00:41:31,670 --> 00:41:35,174 Áhorfendur: Hvað er um kosti þess að setja sem n jafngildir strlen orð inni að 916 00:41:35,174 --> 00:41:36,894 fyrir lykkju [inaudible]? 917 00:41:36,894 --> 00:41:37,560 ANDI Peng: Já. 918 00:41:37,560 --> 00:41:44,880 Svo ef ég væri to-- segja, til dæmis, ef ég væri að gera það og þá 919 00:41:44,880 --> 00:41:51,935 do-- oop-- að í númerið mitt, það myndi í raun verið að gera eins og sama. 920 00:41:51,935 --> 00:41:55,060 Hins vegar leið sem David útskýrði það á fyrirlestri, ef einhver af ykkur 921 00:41:55,060 --> 00:41:57,854 muna, var það, sem menn, sem forritari, 922 00:41:57,854 --> 00:42:00,270 við reynum virkilega að forrita okkar kóða svo að tölvan okkar er 923 00:42:00,270 --> 00:42:04,070 að vinna haldið í lágmarki, svo að númerið okkar er mjög duglegur. 924 00:42:04,070 --> 00:42:06,850 >> Þannig að ef ég hefði að það, hvað myndi gerast í gegnum fyrir lykkju mitt 925 00:42:06,850 --> 00:42:10,790 er að ég myndi fyrst að lýsa a breyta nafni ég er að fara að vera 0. 926 00:42:10,790 --> 00:42:13,350 Ég er að fara að athuga, ó, hvað er strlen af ​​orði? 927 00:42:13,350 --> 00:42:15,000 Ó, strlen er 3. 928 00:42:15,000 --> 00:42:16,191 Svo er ég minna en þremur? 929 00:42:16,191 --> 00:42:16,690 Já það er. 930 00:42:16,690 --> 00:42:17,870 Ég ætla að keyra. 931 00:42:17,870 --> 00:42:21,130 >> Og þá í annað sinn til baka í kring lykkja, ég ætla að hækka i. 932 00:42:21,130 --> 00:42:22,550 ég er að fara að vera einn. 933 00:42:22,550 --> 00:42:25,600 Og ég er að fara að athuga, ó, en hvað er strlen á orðinu? 934 00:42:25,600 --> 00:42:26,839 Ó, það er þrír. 935 00:42:26,839 --> 00:42:29,880 Og gerir það virðast eins konar eyðslusamur, hvert skipti sem þú keyrir í gegnum lykkjuna, 936 00:42:29,880 --> 00:42:33,340 að haka við virka, jafnvel þótt strlen af ​​orðinu 937 00:42:33,340 --> 00:42:35,490 aldrei breytist? 938 00:42:35,490 --> 00:42:38,590 >> Svo það er auka vald fyrir tölvu. 939 00:42:38,590 --> 00:42:42,180 Þegar þú byrjar að tala um hluti sem eru billjón og milljarða 940 00:42:42,180 --> 00:42:44,431 og milljarða af stöðum lengi, ímynda tölvuna 941 00:42:44,431 --> 00:42:47,430 þurfa að líkamlega að fara í gegnum og athuga öll þessi hvert einasta skipti. 942 00:42:47,430 --> 00:42:53,170 Það er ástæðan fyrir, að gera bara fyrir sakir hagkvæmni, 943 00:42:53,170 --> 00:42:57,620 Við hafa tilhneigingu til að bara að gera þetta, vegna þess að þetta leiðin sem við erum aðeins 944 00:42:57,620 --> 00:42:59,850 hringja í virka einu sinni í upphafi, 945 00:42:59,850 --> 00:43:01,766 og að hvert skipti sem það fer í gegnum það er að fara 946 00:43:01,766 --> 00:43:03,789 að geyma verðmæti 3 það, að þú ert ekki 947 00:43:03,789 --> 00:43:05,330 þarft að stöðugt að athuga í hvert skipti. 948 00:43:05,330 --> 00:43:05,743 Já. 949 00:43:05,743 --> 00:43:06,409 >> Áhorfendur: Sorry. 950 00:43:06,409 --> 00:43:09,070 Bara [inaudible]. 951 00:43:09,070 --> 00:43:13,985 Gætirðu ekki int n jafngildir strlen og setja að ofan utan til hliðar 952 00:43:13,985 --> 00:43:15,364 einnig? 953 00:43:15,364 --> 00:43:16,030 ANDI Peng: Já. 954 00:43:16,030 --> 00:43:17,100 Þú gætir gert það, algerlega. 955 00:43:17,100 --> 00:43:19,970 Ástæðan að við höfum það hér er vegna þess að leiðin fyrir lykkju verk 956 00:43:19,970 --> 00:43:23,500 er að það er kallað staðbundin breytu í þeim skilningi 957 00:43:23,500 --> 00:43:26,150 að allt sem þú ert búa inni til hliðar 958 00:43:26,150 --> 00:43:27,890 aðeins til inni til hliðar. 959 00:43:27,890 --> 00:43:31,530 >> Svo breytan ég bara er í þessum sviga. 960 00:43:31,530 --> 00:43:35,260 Og hér eru breytur n einnig aðeins til í þeim sviga. 961 00:43:35,260 --> 00:43:39,350 Svo ef þú værir að nota strlen af Bæta mörgum sinnum niðri, 962 00:43:39,350 --> 00:43:42,230 algerlega besta leiðin til að gera það væri að lýsa það upp á toppinn 963 00:43:42,230 --> 00:43:43,563 svo þú þarft ekki að gera það einu sinni. 964 00:43:43,563 --> 00:43:45,420 Já. 965 00:43:45,420 --> 00:43:47,670 Áhorfendur: Hvers vegna gera þú hafa a Ný lína eftir prósent 966 00:43:47,670 --> 00:43:51,300 sjá hvort þú vilt að setja alla bréf hliðina á henni aðskilin? 967 00:43:51,300 --> 00:43:54,140 >> ANDI Peng: Oh, ég vildi að að prenta þær allar á hverri línu. 968 00:43:54,140 --> 00:43:54,890 Það skiptir ekki máli. 969 00:43:54,890 --> 00:43:55,890 Já, það er formatting. 970 00:43:55,890 --> 00:43:57,181 Það er góð spurning, þó. 971 00:43:57,181 --> 00:43:59,360 Já, ef ég vildi prenta það allt á bara einni línu, 972 00:43:59,360 --> 00:44:02,731 Ég myndi ekki hafa bandstrik í. 973 00:44:02,731 --> 00:44:03,230 OK. 974 00:44:03,230 --> 00:44:06,880 Allir góður? 975 00:44:06,880 --> 00:44:07,500 OK. 976 00:44:07,500 --> 00:44:08,000 Cool. 977 00:44:08,000 --> 00:44:12,080 978 00:44:12,080 --> 00:44:14,750 >> Þannig að ég held að ég hafi talað nóg. 979 00:44:14,750 --> 00:44:20,040 Snúa ykkur að hlaupa í gegnum númer og segja mér hvað er rangt hérna. 980 00:44:20,040 --> 00:44:21,560 Hvar er villan? 981 00:44:21,560 --> 00:44:26,920 Svo eins og þú geta sjá, ég hef lýst yfir Ný array af taginu String heitir bekknum. 982 00:44:26,920 --> 00:44:30,220 Og ég hef inputted Sam, Jess, og Kim í það. 983 00:44:30,220 --> 00:44:33,400 Og ég er að reyna að prenta út allir þættir array. 984 00:44:33,400 --> 00:44:36,796 Getur einhver sagt mér hvers vegna þetta er að fara að gefa mér vandamál? 985 00:44:36,796 --> 00:44:39,320 Ég skal gefa ykkur 10 sekúndur til að hugsa um þetta. 986 00:44:39,320 --> 00:44:55,490 987 00:44:55,490 --> 00:44:56,619 >> OK. 988 00:44:56,619 --> 00:44:57,118 Já? 989 00:44:57,118 --> 00:45:01,972 >> Áhorfendur: Er vinstri miðju Jafnt og 3 eða [inaudible]? 990 00:45:01,972 --> 00:45:02,680 ANDI Peng: Hægri. 991 00:45:02,680 --> 00:45:06,784 Svo hversu oft þetta er í raun að fara að keyra í gegnum þessa lykkju? 992 00:45:06,784 --> 00:45:07,620 >> Áhorfendur: Four. 993 00:45:07,620 --> 00:45:08,070 >> ANDI Peng: Einmitt. 994 00:45:08,070 --> 00:45:09,445 Það er að fara að í gegnum fjórum sinnum. 995 00:45:09,445 --> 00:45:12,250 Það er að fara að keyra í gegnum á 0, 1, 2, og 3, 996 00:45:12,250 --> 00:45:15,200 því þáttur þeirra er ég er minna en eða jafnt og 3. 997 00:45:15,200 --> 00:45:16,960 Það er ekki að fara að hætta þegar það er 2. 998 00:45:16,960 --> 00:45:18,800 Það er að fara að halda fara þar til hann lendir í 3. 999 00:45:18,800 --> 00:45:21,720 Og eins og við vitum, það er aðeins þrír þættir í raun array okkar. 1000 00:45:21,720 --> 00:45:27,260 >> Ef við reynum að nálgast fjórða þáttur eða vísitölu 3, 1001 00:45:27,260 --> 00:45:30,357 þú ert að fara að lemja eitthvað í minni sem er ekki til. 1002 00:45:30,357 --> 00:45:31,690 Það er kallað null Ljúka. 1003 00:45:31,690 --> 00:45:32,856 Ekkert að fara að vera þar. 1004 00:45:32,856 --> 00:45:35,324 Tölvan þín er ekki að fara að vera mjög ánægð með þig. 1005 00:45:35,324 --> 00:45:36,170 Já. 1006 00:45:36,170 --> 00:45:38,430 Hjartarskinn einhver hafa spurningar á hverju sem var að gerast? 1007 00:45:38,430 --> 00:45:39,679 Það er sameiginlegt svæði til að forðast. 1008 00:45:39,679 --> 00:45:40,712 Já. 1009 00:45:40,712 --> 00:45:45,777 >> Áhorfendur: Er ekki í fyrsta renna einnig hafa a band af 2? 1010 00:45:45,777 --> 00:45:46,360 ANDI Peng: Nei 1011 00:45:46,360 --> 00:45:49,610 Svo í raun, þegar þú ert að gera fylki, 1012 00:45:49,610 --> 00:45:51,540 sem krappi rétt það, sem number-- allt 1013 00:45:51,540 --> 00:45:53,480 það er að segja þér er hvernig margir þættir sem ég hef. 1014 00:45:53,480 --> 00:45:55,840 Það er ekki í raun að segja mér Vísitölur neitt. 1015 00:45:55,840 --> 00:45:58,760 Þannig að í þessu tilfelli, ég veit að ég vil til að skrifa með þremur stöðum, 1016 00:45:58,760 --> 00:46:02,690 með þremur líkamlega stöðum til halda hvað sem ég vil halda. 1017 00:46:02,690 --> 00:46:04,510 Svo er það hvers vegna númer þrjú er. 1018 00:46:04,510 --> 00:46:06,560 Hins vegar, ef ég vildi að í raun að opna það, 1019 00:46:06,560 --> 00:46:11,220 ef ég vildi segja, printf bekknum krappi tala, þá 1020 00:46:11,220 --> 00:46:14,560 þú ert að fara að raunverulega setja líkamlega vísitalan þar. 1021 00:46:14,560 --> 00:46:16,330 Já, góð spurning. 1022 00:46:16,330 --> 00:46:20,065 >> Áhorfendur: Svo er líkamlegt Vísitala átti að vera [inaudible]? 1023 00:46:20,065 --> 00:46:20,940 ANDI Peng: Fyrirgefðu. 1024 00:46:20,940 --> 00:46:21,500 Getur þú tala upp hluti? 1025 00:46:21,500 --> 00:46:24,208 >> Áhorfendur: Svo er líkamlegt vísitölu [Inaudible] hvert kassa? 1026 00:46:24,208 --> 00:46:25,260 [Inaudible]? 1027 00:46:25,260 --> 00:46:26,040 >> ANDI Peng: Já. 1028 00:46:26,040 --> 00:46:28,970 Þannig að ég ætla að fara aftur til hérna. 1029 00:46:28,970 --> 00:46:31,120 Hugsaðu um hérna. 1030 00:46:31,120 --> 00:46:32,820 Við höfum fjölbreytta stærð 3. 1031 00:46:32,820 --> 00:46:35,540 Það er þremur stöðum, eins og, líkamlega tákn í hér. 1032 00:46:35,540 --> 00:46:37,620 En þeir eru heitir 0, 1 og 2. 1033 00:46:37,620 --> 00:46:40,700 Þannig að ef ég vildi fá aðgang að þeim, leiðin sem ég nálgast þær 1034 00:46:40,700 --> 00:46:43,480 er printf af hvað ég vildi hérna. 1035 00:46:43,480 --> 00:46:45,485 Þú þyrftir að prenta út nafn þess, 1036 00:46:45,485 --> 00:46:47,610 Því þá í tölvunni veit, ó, ég þarf að líta 1037 00:46:47,610 --> 00:46:51,391 í þessu fylki fyrir 0th vísitölunni. 1038 00:46:51,391 --> 00:46:51,890 Já. 1039 00:46:51,890 --> 00:46:53,306 En stærð þess breytist ekki. 1040 00:46:53,306 --> 00:46:55,492 Stærð er 3, án tillits til um hvernig þú merkja þær. 1041 00:46:55,492 --> 00:46:58,321 1042 00:46:58,321 --> 00:46:58,820 OK. 1043 00:46:58,820 --> 00:47:01,387 Allir góður? 1044 00:47:01,387 --> 00:47:02,970 Áhorfendur: Svo í hvert sinn sem ég [inaudible]? 1045 00:47:02,970 --> 00:47:06,357 1046 00:47:06,357 --> 00:47:06,940 ANDI Peng: OK. 1047 00:47:06,940 --> 00:47:13,270 Þannig að í þessu tilfelli, er það ekki í raun komast inn í það núna í námskeiðinu. 1048 00:47:13,270 --> 00:47:16,760 En veit að string-- eins og ég sagði áður, band er í raun 1049 00:47:16,760 --> 00:47:18,440 An array af stöfum. 1050 00:47:18,440 --> 00:47:21,430 Svo ef ég búa til array af strengjum, ég konar 1051 00:47:21,430 --> 00:47:24,430 hafa fjölda array stafi, ekki satt? 1052 00:47:24,430 --> 00:47:27,720 >> Þannig að í þessu tilfelli, vegna þess að ég hafa fjölbreytta strengi, 1053 00:47:27,720 --> 00:47:31,340 ef þú varst að slá inn mjög lengi orð, sem enn tekur aðeins eitt rými, 1054 00:47:31,340 --> 00:47:33,230 því það er einn strengur. 1055 00:47:33,230 --> 00:47:37,492 En ef þú varst að hugsa um persónum því fylki, 1056 00:47:37,492 --> 00:47:40,450 þá er að taka upp a einhver fjöldi fleiri stafir en einhverju öðru orðum 1057 00:47:40,450 --> 00:47:41,372 eru. 1058 00:47:41,372 --> 00:47:42,830 Ekki mjög mikilvægt fyrir núna. 1059 00:47:42,830 --> 00:47:44,921 En það er bara almennt hvernig það er að vinna. 1060 00:47:44,921 --> 00:47:49,750 1061 00:47:49,750 --> 00:47:50,560 >> OK. 1062 00:47:50,560 --> 00:47:55,840 Svo er þetta eitthvað sem ég ætla að láta þig gera mikið á meðan á önn. 1063 00:47:55,840 --> 00:47:57,500 Ég þarf að hvíla röddina. 1064 00:47:57,500 --> 00:47:59,530 Þú krakkar þurfa að örva ykkur. 1065 00:47:59,530 --> 00:48:02,300 A einhver fjöldi af þú sennilega að sofa núna. 1066 00:48:02,300 --> 00:48:05,960 Ég er inputting handahófi vandamál þar sem við í bekknum eða þú 1067 00:48:05,960 --> 00:48:09,480 með maka við hliðina á þér er að fara að eyða nokkrum mínútum að ræða 1068 00:48:09,480 --> 00:48:14,980 um hvernig við myndum fara um að leysa eða búa til forrit eins og þetta. 1069 00:48:14,980 --> 00:48:17,100 >> Svo núna, viljum við til að búa til program-- 1070 00:48:17,100 --> 00:48:19,560 við erum að fara að kalla það upper.c-- sem breytir 1071 00:48:19,560 --> 00:48:24,787 lágstafir orð til efri-flokki string-- hástafi, því miður. 1072 00:48:24,787 --> 00:48:26,370 Bæta í strengi, því miður, er samheiti. 1073 00:48:26,370 --> 00:48:28,370 Ég ætla að breyta þeim að meina það sama. 1074 00:48:28,370 --> 00:48:32,270 1075 00:48:32,270 --> 00:48:33,499 >> Já. 1076 00:48:33,499 --> 00:48:34,540 Taktu nokkrar mínútur. 1077 00:48:34,540 --> 00:48:37,130 Það þarf ekki að vera skrifað á hvaða tungumáli. 1078 00:48:37,130 --> 00:48:39,890 Bara í sauðakóða kóða eða rökrétt hvernig við gerðum jafnvel 1079 00:48:39,890 --> 00:48:42,083 fara að gera slík vandamál. 1080 00:48:42,083 --> 00:48:42,583 Já. 1081 00:48:42,583 --> 00:48:49,881 1082 00:48:49,881 --> 00:48:52,780 >> [SIDE Samtal] 1083 00:48:52,780 --> 00:49:18,680 1084 00:49:18,680 --> 00:49:22,130 >> Ég tók eftir líka að þið can-- Ég svona sé nú þegar forritið. 1085 00:49:22,130 --> 00:49:24,600 Ég giska skortur minn á kynnirinn háttur er vandamál. 1086 00:49:24,600 --> 00:49:27,410 En það er allt í lagi. 1087 00:49:27,410 --> 00:49:30,410 >> [SIDE Samtal] 1088 00:49:30,410 --> 00:50:03,589 1089 00:50:03,589 --> 00:50:04,380 Já, takk, strákar. 1090 00:50:04,380 --> 00:50:05,400 Koma fá nammi. 1091 00:50:05,400 --> 00:50:06,372 Koma fá nammi. 1092 00:50:06,372 --> 00:50:07,698 >> Áhorfendur: Já! 1093 00:50:07,698 --> 00:50:09,958 >> [SIDE Samtal] 1094 00:50:09,958 --> 00:50:16,101 1095 00:50:16,101 --> 00:50:18,100 ANDI Peng: Einnig, já, Ég ætla að byrja að henda nammi 1096 00:50:18,100 --> 00:50:20,280 á fólk sem svara ekki spurningum. 1097 00:50:20,280 --> 00:50:22,260 Svo þú ættir alla svara spurningum. 1098 00:50:22,260 --> 00:50:24,895 Eða ég geri ráð fyrir fólk sem svara spurningum. 1099 00:50:24,895 --> 00:50:26,070 Já, hinn veginn. 1100 00:50:26,070 --> 00:50:28,570 >> [SIDE Samtal] 1101 00:50:28,570 --> 00:51:13,399 1102 00:51:13,399 --> 00:51:14,274 Áhorfendur: [inaudible] 1103 00:51:14,274 --> 00:51:17,300 1104 00:51:17,300 --> 00:51:18,340 >> ANDI Peng: Já. 1105 00:51:18,340 --> 00:51:19,340 Já. 1106 00:51:19,340 --> 00:51:22,840 >> [SIDE Samtal] 1107 00:51:22,840 --> 00:51:40,700 1108 00:51:40,700 --> 00:51:41,590 >> Allt í lagi, krakkar. 1109 00:51:41,590 --> 00:51:44,731 Taka eins, 10 fleiri sekúndur. 1110 00:51:44,731 --> 00:51:48,210 >> [SIDE Samtal] 1111 00:51:48,210 --> 00:52:10,600 1112 00:52:10,600 --> 00:52:11,750 >> OK, krakkar. 1113 00:52:11,750 --> 00:52:14,920 Svo áður en við byrjum að reyna að í raun líkamlega skrifa kóðann, 1114 00:52:14,920 --> 00:52:20,650 góð lífsvenja er að við viljum fyrsta konar ástæðu 1115 00:52:20,650 --> 00:52:22,737 út rökrétt hvernig við myndum gera það. 1116 00:52:22,737 --> 00:52:24,570 Þú vilt tryggja, áður en þú líkamlega 1117 00:52:24,570 --> 00:52:27,210 byrja að reyna að kóða í Mario, sem þú gerir 1118 00:52:27,210 --> 00:52:28,870 viss um að þú hefur sauðakóðanum þína. 1119 00:52:28,870 --> 00:52:31,235 Sem er að taka þig í gegnum það sem þú þarft til að búa svo 1120 00:52:31,235 --> 00:52:33,360 að þegar þér líkamlega skrifa program síðar, 1121 00:52:33,360 --> 00:52:36,640 þú ert betur í stakk búnir til að veiða villur í kóðanum þínum og svoleiðis. 1122 00:52:36,640 --> 00:52:40,460 >> Þannig að við erum að fara að bara að byrja by-- á ensku, í sauðakóða, 1123 00:52:40,460 --> 00:52:43,320 er einhver vilja til að gefa mér almenn skýring 1124 00:52:43,320 --> 00:52:46,250 um hvernig við myndum fara að gera þetta? 1125 00:52:46,250 --> 00:52:48,102 Já. 1126 00:52:48,102 --> 00:52:49,664 >> Áhorfendur: [inaudible]. 1127 00:52:49,664 --> 00:52:50,830 ANDI Peng: Jú, engar áhyggjur. 1128 00:52:50,830 --> 00:52:57,233 Áhorfendur: Getur þú biðja hana eða spyrja einhver að fá band 1-- já, band, 1129 00:52:57,233 --> 00:52:58,160 og svo-- 1130 00:52:58,160 --> 00:52:59,826 >> ANDI Peng: Já, þannig að þetta er góð byrjun. 1131 00:52:59,826 --> 00:53:01,972 Ég ætla að byrja að skrifa, því miður, eins og þú talar. 1132 00:53:01,972 --> 00:53:02,471 So-- 1133 00:53:02,471 --> 00:53:05,698 >> Áhorfendur: --The lágstafir tölur eru hærri, ekki satt? 1134 00:53:05,698 --> 00:53:08,519 Eða að lágstöfum hafa hár tölur? 1135 00:53:08,519 --> 00:53:09,310 ANDI Peng: Einmitt. 1136 00:53:09,310 --> 00:53:16,156 Áhorfendur: Svo þá við drögum 32 frá hvað [inaudible]. 1137 00:53:16,156 --> 00:53:28,600 1138 00:53:28,600 --> 00:53:29,870 >> ANDI Peng: Great. 1139 00:53:29,870 --> 00:53:35,020 Svo þurfum við almenna tilfinningu um hvernig á að vinna um þetta vandamál. 1140 00:53:35,020 --> 00:53:40,060 Vitandi að við höfum konar lært líkamlega þannig að strengir 1141 00:53:40,060 --> 00:53:43,320 eru geymd í minni, Hvað finnst þér þegar 1142 00:53:43,320 --> 00:53:45,920 veit að þú ert að fara að líklega að skrifa í kóðanum þínum 1143 00:53:45,920 --> 00:53:48,288 í því skyni að fara í gegnum streng? 1144 00:53:48,288 --> 00:53:49,259 >> Áhorfendur: Fyrir lykkju. 1145 00:53:49,259 --> 00:53:50,550 ANDI Peng: A til hliðar, einmitt. 1146 00:53:50,550 --> 00:53:56,540 1147 00:53:56,540 --> 00:53:57,220 Great. 1148 00:53:57,220 --> 00:54:00,539 Svo þurfum við almenn sauðakóðanum skrifað niður 1149 00:54:00,539 --> 00:54:02,330 þannig gefur þú bendir á hvernig þú 1150 00:54:02,330 --> 00:54:03,900 myndi færa um að leysa vandann. 1151 00:54:03,900 --> 00:54:06,150 Nú þegar þú hefur þetta, þér getur vísað henni til seinna 1152 00:54:06,150 --> 00:54:08,233 þegar þú ert að reyna að í raun skrifa kóðann þinn. 1153 00:54:08,233 --> 00:54:10,240 Þannig að við getum í raun að fara hér. 1154 00:54:10,240 --> 00:54:25,130 Og ég hef fengið fall sem kallast upper.c-- það is-- það á bara tóman sniðmáti 1155 00:54:25,130 --> 00:54:28,510 núna að þið eru að fara að hjálpa mér að reikna út um hvernig á að skrifa 1156 00:54:28,510 --> 00:54:30,430 þessi lína af code-- ekki línu af kóða. 1157 00:54:30,430 --> 00:54:32,890 Það verður margar línur af kóða. 1158 00:54:32,890 --> 00:54:35,710 >> Þegar byrjað hvers konar af auðu pset, hvað er 1159 00:54:35,710 --> 00:54:37,418 það fyrsta sem ég þarf að muna að gera? 1160 00:54:37,418 --> 00:54:39,290 >> Áhorfendur: [inaudible]. 1161 00:54:39,290 --> 00:54:41,000 >> ANDI Peng: Great Já. 1162 00:54:41,000 --> 00:54:41,500 Eru. 1163 00:54:41,500 --> 00:54:44,850 1164 00:54:44,850 --> 00:54:47,130 stdio.h. 1165 00:54:47,130 --> 00:54:49,640 Oftsinnis er þetta einn af flestum auðvelt mistök fólk 1166 00:54:49,640 --> 00:54:51,598 mun gera þegar þeir eru skrifa, er að þeir 1167 00:54:51,598 --> 00:54:54,180 gleyma að fela mikilvægt safn þeir þurfa. 1168 00:54:54,180 --> 00:54:57,689 Þannig að ef það er viðtalstímar og þú ert eins og, Ég veit ekki hvers vegna númerið mitt virkar ekki. 1169 00:54:57,689 --> 00:54:59,230 Getur þú sagt mér hvers vegna það er ekki að virka? 1170 00:54:59,230 --> 00:55:00,730 Við erum að fara að segja fékkstu #include? 1171 00:55:00,730 --> 00:55:02,520 Þú ættir #include það. 1172 00:55:02,520 --> 00:55:03,270 OK. 1173 00:55:03,270 --> 00:55:07,230 >> Þannig að við höfum fengið staðalinn I / O hér. 1174 00:55:07,230 --> 00:55:10,740 Er að eina bókasafn við erum að fara að þurfa hér? 1175 00:55:10,740 --> 00:55:12,681 Hvað erum við að fara að gera? 1176 00:55:12,681 --> 00:55:13,180 Sorry. 1177 00:55:13,180 --> 00:55:14,562 Einhver bara öskra það út? 1178 00:55:14,562 --> 00:55:15,666 >> Áhorfendur: [inaudible]. 1179 00:55:15,666 --> 00:55:16,666 ANDI Peng: Það sem þú ferð. 1180 00:55:16,666 --> 00:55:20,320 1181 00:55:20,320 --> 00:55:21,440 OK. 1182 00:55:21,440 --> 00:55:26,070 Og hvernig fer ég um að byrja hvers konar af virka, hvers konar meginvirkni 1183 00:55:26,070 --> 00:55:28,760 innan áætlunar okkar? 1184 00:55:28,760 --> 00:55:30,020 Int helstu. 1185 00:55:30,020 --> 00:55:34,531 1186 00:55:34,531 --> 00:55:35,030 OK. 1187 00:55:35,030 --> 00:55:35,970 Hvað á ég að setja inn hér? 1188 00:55:35,970 --> 00:55:37,640 Hvað er það fyrsta sem þú vilt gera? 1189 00:55:37,640 --> 00:55:39,910 Ef við viljum fá a band frá notanda, 1190 00:55:39,910 --> 00:55:43,870 hvað erum við að fara að hafa að gera á þessari fyrstu línu? 1191 00:55:43,870 --> 00:55:46,120 Því miður, þú krakkar finnst bara frjáls til að tala upp og hávær. 1192 00:55:46,120 --> 00:55:47,123 Bara hrópa út hvað sem er. 1193 00:55:47,123 --> 00:55:48,772 >> Áhorfendur: Spurðu notanda? 1194 00:55:48,772 --> 00:55:49,980 ANDI Peng: Hvernig gerum við það? 1195 00:55:49,980 --> 00:55:51,873 Ask-- er ég að fara að skrifa "að spyrja notandann"? 1196 00:55:51,873 --> 00:55:52,600 >> Áhorfendur: Printf. 1197 00:55:52,600 --> 00:55:54,341 >> ANDI Peng: OK. 1198 00:55:54,341 --> 00:55:54,840 Printf. 1199 00:55:54,840 --> 00:55:57,372 Hvað vil ég að printf? 1200 00:55:57,372 --> 00:55:58,776 >> Áhorfendur: Type í eitthvað. 1201 00:55:58,776 --> 00:56:02,760 1202 00:56:02,760 --> 00:56:03,840 >> ANDI Peng: Eins og að? 1203 00:56:03,840 --> 00:56:05,430 Krakkar, láta eins og ég er tölva. 1204 00:56:05,430 --> 00:56:08,475 Líkamlega segja mér hvert skref sem ég þarf að slá inn hér? 1205 00:56:08,475 --> 00:56:09,600 Er ég að gera eitthvað rangt? 1206 00:56:09,600 --> 00:56:10,743 Ætti ég að hafa slegið eitthvað? 1207 00:56:10,743 --> 00:56:11,690 >> Áhorfendur: Þú þarft tilvitnanir. 1208 00:56:11,690 --> 00:56:12,380 >> ANDI Peng: Ég þarf vitna? 1209 00:56:12,380 --> 00:56:12,880 OK. 1210 00:56:12,880 --> 00:56:15,520 1211 00:56:15,520 --> 00:56:16,297 OK. 1212 00:56:16,297 --> 00:56:17,698 >> Áhorfendur: Og svo nýja línu. 1213 00:56:17,698 --> 00:56:21,434 1214 00:56:21,434 --> 00:56:22,465 Semíkommu. 1215 00:56:22,465 --> 00:56:23,340 ANDI Peng: semíkommu? 1216 00:56:23,340 --> 00:56:24,060 OK. 1217 00:56:24,060 --> 00:56:24,560 Good. 1218 00:56:24,560 --> 00:56:27,060 >> Áhorfendur: Og kannski tilgreina að þú vilt það í lágstafir? 1219 00:56:27,060 --> 00:56:30,120 1220 00:56:30,120 --> 00:56:31,415 >> ANDI Peng: Great. 1221 00:56:31,415 --> 00:56:33,540 Þú krakkar hlæja að mér að gleyma að setja semíkommu. 1222 00:56:33,540 --> 00:56:36,350 Ég tryggja þér eitthvað í tengslum við þennan flokk, 1223 00:56:36,350 --> 00:56:38,260 þú munt gleyma að setja semíkommu, og það 1224 00:56:38,260 --> 00:56:41,116 mun taka þér þrjár klukkustundir að reikna út hvers vegna númerið þitt er ekki að virka. 1225 00:56:41,116 --> 00:56:42,240 Það hefur gerst að allir af okkur. 1226 00:56:42,240 --> 00:56:43,950 Það mun líklega gerast við þig. 1227 00:56:43,950 --> 00:56:46,352 Komast í góð venja að nota semikommum. 1228 00:56:46,352 --> 00:56:46,852 OK. 1229 00:56:46,852 --> 00:56:49,010 >> Áhorfendur: Viltu að gera sviga í? 1230 00:56:49,010 --> 00:56:50,398 >> ANDI Peng: Jú. 1231 00:56:50,398 --> 00:56:51,856 Viltu gera sviga? 1232 00:56:51,856 --> 00:56:53,020 >> Áhorfendur: Já. 1233 00:56:53,020 --> 00:56:54,330 >> ANDI Peng: Great. 1234 00:56:54,330 --> 00:56:54,830 OK. 1235 00:56:54,830 --> 00:56:57,872 Hvað á ég að gera næst? 1236 00:56:57,872 --> 00:56:58,964 >> Áhorfendur: Fá band. 1237 00:56:58,964 --> 00:56:59,880 ANDI Peng: Fá band. 1238 00:56:59,880 --> 00:57:03,080 1239 00:57:03,080 --> 00:57:03,830 Svo hvað ég slá? 1240 00:57:03,830 --> 00:57:04,233 Einhver? 1241 00:57:04,233 --> 00:57:05,040 >> Áhorfendur: String s. 1242 00:57:05,040 --> 00:57:05,873 >> ANDI Peng: String s. 1243 00:57:05,873 --> 00:57:07,251 Áhorfendur: GetString. 1244 00:57:07,251 --> 00:57:09,000 ANDI Peng: Somebody, getur þú sagt mér hvar 1245 00:57:09,000 --> 00:57:12,000 þessi aðgerð GetString er að koma frá? 1246 00:57:12,000 --> 00:57:13,660 >> Áhorfendur: String.h. 1247 00:57:13,660 --> 00:57:15,256 >> ANDI Peng: String.h? 1248 00:57:15,256 --> 00:57:16,715 Þú heldur að það sé frá string.h? 1249 00:57:16,715 --> 00:57:17,830 >> Áhorfendur: [inaudible]. 1250 00:57:17,830 --> 00:57:18,830 >> ANDI Peng: Það sem þú ferð. 1251 00:57:18,830 --> 00:57:21,280 Það er frá cs50.h. 1252 00:57:21,280 --> 00:57:24,530 Ef þú ert alltaf að rugla um hvar a bókasafn skrá er eða haus skrá er, 1253 00:57:24,530 --> 00:57:28,450 Google bókstaflega string.h, og ég skal segja þér 1254 00:57:28,450 --> 00:57:30,450 hvað eru allar aðgerðir sem eru í string.h. 1255 00:57:30,450 --> 00:57:31,340 OK. 1256 00:57:31,340 --> 00:57:35,210 >> Svo nú er að ég hef búið til band og ég hef hvetja notandann fyrir það, 1257 00:57:35,210 --> 00:57:38,770 Ég hef geymt það í breytu heitir s, hvað þarf ég að gera núna? 1258 00:57:38,770 --> 00:57:40,652 >> Áhorfendur: Athugaðu hvort það er í lágstöfum. 1259 00:57:40,652 --> 00:57:41,360 ANDI Peng: Sorry? 1260 00:57:41,360 --> 00:57:42,545 Áhorfendur: Athugaðu hvort það er í lágstöfum. 1261 00:57:42,545 --> 00:57:44,045 ANDI Peng: Allt í lagi, við skulum gera það. 1262 00:57:44,045 --> 00:57:45,857 Hvernig geri ég það? 1263 00:57:45,857 --> 00:57:47,940 Reyndar, að því er í bekknum núna, 1264 00:57:47,940 --> 00:57:50,330 við erum bara að fara að ráð fyrir að allt 1265 00:57:50,330 --> 00:57:52,620 að við inntak er nú þegar í lágstöfum. 1266 00:57:52,620 --> 00:57:55,430 Ef þú vildi athuga, þú myndir bara bæta skilyrt yfirlýsingu 1267 00:57:55,430 --> 00:57:59,640 sem hakað sem rann í gegnum hvert einasta array þáttur 1268 00:57:59,640 --> 00:58:02,540 og athugað hvort það er milli ákveðinna gilda. 1269 00:58:02,540 --> 00:58:05,627 Ég gleymi því fjöldi af gildum lágstafir eru. 1270 00:58:05,627 --> 00:58:07,210 Þú getur litið upp á ASCII töflunni. 1271 00:58:07,210 --> 00:58:08,800 En já, það er mjög góður punktur. 1272 00:58:08,800 --> 00:58:11,758 En núna, við erum bara að fara að ráð fyrir að allar strengi við inntak 1273 00:58:11,758 --> 00:58:13,130 eru í lágstöfum. 1274 00:58:13,130 --> 00:58:13,870 OK. 1275 00:58:13,870 --> 00:58:18,069 >> Svo hvernig myndi ég fara um þetta vandamál næst? 1276 00:58:18,069 --> 00:58:18,860 Áhorfendur: Fyrir lykkju. 1277 00:58:18,860 --> 00:58:19,340 ANDI Peng: Fyrir lykkju? 1278 00:58:19,340 --> 00:58:19,839 OK. 1279 00:58:19,839 --> 00:58:20,847 Segðu mér hvað ég á að slá. 1280 00:58:20,847 --> 00:58:25,230 >> Áhorfendur: Fyrir int i jafngildir 0. 1281 00:58:25,230 --> 00:58:27,230 >> ANDI Peng: OK. 1282 00:58:27,230 --> 00:58:36,350 >> Áhorfendur: Oh, reyndar, þá þér gera upp kommu og gera n jafngildir strlen. 1283 00:58:36,350 --> 00:58:38,940 >> ANDI Peng: Svo mikilvægt að ég held að hún er eftir hér 1284 00:58:38,940 --> 00:58:42,936 er að við vildum ekki að segja int n í annað sinn sem við gerðum þetta. 1285 00:58:42,936 --> 00:58:45,060 Bara veit að í a lykkja þegar þú ert að lýsa, 1286 00:58:45,060 --> 00:58:47,934 þú í raun þarft ekki int af í annað sinn sem þú gerir breytu. 1287 00:58:47,934 --> 00:58:51,202 Þú getur sagt n strlen. 1288 00:58:51,202 --> 00:58:52,620 >> Áhorfendur: Of s. 1289 00:58:52,620 --> 00:58:53,510 >> ANDI Peng: s. 1290 00:58:53,510 --> 00:58:54,706 OK. 1291 00:58:54,706 --> 00:58:58,370 >> Áhorfendur: Þá semíkommu. 1292 00:58:58,370 --> 00:59:00,130 >> ANDI Peng: Jú. 1293 00:59:00,130 --> 00:59:04,050 >> Áhorfendur: Og svo [inaudible] n. 1294 00:59:04,050 --> 00:59:07,480 1295 00:59:07,480 --> 00:59:09,460 Þá ég ++. 1296 00:59:09,460 --> 00:59:11,780 >> ANDI Peng: Great. 1297 00:59:11,780 --> 00:59:12,280 Allt í lagi. 1298 00:59:12,280 --> 00:59:14,690 Hvað viljum við inni þetta fyrir lykkju núna? 1299 00:59:14,690 --> 00:59:17,820 Mundu, ef við erum að fara að keyra í gegnum a band og hlaupa í gegnum fylki, 1300 00:59:17,820 --> 00:59:19,287 við viljum að athuga það í henni. 1301 00:59:19,287 --> 00:59:20,370 Hvað erum við að fara að þurfa? 1302 00:59:20,370 --> 00:59:23,070 1303 00:59:23,070 --> 00:59:26,900 Þetta er góður af erfiður hluti núna. 1304 00:59:26,900 --> 00:59:27,960 Einhver með giska? 1305 00:59:27,960 --> 00:59:34,160 1306 00:59:34,160 --> 00:59:34,690 >> OK. 1307 00:59:34,690 --> 00:59:37,830 Svo fyrst, hvernig eigum við að nálgast jafnvel? 1308 00:59:37,830 --> 00:59:41,610 Hvernig eigum við að jafnvel athuga fyrst eða aðgang stak í fylkinu? 1309 00:59:41,610 --> 00:59:42,920 Hvernig gerum við það? 1310 00:59:42,920 --> 00:59:47,120 Hvað er rithátturinn sem við notum til að gera það? 1311 00:59:47,120 --> 00:59:50,920 Hvað er nafnið á þessu fylki kallast? 1312 00:59:50,920 --> 00:59:52,400 Það heitir s, ekki satt? 1313 00:59:52,400 --> 00:59:54,850 >> Mundu, allir band er alltaf array. 1314 00:59:54,850 --> 00:59:58,210 Svo s krappi i, ekki satt? 1315 00:59:58,210 --> 01:00:01,360 Vegna þess að það er núverandi gildi eða vísitölu við erum að athuga. 1316 01:00:01,360 --> 01:00:05,156 Og við erum að fara að setja það jafn to-- við viljum lágstafir gildi, ekki satt? 1317 01:00:05,156 --> 01:00:07,530 Við viljum snúa að lower-- Afsakið, viljum við hástafi. 1318 01:00:07,530 --> 01:00:10,014 Við viljum snúa lágstafir gildi inn í hástafi. 1319 01:00:10,014 --> 01:00:11,805 Og svo like-- Fyrirgefðu, hvað heitir þú? 1320 01:00:11,805 --> 01:00:12,580 >> Áhorfendur: Heidi. 1321 01:00:12,580 --> 01:00:12,940 >> ANDI Peng: Sorry? 1322 01:00:12,940 --> 01:00:13,280 >> Áhorfendur: Heidi. 1323 01:00:13,280 --> 01:00:13,988 >> ANDI Peng: Heidi. 1324 01:00:13,988 --> 01:00:15,850 Eins Heidi sagði upphaflega, við erum líklega 1325 01:00:15,850 --> 01:00:20,330 að fara að þurfa the-- við erum líklega að fara að þurfa að draga 1326 01:00:20,330 --> 01:00:22,630 32 frá hvaða charc sem er, ekki satt? 1327 01:00:22,630 --> 01:00:24,680 Því á ASCII borð, munurinn 1328 01:00:24,680 --> 01:00:27,790 milli lágstafir bréf og hástafi bréf er 32. 1329 01:00:27,790 --> 01:00:31,290 Svo þegar við erum að gera þetta, við erum líklega fara til að vilja draga 32, ekki satt? 1330 01:00:31,290 --> 01:00:33,910 >> Þannig að við erum að fara að gera s i. 1331 01:00:33,910 --> 01:00:37,590 1332 01:00:37,590 --> 01:00:41,200 Þurfa allir að skilja hvers vegna ég gerði það? 1333 01:00:41,200 --> 01:00:45,760 Vegna þess að núna, í fylking okkar, við erum að haka við 0th vísitölu, ekki satt? 1334 01:00:45,760 --> 01:00:49,190 Og í 0th vísitölu band, það er í fyrsta staf. 1335 01:00:49,190 --> 01:00:51,820 Og það eðli sem við erum að fara að gera ráð fyrir að það er lágstafir. 1336 01:00:51,820 --> 01:00:55,980 Ef við viljum gera það hástafi, við að draga 32 frá gildi þess, 1337 01:00:55,980 --> 01:00:58,620 vegna þess að í ASCII okkar borð, það er hvernig við fáum það 1338 01:00:58,620 --> 01:01:01,600 til næsta samsvarandi gildi sem gerir það hástafir. 1339 01:01:01,600 --> 01:01:03,714 Þurfa allir að skilja það? 1340 01:01:03,714 --> 01:01:04,213 Já. 1341 01:01:04,213 --> 01:01:06,530 >> Áhorfendur: Gætirðu líka ekki lágstafir a minus-- 1342 01:01:06,530 --> 01:01:08,080 >> ANDI Peng: Já, svo er það reyndar mjög gott. 1343 01:01:08,080 --> 01:01:10,455 Ég ætla að koma aftur til að spurning eftir að við að gera þetta. 1344 01:01:10,455 --> 01:01:11,060 Já. 1345 01:01:11,060 --> 01:01:13,940 Og þá ef ég vil sjá hvað er að gerast, 1346 01:01:13,940 --> 01:01:16,180 Ég er líklega að fara að langar að prenta, ekki satt? 1347 01:01:16,180 --> 01:01:19,930 Einhver sagt mér hvað Ég vil að prenta hér. 1348 01:01:19,930 --> 01:01:29,160 >> Áhorfendur: printf prósent c sviga [inaudible]. 1349 01:01:29,160 --> 01:01:33,570 Það er gildi [inaudible] s i. 1350 01:01:33,570 --> 01:01:34,614 >> ANDI Peng: s i, því miður? 1351 01:01:34,614 --> 01:01:35,530 Áhorfendur: [inaudible]. 1352 01:01:35,530 --> 01:01:38,550 1353 01:01:38,550 --> 01:01:39,550 ANDI Peng: Ég veit það ekki. 1354 01:01:39,550 --> 01:01:40,600 Hvað finnst þér? 1355 01:01:40,600 --> 01:01:44,016 >> Áhorfendur: Jæja, wouldn't-- I Ég held ég myndi ekki bring-- 1356 01:01:44,016 --> 01:01:46,944 Ég myndi taka það út inni, vegna þess að [inaudible]. 1357 01:01:46,944 --> 01:01:49,726 1358 01:01:49,726 --> 01:01:51,392 ANDI Peng: Ó, þú hefði gert það? 1359 01:01:51,392 --> 01:01:53,867 Áhorfendur: Já. 1360 01:01:53,867 --> 01:01:56,700 ANDI Peng: Við skulum láta það hvernig það er, og ég skal útskýra hvers vegna síðar. 1361 01:01:56,700 --> 01:01:58,533 Mundu að jafnvel þegar þú hafa stað handhafa, 1362 01:01:58,533 --> 01:02:00,701 þú vilt setja sviga kringum það. 1363 01:02:00,701 --> 01:02:01,200 Allt í lagi. 1364 01:02:01,200 --> 01:02:04,810 Þannig að þetta ætti að vera solid virka hér. 1365 01:02:04,810 --> 01:02:06,370 Skulum hlaupa það og sjá hvort það safnar. 1366 01:02:06,370 --> 01:02:08,750 Gera efri. 1367 01:02:08,750 --> 01:02:09,250 Uh-ó. 1368 01:02:09,250 --> 01:02:12,030 1369 01:02:12,030 --> 01:02:13,340 Það lítur ekki of gott. 1370 01:02:13,340 --> 01:02:14,507 Hvers vegna er þetta að gerast? 1371 01:02:14,507 --> 01:02:17,340 Eins og með hvaða villa, þú vilt fara til baka og byrja með fyrsta, 1372 01:02:17,340 --> 01:02:20,630 því yfirleitt einn villa orsökum hellingur af öðrum villum eftir það. 1373 01:02:20,630 --> 01:02:26,700 Hér sjáum við upper.c: 18: 25, sem segir mig í þessari áætlun heitir upper.c, 1374 01:02:26,700 --> 01:02:33,800 á línu 18, villa óbeint lýsa bókasafn virka strlen með gerð 1375 01:02:33,800 --> 01:02:36,330 unassigned-- bla, ég veit það ekki hvað er að gerast eftir það. 1376 01:02:36,330 --> 01:02:39,990 >> Allt það er að segja mér núna er að eitthvað er að gerast á strlen. 1377 01:02:39,990 --> 01:02:43,520 Og tölvan er að rugla saman, vegna þess að Það er eins og ég veit ekki hvað strlen er? 1378 01:02:43,520 --> 01:02:45,520 Hvað gerir það líklega segja þér að þú ert að missa? 1379 01:02:45,520 --> 01:02:46,490 >> Áhorfendur: Þú ert vantar [inaudible]. 1380 01:02:46,490 --> 01:02:47,630 >> ANDI Peng: Það er rétt. 1381 01:02:47,630 --> 01:02:49,510 Nákvæmlega. 1382 01:02:49,510 --> 01:02:52,140 Svo er þetta þar sem það er mikilvægt að tryggja 1383 01:02:52,140 --> 01:02:56,970 að sérhver aðgerð sem þú notar í þinn númer er að hafa rétta haus 1384 01:02:56,970 --> 01:02:59,660 skrá fyrir safnið, eða annars þú ert að fara að fá fullt af villum 1385 01:02:59,660 --> 01:03:01,150 og númerið þitt er ekki að fara að vita hvað er að gerast. 1386 01:03:01,150 --> 01:03:03,050 Þannig að við erum að fara að fela string.h hér. 1387 01:03:03,050 --> 01:03:06,270 >> Nú þegar við reynum að safna saman efri. 1388 01:03:06,270 --> 01:03:08,410 Safna saman á réttan hátt. 1389 01:03:08,410 --> 01:03:09,960 Skulum keyra þetta forrit. 1390 01:03:09,960 --> 01:03:12,000 Svo skrifar eitthvað í lágstöfum. 1391 01:03:12,000 --> 01:03:14,920 Hvað þú krakkar vilja til að slá? 1392 01:03:14,920 --> 01:03:16,546 Hrópa út eitthvað. 1393 01:03:16,546 --> 01:03:17,920 Allt í lagi, Charly gekk inn. 1394 01:03:17,920 --> 01:03:18,990 Við munum slá nafn Charly er. 1395 01:03:18,990 --> 01:03:21,670 1396 01:03:21,670 --> 01:03:22,840 >> Charly í lágstöfum. 1397 01:03:22,840 --> 01:03:27,742 Og vonandi, vonandi, þetta er fara að hrópa út og spýta út 1398 01:03:27,742 --> 01:03:28,575 Charly í hástafi. 1399 01:03:28,575 --> 01:03:30,830 Yay! 1400 01:03:30,830 --> 01:03:33,430 er allir skilja hvernig Ég gekk um að leysa það? 1401 01:03:33,430 --> 01:03:36,190 Leiðin sem ég get vinna með heiltölur 1402 01:03:36,190 --> 01:03:39,410 til að leysa eitthvað sem Ég vil gera í strengi, 1403 01:03:39,410 --> 01:03:44,390 vegna stafir og heiltölur getur að vísa á sama hátt vegna þess að 1404 01:03:44,390 --> 01:03:45,540 af ASCII kortlagning. 1405 01:03:45,540 --> 01:03:52,890 >> Svo til að fara aftur til lið þitt, ef ég langaði að setja hér í stað þess 32 1406 01:03:52,890 --> 01:03:58,959 hástafir A mínus lágstafir a bara eins að það myndi vinna jafn vel, 1407 01:03:58,959 --> 01:04:01,750 því það er einfaldlega bara Munurinn á milli þessara tveggja gilda. 1408 01:04:01,750 --> 01:04:09,570 Ef ég vil gera þetta again-- Charly. 1409 01:04:09,570 --> 01:04:10,320 Ó nei. 1410 01:04:10,320 --> 01:04:11,820 Ég held að við fórum á rangan hátt, já? 1411 01:04:11,820 --> 01:04:13,260 >> Áhorfendur: [inaudible] lágstafir a. 1412 01:04:13,260 --> 01:04:14,260 >> ANDI Peng: Það sem þú ferð. 1413 01:04:14,260 --> 01:04:22,380 1414 01:04:22,380 --> 01:04:22,880 Jebb. 1415 01:04:22,880 --> 01:04:24,920 Og út spits charly. 1416 01:04:24,920 --> 01:04:28,020 Svo vera varkár þegar þú ert að draga gildi 1417 01:04:28,020 --> 01:04:30,400 að muna hver einn er meiri en hinn. 1418 01:04:30,400 --> 01:04:35,220 Til dæmis, hér ég gleymdi sem lágstafir a er í raun 1419 01:04:35,220 --> 01:04:38,540 meiri en hástafi A. Svo þegar ég reyndi að draga þá í hina áttina 1420 01:04:38,540 --> 01:04:40,600 um, fékk ég neikvæð 32. 1421 01:04:40,600 --> 01:04:42,800 Og tölvan mín var eins, Ég veit ekki hvað það er. 1422 01:04:42,800 --> 01:04:45,810 Það er líkur bara sumir af handahófi gildi sem er ekki mjög gott. 1423 01:04:45,810 --> 01:04:48,760 Og svo að tryggja að þú ert að draga í réttri lengd 1424 01:04:48,760 --> 01:04:52,831 að finna táknið sem þú vilt. 1425 01:04:52,831 --> 01:04:53,330 OK. 1426 01:04:53,330 --> 01:04:58,550 Er einhver rugla um hvernig við fór um að skrifa þessa aðgerð? 1427 01:04:58,550 --> 01:04:59,180 OK. 1428 01:04:59,180 --> 01:05:04,830 Svo í raun, fall þegar er í bókasafninu sem heitir ctype.h. 1429 01:05:04,830 --> 01:05:06,417 Kallað ctype.h safnsins. 1430 01:05:06,417 --> 01:05:08,500 Þessi aðgerð er í raun þegar skrifað fyrir þig. 1431 01:05:08,500 --> 01:05:10,820 Það er kallað að efri. 1432 01:05:10,820 --> 01:05:13,027 >> Og svo í þeim tilgangi að þetta pset, ætlar þú að fara 1433 01:05:13,027 --> 01:05:15,860 að finna að þú viljir virkilega að nota a einhver fjöldi af the virka sem 1434 01:05:15,860 --> 01:05:17,390 innan ctype bókasafninu. 1435 01:05:17,390 --> 01:05:21,040 Til efri, að lækka, er efri, er lower-- þá eru allar aðgerðir 1436 01:05:21,040 --> 01:05:24,914 að þú verður fær um að nota mjög, mjög fljótt í eigin kóðann þinn sem 1437 01:05:24,914 --> 01:05:26,080 er einmitt það sem þetta gerir. 1438 01:05:26,080 --> 01:05:28,941 Við skrifaði út hvernig á að umbreyta band til hástafi. 1439 01:05:28,941 --> 01:05:31,440 En þetta er í raun númer að einhver annar hefur skrifað 1440 01:05:31,440 --> 01:05:33,800 og að þú getur fengið aðgang að um mismunandi föllum. 1441 01:05:33,800 --> 01:05:34,300 Já? 1442 01:05:34,300 --> 01:05:39,570 >> Áhorfendur: Svo þú afrita bara er þarna og gera það fyrir hvert einasta bréf? 1443 01:05:39,570 --> 01:05:42,070 >> ANDI Peng: Já, vegna þess að ég er ekki sama um gildum a. 1444 01:05:42,070 --> 01:05:44,540 Ég hugsa bara að munurinn milli þeirra er 32, ekki satt? 1445 01:05:44,540 --> 01:05:48,210 Munurinn á milli lágstafir b og hástafir B er einnig 32. 1446 01:05:48,210 --> 01:05:50,860 Og munurinn á milli c og hástafir C er alltaf 32. 1447 01:05:50,860 --> 01:05:53,235 >> Ég er bara að hugsa um að munur á milli tveggja, 1448 01:05:53,235 --> 01:05:56,666 vegna þess að allar stafina fylgja sama mynstri, ekki satt? 1449 01:05:56,666 --> 01:05:58,540 Ef ég hef muninn milli einn af þeim, 1450 01:05:58,540 --> 01:06:01,050 Ég veit hvað munurinn á milli allra þeirra er. 1451 01:06:01,050 --> 01:06:01,740 Góð spurning. 1452 01:06:01,740 --> 01:06:04,090 Já. 1453 01:06:04,090 --> 01:06:06,660 Allir góður? 1454 01:06:06,660 --> 01:06:09,080 OK. 1455 01:06:09,080 --> 01:06:09,580 OOP. 1456 01:06:09,580 --> 01:06:14,380 1457 01:06:14,380 --> 01:06:15,270 >> OK. 1458 01:06:15,270 --> 01:06:20,310 Svo það er önnur hugmynd að fara að vera mjög gagnlegur eins og þú 1459 01:06:20,310 --> 01:06:22,570 halda áfram að þróa kóðinn er þessi hugmynd 1460 01:06:22,570 --> 01:06:25,430 um að skapa störf eða abstrakt. 1461 01:06:25,430 --> 01:06:28,479 Svo núna, við höfum öll tekið algebru. 1462 01:06:28,479 --> 01:06:31,770 Í algebru, þú ert kennt að það er þetta dásamlegur hlutur sem kallast fall 1463 01:06:31,770 --> 01:06:35,300 vél, þar sem ef þú inntak einn svoleiðis númer, 1464 01:06:35,300 --> 01:06:38,720 það rennur í gegnum þessa frábæru virka og út birtist mismunandi framleiðsla, ekki satt? 1465 01:06:38,720 --> 01:06:42,220 Í kóða, það sama gerist í hvers konar starfsemi. 1466 01:06:42,220 --> 01:06:48,230 >> Svo ég gat líkamlega skrifa í líkama mínum númerið mitt 1467 01:06:48,230 --> 01:06:52,357 helsta yfirlýsing sem raunverulega gerir hvað líkami kóða er að gera. 1468 01:06:52,357 --> 01:06:54,940 En utan þess, get ég líka skrifa margar mismunandi aðgerðir 1469 01:06:54,940 --> 01:06:56,320 að gera marga mismunandi hluti. 1470 01:06:56,320 --> 01:06:58,570 Til dæmis, við höfum nú þegar byrjaði að nota sumir af þeim. 1471 01:06:58,570 --> 01:07:00,610 Printf-- sem er fall sem einhver annar 1472 01:07:00,610 --> 01:07:02,870 hefur þegar skrifað að við getum hringt í númerið okkar. 1473 01:07:02,870 --> 01:07:05,410 Til að upper-- í þessu tilfelli, upper-- er annar virka 1474 01:07:05,410 --> 01:07:07,330 við höfum skrifað að við getur hringt í númerið okkar. 1475 01:07:07,330 --> 01:07:09,520 Og svo ég giska á hvers vegna við höfum jafnvel aðgerðir? 1476 01:07:09,520 --> 01:07:12,100 Hvers vegna eigum við ekki að plop bara það allt í sömu línu af kóða? 1477 01:07:12,100 --> 01:07:13,730 Það gerir það auðvelt fyrir alla. 1478 01:07:13,730 --> 01:07:19,200 >> Jæja, reasoning á bak við það er fyrst af öllu, stofnun. 1479 01:07:19,200 --> 01:07:21,880 Það er mjög pirrandi að fara í gegnum kóðann einhver er 1480 01:07:21,880 --> 01:07:25,110 og ein aðgerð eins printf. 1481 01:07:25,110 --> 01:07:28,570 Ef þið í raun vissi hvað virka printf fólst að skrifa, 1482 01:07:28,570 --> 01:07:30,530 það er, eins og, 1000 línur af kóða. 1483 01:07:30,530 --> 01:07:32,357 >> Ef hvert skipti sem ég vildi að printf eitthvað, 1484 01:07:32,357 --> 01:07:35,440 Ég þurfti að skrifa 1.000 línur af kóða, sem myndi vera mjög pirrandi að lesa, 1485 01:07:35,440 --> 01:07:36,290 ekki satt? 1486 01:07:36,290 --> 01:07:38,860 Það er þess vegna sem við höfum bara búið til þessa abstrakt virka 1487 01:07:38,860 --> 01:07:41,670 sem við höfum nú þegar einhver annar hefur skrifað annars staðar. 1488 01:07:41,670 --> 01:07:44,920 Og í hvert skipti sem við þurfum að nota það í númer okkar, höfum við bara að segja printf. 1489 01:07:44,920 --> 01:07:48,070 Og sem er fær um að nota aðgerðina einhver annar hefur skrifað í kóða. 1490 01:07:48,070 --> 01:07:51,020 Það gerir það auðveldara skipulagslega að lesa kóðann. 1491 01:07:51,020 --> 01:07:53,460 >> Í öðru lagi, það er einföldun. 1492 01:07:53,460 --> 01:07:56,750 Það einfaldar skrefunum sem við höfum að taka til að leysa vandamál okkar. 1493 01:07:56,750 --> 01:07:59,300 Printf, virka eins printf, virka eins og að efri 1494 01:07:59,300 --> 01:08:03,560 eru allt hlutir sem leyfa okkur að einfalda kóðann okkar niður svo það er auðveldara. 1495 01:08:03,560 --> 01:08:05,830 Og síðasta sem er reusability. 1496 01:08:05,830 --> 01:08:08,710 >> Svo sú staðreynd að við höfum fall sem heitir printf 1497 01:08:08,710 --> 01:08:11,990 sem við getum kalla margar mismunandi sinnum og gerir það að vera einnota. 1498 01:08:11,990 --> 01:08:14,980 Ef ég væri að skrifa printf, Ég skrifa bara einu sinni. 1499 01:08:14,980 --> 01:08:16,439 Það er aðeins á þeim einum stað. 1500 01:08:16,439 --> 01:08:19,890 Ef ég vildi gera það aftur, myndi ég að afrita og líma allt sem 1501 01:08:19,890 --> 01:08:21,760 í annarri línu mínu kóða. 1502 01:08:21,760 --> 01:08:24,880 Þess vegna ef við búa til fall sem er til staðar utan helstu okkar, 1503 01:08:24,880 --> 01:08:26,880 við getum bara ákalla það og endurnýta það þegar 1504 01:08:26,880 --> 01:08:29,604 við þurfum svo að það er mun auðveldara fyrir okkur sem forrit til að skrifa. 1505 01:08:29,604 --> 01:08:32,220 1506 01:08:32,220 --> 01:08:35,549 >> Svo leið að við myndum í raun skrifa fall er mjög svipuð, ekki satt? 1507 01:08:35,549 --> 01:08:37,590 Þetta er góður af fyrsta dæmi þar sem við munum 1508 01:08:37,590 --> 01:08:42,830 sjá virka taka á stíl öðruvísi en int helstu tóm okkar. 1509 01:08:42,830 --> 01:08:46,779 Í þessu tilfelli, ef ég vildi skrifa fall sem kallast q, ekki satt? 1510 01:08:46,779 --> 01:08:49,370 >> Og int gildi hér er allt að segja mér, 1511 01:08:49,370 --> 01:08:51,649 hvað mig langar þetta virka til að koma aftur til mín? 1512 01:08:51,649 --> 01:08:54,484 Ef ég vil að teningur heiltölu, Ég ætla að vilja inntak. 1513 01:08:54,484 --> 01:08:55,525 Þetta eru breytur. 1514 01:08:55,525 --> 01:08:58,490 Ég ætla að inntak gildi af taginu int. 1515 01:08:58,490 --> 01:09:01,300 Og ég ætla að fara aftur annars konar gildi int. 1516 01:09:01,300 --> 01:09:03,050 Og hér, eins og þú geta sjá, allt sem ég er að gera 1517 01:09:03,050 --> 01:09:07,300 er cubing hvað inntak mitt er sem framleiðsla minn og skila þeim aftur. 1518 01:09:07,300 --> 01:09:10,790 >> Svo er allt þetta virka er tekur einhverskonar heiltölu. 1519 01:09:10,790 --> 01:09:14,979 Það fjölgar það af sjálfu sér tvisvar þannig að það teningur í gildi. 1520 01:09:14,979 --> 01:09:17,729 Og þá skilar það hvað sem framleiðsla er. 1521 01:09:17,729 --> 01:09:20,540 Þannig að í þessu tilfelli, er það tvær línur af númer sem við þurftum að skrifa aukalega. 1522 01:09:20,540 --> 01:09:22,880 En ef við vildum að hringja á þetta mörgum sinnum, 1523 01:09:22,880 --> 01:09:26,210 það er mun auðveldara að slá að einn lína hérna sem er í teningur en 1524 01:09:26,210 --> 01:09:28,830 að fara í gegnum mörgum sinnum. 1525 01:09:28,830 --> 01:09:34,180 >> Svo leið sem í raun allir formatting fyrir hvers konar aðgerð 1526 01:09:34,180 --> 01:09:36,420 er að fara að vera til er eins og hér. 1527 01:09:36,420 --> 01:09:38,659 Þannig að við höfum fallið nafn. 1528 01:09:38,659 --> 01:09:39,950 Í þessu tilfelli, það er kallað teningur. 1529 01:09:39,950 --> 01:09:42,033 Og við nafn það teningur vegna þess það er auðvelt að muna. 1530 01:09:42,033 --> 01:09:44,220 Þú getur kallað það veldi og það geta raunverulega vera cubed. 1531 01:09:44,220 --> 01:09:45,500 Skiptir ekki máli. 1532 01:09:45,500 --> 01:09:48,020 Bara nafn sem þú ert framselja virka. 1533 01:09:48,020 --> 01:09:51,660 >> Þetta hérna, int, er tegund breytu sem þú þarft. 1534 01:09:51,660 --> 01:09:54,149 Svo er það þessi aðgerð þarf til þess að starfa? 1535 01:09:54,149 --> 01:09:55,990 Jæja, það þarf inntak. 1536 01:09:55,990 --> 01:09:56,704 Ég nefndi það inntak. 1537 01:09:56,704 --> 01:09:58,120 Þú getur kallað það hvað sem þú vilt. 1538 01:09:58,120 --> 01:10:00,500 En ég þarf eitthvað int. 1539 01:10:00,500 --> 01:10:03,730 Það er að fara að raunverulega framkvæma hvað er inni hér, 1540 01:10:03,730 --> 01:10:04,990 líkami virka. 1541 01:10:04,990 --> 01:10:07,847 Og þá aftur gerð hérna, þetta int-- 1542 01:10:07,847 --> 01:10:09,680 allt það er að segja mér er að þessi aðgerð er 1543 01:10:09,680 --> 01:10:11,250 að fara að skila mér í int. 1544 01:10:11,250 --> 01:10:14,460 Svo það er að fara að taka í int, og það er að fara að gefa þér aftur int. 1545 01:10:14,460 --> 01:10:17,750 Þurfa allir að skilja hvernig formatting af þessu tagi virkar? 1546 01:10:17,750 --> 01:10:18,250 Cool. 1547 01:10:18,250 --> 01:10:24,690 1548 01:10:24,690 --> 01:10:25,740 >> OK. 1549 01:10:25,740 --> 01:10:31,770 Svo ekki vera áhyggjufullur ef þetta virðist smá ágrip núna. 1550 01:10:31,770 --> 01:10:33,450 Þetta er eitthvað sem við munum tala um. 1551 01:10:33,450 --> 01:10:36,310 Við munum kafa í dýpri síðar í námskeiðinu. 1552 01:10:36,310 --> 01:10:41,170 Leiðin að hvers konar hærra stigi abstrakt af þessum hlutum vinnu 1553 01:10:41,170 --> 01:10:43,530 er að í minni, í tölvan, allt 1554 01:10:43,530 --> 01:10:47,660 er geymt í þessa tegund staflans, skal ég segja. 1555 01:10:47,660 --> 01:10:49,070 >> Svo þarna efst. 1556 01:10:49,070 --> 01:10:50,861 Ég veit ekki hvort þú krakkar geta séð það vel. 1557 01:10:50,861 --> 01:10:52,590 Ég ætla að reyna að stækka. 1558 01:10:52,590 --> 01:10:55,111 Hér efst, við hafa líkamlega texta 1559 01:10:55,111 --> 01:10:57,860 um hvað tölvan er interpreting-- allar núll og sjálfur að 1560 01:10:57,860 --> 01:10:59,540 eru innan í tölvuna okkar. 1561 01:10:59,540 --> 01:11:03,390 Og þá höfum við það að frumstilla gögn og forsniðinn gögn, 1562 01:11:03,390 --> 01:11:05,340 það sem við köllum alþjóðlegum breytur. 1563 01:11:05,340 --> 01:11:08,200 Svo breytum sem eru fyrir hendi í öllum forritum 1564 01:11:08,200 --> 01:11:11,815 og yfir allt þitt, meginatriðum, númer. 1565 01:11:11,815 --> 01:11:13,940 Engar áhyggjur ef þið eru konar óljóst um þetta. 1566 01:11:13,940 --> 01:11:16,060 Það skiptir ekki máli núna. 1567 01:11:16,060 --> 01:11:18,680 >> Og þá höfum við það sem er kallað hrúga í stafla. 1568 01:11:18,680 --> 01:11:21,140 Hugsaðu um reykháf bókstaflega eins bara eins og stafla af hlutum, 1569 01:11:21,140 --> 01:11:23,098 stafla af mismunandi það ýtt ofan 1570 01:11:23,098 --> 01:11:27,870 hvert öðru að geyma ýmsa breytur og setningafræði innan kóðann þinn. 1571 01:11:27,870 --> 01:11:31,460 Og þá er hér á mjög neðst, við höfum umhverfisbreytur 1572 01:11:31,460 --> 01:11:35,480 af því sem þú ert að framkvæma innan bara smá línu af kóða. 1573 01:11:35,480 --> 01:11:40,510 >> Og við erum bara að fara að stækka í á the raunverulegur stafla hluta. 1574 01:11:40,510 --> 01:11:43,880 Svo hérna, ef við vorum að stækka í á bara þessu svæði á stafla, 1575 01:11:43,880 --> 01:11:45,140 þetta er það sem það lítur út. 1576 01:11:45,140 --> 01:11:48,590 Og þetta er í raun mjög mikilvægt þegar þú krakkar tala um aðgerðir, 1577 01:11:48,590 --> 01:11:52,330 vegna tilkynningu um að minni tölvunnar 1578 01:11:52,330 --> 01:11:55,600 er að geyma þær breytur og aðgerðir 1579 01:11:55,600 --> 01:11:58,790 og breytur bæði þinn virka og helstu breytur þínar 1580 01:11:58,790 --> 01:12:00,190 á mismunandi stöðum. 1581 01:12:00,190 --> 01:12:03,390 >> Svo núna, helstu er í raun virka 1582 01:12:03,390 --> 01:12:04,780 að þú ert að framkvæma í kóða. 1583 01:12:04,780 --> 01:12:08,050 Þú breytur hennar geymd hér og staðbundnar breytur hennar geymd hér. 1584 01:12:08,050 --> 01:12:12,270 Staðbundin breytu þýðir bara hvaða breytu sem eru aðeins innan þess virka. 1585 01:12:12,270 --> 01:12:15,610 Og ofan á það, þú hefur þetta sérstakt fall sem kallast teningur. 1586 01:12:15,610 --> 01:12:18,240 Þú ert það er breytur auk þeirra heimamenn. 1587 01:12:18,240 --> 01:12:21,540 >> Og ástæða þess að þú getur sjá hér er að það 1588 01:12:21,540 --> 01:12:25,030 gerist þegar teningur tekur í gildi frá meginvirkni þinni 1589 01:12:25,030 --> 01:12:27,640 er að í raun er það að afrita það yfir. 1590 01:12:27,640 --> 01:12:31,470 Þannig að ef ég vildi teningur 2 og aftur 8, sem 2 1591 01:12:31,470 --> 01:12:33,730 er í raun inputted sem viðfang og það er 1592 01:12:33,730 --> 01:12:37,690 afrita yfir svo að þú hafir það núverandi í tveimur mismunandi stöðum í minni. 1593 01:12:37,690 --> 01:12:40,520 Og þú verður að vera mjög varkár á minningu sem einn af þeim 1594 01:12:40,520 --> 01:12:42,520 þú ert í raun að notfæra. 1595 01:12:42,520 --> 01:12:47,170 Og dæmi um það sem gerðist sem myndi vera mjög, mjög slæmt 1596 01:12:47,170 --> 01:12:48,050 er til hérna. 1597 01:12:48,050 --> 01:12:50,760 1598 01:12:50,760 --> 01:12:58,650 >> Svo hérna, ég hef fengið, í orði, a program hérna, a aðalæð virka 1599 01:12:58,650 --> 01:13:02,180 að ég er að lýsa int x er 1. 1600 01:13:02,180 --> 01:13:04,505 Ég er að lýsa yfir annan INT Y jafngildir 2. 1601 01:13:04,505 --> 01:13:06,380 Og þá er ég að keyra hana gegnum þessa aðgerð 1602 01:13:06,380 --> 01:13:09,647 kallað skipti, þar sem ég geri ráð fyrir að það er að skipta um tvö gildi. 1603 01:13:09,647 --> 01:13:11,480 Og þá er ég að fara að prenta þær út, ekki satt? 1604 01:13:11,480 --> 01:13:13,220 Það er það sem ég vil að þetta forrit til að gera. 1605 01:13:13,220 --> 01:13:15,180 >> Svo skulum koma ofan, taka a útlit. 1606 01:13:15,180 --> 01:13:18,200 Þannig að ef ég skrifa reyndar öðruvísi virka, eins og þú geta sjá, 1607 01:13:18,200 --> 01:13:19,750 við höfum meginhlutverki okkar hér. 1608 01:13:19,750 --> 01:13:22,860 Og þá höfum við okkar Annað hlutverk hér. 1609 01:13:22,860 --> 01:13:24,520 Void skipti. 1610 01:13:24,520 --> 01:13:27,090 Void þýðir bara að það er ekki að fara að fara aftur eitthvað. 1611 01:13:27,090 --> 01:13:28,930 Fallið nafn er kallað skipti, og það er 1612 01:13:28,930 --> 01:13:33,730 fara að inntaka tveimur breytum, int a og int b, frá [inaudible] virka. 1613 01:13:33,730 --> 01:13:39,010 >> Svo í raun hér, við erum liggur x og y inn í þessa aðgerð. 1614 01:13:39,010 --> 01:13:40,760 Og ef við vorum að búa this-- þannig að við viljum 1615 01:13:40,760 --> 01:13:42,420 að búa til tímabundna gildi, ekki satt? 1616 01:13:42,420 --> 01:13:43,930 Við erum að fara að úthluta sem að a. 1617 01:13:43,930 --> 01:13:45,388 Og þá er að fara að hafa jafna b. 1618 01:13:45,388 --> 01:13:47,660 Og b er að fara að vera aftur þar sem afleysingamanneskja gildi var, 1619 01:13:47,660 --> 01:13:51,070 sem er, vegna þess að þegar þú vilt skipta hlutum, 1620 01:13:51,070 --> 01:13:52,320 þú getur ekki bara eins og skipta á þeim. 1621 01:13:52,320 --> 01:13:54,360 >> Þú þarft að halda einn út hér svo að það man 1622 01:13:54,360 --> 01:13:56,485 hvað það er, því þegar þú skipta einn, þú gleymir 1623 01:13:56,485 --> 01:13:58,200 hvað það upprunalega gildi var, ekki satt? 1624 01:13:58,200 --> 01:14:00,990 Svo í kenningu, þessari áætlun ætti að vinna, ekki satt? 1625 01:14:00,990 --> 01:14:03,630 Ef ég vildi skipta á tveir, þeir ættu að skipta. 1626 01:14:03,630 --> 01:14:05,490 Svo skulum hlaupa það og sjá hvort það virkar. 1627 01:14:05,490 --> 01:14:11,130 1628 01:14:11,130 --> 01:14:16,940 >> Svo eins og þú krakkar geta sjá, x var einu sinni 1 og y var einu sinni 2. 1629 01:14:16,940 --> 01:14:21,475 Og ef ég prenta það út, x er enn 1 og Y er 2. 1630 01:14:21,475 --> 01:14:25,970 Hmm, þetta forrit virðist ekki vera vinna á þann hátt að ég vil að það virki. 1631 01:14:25,970 --> 01:14:29,950 Er einhver vilja til að taka skot á giska hvers vegna þetta var að gerast? 1632 01:14:29,950 --> 01:14:34,430 Það hefur að gera með hvernig að mismunandi hlutir eru 1633 01:14:34,430 --> 01:14:38,172 geymd í mismunandi stöðum í minni. 1634 01:14:38,172 --> 01:14:39,377 >> OK. 1635 01:14:39,377 --> 01:14:41,960 Svo þú krakkar þarft ekki að hafa áhyggjur of mikið um þetta núna. 1636 01:14:41,960 --> 01:14:46,610 En veit að teningur er staðbundin breytur voru og b, 1637 01:14:46,610 --> 01:14:49,230 vegna þess að hér í starfsemi okkar, við höfum lýst yfir og b 1638 01:14:49,230 --> 01:14:53,570 sem þeim breytum sem eru fyrir hendi innan teningur, sem virka. 1639 01:14:53,570 --> 01:14:59,490 En eins og þú sérð, breytur sem það tekur í voru að geymd hér. 1640 01:14:59,490 --> 01:15:01,370 En við vorum ekki í raun aftur neitt. 1641 01:15:01,370 --> 01:15:03,120 Við vorum í raun ekki breyta x og y. 1642 01:15:03,120 --> 01:15:04,440 Við vorum bara að breyta a og b. 1643 01:15:04,440 --> 01:15:08,340 >> Við höfðum afritað x og y inn eitthvað sem kallast a og b. 1644 01:15:08,340 --> 01:15:11,092 En við aldrei handleika X og Y sjálfir. 1645 01:15:11,092 --> 01:15:12,800 Eru þið að sjá hvernig það er að gerast? 1646 01:15:12,800 --> 01:15:16,140 Er að við höfum einfaldlega afritað hana yfir, en við höfum í raun ekki haldið 1647 01:15:16,140 --> 01:15:18,030 utan um hvar þeir voru í minni. 1648 01:15:18,030 --> 01:15:20,127 >> Og svo nú í tölvunni er að leita, ó, ég hef 1649 01:15:20,127 --> 01:15:21,960 keyra þetta í gegnum þetta yndislega virka. 1650 01:15:21,960 --> 01:15:23,690 En X og Y eru enn x og y. 1651 01:15:23,690 --> 01:15:26,240 Ekkert hefur gerst við þá vegna þess 1652 01:15:26,240 --> 01:15:28,340 að þeim breytum og staðbundnar breytur 1653 01:15:28,340 --> 01:15:30,150 eru geymd í annarri setja í minni. 1654 01:15:30,150 --> 01:15:32,030 Og þetta er meiri-stigi hugtak sem við munum 1655 01:15:32,030 --> 01:15:34,300 byrja að sjá síðar í námskeiðinu. 1656 01:15:34,300 --> 01:15:36,950 En bara veit að þetta er vandamál sem getur gerst 1657 01:15:36,950 --> 01:15:41,400 og að við munum reikna út leiðir um hvernig á að takast á við þetta seinna í námskeiðinu. 1658 01:15:41,400 --> 01:15:41,900 OK. 1659 01:15:41,900 --> 01:15:47,750 1660 01:15:47,750 --> 01:15:48,250 Allt í lagi. 1661 01:15:48,250 --> 01:15:51,780 Svo síðasta hugtak sem við erum virkilega að fara að ná 1662 01:15:51,780 --> 01:15:53,880 það er að fara til að vera gagnlegt fyrir pset þessari viku 1663 01:15:53,880 --> 01:15:56,060 eru það sem kallast stjórn lína rifrildi. 1664 01:15:56,060 --> 01:16:00,820 Svo Rob í fyrirlestri sínum fór í gegnum konar stuttlega um hvernig þessar vinnu. 1665 01:16:00,820 --> 01:16:02,770 Í meginatriðum vita að þegar þú ert að skrifa 1666 01:16:02,770 --> 01:16:06,280 eins og meginvirkni, þegar við skrifaði aðgerðir áður í fortíðinni, 1667 01:16:06,280 --> 01:16:07,804 við höfðum int helstu tóm. 1668 01:16:07,804 --> 01:16:10,470 Og ástæðan að við þurftum ógilt það var því áætlanir okkar gerðu ekki 1669 01:16:10,470 --> 01:16:12,520 þarf að inntak gildi að keyra, ekki satt? 1670 01:16:12,520 --> 01:16:16,020 Þegar ég hljóp Mario, gerði ég ekki þurfa að í raun réttlátur tegund í eitthvað 1671 01:16:16,020 --> 01:16:16,970 þegar ég hljóp Mario. 1672 01:16:16,970 --> 01:16:20,170 Ég gæti hvetja notandann síðar. 1673 01:16:20,170 --> 01:16:22,450 En það mun ekki alltaf vera raunin. 1674 01:16:22,450 --> 01:16:24,980 >> Til dæmis, í þessum viku vandamál setur, 1675 01:16:24,980 --> 01:16:28,365 þú ert að fara að vera beðin að í auk þess að keyra forritið þitt, 1676 01:16:28,365 --> 01:16:30,990 þú ert að fara að vilja til að inntak ákveðin atriði í beint eins og þú 1677 01:16:30,990 --> 01:16:32,050 hlaupa program. 1678 01:16:32,050 --> 01:16:34,720 Svo leið og við gerum það er kallað a stjórn lína rifrildi, sem 1679 01:16:34,720 --> 01:16:37,280 er eins og rifrildi þú getur inntak beint 1680 01:16:37,280 --> 01:16:39,260 eins og þú ert að reyna að keyra forritið þitt. 1681 01:16:39,260 --> 01:16:44,680 >> Svo merki fyrir þetta, það er frekar flókið-útlit, 1682 01:16:44,680 --> 01:16:47,320 en það er í raun ekki að erfitt. Svo INT main-- 1683 01:16:47,320 --> 01:16:48,910 það er bara aðal virka. 1684 01:16:48,910 --> 01:16:52,110 Í argc kommu, string argv sviga. 1685 01:16:52,110 --> 01:16:56,040 Svo er allt það er að segja að þetta INT argc-- allt sem er að segja þér 1686 01:16:56,040 --> 01:17:00,560 er að þeir eru fjöldi rök tölvan ætti von á. 1687 01:17:00,560 --> 01:17:03,130 >> Svo eitt sem er mjög mikilvægt að halda utan um 1688 01:17:03,130 --> 01:17:07,080 er líkamlegt nafn program telja sem einn af þessum rifrildum. 1689 01:17:07,080 --> 01:17:11,080 Þannig að ef ég vildi hafa forritið mitt hlaupa og einn til viðbótar stjórn lína 1690 01:17:11,080 --> 01:17:13,310 rök, ég er reyndar fara að hafa tvö. 1691 01:17:13,310 --> 01:17:15,080 Argc er í raun að fara að vera tvö. 1692 01:17:15,080 --> 01:17:18,010 Og þá string argv bracket-- allt sem er að gera, 1693 01:17:18,010 --> 01:17:20,410 það er að gefa mér að array af strengjum sem er 1694 01:17:20,410 --> 01:17:24,870 að fara að bara að sýna og geyma það allar þessar stjórn lína rifrildi eru. 1695 01:17:24,870 --> 01:17:34,090 >> Svo til dæmis, ef ég vildi hafa þetta program, ./copy INFILE OUTFILE, ekki satt? 1696 01:17:34,090 --> 01:17:37,330 Það er bara dæmigerður Linux stjórn. 1697 01:17:37,330 --> 01:17:38,830 Hvað raunverulega er argc? 1698 01:17:38,830 --> 01:17:41,320 Hversu margir stjórn lína rifrildi eru það í raun í þessu? 1699 01:17:41,320 --> 01:17:45,130 Allt þetta gerir er að gera afrit af An INFILE á nafni einni skrá 1700 01:17:45,130 --> 01:17:47,070 og það afrit það inn aðra skrá, ekki satt? 1701 01:17:47,070 --> 01:17:48,700 Það er allt þetta er að gera. 1702 01:17:48,700 --> 01:17:53,080 Eins og þú geta sjá, ég er að gera það á einni línu án þess í raun að þurfa forritið. 1703 01:17:53,080 --> 01:17:55,380 >> Hvað er argc okkar í þessu tilfelli? 1704 01:17:55,380 --> 01:17:58,968 Hversu margir rök höfum við? 1705 01:17:58,968 --> 01:17:59,634 Áhorfendur: Three? 1706 01:17:59,634 --> 01:18:01,200 ANDI Peng: Við höfum þrjú, nákvæmlega. 1707 01:18:01,200 --> 01:18:05,030 Svo það er mjög leiðandi til bara held að það er bara 1708 01:18:05,030 --> 01:18:06,290 sem INFILE og OUTFILE. 1709 01:18:06,290 --> 01:18:10,190 En veit að líkamlegt nafn af forritið sem þú ert að keyra telja sem einn. 1710 01:18:10,190 --> 01:18:13,220 Þannig að í þessu tilfelli, argc er í raun þrjár. 1711 01:18:13,220 --> 01:18:15,860 Hvernig væri, hvað er argv 0? 1712 01:18:15,860 --> 01:18:18,180 Mundu, allt í stjórn lína rifrildi 1713 01:18:18,180 --> 01:18:20,500 voru geymd í fylki af strengjum. 1714 01:18:20,500 --> 01:18:24,140 Svo ef ég reyni að opna það, hvað myndi argv krappi 0 gefa mér? 1715 01:18:24,140 --> 01:18:25,364 >> Áhorfendur: [inaudible]. 1716 01:18:25,364 --> 01:18:26,155 ANDI Peng: Einmitt. 1717 01:18:26,155 --> 01:18:28,550 Það myndi gefa mér punktur rista eintak, því það er 1718 01:18:28,550 --> 01:18:31,070 sem 0 frumefni, Fyrsti þátturinn af array minn. 1719 01:18:31,070 --> 01:18:33,236 Hvað um argv 1? 1720 01:18:33,236 --> 01:18:33,945 >> Áhorfendur: INFILE. 1721 01:18:33,945 --> 01:18:35,070 ANDI Peng: INFILE, nákvæmlega. 1722 01:18:35,070 --> 01:18:36,272 Hvað um argv 2? 1723 01:18:36,272 --> 01:18:37,022 Áhorfendur: OUTFILE. 1724 01:18:37,022 --> 01:18:38,190 ANDI Peng: OUTFILE. 1725 01:18:38,190 --> 01:18:39,290 Þetta er dálítið erfiður núna. 1726 01:18:39,290 --> 01:18:42,630 Hvað finnst þér krakkar hugsa argv 3 er að fara að vera að gefa mér 1727 01:18:42,630 --> 01:18:45,522 ef ég reyndi að prenta það út? 1728 01:18:45,522 --> 01:18:48,260 >> Áhorfendur: [inaudible]? 1729 01:18:48,260 --> 01:18:50,164 >> ANDI Peng: Vissir þú að hafa höndina upp? 1730 01:18:50,164 --> 01:18:50,663 Já. 1731 01:18:50,663 --> 01:18:51,550 >> Áhorfendur: An val. 1732 01:18:51,550 --> 01:18:52,341 >> ANDI Peng: Einmitt. 1733 01:18:52,341 --> 01:18:55,440 Svo muna í fyrirlestri sem við hafa í lok keppninni eitthvað 1734 01:18:55,440 --> 01:18:56,640 kallað null Ljúka? 1735 01:18:56,640 --> 01:18:58,890 Við munum fá inn í þetta líka frekar á í bekknum. 1736 01:18:58,890 --> 01:19:02,472 En veit að í merki, hvernig tölvan þín 1737 01:19:02,472 --> 01:19:04,430 veit að það er endir fylkisins er að það 1738 01:19:04,430 --> 01:19:07,310 setur eitthvað sem kallast a null Ljúka eða þjóta núll. 1739 01:19:07,310 --> 01:19:12,047 >> Þannig að ef þú reynir að opna argv 3, þú ert að fara til að ná þessu þjóta 0. 1740 01:19:12,047 --> 01:19:13,630 Þetta er jafnvel meira af bragð spurningu. 1741 01:19:13,630 --> 01:19:17,020 Hvað um argv 4? 1742 01:19:17,020 --> 01:19:20,920 Svo er þetta síðasta null Ljúka, framhjá mörk array okkar. 1743 01:19:20,920 --> 01:19:24,380 Hvað finnst þér er að fara að gerast þegar við reynum að gera það? 1744 01:19:24,380 --> 01:19:25,842 >> Áhorfendur: [inaudible]? 1745 01:19:25,842 --> 01:19:26,550 ANDI Peng: Sorry? 1746 01:19:26,550 --> 01:19:28,025 Segja að hluti hávær? 1747 01:19:28,025 --> 01:19:29,086 >> Áhorfendur: [inaudible]. 1748 01:19:29,086 --> 01:19:29,710 ANDI Peng: Já. 1749 01:19:29,710 --> 01:19:32,420 Það er nafn sem svæði sem þú munt líklegast fá. 1750 01:19:32,420 --> 01:19:36,610 En veit að argv 4-- sem gerir þér kleift að opna 1751 01:19:36,610 --> 01:19:38,610 stöðum í Computer þíns minni að þú virkilega 1752 01:19:38,610 --> 01:19:41,650 ætti ekki að vera að snerta, því núna veistu hvað argv er. 1753 01:19:41,650 --> 01:19:46,220 Þú veist að það er fylki af stærð 3 sem hefur punktur afrita, INFILE og OUTFILE. 1754 01:19:46,220 --> 01:19:50,200 >> Ef þú reynir að fara svo langt út að að þú ert framhjá null Terminator, 1755 01:19:50,200 --> 01:19:53,050 tölvan þín hefur sennilega geymd eitthvað í argv 4. 1756 01:19:53,050 --> 01:19:55,790 Og þú í raun ætti ekki að vera fær aðgang argv 4, 1757 01:19:55,790 --> 01:19:58,130 vegna þess að þú ert með skrá skáp og þú ert eini 1758 01:19:58,130 --> 01:19:59,790 heimill aðgangur að þeim þremur hillum. 1759 01:19:59,790 --> 01:20:02,870 En ef þú reynir að ná langt umfram hillu þar sem þú mátt, 1760 01:20:02,870 --> 01:20:04,930 þú ert að fara að byrja að fíflast með aðrir hlutir í minni tölvunnar. 1761 01:20:04,930 --> 01:20:06,690 Það er að fara að vera mjög, mjög slæmt. 1762 01:20:06,690 --> 01:20:07,440 Svo bara veit það. 1763 01:20:07,440 --> 01:20:10,370 Vera mjög varkár að þú ekki bara af handahófi byrja 1764 01:20:10,370 --> 01:20:14,772 aðgang þætti í array sem voru ekki á því sem þú vildir að búa til. 1765 01:20:14,772 --> 01:20:17,114 Jebb. 1766 01:20:17,114 --> 01:20:18,430 >> OK. 1767 01:20:18,430 --> 01:20:26,360 Þannig að við erum að fara að gera annað flugstöðinni dæmi hér. 1768 01:20:26,360 --> 01:20:27,300 OK. 1769 01:20:27,300 --> 01:20:29,900 Svo Rob fljótt í fyrirlestri um daginn fór 1770 01:20:29,900 --> 01:20:35,040 Með þessu dæmi, þar sem hann hafði int helstu INT argc string argv 1771 01:20:35,040 --> 01:20:39,090 sviga, sem er að segja mér að ég er fara að hafa stjórn lína rifrildi. 1772 01:20:39,090 --> 01:20:41,860 >> Hann hefur, ef argc jafngildir jafngildir 2-- muna, 1773 01:20:41,860 --> 01:20:45,070 jafngildir jafngildir þýðir samanburð. 1774 01:20:45,070 --> 01:20:47,980 Ef það er jafnt 2, þá er ég að fara að prenta halló, 1775 01:20:47,980 --> 01:20:51,190 hvað fyrsta þáttur í fylkinu er. 1776 01:20:51,190 --> 01:20:54,100 Else prenta, halló heimur. 1777 01:20:54,100 --> 01:20:56,300 Hvað er þetta að fara að gerast í raun? 1778 01:20:56,300 --> 01:21:00,570 Getur einhver bara að útskýra í English hvað þetta forrit er að gera? 1779 01:21:00,570 --> 01:21:01,272 Já. 1780 01:21:01,272 --> 01:21:08,160 >> Áhorfendur: Ef einhver tegund í stjórn og fyrsta og síðasta nafn sitt, 1781 01:21:08,160 --> 01:21:12,096 það mun ekki bara prenta fyrsti og segja, halló, 1782 01:21:12,096 --> 01:21:14,090 hvað fyrsta nafnið þitt er. 1783 01:21:14,090 --> 01:21:15,410 >> ANDI Peng: OK, við skulum hlaupa það. 1784 01:21:15,410 --> 01:21:22,470 Svo til dæmis, ef ég væri að gera þessi skrá gera halló to-- halló 1785 01:21:22,470 --> 01:21:24,500 to-- hvað viltu að ég að inntak? 1786 01:21:24,500 --> 01:21:25,900 >> Áhorfendur: Fyrsta og síðasta nafn. 1787 01:21:25,900 --> 01:21:27,280 >> ANDI Peng: Fyrsta og síðasta nafn? 1788 01:21:27,280 --> 01:21:28,180 Spaces? 1789 01:21:28,180 --> 01:21:29,690 >> Áhorfendur: Já. 1790 01:21:29,690 --> 01:21:33,490 >> ANDI Peng: Getur einhver sagt mér núna, hvað er argc? 1791 01:21:33,490 --> 01:21:35,630 Bara þarna? 1792 01:21:35,630 --> 01:21:36,290 Oops, því miður. 1793 01:21:36,290 --> 01:21:37,920 Leyfðu mér að fara aftur. 1794 01:21:37,920 --> 01:21:40,740 Hversu margir stjórn lína rifrildi are-- þú krakkar geta í raun ekki séð. 1795 01:21:40,740 --> 01:21:43,760 En ég ætla að reyna að stækka. 1796 01:21:43,760 --> 01:21:44,290 Ég er að reyna. 1797 01:21:44,290 --> 01:21:45,414 Já, það er þrír, ekki satt? 1798 01:21:45,414 --> 01:21:48,750 Það er punktur rista halló, það er Andi, og það er Peng. 1799 01:21:48,750 --> 01:21:51,870 >> Svo hvaða gera þú krakkar hugsa þetta Námið er að fara að prenta út? 1800 01:21:51,870 --> 01:21:55,550 1801 01:21:55,550 --> 01:21:56,060 Oh. 1802 01:21:56,060 --> 01:21:57,120 Ó fyrirgefðu. 1803 01:21:57,120 --> 01:21:57,810 Rangt nafn. 1804 01:21:57,810 --> 01:22:03,630 1805 01:22:03,630 --> 01:22:06,130 Það er að prenta út, halló heimur. 1806 01:22:06,130 --> 01:22:09,603 Er einhver vilja til að útskýra hvers vegna það er að gerast? 1807 01:22:09,603 --> 01:22:10,103 Já? 1808 01:22:10,103 --> 01:22:11,019 >> Áhorfendur: [inaudible]. 1809 01:22:11,019 --> 01:22:14,439 1810 01:22:14,439 --> 01:22:15,230 ANDI Peng: Einmitt. 1811 01:22:15,230 --> 01:22:19,940 Svo hér eru skilyrt er, ef argc jafngildir jafngildir 2. 1812 01:22:19,940 --> 01:22:23,650 Svo aðeins í tilviki að það er tveir stjórn lína rifrildi. 1813 01:22:23,650 --> 01:22:25,850 Þá er ég að fara að prenta, halló, hvað sem það er. 1814 01:22:25,850 --> 01:22:28,210 En annars, ég ætla að prenta bara, halló heimur. 1815 01:22:28,210 --> 01:22:30,040 Svo er einhver vill að gefa mér dæmi 1816 01:22:30,040 --> 01:22:35,050 um hvernig ég vildi vera fær til raunverulega fá það til að prenta gildi argv 1? 1817 01:22:35,050 --> 01:22:38,600 >> Hvað myndi ég þurfa að inntak hér? 1818 01:22:38,600 --> 01:22:39,840 Aðeins einn hlutur, ekki satt? 1819 01:22:39,840 --> 01:22:42,900 Vegna þess að punktur halló þegar telja sem fyrsta rifrildi. 1820 01:22:42,900 --> 01:22:43,930 Ég hef bara eitt. 1821 01:22:43,930 --> 01:22:46,470 Svo punktur halló ef ég bara Andi. 1822 01:22:46,470 --> 01:22:47,270 Halló, Andi. 1823 01:22:47,270 --> 01:22:49,186 Þurfa allir að skilja hvers vegna það er að gerast? 1824 01:22:49,186 --> 01:22:49,602 Já. 1825 01:22:49,602 --> 01:22:52,500 >> Áhorfendur: Svo pláss milli stjórn line-- er [inaudible]? 1826 01:22:52,500 --> 01:22:56,247 1827 01:22:56,247 --> 01:22:56,830 ANDI Peng: Nei 1828 01:22:56,830 --> 01:23:03,810 Þannig að pláss í stjórn lína rök, x, að segja tölvuna 1829 01:23:03,810 --> 01:23:06,820 að þetta er upphafið á nýjum streng. 1830 01:23:06,820 --> 01:23:11,130 Svo string argv here-- það geymir allar skipanir þínar lína rifrildi 1831 01:23:11,130 --> 01:23:13,110 í strengi. 1832 01:23:13,110 --> 01:23:17,420 Og svo pláss í stjórn lína argument-- allt sem gerir er að segja þér, 1833 01:23:17,420 --> 01:23:21,030 þetta er í lok af streng og það er kominn tími til að fara til annars. 1834 01:23:21,030 --> 01:23:21,990 >> Já. 1835 01:23:21,990 --> 01:23:23,530 Þetta er mjög mikilvægt fyrir pset þinn, því að þú ert 1836 01:23:23,530 --> 01:23:24,613 fara að prófa þetta. 1837 01:23:24,613 --> 01:23:29,300 Svo er einhver hafa einhverjar spurningar um þetta? 1838 01:23:29,300 --> 01:23:30,016 OK, flott. 1839 01:23:30,016 --> 01:23:30,515 Já? 1840 01:23:30,515 --> 01:23:35,008 >> Áhorfendur: Svo ástæðan þér myndi setja heiltala rök Calc staðinn 1841 01:23:35,008 --> 01:23:40,059 af [inaudible] væri þegar þú vilt að slá frekari upplýsingar 1842 01:23:40,059 --> 01:23:41,030 [Inaudible]? 1843 01:23:41,030 --> 01:23:42,090 >> ANDI Peng: Já, einmitt. 1844 01:23:42,090 --> 01:23:45,370 Sum forrit munu þurfa að inntak a stjórn lína rifrildi 1845 01:23:45,370 --> 01:23:47,732 að það fer í og ​​sem notar það. 1846 01:23:47,732 --> 01:23:49,035 Já. 1847 01:23:49,035 --> 01:23:50,410 Áhorfendur: Svo hvað ef [inaudible]? 1848 01:23:50,410 --> 01:23:55,440 1849 01:23:55,440 --> 01:23:58,870 >> ANDI Peng: Jæja, hvað hef ég að breyta þá í áætlun mína? 1850 01:23:58,870 --> 01:23:59,870 >> Áhorfendur: Bara 3. 1851 01:23:59,870 --> 01:24:12,460 1852 01:24:12,460 --> 01:24:15,020 >> ANDI Peng: Hvers vegna er það gerast, finnst þér? 1853 01:24:15,020 --> 01:24:18,940 >> Áhorfendur: Vegna [inaudible]. 1854 01:24:18,940 --> 01:24:22,370 >> Áhorfendur: Þú vilt verða að breyta því í 2 [inaudible]. 1855 01:24:22,370 --> 01:24:23,484 >> Áhorfendur: 1 og 2. 1856 01:24:23,484 --> 01:24:24,650 ANDI Peng: 1 og 2, nákvæmlega. 1857 01:24:24,650 --> 01:24:29,150 Þannig að í þessu tilfelli, þú vildi sennilega vilja hafa tvær printf statements-- 1858 01:24:29,150 --> 01:24:32,601 eitt sem prentuð argv 1 og sá sem prentuð argv 2. 1859 01:24:32,601 --> 01:24:33,100 Hér. 1860 01:24:33,100 --> 01:24:34,516 Ég get í raun gert það raunverulegur fljótur. 1861 01:24:34,516 --> 01:24:46,720 1862 01:24:46,720 --> 01:24:47,320 Þar sem þú ferð. 1863 01:24:47,320 --> 01:24:48,287 Oh. 1864 01:24:48,287 --> 01:24:49,370 Ekki alveg það sem þú vildir. 1865 01:24:49,370 --> 01:24:52,590 En ef þið sóðaskapur í kring með að forsníða, það mun koma út. 1866 01:24:52,590 --> 01:24:54,981 Já. 1867 01:24:54,981 --> 01:24:55,480 Cool. 1868 01:24:55,480 --> 01:24:57,670 Ég veit að við erum svolítið stuttur á tíma. 1869 01:24:57,670 --> 01:25:02,469 En ég ætla bara að fara að fljótt eyða Tveimur mínútum að fara í gegnum helpful-- 1870 01:25:02,469 --> 01:25:03,760 Áhorfendur: Þú hefur tvær mínútur. 1871 01:25:03,760 --> 01:25:05,010 ANDI Peng: Ég hef tvær mínútur? 1872 01:25:05,010 --> 01:25:06,340 Þakka þér fyrir. 1873 01:25:06,340 --> 01:25:09,180 Sumir fljótur pset ábendingar. 1874 01:25:09,180 --> 01:25:13,100 Svo fyrir þetta pset, þá mæli ég mjög, eins og ég sagði, allir að lesa sérstakur. 1875 01:25:13,100 --> 01:25:16,804 Þú munt vera að skrifa þrjár programs-- einn kallaði initials.c, einn heitir caesar.c, 1876 01:25:16,804 --> 01:25:17,720 einn heitir vigenere.c. 1877 01:25:17,720 --> 01:25:20,465 1878 01:25:20,465 --> 01:25:22,340 Sumir Mikilvægur Kenndur að þið virkilega vilja 1879 01:25:22,340 --> 01:25:25,040 að halda í mind-- svo það er þessi aðgerð 1880 01:25:25,040 --> 01:25:27,770 kallaði atoi-- eins og ég segi, a Trois. 1881 01:25:27,770 --> 01:25:29,520 Óljóst hvort það er í raun hvernig þú segir það. 1882 01:25:29,520 --> 01:25:32,510 En allt það er að gera, það er inputting. 1883 01:25:32,510 --> 01:25:34,320 Það breytir streng til int. 1884 01:25:34,320 --> 01:25:37,490 Svo táknar ASCII til i heiltölu. 1885 01:25:37,490 --> 01:25:40,310 Það er bara að umbreyta ASCII gildi að heiltölugildi. 1886 01:25:40,310 --> 01:25:44,510 Svo man argv, array að verslanir öll boðum þínum línu arguments-- 1887 01:25:44,510 --> 01:25:46,300 það geymir þá alla eins og strengi. 1888 01:25:46,300 --> 01:25:50,010 Og svo ef þú vilt vera fær um að hafa einn af þeim verða heiltala, 1889 01:25:50,010 --> 01:25:52,750 þú ert að fara að hafa nota þetta gildi hér. 1890 01:25:52,750 --> 01:25:56,690 >> Modulo, eins og við falla fyrr í bekknum í dag, 1891 01:25:56,690 --> 01:25:59,550 gerir þér kleift að hafa Afgangurinn af hvað sem þú hefur. 1892 01:25:59,550 --> 01:26:03,620 Svo ef við höfum virkilega, virkilega stór númer í keisaranum, 1893 01:26:03,620 --> 01:26:06,117 hvað ef við höfum enda úr röð af Vigenère? 1894 01:26:06,117 --> 01:26:08,450 Hvernig ætlar þú að vera fær um að fá það til að vefja utan um? 1895 01:26:08,450 --> 01:26:11,330 Ef ég högg z og ég vil það að fara aftur til a, 1896 01:26:11,330 --> 01:26:13,650 hvernig á ég að fara að fá sem að vefja í kring? 1897 01:26:13,650 --> 01:26:15,960 Væntanlega vilja nota Modulo þarna einhvers staðar. 1898 01:26:15,960 --> 01:26:19,190 >> Í öðru lagi, að skoða í kringum bókasafnið þitt. ctype.h. 1899 01:26:19,190 --> 01:26:20,680 Það er nýtt bókasafn við höfum. 1900 01:26:20,680 --> 01:26:25,270 Þú munt finna mikið af virkilega, virkilega gagnlegt functions-- isupper, islower, 1901 01:26:25,270 --> 01:26:27,681 toupper, tolower, isalpha, et cetera. 1902 01:26:27,681 --> 01:26:30,680 Allar aðgerðir sem mun vera mjög gagnlegur þegar þú ert að reyna að reikna út, 1903 01:26:30,680 --> 01:26:33,780 er þetta eðli lágstafir bréf? 1904 01:26:33,780 --> 01:26:35,730 Hvernig get ég umbreyta þetta band við hástafi? 1905 01:26:35,730 --> 01:26:38,146 Allt þetta mun vera mjög, mjög gagnlegt fyrir pset þinn. 1906 01:26:38,146 --> 01:26:42,720 1907 01:26:42,720 --> 01:26:45,500 OK. 1908 01:26:45,500 --> 01:26:49,644 >> Viðtalstími í kvöld eru 8:00 til 11:00 í TEAL skólastofunni morgun 1909 01:26:49,644 --> 01:26:51,310 auk miðvikudag og fimmtudag. 1910 01:26:51,310 --> 01:26:53,280 Viðtalstími eru í Commons. 1911 01:26:53,280 --> 01:26:56,180 Mjög benda ykkur allt að byrja strax, 1912 01:26:56,180 --> 01:27:00,490 vegna þess að þú vilt ekki að vera að krakki sem fimmtudagskvöld hefur vandamál 1913 01:27:00,490 --> 01:27:03,870 senda pset og er eins, ég veit ekki hvað ég á að gera. 1914 01:27:03,870 --> 01:27:05,870 Ég byrjaði, ég kláraði, lögð ég. 1915 01:27:05,870 --> 01:27:09,737 Reyndu að gefa þér smá pláss, vegna þess að í númerið vandamál alltaf eiga sér stað. 1916 01:27:09,737 --> 01:27:11,570 Þú vilt tryggja að sem þú gefur þér 1917 01:27:11,570 --> 01:27:14,810 a einhver fjöldi af tími til að vera fær um að ljúka psets. 1918 01:27:14,810 --> 01:27:15,310 Cool. 1919 01:27:15,310 --> 01:27:16,720 Ég hanga í kring hér. 1920 01:27:16,720 --> 01:27:18,226 >> Áhorfendur: Er þetta á netinu nú þegar? 1921 01:27:18,226 --> 01:27:20,850 ANDI Peng: Ég veit ekki hvort það er á netinu nú þegar, en það mun vera. 1922 01:27:20,850 --> 01:27:23,500 Ég hanga í kring hér ef einhver hefur einhverjar spurningar nú þegar. 1923 01:27:23,500 --> 01:27:25,390 Takk fyrir að koma. 1924 01:27:25,390 --> 01:27:27,105