1 00:00:00,000 --> 00:00:02,742 >> [Musiikkia] 2 00:00:02,742 --> 00:00:05,030 3 00:00:05,030 --> 00:00:09,090 >> ANDI Peng: Tämä on CS50, ja tervetuloa viikko kaksi osassa. 4 00:00:09,090 --> 00:00:11,740 Tämä on todella, kun viikko kaksi meidän class-- todella, 5 00:00:11,740 --> 00:00:14,550 ensimmäisellä viikolla meillä on ollut kohta. 6 00:00:14,550 --> 00:00:18,897 Kättä, kuinka moni teistä kaikki tuli Super § viime viikolla? 7 00:00:18,897 --> 00:00:19,480 OK, se on OK. 8 00:00:19,480 --> 00:00:20,020 Se on ok. 9 00:00:20,020 --> 00:00:23,110 Kuinka moni teistä katseli Super jakso viime viikolla? 10 00:00:23,110 --> 00:00:23,610 OK. 11 00:00:23,610 --> 00:00:25,702 Ja te teki hieno ongelma-asettaa yhden? 12 00:00:25,702 --> 00:00:28,660 Joten aion ottaa sen, että meillä on nippu todella älykkäitä lapsia 13 00:00:28,660 --> 00:00:32,310 tässä luokassa ja asiat tulee sakko. 14 00:00:32,310 --> 00:00:33,180 OK. 15 00:00:33,180 --> 00:00:33,980 Niin first-- 16 00:00:33,980 --> 00:00:37,900 17 00:00:37,900 --> 00:00:41,090 >> Ensinnäkin, olemme juuri menossa lyhyesti mennä yli tämän päivän esityslistaa. 18 00:00:41,090 --> 00:00:42,700 Puhutaan tietenkin logistiikka. 19 00:00:42,700 --> 00:00:45,480 Monet teistä luultavasti on kysymyksiä 20 00:00:45,480 --> 00:00:46,920 miten asiat hoituvat tällä kurssilla. 21 00:00:46,920 --> 00:00:47,897 Me vastata niihin. 22 00:00:47,897 --> 00:00:49,730 Aiomme lyhyesti mennä yli silmukoita tapauksessa 23 00:00:49,730 --> 00:00:51,410 tahansa te jäi Super osiosta. 24 00:00:51,410 --> 00:00:53,240 Puhutaan ASCII kartoitus. 25 00:00:53,240 --> 00:00:56,180 Puhutaan paneelit, toiminnot, komentoriviargumentteja. 26 00:00:56,180 --> 00:01:00,210 Ja lopuksi, mitä te luultavasti kaikki todellakaan halua olla täällä oppia, 27 00:01:00,210 --> 00:01:01,270 on pset2. 28 00:01:01,270 --> 00:01:04,209 Meidän täytyy muutamia kivoja temppuja ja vinkkejä, miten se tehdään. 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 Myös toiseksi, meillä on paljon karkkia täällä. 32 00:01:11,450 --> 00:01:13,583 Joku tykkää karkkia, vain tulla tänne. 33 00:01:13,583 --> 00:01:14,430 Napata joitakin. 34 00:01:14,430 --> 00:01:15,100 Minulla on nippu. 35 00:01:15,100 --> 00:01:16,390 Meillä on ton toimistossa. 36 00:01:16,390 --> 00:01:18,230 En todellakaan halua syödä karkkia koko päivän. 37 00:01:18,230 --> 00:01:20,300 Te pitäisi syödä kaikki karkkia, koska Toin sen tästä te. 38 00:01:20,300 --> 00:01:20,990 Vain syödä karkkia. 39 00:01:20,990 --> 00:01:24,080 Siellä tulee olemaan karkkia joka osassa. 40 00:01:24,080 --> 00:01:25,330 >> Joten ensimmäinen, kuka minä olen? 41 00:01:25,330 --> 00:01:27,080 Nimeni on Andi Peng. 42 00:01:27,080 --> 00:01:30,270 Olen johtaja TA CS50 täällä Yalen. 43 00:01:30,270 --> 00:01:32,540 Ja lisäksi että aion myös be-- 44 00:01:32,540 --> 00:01:35,600 jos joku olisi like-- käyttökustannuksia kaveri, teidän olkapää itkeä. 45 00:01:35,600 --> 00:01:39,140 Jos yö ennen PSET due, sinulla ei ole aavistustakaan, mitä on tekeillä, 46 00:01:39,140 --> 00:01:40,080 hit me up. 47 00:01:40,080 --> 00:01:42,770 Me sääliä yhdessä, jne. 48 00:01:42,770 --> 00:01:46,100 Juuri tietää, että olen täällä voimavara sinulle etulinjassa 49 00:01:46,100 --> 00:01:51,830 auttaa te selvittää, miten ratkaisemaan ongelmia CS50 ja sen jälkeen. 50 00:01:51,830 --> 00:01:54,590 >> Minun email on andi.peng@yale.edu. 51 00:01:54,590 --> 00:01:58,390 Otan myös lähettää yksittäisen sähköpostiin puhelinnumeroni siinä 52 00:01:58,390 --> 00:02:01,860 niin että ei kaikille Internetissä voi nähdä puhelinnumeroni. 53 00:02:01,860 --> 00:02:03,640 Voit vapaasti soittaa minulle milloin tahansa. 54 00:02:03,640 --> 00:02:07,510 Vakavasti, minun puhelin on yleensä liitetty käteni. 55 00:02:07,510 --> 00:02:10,240 En ehkä vastata muutaman minuutin. 56 00:02:10,240 --> 00:02:11,984 En voi vastata muutamassa tunnissa. 57 00:02:11,984 --> 00:02:14,400 Mutta voin vakuuttaa teille, jos olet minulle sähköpostia, jos soitat minulle, 58 00:02:14,400 --> 00:02:17,404 tekstin minulle, Vastaan ​​24 tunnin kuluessa. 59 00:02:17,404 --> 00:02:19,820 Usein minä vastata ennen että, koska ymmärrän 60 00:02:19,820 --> 00:02:23,900 että jokainen sai joitakin ongelmia, ja haluat vastauksia 61 00:02:23,900 --> 00:02:26,110 vastataan hyvin nopeasti. 62 00:02:26,110 --> 00:02:28,945 >> Kuitenkin, jos soitat minulle 30 minuuttia ennen 63 00:02:28,945 --> 00:02:31,570 että pala, joka johtuu torstai täksi yöksi olla, Andi, auttaa minua, 64 00:02:31,570 --> 00:02:35,380 En ole started-- voin antaa teille, että olkapää itkeä. 65 00:02:35,380 --> 00:02:41,520 Mutta se voi olla aika miettiä miten tehdä sitä seuraavalla kerralla. 66 00:02:41,520 --> 00:02:44,040 OK. 67 00:02:44,040 --> 00:02:44,944 Oho. 68 00:02:44,944 --> 00:02:45,850 Miten voin mennä takaisin? 69 00:02:45,850 --> 00:02:48,140 Siellä mennään. 70 00:02:48,140 --> 00:02:52,310 >> Joten tässä tietenkin meillä tonni tuen kaikille. 71 00:02:52,310 --> 00:02:54,640 Lisäksi vain kohdat täällä, johon 72 00:02:54,640 --> 00:02:57,000 viikoittain saavat viettää 90 ihana minuuttia kanssani, 73 00:02:57,000 --> 00:02:58,330 meillä on myös virka-ajan. 74 00:02:58,330 --> 00:03:01,021 Kuinka moni teistä kaverit ovat jo ollut virka apua? 75 00:03:01,021 --> 00:03:01,520 Suuri. 76 00:03:01,520 --> 00:03:05,700 Se on todella hyvä nähdä, koska me on henkilökuntaa yli 45 TA ja CA 77 00:03:05,700 --> 00:03:11,780 koulutettu tähän tietenkin, että tässä auttaa te teidän psets. 78 00:03:11,780 --> 00:03:14,580 >> Maanantaisin he pidettiin TEAL yhtä 17 Hill House täällä 79 00:03:14,580 --> 00:03:15,350 Yalen. 80 00:03:15,350 --> 00:03:17,349 Tiistaisin ja torstaisin, he pidettiin Commons. 81 00:03:17,349 --> 00:03:20,010 8:00-11:00 melko paljon joka arkipäivä. 82 00:03:20,010 --> 00:03:21,620 Tule, tule ulos. 83 00:03:21,620 --> 00:03:24,030 Mitään ongelmaa, ei problem-- juuri tullut päälle, 84 00:03:24,030 --> 00:03:26,650 ja sitten autamme sinua ulos että. 85 00:03:26,650 --> 00:03:31,640 >> Toiseksi, lisäksi virka ja kohdat, meillä on myös shortsit. 86 00:03:31,640 --> 00:03:35,930 Onko kukaan koskaan nähnyt pari shortsit tai walkthroughs vuonna videot 87 00:03:35,930 --> 00:03:36,750 sivuilla? 88 00:03:36,750 --> 00:03:37,250 OK. 89 00:03:37,250 --> 00:03:39,510 Joten he todella, todella hyödyllinen. 90 00:03:39,510 --> 00:03:42,470 Meidän ihana Harvard tuotanto joukkueen tuolla että koulu 91 00:03:42,470 --> 00:03:47,910 pohjoisessa, he ovat kuvattu ja tuottanut uskomattomia läpikäynti videoita. 92 00:03:47,910 --> 00:03:52,290 >> He vievät sinut askel askeleelta läpi miten edetä ratkaista ongelma. 93 00:03:52,290 --> 00:03:56,340 Usein jos olet hämmentynyt yksinkertainen konsepti, yksittäinen käsite, 94 00:03:56,340 --> 00:03:59,780 katsomaan, koska meillä todennäköisesti lyhyt jonnekin sivuillamme. 95 00:03:59,780 --> 00:04:03,800 Ja se on yleensä suuri voimavara etsiä, kun olet ensin 96 00:04:03,800 --> 00:04:06,510 hävisi siitä, miten käsitellä ongelmaa. 97 00:04:06,510 --> 00:04:09,750 >> Kolmanneksi, meillä on myös study50 ja reference50. 98 00:04:09,750 --> 00:04:15,650 Tutki siis 50 sivusto on vain linkki. 99 00:04:15,650 --> 00:04:21,500 Se on mielestäni study.cs50.net Tai jotain sellaista. 100 00:04:21,500 --> 00:04:22,860 Vain googlettaa. 101 00:04:22,860 --> 00:04:24,229 Meillä on paljon dioja valmis. 102 00:04:24,229 --> 00:04:26,770 Meillä on paljon shortsit ja walkthroughs-- asiat kaikki koottu 103 00:04:26,770 --> 00:04:31,070 erittäin mukava ja siisti varten te kaikki selata, näe mitään käsitteitä 104 00:04:31,070 --> 00:04:32,860 että olet hämmentynyt. 105 00:04:32,860 --> 00:04:35,920 Se olisi todennäköisesti käsitellään tuolla study50. 106 00:04:35,920 --> 00:04:37,640 >> Reference50-- samanlaisia. 107 00:04:37,640 --> 00:04:41,510 Meillä on paljon erilaisia ​​muistiinpanoja helposti saatavilla käytettävissänne. 108 00:04:41,510 --> 00:04:44,450 Ja lopuksi, meillä on mitä nimeltään CS50 Keskustele, 109 00:04:44,450 --> 00:04:48,082 foorumi, jossa, jos iltana teet oman ongelmia, sano, 110 00:04:48,082 --> 00:04:49,880 sinulla on kysymys. 111 00:04:49,880 --> 00:04:52,340 Kirjaudu sisään CS50 Keskustele. 112 00:04:52,340 --> 00:04:53,190 Lähettää kysymyksesi. 113 00:04:53,190 --> 00:04:55,820 Ja sitten yksi hundreds-- ehkä, thousands-- ikäisensä 114 00:04:55,820 --> 00:04:57,960 ottamisen luokan online kirjautuu. 115 00:04:57,960 --> 00:05:01,182 Ja ehkä joku voi saada vastauksesi ennen TA voi. 116 00:05:01,182 --> 00:05:03,390 Se on pohjimmiltaan vain online-foorumi, että voimme kaikki 117 00:05:03,390 --> 00:05:04,556 käyttää keskustella ongelmista. 118 00:05:04,556 --> 00:05:06,483 Hyvä juttu. 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 Joten ongelma asettaa. 122 00:05:13,220 --> 00:05:17,840 Olemme noin oikeassa paksu ongelma asettaa kaksi. 123 00:05:17,840 --> 00:05:20,570 Monet meistä ovat jo taisteli läpi ongelma asetettu. 124 00:05:20,570 --> 00:05:24,460 Tiedämme jo, että ehkä odottamassa viime yönä tehdä PSET 125 00:05:24,460 --> 00:05:28,170 ei ole viisain asia tehdä CS50. 126 00:05:28,170 --> 00:05:32,380 >> Vinkkejä ja vihjeitä pääasiassa menestys luetaan koko spec. 127 00:05:32,380 --> 00:05:36,270 Kuinka moni teistä on jo lue spec PSET 2? 128 00:05:36,270 --> 00:05:36,770 OK. 129 00:05:36,770 --> 00:05:39,840 Se kiinteä määrä. 130 00:05:39,840 --> 00:05:43,210 Tiedän te luultavasti tunnustettu nyt tiedot ovat todella pitkiä. 131 00:05:43,210 --> 00:05:45,700 He todella, todella pitkä. 132 00:05:45,700 --> 00:05:49,630 >> On todella vaikea lukea joka rivi Tämän huolellisesti sana sanalta. 133 00:05:49,630 --> 00:05:52,780 Haluat vain silmäillä missä se käskee tekemään jotain. 134 00:05:52,780 --> 00:05:54,459 Voin vakuuttaa teille, älä tee sitä. 135 00:05:54,459 --> 00:05:56,750 Jos teet niin, olet luultavasti menetät jonnekin 136 00:05:56,750 --> 00:05:58,458 jossa se kertoo miten aloittaa ongelma 137 00:05:58,458 --> 00:06:01,140 tai se kertoo, mitä nimi ongelman tai se kertoo, 138 00:06:01,140 --> 00:06:03,720 tämä on todennäköisesti paras tapa alkaa tekemään ongelman. 139 00:06:03,720 --> 00:06:05,050 Ja Tulet menetetään. 140 00:06:05,050 --> 00:06:08,219 >> Kun yrität lukea spec puolivälissä, 141 00:06:08,219 --> 00:06:10,510 paljon tärkeä information-- että et ole 142 00:06:10,510 --> 00:06:12,260 tulee pystyä todella pääsy. 143 00:06:12,260 --> 00:06:13,219 Joten lue koko spec. 144 00:06:13,219 --> 00:06:15,468 Yritä lukea koko spec ennen kuin tulet §, 145 00:06:15,468 --> 00:06:17,360 koska silloin, kun puhua PSET, 146 00:06:17,360 --> 00:06:21,070 voimme kaikki idea mitä on meneillään. 147 00:06:21,070 --> 00:06:25,169 >> Toiseksi, tämä on käsite että minä mielelläni viite 148 00:06:25,169 --> 00:06:26,710 paljon koko kurssin lukukauden. 149 00:06:26,710 --> 00:06:30,070 Mutta pohjimmiltaan, meitä vastaan ​​puolitiehen, eikö? 150 00:06:30,070 --> 00:06:33,970 Me, kuten TA ja Jason kuin kurssi johtaja ja Scaz kuin professori 151 00:06:33,970 --> 00:06:37,120 ja David kuin professori ja kaikki muita ihania avustajat tällä kurssilla, 152 00:06:37,120 --> 00:06:39,830 avustajat tässä course-- me teemme parhaamme 153 00:06:39,830 --> 00:06:42,965 varmistaa, että sinulla on asetettu jopa onnistua tällä kurssilla. 154 00:06:42,965 --> 00:06:43,840 Pidämme osiosta. 155 00:06:43,840 --> 00:06:44,870 Pidämme virka. 156 00:06:44,870 --> 00:06:47,087 Vastaamme puhelimeen puhelut, vastata sähköposteihin, 157 00:06:47,087 --> 00:06:49,670 teemme kaikkemme, jotta Varmista kysymyksiin vastataan. 158 00:06:49,670 --> 00:06:51,460 >> Kuitenkin auttaa meitä liikaa. 159 00:06:51,460 --> 00:06:52,450 Tapaa meidät puoliväliin. 160 00:06:52,450 --> 00:06:56,040 Jos tulet virka ei mentyään §, ei 161 00:06:56,040 --> 00:07:02,060 nähtyään luentoja, joilla ei ole aavistustakaan mitä tapahtuu, on kuin, auttaa minua. 162 00:07:02,060 --> 00:07:04,350 Aion olla, hyvin, olen pahoillani. 163 00:07:04,350 --> 00:07:06,410 Se voi olla aika lainata että olkapää itkeä, 164 00:07:06,410 --> 00:07:08,959 koska en ole varma mitä voin tehdä auttaakseni sinua 165 00:07:08,959 --> 00:07:12,000 jos et yritä ainakin auttaa itsesi hieman alussa. 166 00:07:12,000 --> 00:07:12,910 Tapaa meidät puoliväliin. 167 00:07:12,910 --> 00:07:15,020 Tiedäthän, tulkaa valmis vastaamaan ja saada 168 00:07:15,020 --> 00:07:16,353 valmis aloittamaan materiaali. 169 00:07:16,353 --> 00:07:19,342 Se tekee asiat niin paljon helpompaa kaikille mukana. 170 00:07:19,342 --> 00:07:22,970 Joo, se on aika paljon se. 171 00:07:22,970 --> 00:07:23,720 >> Arvostelu. 172 00:07:23,720 --> 00:07:29,250 Joten oppimäärä, ihan syvällistä siitä, miten me luokka. 173 00:07:29,250 --> 00:07:32,440 Mutta pohjimmiltaan, erittely Tässä on 50% luokka 174 00:07:32,440 --> 00:07:34,530 on psets, joka on ihana, koska se on 175 00:07:34,530 --> 00:07:37,400 jossa olet menoja valtava Suurin osa kurssin aikaa. 176 00:07:37,400 --> 00:07:39,854 Tietokilpailuja 40%, ja teidän Opinnäytetyö on 10%. 177 00:07:39,854 --> 00:07:42,520 Tulee kaksi tietokilpailuja koko aikana lukukauden. 178 00:07:42,520 --> 00:07:47,050 Mielestäni ajat ja päivämäärät ovat myös listattu oppimäärän. 179 00:07:47,050 --> 00:07:49,210 >> Siten, että me on luokittelu teidän psets 180 00:07:49,210 --> 00:07:53,930 on, että meillä on olennaisesti neljä arvot, joita me määrittää kunkin luokan. 181 00:07:53,930 --> 00:07:57,250 Meillä arvo soveltamisala, oikeellisuuden, suunnittelu, ja tyyli. 182 00:07:57,250 --> 00:08:01,530 Joten kuten näette, se on tavallaan meidän laskentakaava psets. 183 00:08:01,530 --> 00:08:03,640 Kolme annamme eniten paino oikeellisuudesta, 184 00:08:03,640 --> 00:08:06,140 koska ilmeisesti valmentaja olisi testaus tapausten 185 00:08:06,140 --> 00:08:08,480 että haluamme sen testata. 186 00:08:08,480 --> 00:08:11,000 >> Te kaikki on check50 käytettävissänne. 187 00:08:11,000 --> 00:08:13,730 Se on erittäin hyödyllinen toiminto että te voi kaikki 188 00:08:13,730 --> 00:08:17,560 ladata koodia meidän palvelimia, jossa me tarkistaa sen sinulle. 189 00:08:17,560 --> 00:08:20,800 Ja olet nähnyt ne frowny kasvoja, hymiöitä. 190 00:08:20,800 --> 00:08:22,119 He todella, todella hyödyllinen. 191 00:08:22,119 --> 00:08:23,910 Älkää opiskelija, jotka haluavat yrittää 192 00:08:23,910 --> 00:08:26,230 hardcode kaikissa niihin vastauksia. 193 00:08:26,230 --> 00:08:30,050 Olen ehdottomasti nähnyt PSET jossa joku näki kaikki arvot check50 194 00:08:30,050 --> 00:08:33,429 ja he vain vaikea koodattu in-- jos Numeron tulostaa tämän numeron. 195 00:08:33,429 --> 00:08:35,080 Jos määrä, tulostaa että määrä. 196 00:08:35,080 --> 00:08:36,090 Älä tee sitä. 197 00:08:36,090 --> 00:08:39,360 >> Vaikka teknisesti check50 on oikea, 198 00:08:39,360 --> 00:08:41,809 teidän tapa ratkaista Ongelma ei ole oikea. 199 00:08:41,809 --> 00:08:45,770 Niin vain käyttää check50 säästeliäästi. 200 00:08:45,770 --> 00:08:48,497 Mutta myös varmistaa, että olet ymmärtää, miten se toimii, 201 00:08:48,497 --> 00:08:50,580 ohjelma toimii lisäksi check50, 202 00:08:50,580 --> 00:08:53,120 koska emme voi testata jokaisen mahdollinen tapauksessa check50. 203 00:08:53,120 --> 00:08:55,440 Tulemme testataan joitakin niistä. 204 00:08:55,440 --> 00:09:00,390 >> Design on lähinnä, miten hyvin suunniteltu on koodi? 205 00:09:00,390 --> 00:09:04,150 Jos olet copy-liittäminen useita riviä koodia monta, monta kertaa. 206 00:09:04,150 --> 00:09:06,960 Ehkä sinulla ei ole aivan paras design koodissa. 207 00:09:06,960 --> 00:09:09,470 Ehkä on aika lisätä, että silmukka. 208 00:09:09,470 --> 00:09:12,090 Pohjimmiltaan tässä se on vain kaikki noin yrittää tehdä koodia, 209 00:09:12,090 --> 00:09:17,010 yrittää kirjoittaa koodia tehokkaasti kuin mahdollista, jotta ohjelma toimii 210 00:09:17,010 --> 00:09:19,630 niin nopeasti kuin mahdollista. 211 00:09:19,630 --> 00:09:20,996 >> Lopuksi meillä on tyyli. 212 00:09:20,996 --> 00:09:24,360 Joten tyyli on eräänlainen mielivaltainen, subjektiivinen aikavälillä. 213 00:09:24,360 --> 00:09:27,470 Tiedän, että meillä virallisesti on tyyli 50 opas CS50, 214 00:09:27,470 --> 00:09:30,050 jossa se kertoo, oi, te pitäisi olla tilaa täällä. 215 00:09:30,050 --> 00:09:32,220 Kannattaa sellainen muoto koodi tällä tavalla. 216 00:09:32,220 --> 00:09:34,070 Sinun pitäisi nimetä asioita tällä tavalla. 217 00:09:34,070 --> 00:09:38,180 >> En todellakaan välitä, sinänsä, miten päätät muotoilla koodin, 218 00:09:38,180 --> 00:09:39,840 kunhan pysyt johdonmukainen. 219 00:09:39,840 --> 00:09:43,732 Esimerkiksi, jos haluat jättää tilaa jälkeen neljän 220 00:09:43,732 --> 00:09:45,690 ennen neljä silmukka, vain tehdä joka kerta. 221 00:09:45,690 --> 00:09:46,523 Älä sellaista tehdä sitä. 222 00:09:46,523 --> 00:09:47,730 Älä tee sitä muina aikoina. 223 00:09:47,730 --> 00:09:51,046 Jos haluat pitää kihara olkaimet tilaa tietyllä tavalla, 224 00:09:51,046 --> 00:09:52,170 vain aina tehdä niin. 225 00:09:52,170 --> 00:09:54,628 Älä sellaista tehdä sitä jossain täällä ja jossain ei siellä. 226 00:09:54,628 --> 00:09:57,010 Kun olemme luokittelua, se on todella vaikeaa 227 00:09:57,010 --> 00:09:59,420 jos minulla ei ole aavistustakaan siitä, miten olet alustus koodia, 228 00:09:59,420 --> 00:10:02,064 asiat ovat Outoa ja paikallaan. 229 00:10:02,064 --> 00:10:04,980 Jos vain pitää se johdonmukainen, se on paljon helpompaa minulle kuin suurempi 230 00:10:04,980 --> 00:10:06,310 pystyä lukemaan koodia. 231 00:10:06,310 --> 00:10:09,393 Se on paljon helpompaa sinulle kuin opiskelija voitava katsoa läpi koodi 232 00:10:09,393 --> 00:10:11,720 ja mitä vikaa se slash miksi siellä kysymyksiä. 233 00:10:11,720 --> 00:10:15,740 Tyyli on yksi helpoimmista asioista te voi tehdä saada täyden maalin. 234 00:10:15,740 --> 00:10:18,770 Pohjimmiltaan, jos vain välitä, jos maksat viisi minuuttia huomiota 235 00:10:18,770 --> 00:10:22,760 koodisi joka viikko, sinun pitäisi olla täyttymässä tyyli pistettä. 236 00:10:22,760 --> 00:10:26,020 >> Lopuksi, meillä on mitä kutsutaan kertoimella soveltamisalaa. 237 00:10:26,020 --> 00:10:28,890 Scope-- Tiedän, että se on iso sana, varsinkin tässä luokassa. 238 00:10:28,890 --> 00:10:31,030 Mutta laajuus, kaikki, että välineet on, että yrität 239 00:10:31,030 --> 00:10:33,670 psets parhaan kykysi. 240 00:10:33,670 --> 00:10:37,180 Jos otat kolmessa teidän neljä ongelmia 241 00:10:37,180 --> 00:10:39,460 ja ei edes yritä viimeinen, olet luultavasti 242 00:10:39,460 --> 00:10:41,630 menossa menettää joitakin kohtia soveltamisalaa. 243 00:10:41,630 --> 00:10:44,560 >> Vaikka olet vain alkaa ongelma, tee parasta kulkea läpi. 244 00:10:44,560 --> 00:10:47,691 Vaikka se ei toimi, käännä sitä, koska joka näyttää ja osoittaa 245 00:10:47,691 --> 00:10:50,190 meille, että yrität, että yritit Harjoitus 246 00:10:50,190 --> 00:10:51,430 parhaan kykysi. 247 00:10:51,430 --> 00:10:53,800 Ja sitten voimme antaa sinulle täysi pistettä soveltamisalaan. 248 00:10:53,800 --> 00:10:58,715 >> Soveltamisala on myös erittäin tärkeää, kun puhua alin PSET pisteet pudota. 249 00:10:58,715 --> 00:11:02,010 Joten aikana lukukausi, teillä yhdeksän psets. 250 00:11:02,010 --> 00:11:05,340 Ja me todella pudottamalla alin pistemäärä pois näiden yhdeksän, 251 00:11:05,340 --> 00:11:07,670 mutta vain jos sinulla on täysi laajuus pistettä. 252 00:11:07,670 --> 00:11:11,120 >> Joten jos kääntyä epätäydellinen PSET, Valitettavasti emme voi pudota, että yksi, 253 00:11:11,120 --> 00:11:13,540 koska soveltamisala pistettä ei saatu päätökseen. 254 00:11:13,540 --> 00:11:16,570 Joten vaikka sinulla on kauhea viikko jossa olet kuolee ja olet sairas 255 00:11:16,570 --> 00:11:20,040 tai koira kuolee, kissa kuolee, ja olet ylikuormitettu läksyjä, 256 00:11:20,040 --> 00:11:21,074 vain yrittää PSET. 257 00:11:21,074 --> 00:11:22,490 Tehdä sen parhaan kykysi. 258 00:11:22,490 --> 00:11:23,840 Jos se ei toimi, sillä ei ole väliä. 259 00:11:23,840 --> 00:11:24,506 Vain kääntää se. 260 00:11:24,506 --> 00:11:26,590 Ainakin voimme antaa te pisteitä vaivaa. 261 00:11:26,590 --> 00:11:28,510 >> Ponnistelun tässä luokassa. 262 00:11:28,510 --> 00:11:30,170 Ainakin alin pistemäärä pudota vaivaa. 263 00:11:30,170 --> 00:11:32,354 Niin joo. 264 00:11:32,354 --> 00:11:33,270 Se on aika paljon se. 265 00:11:33,270 --> 00:11:36,521 Onko kellään kysymyksiä niin pitkälle siitä, miten me arvosana luokassa? 266 00:11:36,521 --> 00:11:37,187 Tai jokin näistä? 267 00:11:37,187 --> 00:11:41,220 Tahansa näistä niin far-- kohdat, virka? 268 00:11:41,220 --> 00:11:41,720 Viileä. 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 >> Joten tämä on aihe, joka ei yksi todella pitää puhua. 272 00:11:51,260 --> 00:11:53,084 En todellakaan halua puhua siitä. 273 00:11:53,084 --> 00:11:55,250 Te eivät todellakaan halua kuulla minun puhua siitä. 274 00:11:55,250 --> 00:11:57,690 Mutta valitettavasti, me kaikki täytyy puhua siitä. 275 00:11:57,690 --> 00:12:00,110 David vietti 20 minuuttia luento puhua siitä. 276 00:12:00,110 --> 00:12:02,580 Ja että on aihe akateemisen rehellisyys. 277 00:12:02,580 --> 00:12:08,110 >> Joten me kaikki täällä ovat luultavasti kirjallisen essee joskus meidän Yale ura. 278 00:12:08,110 --> 00:12:11,800 Olemme luultavasti saanut puhua missä olemme kertonut ei plagioida meidän essee, 279 00:12:11,800 --> 00:12:13,940 koska työ ei ole meidän. 280 00:12:13,940 --> 00:12:18,109 Tietotekniikassa, meillä on samanlaista käsitettä. 281 00:12:18,109 --> 00:12:20,150 Kaikki työt, jotka lähetät, kaikki koodi, että kirjoitat 282 00:12:20,150 --> 00:12:21,900 pitäisi olla koodi, että olet kirjoittanut. 283 00:12:21,900 --> 00:12:24,280 Ei pitäisi olla koodia että olet kopioitu muualta. 284 00:12:24,280 --> 00:12:26,777 Ei pitäisi olla koodi, joka olet googled ja plopped vuonna 285 00:12:26,777 --> 00:12:28,360 ja et todellakaan tiedä, jos se toimii. 286 00:12:28,360 --> 00:12:32,440 Sinulla sellainen on tunne mitä se tekee, mutta ei oikeastaan. 287 00:12:32,440 --> 00:12:36,562 Jos olet epävarma, lähinnä, se on vain oltava kohtuullinen. 288 00:12:36,562 --> 00:12:38,520 Meidän oppimäärän, olemme Koko lista asioista 289 00:12:38,520 --> 00:12:40,560 näemme kohtuullisena vs. ole järkevää. 290 00:12:40,560 --> 00:12:43,820 >> Esimerkiksi kohtuullinen on sinun ja ystäväsi 291 00:12:43,820 --> 00:12:47,360 keskustella mikä on paras tapa edetä noin loogisesti ongelman ratkaisua. 292 00:12:47,360 --> 00:12:48,910 Se on melko kohtuullinen. 293 00:12:48,910 --> 00:12:53,244 Mikä ei olisi kohtuullista on, jos kaverit sai yhdessä, kirjoitettu sama koodi, 294 00:12:53,244 --> 00:12:54,410 ja kääntyi samaa koodia. 295 00:12:54,410 --> 00:12:56,302 Se ei ole kohtuullista. 296 00:12:56,302 --> 00:12:57,510 Sama juttu, tavallaan essee. 297 00:12:57,510 --> 00:12:59,290 Jos haluat keskustella ystäväsi kanssa, hei, 298 00:12:59,290 --> 00:13:00,220 tämä on mitä haluan kirjoittaa. 299 00:13:00,220 --> 00:13:02,500 Nämä ovat vaiheet haluan kestää kirjoittaa siitä, suuri. 300 00:13:02,500 --> 00:13:03,208 Sepä ihanaa. 301 00:13:03,208 --> 00:13:04,790 Ole hyvä yhteistyötä keskenään. 302 00:13:04,790 --> 00:13:06,540 Jos te aloitat kirjallisesti sama asia, 303 00:13:06,540 --> 00:13:10,020 käännä samassa essee, se on vähemmän OK. 304 00:13:10,020 --> 00:13:13,200 Joten jos on epävarma, mutta älä tee sitä. 305 00:13:13,200 --> 00:13:16,940 >> Täällä me CS50, meillä on skriptejä jotka kulkevat automatisoida testata 306 00:13:16,940 --> 00:13:21,740 paitsi oikeellisuutta koodin, mutta myös ainutlaatuisuuden koodin. 307 00:13:21,740 --> 00:13:25,920 Joten älä laita meidät tilanteeseen ottaa viitata teidän tapauksessa EXCOMM. 308 00:13:25,920 --> 00:13:31,110 Kiitos vain kaikille, haluan vain tekevät tästä hieno kokemus. 309 00:13:31,110 --> 00:13:33,600 Jokainen oppii paremmin, me kaikki ovat onnellisempia, 310 00:13:33,600 --> 00:13:37,926 ja olemme kaikki perustettu onnistua tällä kurssilla. 311 00:13:37,926 --> 00:13:39,800 Jotain, joka on hyvin ainutlaatuista tässä luokassa 312 00:13:39,800 --> 00:13:42,660 mielestäni kaikkien pitäisi oikeastaan kiinnittää huomiota on, että meillä on 313 00:13:42,660 --> 00:13:44,930 mitä kutsutaan pahoillani lauseke meidän oppimäärän. 314 00:13:44,930 --> 00:13:50,010 Niin olennaisesti, 72 tunnin kuluessa, jos uskot tehnyt jotain 315 00:13:50,010 --> 00:13:53,240 et ole varma oli tarkoituksenmukaista, tulkaa meille. 316 00:13:53,240 --> 00:13:57,220 Lupaamme, että 72 tunnin kuluessa me käsitellä asian itse 317 00:13:57,220 --> 00:13:59,820 viittaamatta korkeampaa viranomaisen hallintoon. 318 00:13:59,820 --> 00:14:03,100 >> Joten jos tulet luokseni ja sanoa, Andi, hei, olen todella pahoillani, 319 00:14:03,100 --> 00:14:07,620 mutta mielestäni siellä on pari riviä minun koodi viime yönä että olen sellainen googled, 320 00:14:07,620 --> 00:14:10,120 lähtenyt Stack Ylivuoto, kopioida ja liittää, 321 00:14:10,120 --> 00:14:13,680 ja olen todella, todella pahoillani siitä, haluaisin tietää. 322 00:14:13,680 --> 00:14:16,900 Älä anna sitä jäytää ja vain toivoa, että saan kiinni sen. 323 00:14:16,900 --> 00:14:17,784 Me kiinni. 324 00:14:17,784 --> 00:14:18,450 Tule luokseni. 325 00:14:18,450 --> 00:14:20,520 Haluaisin tietää 72 tunnin kuluessa. 326 00:14:20,520 --> 00:14:22,240 Me keksiä ratkaisu. 327 00:14:22,240 --> 00:14:26,679 Ja lupaamme, ettemme katso yliopisto viranomaiset olennaisesti. 328 00:14:26,679 --> 00:14:29,220 Joten se on paras etu vain olla rehellinen kaikkien kanssa 329 00:14:29,220 --> 00:14:31,720 mukana kurssin. 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 Joten nyt, nopeasti ennen I eteenpäin, ei kukaan 333 00:14:37,800 --> 00:14:42,670 on kysymyksiä logistiikka miten kurssit aiomme ajaa, 334 00:14:42,670 --> 00:14:45,982 miten osat on menossa juosta, mitään siitä? 335 00:14:45,982 --> 00:14:46,711 OK. 336 00:14:46,711 --> 00:14:47,210 Joo. 337 00:14:47,210 --> 00:14:48,126 >> Yleisö: [äänetön]? 338 00:14:48,126 --> 00:14:50,414 339 00:14:50,414 --> 00:14:51,080 ANDI Peng: Joo. 340 00:14:51,080 --> 00:14:54,850 Niin quizzes-- kuinka moni teistä on Monday / keskiviikko jakso? 341 00:14:54,850 --> 00:14:56,700 Kuinka moni teistä ovat tiistai / torstai? 342 00:14:56,700 --> 00:14:58,550 OK, joten se on vankka split täällä. 343 00:14:58,550 --> 00:15:00,900 Niin että otamme se Yalen on, että me 344 00:15:00,900 --> 00:15:04,040 ovat menossa on kaksi erillistä quizzes-- yksi kutakin section--, että 345 00:15:04,040 --> 00:15:06,160 otetaan tunnilla. 346 00:15:06,160 --> 00:15:09,310 Minusta se on lokakuu, lokakuun lopussa, jotain, kuten viikko yksi 347 00:15:09,310 --> 00:15:10,794 Quiz. 348 00:15:10,794 --> 00:15:11,960 Joo, niin juuri tullut luokkaan. 349 00:15:11,960 --> 00:15:13,920 Tuona maanantaina tai keskiviikkona sinä otat tietokilpailu. 350 00:15:13,920 --> 00:15:16,336 Tuona tiistaina tai torstaina, voit ottaa eri tietokilpailu. 351 00:15:16,336 --> 00:15:18,570 Mutta samaa materiaalia katetaan. 352 00:15:18,570 --> 00:15:19,160 Joo. 353 00:15:19,160 --> 00:15:20,660 Hyvä kysymys. 354 00:15:20,660 --> 00:15:21,160 Joo. 355 00:15:21,160 --> 00:15:23,260 >> Yleisö: Minne mene tutustu laadut? 356 00:15:23,260 --> 00:15:23,926 >> ANDI Peng: Joo. 357 00:15:23,926 --> 00:15:28,420 Joten aion lähettää sähköposti riippumatta viikoittain 358 00:15:28,420 --> 00:15:31,460 kun tietokilpailuja ovat graded-- tai, pahoillani, kun psets arvostellaan. 359 00:15:31,460 --> 00:15:34,120 Psets yleensä käännetään vuonna puoltapäivää tai perjantaina. 360 00:15:34,120 --> 00:15:37,540 Niin lupaan, että minä yrittää saada ne takaisin sinulle 361 00:15:37,540 --> 00:15:40,000 mukaan keskipäivään saakka seuraavana perjantaina. 362 00:15:40,000 --> 00:15:44,950 >> Aina kun luokka PSET, minä lähetän ulos ilmoitus asteen kirja 363 00:15:44,950 --> 00:15:47,070 joka kertoo pisteet on nähtävissä verkossa. 364 00:15:47,070 --> 00:15:52,022 Joten juuri tällä viikolla, kun olen loppuun luokittelu viime viikon psets, 365 00:15:52,022 --> 00:15:54,230 te saat sähköpostitse ilmoitusta kerron, 366 00:15:54,230 --> 00:15:55,870 hei tämä on, jos Siirry tarkastella laadut. 367 00:15:55,870 --> 00:15:57,680 Ja näet jokaisen erittelyn laadut. 368 00:15:57,680 --> 00:15:58,555 Näet kommentteja. 369 00:15:58,555 --> 00:16:00,360 Voi, nopea juttu myös. 370 00:16:00,360 --> 00:16:03,060 Kommentti osio suuri kirja on, jos olen luultavasti 371 00:16:03,060 --> 00:16:05,300 viettää suurimman osan ajastani luokittelu. 372 00:16:05,300 --> 00:16:07,094 Niin yksi asia, joka on todella tärkeää, kun 373 00:16:07,094 --> 00:16:09,010 te katselet sinun laadut teidän psets 374 00:16:09,010 --> 00:16:11,400 ei vain etsii fyysisessä pisteet 375 00:16:11,400 --> 00:16:14,630 mutta myös ottaa aikaa todella lukea kommentteja. 376 00:16:14,630 --> 00:16:17,820 >> Usein joka antaa sinulle palautetta miten olet ratkaista ongelma. 377 00:16:17,820 --> 00:16:20,480 Jos sinun täytyy tehdä jotain hieman parempaa, 378 00:16:20,480 --> 00:16:24,080 rakentavaa kritiikkiä yleensä on paras annettu huomautusten osassa. 379 00:16:24,080 --> 00:16:26,950 Joten kiitos, kiitos, aion viettää aikaa kirjoittaa kommentteja. 380 00:16:26,950 --> 00:16:30,440 Ole hyvä, olisin todella kiitollinen jos te lukisi nämä huomautukset. 381 00:16:30,440 --> 00:16:31,170 OK. 382 00:16:31,170 --> 00:16:34,150 Viileä. 383 00:16:34,150 --> 00:16:34,680 >> Selvä. 384 00:16:34,680 --> 00:16:40,680 Joten aiomme alkaa puhua ja vain tarkistaa nopeasti 385 00:16:40,680 --> 00:16:45,040 osa materiaalista peräisin viikko nolla juuri niin olemme 386 00:16:45,040 --> 00:16:48,760 oikealla sivulla varten alkaa tämän viikon ongelmia. 387 00:16:48,760 --> 00:16:52,600 Joten kun silmukka on yksi kolmen tyyppisiä silmukoita 388 00:16:52,600 --> 00:16:54,510 keskustelimme aiemmin tässä luokassa. 389 00:16:54,510 --> 00:16:57,060 >> Kun taas silmukka olennaisesti on kirjoitettu syntaksin 390 00:16:57,060 --> 00:17:00,666 jossa, kun taas tietyt ehdot, tehdä tämän toistuvasti, eikö? 391 00:17:00,666 --> 00:17:02,040 Ajattele sitä tällä graafinen täällä. 392 00:17:02,040 --> 00:17:04,780 Olet menossa alkaa tietyssä vaiheessa koodissa. 393 00:17:04,780 --> 00:17:09,030 Olet menossa päästä silmukan ehto if-- En know-- x on pienempi kuin yksi. 394 00:17:09,030 --> 00:17:11,677 >> Jos tämä on totta, olet menossa suorittaa silmukan runko. 395 00:17:11,677 --> 00:17:14,010 Ja aiot pitää tehdä että jälleen, uudestaan, uudestaan, 396 00:17:14,010 --> 00:17:17,900 yli ja over-- minkä vuoksi se on loop-- kunnes tilasi muuttuu 397 00:17:17,900 --> 00:17:19,079 vääriä. 398 00:17:19,079 --> 00:17:22,140 Joten tällä tavalla, kun taas silmukka on yksi yksinkertaisempia tapoja 399 00:17:22,140 --> 00:17:25,619 kirjoittaa minkäänlaista edellytyksellä, että tarvitsee toistaa uudestaan ​​ja uudestaan ​​ja uudestaan. 400 00:17:25,619 --> 00:17:28,109 Vain olla varovainen, kun olet kirjallisesti minkäänlaista silmukan 401 00:17:28,109 --> 00:17:32,140 että sinulla poistua kunnossa sekä päivitys mitä se 402 00:17:32,140 --> 00:17:36,714 on niin, että silmukka ei ole vain ajaa yli ja yli äärettömän. 403 00:17:36,714 --> 00:17:38,630 Joka tapauksessa, olet menossa haluavat varmistaa 404 00:17:38,630 --> 00:17:42,670 että muutat jostakin koodi tai lopussa silmukan 405 00:17:42,670 --> 00:17:46,680 vain varmista, että sinulla on tapa etenemään kohti kunto 406 00:17:46,680 --> 00:17:48,400 että haluat tavata loppuun. 407 00:17:48,400 --> 00:17:50,239 Tarkoittaako tämä järkevää kaikille? 408 00:17:50,239 --> 00:17:52,530 Emme vain halua olla kiinni tässä kierre missä 409 00:17:52,530 --> 00:17:55,710 menemme ympäri ja ympäri ja ei ole keino murtaa silmukka. 410 00:17:55,710 --> 00:17:58,844 Ja jokainen silmukka olennaisesti on tapa tehdä se. 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 >> Toiseksi, monet teistä teidän Mario psets 414 00:18:06,060 --> 00:18:08,910 oli luultavasti palkata Tämän tyyppinen silmukan. 415 00:18:08,910 --> 00:18:11,802 Sitä kutsutaan tehdä, kun silmukka. 416 00:18:11,802 --> 00:18:14,510 Ensinnäkin, voi joku kertoa minulle mitä eroa tee 417 00:18:14,510 --> 00:18:16,586 kun taas silmukka ja kun silmukka on? 418 00:18:16,586 --> 00:18:17,086 Joo. 419 00:18:17,086 --> 00:18:21,030 >> Yleisö: do while-silmukka kulkee aluksi [kuultavissa]. 420 00:18:21,030 --> 00:18:22,120 >> ANDI Peng: Joo, täsmälleen. 421 00:18:22,120 --> 00:18:27,130 Niin tehdä, kun silmukka aina tekee kaiken on sisällä do sisällä suluissa 422 00:18:27,130 --> 00:18:30,520 siellä ja tekee sen kunto ennen tarkistaa the-- pahoillani, 423 00:18:30,520 --> 00:18:32,940 tekee sen koodin ennen tarkistamalla kunnossa. 424 00:18:32,940 --> 00:18:37,200 Ja tämä on erityisen tärkeää meille täällä tässä luokassa, koska useimmat kertaa 425 00:18:37,200 --> 00:18:41,450 aiomme haluavat kysymään käyttäjä jonkinlaista tulon. 426 00:18:41,450 --> 00:18:43,520 Ja sitten, riippuen panos ne antavat meille, 427 00:18:43,520 --> 00:18:46,150 voimme arvioida, oh, do meidän täytyy pyytää niitä uudelleen? 428 00:18:46,150 --> 00:18:49,930 >> Joten Mario, jos käyttäjä antoi sinulle negatiivinen korkeus, esimerkiksi, 429 00:18:49,930 --> 00:18:52,990 aiot ensimmäinen nopea ja tehdä mitä on sisällä. 430 00:18:52,990 --> 00:18:54,820 Sitten aiot tarkistaa samalla. 431 00:18:54,820 --> 00:18:57,570 Tiedäthän, on negatiivinen 1, on, että positiivinen luku? 432 00:18:57,570 --> 00:19:00,680 Jos se ei ole, aion mennä takaisin ja toista tee ja toista 433 00:19:00,680 --> 00:19:03,950 ja toista ja toista, kunnes ne lopulta antaa sinulle useita että pidät, 434 00:19:03,950 --> 00:19:07,002 että voimme kaikki käyttää meidän koodi. 435 00:19:07,002 --> 00:19:09,210 Se on aika tärkeää olennaisesti käyttäjän toimia. 436 00:19:09,210 --> 00:19:11,760 Voin taata sinulle mitään aika PSET jossa 437 00:19:11,760 --> 00:19:15,070 pyydämme sinua antamaan minkäänlaista koodia, olemme 438 00:19:15,070 --> 00:19:17,540 luultavasti aio antaa sinulle testi tapaus, jossa olemme 439 00:19:17,540 --> 00:19:21,200 annan sinulle jotain pahaa, joka on yrittävät murtaa koodi. 440 00:19:21,200 --> 00:19:25,044 >> Jos yritämme pyytää sinua antamaan kokonaisluku, voimme vain antaa sinulle merkkijono 441 00:19:25,044 --> 00:19:26,460 ja miten voit käsitellä sitä. 442 00:19:26,460 --> 00:19:30,610 Jos pyydämme sinua palkata ikä, voimme antaa sinulle negatiivinen luku 443 00:19:30,610 --> 00:19:32,340 miten voit käsitellä sitä. 444 00:19:32,340 --> 00:19:37,260 Varmista vain kaverit ovat testaus joissa et saa paras 445 00:19:37,260 --> 00:19:38,590 tulo, Sanotaan vain. 446 00:19:38,590 --> 00:19:40,510 Ja tehdä, kun silmukka on Usein paras 447 00:19:40,510 --> 00:19:45,260 tapa suunnitella koodin siten että se täyttää että soveltamisalaa. 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 Joten tämä on luultavasti monimutkainen silmukka kolmesta 452 00:19:53,270 --> 00:19:54,990 että teimme toistaiseksi. 453 00:19:54,990 --> 00:19:56,689 Ja se näyttää erittäin pelottavalta aluksi. 454 00:19:56,689 --> 00:19:59,730 Mutta Takaan, kun te tajuta miten käyttää silmukka, 455 00:19:59,730 --> 00:20:03,320 se on yksi kaikkein hyödyllisiä asioita, eniten hyödyllisiä työkaluja arsenaali 456 00:20:03,320 --> 00:20:05,300 etenemiselle tässä luokassa. 457 00:20:05,300 --> 00:20:09,920 >> Niinpä esimerkiksi, Scratch, meillä oli hyvin yksinkertainen lohko 458 00:20:09,920 --> 00:20:13,180 että juuri sanoi toista tämä tietty lausekkeet tietyn määrän kertoja. 459 00:20:13,180 --> 00:20:16,260 Muuten, SAJ-- se Scaz Andi Jason. 460 00:20:16,260 --> 00:20:18,740 Me Usein allekirjoita sähköposteja SAJ. 461 00:20:18,740 --> 00:20:20,360 Jos sanomme SAJ, älä pidä sekoittaa. 462 00:20:20,360 --> 00:20:22,630 Se on vain meille. 463 00:20:22,630 --> 00:20:28,600 >> Joten Scratch, pystyimme olla lohko, joka sanoi, toista rakastan SAJ! 464 00:20:28,600 --> 00:20:29,430 10 kertaa. 465 00:20:29,430 --> 00:20:30,130 Hyvin yksinkertainen. 466 00:20:30,130 --> 00:20:32,302 Logiikka, että on hyvin, hyvin yksinkertainen, eikö? 467 00:20:32,302 --> 00:20:35,260 Haluan ensin mennä läpi ensimmäisen aika ja nähdä, että, toisen kerran 468 00:20:35,260 --> 00:20:38,510 ja nähdä, että kolmas kerta, niin edelleen ja niin edelleen, kunnes osut 10. 469 00:20:38,510 --> 00:20:41,960 >> Ja miten me edustaisi että koodi on vain läpi yksinkertainen silmukka. 470 00:20:41,960 --> 00:20:45,440 Joten, olet menossa julistaa muuttuja täällä, tässä tapauksessa, 471 00:20:45,440 --> 00:20:46,349 kanssa int. 472 00:20:46,349 --> 00:20:47,390 Aiomme name it i. 473 00:20:47,390 --> 00:20:49,500 Aiomme alustaa sen 0. 474 00:20:49,500 --> 00:20:52,490 Ja pysähtyminen painos on olemaan i on pienempi kuin 10. 475 00:20:52,490 --> 00:20:54,622 Ja päivitys tulee olemaan i ++. 476 00:20:54,622 --> 00:20:57,750 >> Ja sisällä silmukan, se tulee suorittaa kunnes lopulta se 477 00:20:57,750 --> 00:21:01,490 osuu loppuun condition-- jossa tapauksessa se tulee murtaa silmukan. 478 00:21:01,490 --> 00:21:04,600 Siellä pitäisi olla juttuja, että olet kaverit ovat kaikenlaisia ​​ennen nähnyt 479 00:21:04,600 --> 00:21:07,270 ja piti tehdä ongelman asettaa yhden. 480 00:21:07,270 --> 00:21:12,310 Onko kellään mitään kysyttävää koskevat silmukoita juuri nyt? 481 00:21:12,310 --> 00:21:12,930 OK. 482 00:21:12,930 --> 00:21:13,430 Suuri. 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 Joten ne teistä, jotka ovat Lue PSET spec tällä viikolla 486 00:21:22,270 --> 00:21:27,690 tiedämme, että olemme menossa on palkata jotain kutsutaan ASCII ja ASCII pöytä. 487 00:21:27,690 --> 00:21:32,380 Daavid luennossa meni lyhyesti kuinka tietokoneet essentially-- kaikki 488 00:21:32,380 --> 00:21:35,410 on koodattu tietokone binary, vuonna nollia ja ykkösiä. 489 00:21:35,410 --> 00:21:39,740 Ja siten, että tietokoneet pystyvät tallentaa eri arvoja lisäksi 490 00:21:39,740 --> 00:21:44,360 että nollia ja ykkösiä ovat kautta kartoitus näitä numeroita edustaa muita numeroa 491 00:21:44,360 --> 00:21:47,220 tai olennaisesti muita merkkejä. 492 00:21:47,220 --> 00:21:49,810 >> Joten tässä tapauksessa, ASCII table-- kaikki se 493 00:21:49,810 --> 00:21:53,600 on kartta merkkiä, tai merkkiä, numeroihin. 494 00:21:53,600 --> 00:21:57,385 Joten lähdekoodin tiedosto sinun computer-- se näkee, 495 00:21:57,385 --> 00:22:00,010 hei, joukko nollia ja ykkösiä, nollia ja ykkösiä, nollia ja ykkösiä. 496 00:22:00,010 --> 00:22:02,350 Sitähän tallennettu todellinen muisti tietokoneen. 497 00:22:02,350 --> 00:22:04,750 >> Mutta kun me ihmiset haluamme kommunikoida tietokone, 498 00:22:04,750 --> 00:22:08,249 me want-- sanoa esimerkiksi, jos haluan isoja, 499 00:22:08,249 --> 00:22:10,540 Aion pitää jollakin tavalla kertoa tietokoneen, OH, 500 00:22:10,540 --> 00:22:16,300 kun kirjoitan isoja, tarkoitan edustus binary. 501 00:22:16,300 --> 00:22:22,260 >> Ja niin tapa teemme joka heitti mielivaltainen asia sanottu ASCII pöytä, 502 00:22:22,260 --> 00:22:25,020 jossa me, ihmisinä, kuin ohjelmoijat, jokin aika sitten, 503 00:22:25,020 --> 00:22:28,660 me mielivaltaisesti päättänyt, että me aikoivat siirtää nämä numero 504 00:22:28,660 --> 00:22:30,960 arvot nämä merkit. 505 00:22:30,960 --> 00:22:32,720 >> Joten te voi google tätä verkossa. 506 00:22:32,720 --> 00:22:37,120 Mielestäni siellä on linkki siihen teidän pset-- vain ASCII kartta pöytä, ASCII 507 00:22:37,120 --> 00:22:37,720 pöytä. 508 00:22:37,720 --> 00:22:40,722 Se vain kääntää binary numeroita merkkiä. 509 00:22:40,722 --> 00:22:42,930 Ja se tulee olemaan hyvin hyödyllinen ongelman asettaa 510 00:22:42,930 --> 00:22:45,470 kun haluat laskea mitään tai jos 511 00:22:45,470 --> 00:22:47,880 haluat näyttää tietyt merkkiä tai kokonaislukuja 512 00:22:47,880 --> 00:22:50,327 tai manipuloida tiettyjä merkkejä. 513 00:22:50,327 --> 00:22:52,160 Se tulee olemaan hyvin tärkeää, että kaikki 514 00:22:52,160 --> 00:22:55,140 osaa navigoida ASCII taulukossa. 515 00:22:55,140 --> 00:23:01,260 >> Niinpä esimerkiksi, isot edustaa numero 65. 516 00:23:01,260 --> 00:23:04,207 Ja pieniä edustaa 97. 517 00:23:04,207 --> 00:23:07,040 Joten on tärkeää tietää, että ero kahden arvon 518 00:23:07,040 --> 00:23:08,320 on 32. 519 00:23:08,320 --> 00:23:13,210 Usein jos haluat muuntaa toisiinsa, ero on 32. 520 00:23:13,210 --> 00:23:15,710 Ja älä huoli, jos olet ystävällinen sekava tätä aluksi. 521 00:23:15,710 --> 00:23:20,230 Menemme yli kuinka olisimme käyttävät tätä todellisessa koodi. 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 Joten ne teistä läppäreissä ulos, rohkeasti vetää ASCII-taulukko, 525 00:23:30,770 --> 00:23:36,030 koska nämä luultavasti vaatia te viittaus 526 00:23:36,030 --> 00:23:38,100 mitä hahmot ovat. 527 00:23:38,100 --> 00:23:38,640 OK. 528 00:23:38,640 --> 00:23:42,840 >> Tietäen että tietyt merkkiä kartta tiettyihin numeroihin, 529 00:23:42,840 --> 00:23:47,240 jos olisin ajaa vain ensimmäinen rivi että code-- printf, 530 00:23:47,240 --> 00:23:50,900 pieniksi, miinus isoja A. Onko kukaan 531 00:23:50,900 --> 00:23:55,880 on arvata, mikä olisi tulostamisen näytön juuri nyt? 532 00:23:55,880 --> 00:23:58,190 >> Joten ensinnäkin, mitä pieniä edustaa? 533 00:23:58,190 --> 00:24:00,990 Mikä numero on, että koodattu ASCII taulukossa. 534 00:24:00,990 --> 00:24:01,490 Anteeksi? 535 00:24:01,490 --> 00:24:02,630 >> Yleisö: 97? 536 00:24:02,630 --> 00:24:03,630 >> ANDI Peng: 97, suuri. 537 00:24:03,630 --> 00:24:05,077 Ja mikä on isoja? 538 00:24:05,077 --> 00:24:06,330 >> Yleisö: 65. 539 00:24:06,330 --> 00:24:08,255 >> ANDI Peng: Mitä on 97 miinus 65? 540 00:24:08,255 --> 00:24:09,227 >> Yleisö: 32. 541 00:24:09,227 --> 00:24:09,810 ANDI Peng: OK. 542 00:24:09,810 --> 00:24:13,530 Mitä te olette mieltä aikoo tapahtuu kun panos Koodirivin 543 00:24:13,530 --> 00:24:14,670 minun tietokone? 544 00:24:14,670 --> 00:24:17,981 545 00:24:17,981 --> 00:24:19,896 >> Yleisö: [äänetön]. 546 00:24:19,896 --> 00:24:21,020 ANDI Peng: Anteeksi, puhua. 547 00:24:21,020 --> 00:24:22,520 Ei huolia. 548 00:24:22,520 --> 00:24:25,750 Tämä on erittäin turvallinen ympäristö, miinus kamera. 549 00:24:25,750 --> 00:24:27,550 Me kaikki menossa to-- ei hätää. 550 00:24:27,550 --> 00:24:30,940 Vain olemme kaikki menossa teeskennellä kuten se vain meille jäähdyttäminen tässä huoneessa. 551 00:24:30,940 --> 00:24:31,480 Ei huolia. 552 00:24:31,480 --> 00:24:33,410 Ei kysymys on liian tyhmä. 553 00:24:33,410 --> 00:24:35,300 Ei vastausta on tyhmä vastaus. 554 00:24:35,300 --> 00:24:38,260 Olen luultavasti tehdä virheitä aikana minun opetus. 555 00:24:38,260 --> 00:24:40,740 Vakavasti, kaverit, vain suustaan ​​ulos. 556 00:24:40,740 --> 00:24:43,092 Luottaa itseesi, tiedäthän? 557 00:24:43,092 --> 00:24:43,800 Mitä se oli? 558 00:24:43,800 --> 00:24:47,990 Kuka sanoi, että viime vastaus? 559 00:24:47,990 --> 00:24:48,540 OK. 560 00:24:48,540 --> 00:24:50,380 Huutaa, että kaunis ja selkeä. 561 00:24:50,380 --> 00:24:51,220 >> Yleisö: 32? 562 00:24:51,220 --> 00:24:51,850 >> ANDI Peng: 32. 563 00:24:51,850 --> 00:24:54,141 OK, nyt suorittaa tämän koodin ja onko se, mitä tapahtuu. 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 Niin te voi sellaista nähdä, tyypillinen merkintä olen 568 00:25:06,360 --> 00:25:12,250 perustettu täällä miten me työllistäisi minkäänlaista ohjelmaa meidän tietokone. 569 00:25:12,250 --> 00:25:14,770 Meillä päätehtävä meidän päätehtävä. 570 00:25:14,770 --> 00:25:17,265 Olen juuri menossa kopioida ja liitä tämä rivi koodia. 571 00:25:17,265 --> 00:25:21,082 572 00:25:21,082 --> 00:25:23,540 Myös olla varovainen, kun te kopioit ja liität koodin. 573 00:25:23,540 --> 00:25:28,750 Joskus tietyille toimijoille älä liitä yli oikein. 574 00:25:28,750 --> 00:25:31,397 Tällöin miinus merkki oli todella viiva. 575 00:25:31,397 --> 00:25:32,980 Ja niin tietokone ei noutaa. 576 00:25:32,980 --> 00:25:35,870 Joten minun piti mennä takaisin ja fyysisesti kirjoita se. 577 00:25:35,870 --> 00:25:37,846 Vain olla varovainen, kun te teette niin. 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 Me aiomme ajaa täällä. 581 00:25:43,980 --> 00:25:45,670 Joten aiomme cd meidän section2. 582 00:25:45,670 --> 00:25:50,470 583 00:25:50,470 --> 00:25:52,030 Minä olen kutsunut tätä ohjelmaa asciimath. 584 00:25:52,030 --> 00:25:55,690 Joten muistakaa, kun otamme mitään ohjelma, haluamme ensin kääntää se 585 00:25:55,690 --> 00:25:57,150 ajamalla sen kautta tehdä. 586 00:25:57,150 --> 00:26:00,030 Ja sitten me haluamme todella ajaa ohjelma tekemällä piste-slash. 587 00:26:00,030 --> 00:26:01,280 Joten aiomme ./asciimath. 588 00:26:01,280 --> 00:26:05,780 589 00:26:05,780 --> 00:26:06,590 >> Oikea, siellä mennään. 590 00:26:06,590 --> 00:26:07,410 Ja näemme 32. 591 00:26:07,410 --> 00:26:07,930 Hyvin tehty. 592 00:26:07,930 --> 00:26:10,340 Ansaitset karamelli. 593 00:26:10,340 --> 00:26:11,160 Candy sinulle. 594 00:26:11,160 --> 00:26:11,900 Anteeksi. 595 00:26:11,900 --> 00:26:13,100 Selvä. 596 00:26:13,100 --> 00:26:13,670 OK. 597 00:26:13,670 --> 00:26:18,070 Joten voimme mennä takaisin meidän esimerkki tästä. 598 00:26:18,070 --> 00:26:23,530 599 00:26:23,530 --> 00:26:24,345 Aah, ei. 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 Aion pitää sen niin. 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 Niin te voi nähdä, voimme tehdä paljon erittäin mielenkiintoisia asioita, 608 00:26:55,340 --> 00:26:58,880 paljon erittäin hienoja asioita, paljon erittäin monimutkaisia ​​asioita, joihin liittyy 609 00:26:58,880 --> 00:27:02,720 ASCII-merkkejä ja numeroita. 610 00:27:02,720 --> 00:27:05,890 Kun saat alas linja viisi, että on paljon seurata mukana. 611 00:27:05,890 --> 00:27:07,640 Emme aio mennä osan läpi. 612 00:27:07,640 --> 00:27:10,720 Voit vapaasti, jos voit, Perustelu paperille 613 00:27:10,720 --> 00:27:14,750 ensin mitä pitäisi tapahtua, kun syötät tällainen merkkijono arvoja. 614 00:27:14,750 --> 00:27:19,720 Esimerkiksi että viimeinen rivi, meillä on z-- joka edustaa tiettyä number-- 615 00:27:19,720 --> 00:27:24,740 a-- mikä on myös tietyt number-- plus 1 modulos 26 616 00:27:24,740 --> 00:27:26,750 plus pieniksi. 617 00:27:26,750 --> 00:27:29,220 >> Jos te pitää käsittelyssä läpi nämä, sinun 618 00:27:29,220 --> 00:27:34,009 voi nähdä kuvio keksiä miten me manipuloimalla koodi. 619 00:27:34,009 --> 00:27:36,050 Olen erittäin, erittäin ehdottaa jakson jälkeen kaikille teille 620 00:27:36,050 --> 00:27:38,160 kaverit mennä eteenpäin ja panos ne kaikki tietokoneen 621 00:27:38,160 --> 00:27:40,060 ja nähdä millaisia numerot ovat tulossa ulos 622 00:27:40,060 --> 00:27:43,090 ja perustelut kautta miksi ne ovat tapahtuu, koska teidän psets 623 00:27:43,090 --> 00:27:45,060 se tulee olemaan todella tärkeä sinua ymmärtämään 624 00:27:45,060 --> 00:27:47,132 miksi tietyt asiat tapahtuvat. 625 00:27:47,132 --> 00:27:48,590 Kaikki nämä dioja on verkossa. 626 00:27:48,590 --> 00:27:51,510 Joten ei huolestuta yrittää fyysisesti kopioida muistiinpanoja. 627 00:27:51,510 --> 00:27:52,510 Kaikki on verkossa. 628 00:27:52,510 --> 00:27:54,050 Tässä osassa itsessään on verkossa. 629 00:27:54,050 --> 00:27:57,500 Kaikki minun lähdekoodi, joka Olen käynnissä on verkossa. 630 00:27:57,500 --> 00:27:58,180 Joo. 631 00:27:58,180 --> 00:27:59,430 Oliko sinulla on vielä kysymys? 632 00:27:59,430 --> 00:28:00,587 Yleisö: Mikä on modulos? 633 00:28:00,587 --> 00:28:01,170 ANDI Peng: OK. 634 00:28:01,170 --> 00:28:05,620 Joten modulo on toimija, joka tulee melko tärkeää, että teidän kaverit n PSET 635 00:28:05,620 --> 00:28:06,690 täällä. 636 00:28:06,690 --> 00:28:12,280 Niin että toimijat C ja ohjelmatyön 637 00:28:12,280 --> 00:28:16,360 on, että sinulla on mitä kutsutaan jako symboli ja moduuli symboli, 638 00:28:16,360 --> 00:28:18,350 joka on aivan kuten prosentin merkki. 639 00:28:18,350 --> 00:28:24,840 >> Joten C, kun teet kokonaisluku jaettuna kokonaisluku kauttaviivalla, 640 00:28:24,840 --> 00:28:27,720 C on taipumus haluta leikata pois kaikki desimaalin pistettä, 641 00:28:27,720 --> 00:28:30,290 koska kokonaisluku haluaa muuntaa kokonaisluvun. 642 00:28:30,290 --> 00:28:33,550 Se ei tule halua olla kaksinkertainen kanssa joukko desimaalien kaiken sen jälkeen. 643 00:28:33,550 --> 00:28:39,322 >> Joten jos en 3 jaettuna 2, se on menossa katkaista 0,5 ja vain antaa sinulle 1. 644 00:28:39,322 --> 00:28:41,530 Niin, että on jotain olla hyvin varovainen, kun olet 645 00:28:41,530 --> 00:28:45,294 teet minkäänlaista matematiikka ohjelmoinnissa, on että numerot saat 646 00:28:45,294 --> 00:28:47,210 voi olla numeroita että olit ajatellut, 647 00:28:47,210 --> 00:28:50,190 minkä vuoksi pyöristys teidän viime PSET on niin tärkeä. 648 00:28:50,190 --> 00:28:51,980 >> Modulo antaa sinulle loput. 649 00:28:51,980 --> 00:28:56,200 Niinpä esimerkiksi, jos tein 3 modulo 2-- joten 3 prosenttia merkki 2-- 650 00:28:56,200 --> 00:28:58,020 se antaa sinulle loput että. 651 00:28:58,020 --> 00:29:00,460 Joten 3 jaettuna 2 on 1.5. 652 00:29:00,460 --> 00:29:01,410 Se on 1 jäljellä 1. 653 00:29:01,410 --> 00:29:04,600 Se antaa sinulle 1, joka on jäljellä, että. 654 00:29:04,600 --> 00:29:07,361 >> Joten kun kaverit ovat siirtymässä kautta ASCII taulukon 655 00:29:07,361 --> 00:29:09,735 modulo on lopulta jotain, joka on hyvin tärkeä, 656 00:29:09,735 --> 00:29:11,240 ja kerromme mielellämme että myöhemmin. 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 Joten jotain, joka on kaunis, melko uusi ja melko ainutlaatuinen 660 00:29:27,300 --> 00:29:31,920 että olemme keskustelleet tällä viikolla käsite mitä array on. 661 00:29:31,920 --> 00:29:34,370 Joten array on ensimmäinen tyyppi tietorakenne 662 00:29:34,370 --> 00:29:36,320 että aiomme kohtaavat tässä luokassa. 663 00:29:36,320 --> 00:29:40,010 Kaikki tiedot rakenne on jonkinlainen mielivaltainen, 664 00:29:40,010 --> 00:29:43,370 kirjaimellisesti asioita, kuten rakenne että me ohjelmoijat luoneet, 665 00:29:43,370 --> 00:29:47,890 että olemme laittaa meidän koodi, joka voi sisältää muita koodiksi. 666 00:29:47,890 --> 00:29:51,090 >> Joten tässä mielessä, array-- ajattele sitä arkistokaappi, 667 00:29:51,090 --> 00:29:53,470 jossa jos avaat eri hyllyt oman arkistokaappi, 668 00:29:53,470 --> 00:29:55,630 voit käyttää eri asioita. 669 00:29:55,630 --> 00:29:58,630 Muistiin array on juuri tekemässä sama asia tietokoneellesi. 670 00:29:58,630 --> 00:30:01,730 Voit olla eri blocks-- me soittaa heille indices-- array. 671 00:30:01,730 --> 00:30:04,210 Se on aivan kuten lohko, hylly muistia 672 00:30:04,210 --> 00:30:07,580 että olemme luoneet omassa tietokone että voit syöttää 673 00:30:07,580 --> 00:30:10,270 tiettyjä asioita erilaisissa tiloissa. 674 00:30:10,270 --> 00:30:18,000 >> Joten array, voit aina specify-- 675 00:30:18,000 --> 00:30:22,360 sinun on määritettävä julistamisesta array seuraavassa muodossa. 676 00:30:22,360 --> 00:30:24,290 Olet menossa ensimmäiseen määritä tietotyyppi 677 00:30:24,290 --> 00:30:25,831 että haluat luoda array. 678 00:30:25,831 --> 00:30:28,870 Jos haluan joukko kokonaislukuja, Olen menossa laittaa int oikeassa. 679 00:30:28,870 --> 00:30:32,079 Jos haluan joukko jouset, Aion laittaa jouset siellä, 680 00:30:32,079 --> 00:30:34,995 nimi array, ja sitten olet menossa on hakasuluissa. 681 00:30:34,995 --> 00:30:39,580 Ja sisällä hakasulkeissa, olet menossa on kokoa array. 682 00:30:39,580 --> 00:30:42,900 >> Jotain, joka on todella tärkeää pitää mielessä, kun luodaan paneelit on 683 00:30:42,900 --> 00:30:46,530 että kun luot array, että koko ei voi muuttaa. 684 00:30:46,530 --> 00:30:50,180 Joten jos tiedät, että juuri nyt sinulla on joukko koko 10, 685 00:30:50,180 --> 00:30:54,550 te tiedätte, että aion olla 10 solua sisällä tai 10 indeksejä tämän taulukon, 686 00:30:54,550 --> 00:30:56,830 ja se ei ikinä laajentaa tai vähentää 687 00:30:56,830 --> 00:30:59,850 mitä, ja että on olemassa tällä hetkellä vain 10 korttelin tilaa 688 00:30:59,850 --> 00:31:04,490 jaetaan muistin, johon voi tallentaa jopa 10 asioita mitä olet laittaa. 689 00:31:04,490 --> 00:31:08,790 >> Joten tällä tavalla, joukko datatyypin, tietorakenne joka on array 690 00:31:08,790 --> 00:31:13,392 on hyvin erilainen kuin toiset me will käsittelen myöhemmin tällä kurssilla. 691 00:31:13,392 --> 00:31:15,170 Joo. 692 00:31:15,170 --> 00:31:20,080 Esimerkiksi, jos halusi luoda taulukon koko 3 että 693 00:31:20,080 --> 00:31:23,670 sisälsi muuttujat integer-- Anteeksi, on temperature-- 694 00:31:23,670 --> 00:31:25,640 ja lämpötila, sekä Tietenkin on kokonaisluku. 695 00:31:25,640 --> 00:31:28,710 >> Joten me loisi int, joka on tietotyyppi mitä haluamme säilyttää. 696 00:31:28,710 --> 00:31:32,680 Aiomme kutsua tätä lämpötilat vuoksi nimikkeistön nimeäminen 697 00:31:32,680 --> 00:31:34,200 jotain, että me kaikki ymmärrämme. 698 00:31:34,200 --> 00:31:35,900 Ja me aiomme olla hakasuluissa. 699 00:31:35,900 --> 00:31:37,200 Ja haluamme kolme numeroa. 700 00:31:37,200 --> 00:31:39,000 Joten aiomme laittaa kolme sen sisälle. 701 00:31:39,000 --> 00:31:41,041 >> Jotain, joka on todella tärkeää pitää mielessä 702 00:31:41,041 --> 00:31:43,530 on, että taulukot ovat nolla indeksoitu. 703 00:31:43,530 --> 00:31:46,410 Kaikki tämä tarkoittaa, että voit aloittaa indeksi 0, 704 00:31:46,410 --> 00:31:49,800 ja suoritat läpi taulukon koko miinus 1. 705 00:31:49,800 --> 00:31:52,730 Niinpä esimerkiksi täällä, me on taulukon koko 3. 706 00:31:52,730 --> 00:31:54,680 Se tulee pystyä pitää kolme arvoa. 707 00:31:54,680 --> 00:31:57,450 Mutta numerot themselves--, että numero, array, että indeksi, 708 00:31:57,450 --> 00:32:00,271 array, ovat 0 kautta 2. 709 00:32:00,271 --> 00:32:03,520 Joten kaverit, todella, todella varovainen käytte läpi ongelmia asettaa 710 00:32:03,520 --> 00:32:06,500 ja luoda minkäänlaista array, koska paljon kertaa se on 711 00:32:06,500 --> 00:32:08,490 todella, todella helppo unohtaa. 712 00:32:08,490 --> 00:32:11,840 Olen itse ei ole indeksi 3, että olen tällä hetkellä vain 713 00:32:11,840 --> 00:32:13,130 on indeksi 2. 714 00:32:13,130 --> 00:32:16,046 Ja jos yrität pääsy kolmas indeksi, 715 00:32:16,046 --> 00:32:18,170 se tulee olemaan mitä nimeltään null terminaattori. 716 00:32:18,170 --> 00:32:19,990 Se ei aio itse olemassa jono. 717 00:32:19,990 --> 00:32:21,781 Ja tietokone on aio pidä siitä. 718 00:32:21,781 --> 00:32:24,570 Joten ole varovainen, kun käytätkö asiat vain 719 00:32:24,570 --> 00:32:28,070 varmistaa, että muistat että taulukot ovat nolla-indeksoitu. 720 00:32:28,070 --> 00:32:28,880 >> OK. 721 00:32:28,880 --> 00:32:34,030 Joten ensimmäinen esimerkki on vain yksi tapa luoda array. 722 00:32:34,030 --> 00:32:36,790 Toinen esimerkki Minulla Alla on vain erillinen tapa 723 00:32:36,790 --> 00:32:40,210 luoda mikä on samat tiedot rakenne että olemme juuri syötetty. 724 00:32:40,210 --> 00:32:44,347 Joten sen sijaan fyysisesti käynnissä kautta ja ottamalla lämpötilassa 0 725 00:32:44,347 --> 00:32:47,180 vastaa mitä tahansa, lämpötila 1 vastaa mitä tahansa, lämpötila 2 tuloksena 726 00:32:47,180 --> 00:32:50,950 mitä, voisin oikeastaan ​​vain suoraan luoda se kaikki yhdellä rivillä 727 00:32:50,950 --> 00:32:53,010 osaksi lämpötila hakasulkeita tasavertaisina. 728 00:32:53,010 --> 00:32:56,536 >> Ja huomaa, että tässä tapauksessa, et tarvitse Määritä kuinka suuri joukko on, 729 00:32:56,536 --> 00:32:59,160 koska tietokone tulee läpi ja nähdä, että siellä on 730 00:32:59,160 --> 00:33:01,570 kolme elementtiä näiden aaltosulkeita. 731 00:33:01,570 --> 00:33:04,000 Ja se tulee tietää, OK, Tarvitsen taulukon koko 3. 732 00:33:04,000 --> 00:33:07,440 Et aio tarvitse tulo se seuraavalla tavalla. 733 00:33:07,440 --> 00:33:10,170 >> Ja myös, joo, näin. 734 00:33:10,170 --> 00:33:12,610 Onko kellään kysymyksiä siitä, miten teemme taulukot 735 00:33:12,610 --> 00:33:17,391 tai miten rakenne array toimii? 736 00:33:17,391 --> 00:33:17,890 Joo. 737 00:33:17,890 --> 00:33:18,806 >> Yleisö: [äänetön]? 738 00:33:18,806 --> 00:33:21,649 739 00:33:21,649 --> 00:33:22,690 ANDI Peng: Joo, täsmälleen. 740 00:33:22,690 --> 00:33:26,150 Joten jos olisit julistaa ja alustaa array seuraavaa menetelmää, 741 00:33:26,150 --> 00:33:28,477 joka on toinen tapa, voit jättää ne. 742 00:33:28,477 --> 00:33:30,310 Ja tietokone automaattisesti tietää, että se 743 00:33:30,310 --> 00:33:33,950 on laskea kuinka monta elementtiä ovat näissä aaltosulkeita, erotettu 744 00:33:33,950 --> 00:33:34,930 pilkuilla. 745 00:33:34,930 --> 00:33:37,517 >> Joten tässä he näkevät 65, 87, 30. 746 00:33:37,517 --> 00:33:39,600 Niin tietokone tietää, OH, siellä on kolme kokonaislukuja. 747 00:33:39,600 --> 00:33:45,960 Tiedän luoda array nimi lämpötilan kolme elementtiä se. 748 00:33:45,960 --> 00:33:46,590 Hyvä kysymys. 749 00:33:46,590 --> 00:33:47,090 Joo. 750 00:33:47,090 --> 00:33:51,590 >> Yleisö: Eikö ole mahdollista luoda joukko eri tyyppisiä tietoja 751 00:33:51,590 --> 00:33:53,021 että voitaisiin ottaa se? 752 00:33:53,021 --> 00:33:56,746 Esimerkiksi kokonaisluvuilla [äänetön]? 753 00:33:56,746 --> 00:33:59,120 ANDI Peng: tarkoitetaan Tämän luokan, ei juuri nyt. 754 00:33:59,120 --> 00:34:03,070 Kun luot data jäsentää kuten array, 755 00:34:03,070 --> 00:34:04,990 kerrot tietokone, hei, tarvitsen sinua 756 00:34:04,990 --> 00:34:08,159 jakaa näin paljon muistia minun kovalevy, 757 00:34:08,159 --> 00:34:10,690 jossa kukin kammio on tietty määrä bittejä. 758 00:34:10,690 --> 00:34:13,429 >> Muistakaa, että olemme oppineet viikolla nolla että eri tiedot 759 00:34:13,429 --> 00:34:15,300 tyypit ovat erikokoisia? 760 00:34:15,300 --> 00:34:17,630 Niinpä esimerkiksi, merkkijono on eri summan 761 00:34:17,630 --> 00:34:20,719 tilaa kuin char, joka on eri määrä tilaa 762 00:34:20,719 --> 00:34:21,830 alkaen kokonaisluku. 763 00:34:21,830 --> 00:34:25,534 Joten jos et määritä ja sinua mix and match millaisia ​​muuttujia 764 00:34:25,534 --> 00:34:27,659 sinulla on, tietokoneen tulee hyvin sekava. 765 00:34:27,659 --> 00:34:29,950 Ja se ei tule tietää kuinka paljon muistia antaa sinulle. 766 00:34:29,950 --> 00:34:32,480 Joten varten oikeus nyt, tietokoneet voivat vain 767 00:34:32,480 --> 00:34:36,120 tunnustaa yhdenlaista jono. 768 00:34:36,120 --> 00:34:37,940 Hyvä kysymys. 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 >> Joten luonnollisesti, Toinen kysymys meillä 772 00:34:47,120 --> 00:34:50,760 on, hyvin, nyt, että olemme luoneet array ja olemme laittaa kaikki nämä asiat 773 00:34:50,760 --> 00:34:54,190 array, kuinka olemme menossa voi käyttää sitä? 774 00:34:54,190 --> 00:34:59,710 Joten tyypillinen rakenne että me aina pääsyn matriisi on meidän ihana silmukka. 775 00:34:59,710 --> 00:35:03,830 Lupaan teille kaverit, että tulemme nähdä paljon tämä mies täällä. 776 00:35:03,830 --> 00:35:06,470 >> Pohjimmiltaan, milloin haluat syöttää arvot taulukkoon 777 00:35:06,470 --> 00:35:09,940 tai haluat käyttää niitä, Paras tapa tehdä se on silmukka, 778 00:35:09,940 --> 00:35:13,730 koska silmukka, sinulle tiedä kuinka monta kertaa olet 779 00:35:13,730 --> 00:35:17,290 menossa haluavat ajaa läpi array, koska sinulla on pysäkki painos, eikö? 780 00:35:17,290 --> 00:35:19,680 Ja aina käyttää kautta, voit käyttää 781 00:35:19,680 --> 00:35:21,310 eri alkiota. 782 00:35:21,310 --> 00:35:26,920 >> Ja myös, tämä on syy, miksi tyypillisesti aloitamme varten silmukoita 0 arvoon, 783 00:35:26,920 --> 00:35:30,080 koska kun käytät paneelit, voit käyttää nolla indeksi. 784 00:35:30,080 --> 00:35:32,070 Ja niin se yhtäläisyyksiä erittäin hienosti. 785 00:35:32,070 --> 00:35:35,295 Olette ehkä halunnut kirjoittaa int i on 1. 786 00:35:35,295 --> 00:35:37,330 i on pienempi tai yhtä suuri kuin 3. 787 00:35:37,330 --> 00:35:39,890 >> Mutta se ei toimi aivan yhtä hyvin täällä, koska sinulla on vain 788 00:35:39,890 --> 00:35:42,010 on elementtejä 0, 1, ja 2. 789 00:35:42,010 --> 00:35:45,815 Ja niin jos olit aloittaa Näin i elementistä 1, 2, ja 3, 790 00:35:45,815 --> 00:35:48,440 aiot päätyä käynnissä ulos pelikentältä oman array, 791 00:35:48,440 --> 00:35:50,440 ja huonoja asioita tapahtuu. 792 00:35:50,440 --> 00:35:54,480 >> Joten toivon te nähdä segue miksi aikaisemmissa luokissa 793 00:35:54,480 --> 00:35:58,560 me opettivat teitä miten ajaa ja alustaa silmukan tavalla olimme. 794 00:35:58,560 --> 00:36:01,900 Se johtuu, nyt olemme siirtynyt osaksi paneelit, 795 00:36:01,900 --> 00:36:06,760 voit nähdä, miksi 0 se lainaa itse hienosti saatavuudelle. 796 00:36:06,760 --> 00:36:09,880 >> Joten miten teemme, että on that-- olen vain tulostaa sen täällä vuoksi 797 00:36:09,880 --> 00:36:10,830 tulostus sitä. 798 00:36:10,830 --> 00:36:13,750 Mutta minulla on paikkamerkki, pilkku. 799 00:36:13,750 --> 00:36:15,645 Ja todellinen sisäänpääsyä osa tapahtuu. 800 00:36:15,645 --> 00:36:17,520 Nimi array kutsuttiin lämpötila. 801 00:36:17,520 --> 00:36:21,570 Joten se on lämpötila ja i: nnen taulukon alkiota. 802 00:36:21,570 --> 00:36:24,400 >> Niin silmukka kulkee, se tulee alkavat 0. 803 00:36:24,400 --> 00:36:27,640 Se tulee tulostaa 0th indeksi tämän taulukon. 804 00:36:27,640 --> 00:36:29,599 Sitten se tulee tulostaa ulos ensimmäinen elementti. 805 00:36:29,599 --> 00:36:31,431 Sitten se tulee tulostaa pois toinen. 806 00:36:31,431 --> 00:36:32,880 Ja sitten me aiomme rikkoa. 807 00:36:32,880 --> 00:36:36,718 Onko kaikki selvää miten se tapahtuu? 808 00:36:36,718 --> 00:36:37,217 Suuri. 809 00:36:37,217 --> 00:36:43,230 810 00:36:43,230 --> 00:36:44,100 >> Selvä. 811 00:36:44,100 --> 00:36:47,270 Joten tässä meillä on tapa sanomalla, jos emme halunneet 812 00:36:47,270 --> 00:36:50,020 vaikeasti koodi in-- minulle ohjelmoija. 813 00:36:50,020 --> 00:36:53,320 En halua todella fyysisesti laittaa jokaisen yksittäisen elementin 814 00:36:53,320 --> 00:36:54,020 tämän taulukon. 815 00:36:54,020 --> 00:36:56,500 Jos halusin sijaan on käyttäjä syöttää arvot, 816 00:36:56,500 --> 00:36:58,100 mikä on paras tapa tehdä se? 817 00:36:58,100 --> 00:37:00,920 >> No, tässä olen luonut tämä ihana toiminto, 818 00:37:00,920 --> 00:37:03,560 jossa voin julistaa array. 819 00:37:03,560 --> 00:37:06,210 Joten int scores-- nyt vain sanoa haluamme tehdä 820 00:37:06,210 --> 00:37:10,660 array, joka järjestetään laadut kaikkien 18 opiskelijoista täällä tässä osassa. 821 00:37:10,660 --> 00:37:12,670 Mielestäni meillä vähän yli 18 lasten tänään. 822 00:37:12,670 --> 00:37:16,460 Mutta esimerkiksi tähden, Haluan vain olettaa meillä oli 18. 823 00:37:16,460 --> 00:37:21,580 Haluaisin luoda array nimi tuloksiasi int, koska tulokset, tietenkin, 824 00:37:21,580 --> 00:37:22,987 ovat numeroita. 825 00:37:22,987 --> 00:37:24,820 Ja aion olla 18 hakasulkeissa, 826 00:37:24,820 --> 00:37:29,900 koska niin monet opiskelijat I haluavat pystyä tallentamaan tulokset. 827 00:37:29,900 --> 00:37:32,206 >> Ja miten olin asuttaa array on, että olisin 828 00:37:32,206 --> 00:37:35,572 ajaa se läpi silmukka, ja Tietenkin, jossa 0 on minun 0th indeksi. 829 00:37:35,572 --> 00:37:38,030 Ja sitten 18 on minun pysähtymättä painos, koska siellä 830 00:37:38,030 --> 00:37:39,690 18 elementtejä jono. 831 00:37:39,690 --> 00:37:44,620 Ja sitten aion tehdä printf, Anna pääsi student-- yada Yada Yada. 832 00:37:44,620 --> 00:37:51,171 >> Voiko joku kertoa minulle, miksi tässä olen tulostus i plus 1 ja en? 833 00:37:51,171 --> 00:37:52,920 Se on eräänlainen temppu kysymys, ei oikeastaan. 834 00:37:52,920 --> 00:37:56,020 Se ei varsinaisesti fyysisesti vaikuttaa käynnissä koodin. 835 00:37:56,020 --> 00:37:56,520 Joo. 836 00:37:56,520 --> 00:37:57,909 >> Yleisö: [äänetön] 0? 837 00:37:57,909 --> 00:37:58,950 ANDI Peng: Joo, täsmälleen. 838 00:37:58,950 --> 00:38:02,620 Se on vähän hankala sanoa, hei, olet 0. opiskelija tässä luokassa. 839 00:38:02,620 --> 00:38:03,780 Se on vähän outo. 840 00:38:03,780 --> 00:38:08,340 Joten meille, ihmisinä, oikein pidä ajatella, kuinka tietokoneet ajatella. 841 00:38:08,340 --> 00:38:10,930 Joten vaikka tietokone, se on tallentamalla arvot 842 00:38:10,930 --> 00:38:13,310 in 0-th indeksi, kun olemme ihmiset, emme oikeastaan 843 00:38:13,310 --> 00:38:15,520 Viittaan itsemme nolla. 844 00:38:15,520 --> 00:38:18,119 Joten kun olen vain tulostaa että, Aion tulostaa ja lisätä 845 00:38:18,119 --> 00:38:19,410 1 vain selvyyden vuoksi. 846 00:38:19,410 --> 00:38:22,447 Joten kun tulostan, aion olla voi tulostaa opiskelijat 1 kautta 18. 847 00:38:22,447 --> 00:38:24,530 Se ei oikeastaan ​​vaikuta käynnissä koodi 848 00:38:24,530 --> 00:38:27,110 millään tavalla, miten voin tulostaa. 849 00:38:27,110 --> 00:38:30,380 >> Mutta ole varovainen, kun olet todella päästä jono. 850 00:38:30,380 --> 00:38:32,780 Kun näet tulokset I, huomaa täällä Olen oikeastaan 851 00:38:32,780 --> 00:38:38,200 päästä 0th indeksi ja ei 1 plus 0-- tai 1 plus 1, 852 00:38:38,200 --> 00:38:45,530 tässä tapauksessa indeksi niin että se on todella selvä. 853 00:38:45,530 --> 00:38:48,870 On jokainen sellainen OK miten tämä on käynnissä kautta 854 00:38:48,870 --> 00:38:51,470 ja jokaisen indeksi olen laskemisesta arvo array 855 00:38:51,470 --> 00:38:55,340 ja luoda array 18 numeroa että käyttäjä on menossa panos? 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 Viileä. 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 Siirrymme nyt jotain, ihan merkitystä tämän osainen sarja samoin. 862 00:39:12,220 --> 00:39:15,020 Tiedän luento, David-- pahoillani, sinulla oli kysymys? 863 00:39:15,020 --> 00:39:16,840 >> Yleisö: Voitko suurentaa sen? 864 00:39:16,840 --> 00:39:18,080 >> ANDI Peng: Joo, niin olen yrittänyt. 865 00:39:18,080 --> 00:39:18,788 Mutta en tiedä. 866 00:39:18,788 --> 00:39:21,437 Jostain syystä tämä versio PowerPointin 867 00:39:21,437 --> 00:39:23,270 ei todellakaan ei toimi hyvin näytön. 868 00:39:23,270 --> 00:39:25,260 Joten me vain menossa pitää sen näin. 869 00:39:25,260 --> 00:39:27,280 Kaikki nämä ladataan verkosta. 870 00:39:27,280 --> 00:39:28,218 Anteeksi, kaverit. 871 00:39:28,218 --> 00:39:30,090 Joo. 872 00:39:30,090 --> 00:39:30,980 OK. 873 00:39:30,980 --> 00:39:35,530 >> Jotta voimme myös olla jouset. 874 00:39:35,530 --> 00:39:39,320 Joten jos te todella notice-- I tietää Rob meni tänä vuonna että luento 875 00:39:39,320 --> 00:39:43,652 että hän did-- merkkijono on todella vain joukko merkkejä, 876 00:39:43,652 --> 00:39:44,860 jos ajattelee sitä, eikö? 877 00:39:44,860 --> 00:39:47,500 Merkkijono on nimi tai lause tai sana, eikö? 878 00:39:47,500 --> 00:39:52,975 >> Jos olisin luoda merkkijono nimeltä Andi-- vain nimeni,-N-D-I. 879 00:39:52,975 --> 00:39:55,460 Luuletko, että vain yksi muuttuja. 880 00:39:55,460 --> 00:39:58,630 Mutta todellisuudessa, se on eriteltynä osaksi vain joukko merkkiä. 881 00:39:58,630 --> 00:40:01,910 Joten se sai luonnetta talletettu taulukkoon arvo. 882 00:40:01,910 --> 00:40:05,420 Se sai luonnetta n tallennettu Toinen indeksi ja niin edelleen ja niin edelleen. 883 00:40:05,420 --> 00:40:08,660 >> Joten siten, me todella on tällainen 884 00:40:08,660 --> 00:40:10,970 rakenteen asetettu paikka meidän jousille. 885 00:40:10,970 --> 00:40:14,660 Joten tässä, jos olisin syöttää sana "syö" - niin merkkijono sana vastaa 886 00:40:14,660 --> 00:40:15,540 saada merkkijono. 887 00:40:15,540 --> 00:40:19,260 Jos minun pitäisi syöttää sanan "syödä", että on fyysisesti niin, että minun tietokone 888 00:40:19,260 --> 00:40:21,870 on tallentamiseen että merkkijono mieleeni. 889 00:40:21,870 --> 00:40:27,140 >> Ja jos halusin juosta läpi ja tulostaa että out-- niin osaksi i 890 00:40:27,140 --> 00:40:30,890 on nolla, muista, luento, me peitetty jotain kutsutaan strlen, 891 00:40:30,890 --> 00:40:32,990 tai merkkijonon pituus. 892 00:40:32,990 --> 00:40:36,520 Koska en itse tietää kuinka suuri joukko on 893 00:40:36,520 --> 00:40:38,210 riippumatta käyttäjän inputting-- 894 00:40:38,210 --> 00:40:40,370 >> Esimerkiksi minä syötetään sana "syö", ja tiedän 895 00:40:40,370 --> 00:40:41,870 se on kolme merkkiä, eikö? 896 00:40:41,870 --> 00:40:44,700 Niin voisin laittaa kolme siellä ja kaikki on hyvin. 897 00:40:44,700 --> 00:40:49,290 Mutta jos käyttäjä syöttää jotain se on eri määrä arvoja, 898 00:40:49,290 --> 00:40:52,760 olet menossa ei voi todella tietää, että kun ohjelmoida koodin. 899 00:40:52,760 --> 00:40:56,040 >> Niin että hoidamme testitapauksia kuin että on, että meillä on jotain 900 00:40:56,040 --> 00:41:00,070 nimeltään strlen, joka on vain funktio joka kertoo, kuinka kauan merkkijono on. 901 00:41:00,070 --> 00:41:02,080 Joten strlen sanan. 902 00:41:02,080 --> 00:41:03,470 Sanani on syödä. 903 00:41:03,470 --> 00:41:05,990 n on strlen sanan. 904 00:41:05,990 --> 00:41:08,930 Voiko joku kertoa minulle, mitä se arvo todella on oikeassa? 905 00:41:08,930 --> 00:41:12,550 Mitä n edustavat oikea nyt, tässä esimerkissä, jos olisin syödä? 906 00:41:12,550 --> 00:41:13,530 >> Yleisö: 3. 907 00:41:13,530 --> 00:41:14,520 >> ANDI Peng: 3, tarkalleen. 908 00:41:14,520 --> 00:41:18,820 Joten meillä on int i vastaa nolla, n on 3, olennaisesti. 909 00:41:18,820 --> 00:41:22,355 Ja i on menossa ajaa kunnes se on alle 3i ++. 910 00:41:22,355 --> 00:41:24,980 Ja se tulee olennaisesti mennä läpi ja tehdä sama asia. 911 00:41:24,980 --> 00:41:26,979 Se tulee tulostaa jokainen arvo ja antaa sinulle 912 00:41:26,979 --> 00:41:29,700 E--T. Se on vain ilmaiseva eri tapa kirjoittaa se. 913 00:41:29,700 --> 00:41:31,170 Tämä tulee olemaan erittäin hyödyllistä. 914 00:41:31,170 --> 00:41:31,670 Joo. 915 00:41:31,670 --> 00:41:35,174 Yleisö: Mikä edut laskemisesta n on strlen sanan sisällä että 916 00:41:35,174 --> 00:41:36,894 silmukan [äänetön]? 917 00:41:36,894 --> 00:41:37,560 ANDI Peng: Joo. 918 00:41:37,560 --> 00:41:44,880 Joten jos olisin to-- sanoa, esimerkiksi, jos tekisin niin ja sitten 919 00:41:44,880 --> 00:41:51,935 do-- oop--, että minun koodi, se todella tekee kuin sama asia. 920 00:41:51,935 --> 00:41:55,060 Kuitenkin, että David selitti se aikana luento, jos joku teistä kaverit 921 00:41:55,060 --> 00:41:57,854 muistaa, oli että, kuten ihmiset, kuten ohjelmoijat, 922 00:41:57,854 --> 00:42:00,270 me todella yrittää ohjelmoida meidän koodi niin, että tietokone on 923 00:42:00,270 --> 00:42:04,070 työskennellä mahdollisimman pieni, niin että koodi on hyvin tehokas. 924 00:42:04,070 --> 00:42:06,850 >> Joten jos minulla oli, että siellä, mitä tapahtuisi läpi minun silmukka 925 00:42:06,850 --> 00:42:10,790 on että olin ensin ilmoitettava muuttuja nimeltä i tulee olemaan 0. 926 00:42:10,790 --> 00:42:13,350 Aion tarkistaa, OH, mikä on strlen sanan? 927 00:42:13,350 --> 00:42:15,000 Voi, strlen on 3. 928 00:42:15,000 --> 00:42:16,191 Joten on i alle kolme? 929 00:42:16,191 --> 00:42:16,690 Kyllä se on. 930 00:42:16,690 --> 00:42:17,870 Aion ajaa. 931 00:42:17,870 --> 00:42:21,130 >> Ja sitten toisen kerran takaisin noin silmukka, aion kasvattaa i. 932 00:42:21,130 --> 00:42:22,550 i tulee olemaan yksi. 933 00:42:22,550 --> 00:42:25,600 Ja i on menossa tarkistaa, OH, mutta mitä strlen sanan? 934 00:42:25,600 --> 00:42:26,839 Voi, se on kolme. 935 00:42:26,839 --> 00:42:29,880 Ja ei, jotka näyttävät sellainen tuhlausta, aina käyttää silmukan läpi, 936 00:42:29,880 --> 00:42:33,340 on tarkkailun toiminnon vaikka strlen sanan 937 00:42:33,340 --> 00:42:35,490 ei koskaan todella muuttuu? 938 00:42:35,490 --> 00:42:38,590 >> Joten se lisätehoa tietokonetta. 939 00:42:38,590 --> 00:42:42,180 Kun alkaa puhua asioista jotka ovat miljardeja ja miljardeja 940 00:42:42,180 --> 00:42:44,431 ja miljardeja paikkoja pitkä, kuvitella tietokoneesi 941 00:42:44,431 --> 00:42:47,430 ottaa fyysisesti käydä läpi ja katso kaikki tuon joka kerta. 942 00:42:47,430 --> 00:42:53,170 Siksi, tehdä vain vuoksi tehokkuuden, 943 00:42:53,170 --> 00:42:57,620 meillä on tapana vain tehdä tämän, koska tällä tavalla olemme vain 944 00:42:57,620 --> 00:42:59,850 kutsut funktiota kerran alussa, 945 00:42:59,850 --> 00:43:01,766 ja että joka kerta se menee läpi se menee 946 00:43:01,766 --> 00:43:03,789 Tallenna arvo 3 siellä, että et 947 00:43:03,789 --> 00:43:05,330 täytyy jatkuvasti tarkistaa joka kerta. 948 00:43:05,330 --> 00:43:05,743 Joo. 949 00:43:05,743 --> 00:43:06,409 >> Yleisö: Anteeksi. 950 00:43:06,409 --> 00:43:09,070 Vain [äänetön]. 951 00:43:09,070 --> 00:43:13,985 Voisitteko tehdä int n on strlen ja laittaa että edellä ulkopuolella silmukan 952 00:43:13,985 --> 00:43:15,364 yhtä hyvin? 953 00:43:15,364 --> 00:43:16,030 ANDI Peng: Joo. 954 00:43:16,030 --> 00:43:17,100 Voisit tehdä, ehdottomasti. 955 00:43:17,100 --> 00:43:19,970 Siksi meidän on se tässä koska tie silmukka töitä 956 00:43:19,970 --> 00:43:23,500 on, että sitä kutsutaan paikallinen muuttuja siinä mielessä 957 00:43:23,500 --> 00:43:26,150 että kaikki olet luo sisällä silmukan 958 00:43:26,150 --> 00:43:27,890 on olemassa vain sisällä varten silmukan. 959 00:43:27,890 --> 00:43:31,530 >> Joten muuttujaa i vain olemassa näissä suluissa. 960 00:43:31,530 --> 00:43:35,260 Ja tässä muuttujat n myös on olemassa vain niissä suluissa. 961 00:43:35,260 --> 00:43:39,350 Joten jos olisit käyttää strlen of sana useita kertoja alas alla, 962 00:43:39,350 --> 00:43:42,230 ehdottomasti paras tapa tehdä se olisi julistaa sen alkuun 963 00:43:42,230 --> 00:43:43,563 joten sinun ei tarvitse tehdä sitä kerran. 964 00:43:43,563 --> 00:43:45,420 Joo. 965 00:43:45,420 --> 00:43:47,670 Yleisö: Miksi teillä on uudelle viivalle prosenttia 966 00:43:47,670 --> 00:43:51,300 nähdä, jos haluat laittaa kaikki kirjeet sen vieressä erottaa? 967 00:43:51,300 --> 00:43:54,140 >> ANDI Peng: Oh, halusin tulostaa ne kaikki pituinen. 968 00:43:54,140 --> 00:43:54,890 Sillä ei ole väliä. 969 00:43:54,890 --> 00:43:55,890 Joo, se on muotoilu. 970 00:43:55,890 --> 00:43:57,181 Se on hyvä kysymys, mutta. 971 00:43:57,181 --> 00:43:59,360 Joo, jos halusin tulostaa se kaikki vain yhdellä rivillä, 972 00:43:59,360 --> 00:44:02,731 Minulla ei olisi Dash. 973 00:44:02,731 --> 00:44:03,230 OK. 974 00:44:03,230 --> 00:44:06,880 Jokainen hyvä? 975 00:44:06,880 --> 00:44:07,500 OK. 976 00:44:07,500 --> 00:44:08,000 Viileä. 977 00:44:08,000 --> 00:44:12,080 978 00:44:12,080 --> 00:44:14,750 >> Joten mielestäni olen puhunut tarpeeksi. 979 00:44:14,750 --> 00:44:20,040 Te vuoro käydä läpi koodi ja kerro mitä on pielessä. 980 00:44:20,040 --> 00:44:21,560 Missä vika? 981 00:44:21,560 --> 00:44:26,920 Joten kuten näette, olen julistanut uusi joukko tyyppiä string nimeltä luokka. 982 00:44:26,920 --> 00:44:30,220 Ja olen syötetty Sam, Jess, ja Kim siihen. 983 00:44:30,220 --> 00:44:33,400 Ja olen yrittänyt tulostaa kaikki taulukon alkiot. 984 00:44:33,400 --> 00:44:36,796 Voiko joku kertoa minulle, miksi tämä aikoo antaa minulle ongelmia? 985 00:44:36,796 --> 00:44:39,320 Annan te 10 sekuntia ajatella tätä. 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 Joo? 989 00:44:57,118 --> 00:45:01,972 >> Yleisö: Onko vasen keskus yhtä suuri kuin 3 tai [äänetön]? 990 00:45:01,972 --> 00:45:02,680 ANDI Peng: Oikea. 991 00:45:02,680 --> 00:45:06,784 Niin kuinka monta kertaa tämä todella menossa läpi tämän silmukan? 992 00:45:06,784 --> 00:45:07,620 >> Yleisö: Neljä. 993 00:45:07,620 --> 00:45:08,070 >> ANDI Peng: Aivan. 994 00:45:08,070 --> 00:45:09,445 Se tulee läpi neljä kertaa. 995 00:45:09,445 --> 00:45:12,250 Se tulee käydä läpi 0, 1, 2, ja 3, 996 00:45:12,250 --> 00:45:15,200 koska niiden elementti on i on pienempi tai yhtä suuri kuin 3. 997 00:45:15,200 --> 00:45:16,960 Se ei aio lopettaa, kun se on 2. 998 00:45:16,960 --> 00:45:18,800 Se tulee säilyttää käynnissä kunnes se osuu 3. 999 00:45:18,800 --> 00:45:21,720 Ja kuten tiedämme, on vain kolme elementit meidän todellinen array. 1000 00:45:21,720 --> 00:45:27,260 >> Jos yritämme päästä neljänteen elementti tai indeksi 3, 1001 00:45:27,260 --> 00:45:30,357 aiot lyödä jonnekin muisti, johon ei ole olemassa. 1002 00:45:30,357 --> 00:45:31,690 Sitä kutsutaan null terminaattori. 1003 00:45:31,690 --> 00:45:32,856 Mikään tulee olemaan siellä. 1004 00:45:32,856 --> 00:45:35,324 Tietokoneessa ei aio erittäin onnellinen kanssasi. 1005 00:45:35,324 --> 00:45:36,170 Joo. 1006 00:45:36,170 --> 00:45:38,430 Onko kellään kysymyksiä miksi se oli tapahtumassa? 1007 00:45:38,430 --> 00:45:39,679 Se on yhteinen alue välttämiseksi. 1008 00:45:39,679 --> 00:45:40,712 Joo. 1009 00:45:40,712 --> 00:45:45,777 >> Yleisö: Eikö ensimmäinen slide on myös merkkijono 2? 1010 00:45:45,777 --> 00:45:46,360 ANDI Peng: Ei. 1011 00:45:46,360 --> 00:45:49,610 Joten olennaisesti, kun teet array, 1012 00:45:49,610 --> 00:45:51,540 että kiinnike oikea siellä, että number-- kaikki 1013 00:45:51,540 --> 00:45:53,480 se kertoo sinulle, miten monia elementtejä olen. 1014 00:45:53,480 --> 00:45:55,840 Se ei ole oikeastaan ​​kertoo minulle indeksit mitään. 1015 00:45:55,840 --> 00:45:58,760 Joten tässä tapauksessa, tiedän haluan kirjoittamaan kolme paikkaa, 1016 00:45:58,760 --> 00:46:02,690 kolme fyysinen paikkoja Pidä mitä haluan pitää. 1017 00:46:02,690 --> 00:46:04,510 Joten siksi numero kolme on siellä. 1018 00:46:04,510 --> 00:46:06,560 Kuitenkin, jos halusin todella käyttää sitä, 1019 00:46:06,560 --> 00:46:11,220 jos halusin sanoa, printf luokka kiinnike numero, sitten 1020 00:46:11,220 --> 00:46:14,560 aiot tosiasiallisesti fyysinen indeksi siellä. 1021 00:46:14,560 --> 00:46:16,330 Joo, hyvä kysymys. 1022 00:46:16,330 --> 00:46:20,065 >> Yleisö: Niin on fyysinen indeksi pitäisi olla [äänetön]? 1023 00:46:20,065 --> 00:46:20,940 ANDI Peng: Olen pahoillani. 1024 00:46:20,940 --> 00:46:21,500 Voitko puhua vähän? 1025 00:46:21,500 --> 00:46:24,208 >> Yleisö: Niin on fyysinen indeksi [Äänetön] kunkin laatikot? 1026 00:46:24,208 --> 00:46:25,260 [Äänetön]? 1027 00:46:25,260 --> 00:46:26,040 >> ANDI Peng: Joo. 1028 00:46:26,040 --> 00:46:28,970 Joten aion palata täällä. 1029 00:46:28,970 --> 00:46:31,120 Ajattele täällä. 1030 00:46:31,120 --> 00:46:32,820 Meillä on joukko koko 3. 1031 00:46:32,820 --> 00:46:35,540 On kolme paikkaa, kuten, fyysinen paikanvaraajia täällä. 1032 00:46:35,540 --> 00:46:37,620 Mutta he nimeltään 0, 1, ja 2. 1033 00:46:37,620 --> 00:46:40,700 Joten jos halusin käyttää niitä, että minä käyttää niitä 1034 00:46:40,700 --> 00:46:43,480 on printf riippumatta halusin tänne. 1035 00:46:43,480 --> 00:46:45,485 Sinulla olisi tulostaa pois sen nimen, 1036 00:46:45,485 --> 00:46:47,610 koska silloin tietokone tietää, oh, minun täytyy katsoa 1037 00:46:47,610 --> 00:46:51,391 tässä matriisia 0th indeksin. 1038 00:46:51,391 --> 00:46:51,890 Joo. 1039 00:46:51,890 --> 00:46:53,306 Mutta koko se ei muutu. 1040 00:46:53,306 --> 00:46:55,492 Koko on 3, riippumatta miten voit merkitä ne. 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 Jokainen hyvä? 1044 00:47:01,387 --> 00:47:02,970 Yleisö: Joten joka kerta kun [äänetön]? 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 Joten tässä tapauksessa, emme oikeastaan mennä sen nyt aikana. 1048 00:47:13,270 --> 00:47:16,760 Mutta tiedän, että string-- kuin olisin sanoi ennen, merkkijono on olennaisesti 1049 00:47:16,760 --> 00:47:18,440 joukko merkkiä. 1050 00:47:18,440 --> 00:47:21,430 Joten jos Luon array jouset, olen sellainen 1051 00:47:21,430 --> 00:47:24,430 on joukko array merkkien, eikö? 1052 00:47:24,430 --> 00:47:27,720 >> Joten tässä tapauksessa, koska olen on joukko jouset, 1053 00:47:27,720 --> 00:47:31,340 jos olit syöttää todella pitkä sana, että vielä vie vain yhtä tilaa, 1054 00:47:31,340 --> 00:47:33,230 koska se on yksi merkkijono. 1055 00:47:33,230 --> 00:47:37,492 Mutta jos olit ajatella merkkiä, joka array, 1056 00:47:37,492 --> 00:47:40,450 niin se aloittamisesta paljon enemmän merkkiä kuin mikä tahansa Toisin sanoen 1057 00:47:40,450 --> 00:47:41,372 ovat. 1058 00:47:41,372 --> 00:47:42,830 Ei todella tärkeää juuri nyt. 1059 00:47:42,830 --> 00:47:44,921 Mutta se on vain yleisesti miten se toimii. 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 Joten tämä on jotain annan sinun tehdä paljon aikana lukukauden. 1063 00:47:55,840 --> 00:47:57,500 Minun täytyy levätä ääneni. 1064 00:47:57,500 --> 00:47:59,530 Te täytyy edistää itseänne. 1065 00:47:59,530 --> 00:48:02,300 Monet teistä luultavasti täytyy nukkua nyt. 1066 00:48:02,300 --> 00:48:05,960 Olen syöttäminen satunnainen ongelmia jossa luokkana tai olet 1067 00:48:05,960 --> 00:48:09,480 kumppanin kanssa vieressä aiot viettää pari minuuttia keskustella 1068 00:48:09,480 --> 00:48:14,980 kuinka voisimme edetä ratkaista tai luoda ohjelma, kuten tämä. 1069 00:48:14,980 --> 00:48:17,100 >> Joten nyt, haluamme luoda program-- 1070 00:48:17,100 --> 00:48:19,560 aiomme kutsua sitä upper.c-- joka muuntaa 1071 00:48:19,560 --> 00:48:24,787 pieniä sanan yläluokan string-- isoja, sorry. 1072 00:48:24,787 --> 00:48:26,370 Sana jouset, anteeksi, on synonyymi. 1073 00:48:26,370 --> 00:48:28,370 Aion muuttaa niitä tarkoittavan samaa asiaa. 1074 00:48:28,370 --> 00:48:32,270 1075 00:48:32,270 --> 00:48:33,499 >> Joo. 1076 00:48:33,499 --> 00:48:34,540 Kestää muutaman minuutin. 1077 00:48:34,540 --> 00:48:37,130 Sen ei tarvitse olla kirjoitettu millä tahansa kielellä. 1078 00:48:37,130 --> 00:48:39,890 Vain pseudokoodilla koodi tai loogisesti kuinka olisimme edes 1079 00:48:39,890 --> 00:48:42,083 edetä tee tällaista ongelmaa. 1080 00:48:42,083 --> 00:48:42,583 Joo. 1081 00:48:42,583 --> 00:48:49,881 1082 00:48:49,881 --> 00:48:52,780 >> [SIDE CONVERSATION] 1083 00:48:52,780 --> 00:49:18,680 1084 00:49:18,680 --> 00:49:22,130 >> Olen myös huomannut, että te can-- Olen sellainen nähdä jo ohjelman. 1085 00:49:22,130 --> 00:49:24,600 Luulen puute juontaja tila on ongelma. 1086 00:49:24,600 --> 00:49:27,410 Mutta se on OK. 1087 00:49:27,410 --> 00:49:30,410 >> [SIDE CONVERSATION] 1088 00:49:30,410 --> 00:50:03,589 1089 00:50:03,589 --> 00:50:04,380 Joo, kiitos, kaverit. 1090 00:50:04,380 --> 00:50:05,400 Tule saada karkkia. 1091 00:50:05,400 --> 00:50:06,372 Tule saada karkkia. 1092 00:50:06,372 --> 00:50:07,698 >> Yleisö: Kyllä! 1093 00:50:07,698 --> 00:50:09,958 >> [SIDE CONVERSATION] 1094 00:50:09,958 --> 00:50:16,101 1095 00:50:16,101 --> 00:50:18,100 ANDI Peng: Myös joo, Aloitan heittää karkkia 1096 00:50:18,100 --> 00:50:20,280 ihmisiä, jotka eivät vastaa kysymyksiin. 1097 00:50:20,280 --> 00:50:22,260 Joten kannattaa kaikki vastauksen kysymyksiin. 1098 00:50:22,260 --> 00:50:24,895 Tai kai ihmiset do kysymyksiin. 1099 00:50:24,895 --> 00:50:26,070 Joo, päinvastoin. 1100 00:50:26,070 --> 00:50:28,570 >> [SIDE CONVERSATION] 1101 00:50:28,570 --> 00:51:13,399 1102 00:51:13,399 --> 00:51:14,274 Yleisö: [äänetön] 1103 00:51:14,274 --> 00:51:17,300 1104 00:51:17,300 --> 00:51:18,340 >> ANDI Peng: Joo. 1105 00:51:18,340 --> 00:51:19,340 Joo. 1106 00:51:19,340 --> 00:51:22,840 >> [SIDE CONVERSATION] 1107 00:51:22,840 --> 00:51:40,700 1108 00:51:40,700 --> 00:51:41,590 >> Selvä, kaverit. 1109 00:51:41,590 --> 00:51:44,731 Ota, kuten 10 sekuntia. 1110 00:51:44,731 --> 00:51:48,210 >> [SIDE CONVERSATION] 1111 00:51:48,210 --> 00:52:10,600 1112 00:52:10,600 --> 00:52:11,750 >> OK, kaverit. 1113 00:52:11,750 --> 00:52:14,920 Joten ennen kuin alkaa yrittää todella fyysisesti kirjoittaa koodia, 1114 00:52:14,920 --> 00:52:20,650 hyvä tapa kehittää on, että haluamme ensin sellainen syy 1115 00:52:20,650 --> 00:52:22,737 out loogisesti miten me tekisimme sen. 1116 00:52:22,737 --> 00:52:24,570 Haluat varmistaa, ennen kuin fyysisesti 1117 00:52:24,570 --> 00:52:27,210 alkaa yrittää koodata Mario, että teet 1118 00:52:27,210 --> 00:52:28,870 Varmista, että sinulla on pseudokoodilla. 1119 00:52:28,870 --> 00:52:31,235 Joka vie sinut läpi mitä sinun täytyy luoda niin 1120 00:52:31,235 --> 00:52:33,360 että, kun fyysisesti kirjoita ohjelma myöhemmin, 1121 00:52:33,360 --> 00:52:36,640 olet parempi saada kiinni virheitä koodissa ja tuollaista. 1122 00:52:36,640 --> 00:52:40,460 >> Joten aiomme vain alkaa by-- Englanti, pseudokoodilla, 1123 00:52:40,460 --> 00:52:43,320 ei kukaan halua antaa minulle yleinen selitys 1124 00:52:43,320 --> 00:52:46,250 kuinka voisimme edetä tässä? 1125 00:52:46,250 --> 00:52:48,102 Joo. 1126 00:52:48,102 --> 00:52:49,664 >> Yleisö: [äänetön]. 1127 00:52:49,664 --> 00:52:50,830 ANDI Peng: Toki, ei hätää. 1128 00:52:50,830 --> 00:52:57,233 Yleisö: Voitko pyytää sitä tai pyytää joku saada merkkijono 1-- joo, merkkijono, 1129 00:52:57,233 --> 00:52:58,160 ja sitten-- 1130 00:52:58,160 --> 00:52:59,826 >> ANDI Peng: Kyllä, joten tämä on hyvä alku. 1131 00:52:59,826 --> 00:53:01,972 Aloitan kirjoittaa, anteeksi, kun puhut. 1132 00:53:01,972 --> 00:53:02,471 So-- 1133 00:53:02,471 --> 00:53:05,698 >> Yleisö: --The pieniä numerot ovat korkeammat, eikö? 1134 00:53:05,698 --> 00:53:08,519 Tai pienet kirjaimet on suuri määrä? 1135 00:53:08,519 --> 00:53:09,310 ANDI Peng: Aivan. 1136 00:53:09,310 --> 00:53:16,156 Yleisö: Niin me vähennä 32 mistä tahansa [kuultavissa]. 1137 00:53:16,156 --> 00:53:28,600 1138 00:53:28,600 --> 00:53:29,870 >> ANDI Peng: Suuri. 1139 00:53:29,870 --> 00:53:35,020 Joten meillä sellainen on yleinen tunne miten toimia tästä ongelmasta. 1140 00:53:35,020 --> 00:53:40,060 Tietäen, että olemme tavallaan oppineet fyysinen että jouset 1141 00:53:40,060 --> 00:53:43,320 tallennetaan muistiin, Mitä jo 1142 00:53:43,320 --> 00:53:45,920 tietää, että olet menossa luultavasti täytyy kirjoittaa koodissa 1143 00:53:45,920 --> 00:53:48,288 jotta liikkua merkkijono? 1144 00:53:48,288 --> 00:53:49,259 >> Yleisö: For silmukka. 1145 00:53:49,259 --> 00:53:50,550 ANDI Peng: silmukka, tarkalleen. 1146 00:53:50,550 --> 00:53:56,540 1147 00:53:56,540 --> 00:53:57,220 Suuri. 1148 00:53:57,220 --> 00:54:00,539 Joten meillä sellainen on yleinen pseudokoodilla kirjoitettu 1149 00:54:00,539 --> 00:54:02,330 sellainen antaa sinä toteaa siitä, miten 1150 00:54:02,330 --> 00:54:03,900 olisi liikkua ongelman ratkaisemiseksi. 1151 00:54:03,900 --> 00:54:06,150 Nyt sinulla on tämä, te voi viitata sen myöhempää 1152 00:54:06,150 --> 00:54:08,233 kun yrität todella kirjoittaa koodia. 1153 00:54:08,233 --> 00:54:10,240 Jotta voimme todella mennä täällä. 1154 00:54:10,240 --> 00:54:25,130 Ja minulla toiminto nimeltään upper.c-- siellä se is-- vain tyhjä arkki 1155 00:54:25,130 --> 00:54:28,510 nyt, että te aiotte auttaa minua selvittää, miten kirjoittaa 1156 00:54:28,510 --> 00:54:30,430 tätä linjaa code-- ei riviä koodia. 1157 00:54:30,430 --> 00:54:32,890 Se tulee olemaan useita riviä koodia. 1158 00:54:32,890 --> 00:54:35,710 >> Käynnistettäessä minkäänlaista tyhjä PSET, mitä 1159 00:54:35,710 --> 00:54:37,418 ensimmäinen asia tarvitsen muistaa tehdä? 1160 00:54:37,418 --> 00:54:39,290 >> Yleisö: [äänetön]. 1161 00:54:39,290 --> 00:54:41,000 >> ANDI Peng: Suuri Jep. 1162 00:54:41,000 --> 00:54:41,500 Sisällytä. 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 Usein tämä on yksi useimmat helppo virheistä ihmiset 1166 00:54:49,640 --> 00:54:51,598 tekee kun he kirjallisesti, on, että ne will 1167 00:54:51,598 --> 00:54:54,180 unohda tärkeä kirjasto he tarvitsevat. 1168 00:54:54,180 --> 00:54:57,689 Joten jos se on virka ja olet kuin, En tiedä, miksi minun koodi ei toimi. 1169 00:54:57,689 --> 00:54:59,230 Voitteko kertoa minulle, miksi se ei toimi? 1170 00:54:59,230 --> 00:55:00,730 Aiomme sanoa sinä # include? 1171 00:55:00,730 --> 00:55:02,520 Sinun pitäisi #include sitä. 1172 00:55:02,520 --> 00:55:03,270 OK. 1173 00:55:03,270 --> 00:55:07,230 >> Joten meillä vakio I / O täällä. 1174 00:55:07,230 --> 00:55:10,740 Onko se vain kirjasto olemme menossa on täällä? 1175 00:55:10,740 --> 00:55:12,681 Mitä muuta me aiomme tehdä? 1176 00:55:12,681 --> 00:55:13,180 Anteeksi. 1177 00:55:13,180 --> 00:55:14,562 Joku vain huutaa se ulos? 1178 00:55:14,562 --> 00:55:15,666 >> Yleisö: [äänetön]. 1179 00:55:15,666 --> 00:55:16,666 ANDI Peng: Niin sitä pitää. 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 Ja miten voin mennä noin alkaa minkäänlaista toiminnon, minkäänlaista päätehtävä 1183 00:55:26,070 --> 00:55:28,760 meidän ohjelma? 1184 00:55:28,760 --> 00:55:30,020 Int main. 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 Mitä voin laittaa sisälle täällä? 1188 00:55:35,970 --> 00:55:37,640 Mikä on ensimmäinen asia, jonka haluat tehdä? 1189 00:55:37,640 --> 00:55:39,910 Jos haluamme saada merkkijonon käyttäjä, 1190 00:55:39,910 --> 00:55:43,870 mitä aiomme olla tehdä tämän ensimmäisen rivin? 1191 00:55:43,870 --> 00:55:46,120 Anteeksi, te vain tuntea vapaasti puhua ja ääneen. 1192 00:55:46,120 --> 00:55:47,123 Vain huutaa riippumatta. 1193 00:55:47,123 --> 00:55:48,772 >> Yleisö: Pyydä käyttäjää? 1194 00:55:48,772 --> 00:55:49,980 ANDI Peng: Miten teemme sen? 1195 00:55:49,980 --> 00:55:51,873 Ask-- olen menossa kirjoittaa "pyytää käyttäjää"? 1196 00:55:51,873 --> 00:55:52,600 >> Yleisö: 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 Mitä haluan printf? 1200 00:55:57,372 --> 00:55:58,776 >> Yleisö: Kirjoita jotain. 1201 00:55:58,776 --> 00:56:02,760 1202 00:56:02,760 --> 00:56:03,840 >> ANDI Peng: Näinkö? 1203 00:56:03,840 --> 00:56:05,430 Kaverit, teeskennellä kuin olen tietokone. 1204 00:56:05,430 --> 00:56:08,475 Fyysisesti kertoa minulle joka askeleella että minun täytyy kirjoittaa täällä? 1205 00:56:08,475 --> 00:56:09,600 Olenko tehnyt jotain väärin? 1206 00:56:09,600 --> 00:56:10,743 Pitäisikö minun kirjoittanut jotain? 1207 00:56:10,743 --> 00:56:11,690 >> Yleisö: Tarvitset lainausmerkkejä. 1208 00:56:11,690 --> 00:56:12,380 >> ANDI Peng: Tarvitsen lainausmerkit? 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 >> Yleisö: Ja sitten uusi rivi. 1213 00:56:17,698 --> 00:56:21,434 1214 00:56:21,434 --> 00:56:22,465 Puolipisteellä. 1215 00:56:22,465 --> 00:56:23,340 ANDI Peng: Semicolon? 1216 00:56:23,340 --> 00:56:24,060 OK. 1217 00:56:24,060 --> 00:56:24,560 Hyvä. 1218 00:56:24,560 --> 00:56:27,060 >> Yleisö: Ja ehkä määritä että haluat sen pienillä kirjaimilla? 1219 00:56:27,060 --> 00:56:30,120 1220 00:56:30,120 --> 00:56:31,415 >> ANDI Peng: Suuri. 1221 00:56:31,415 --> 00:56:33,540 Te nauravat minulle unohtamatta laittaa puolipiste. 1222 00:56:33,540 --> 00:56:36,350 Takaan jonnekin aikana tämän luokan, 1223 00:56:36,350 --> 00:56:38,260 et unohda laittaa puolipiste, ja se 1224 00:56:38,260 --> 00:56:41,116 vie kolme tuntia selvittää miksi koodi ei toimi. 1225 00:56:41,116 --> 00:56:42,240 Se on tapahtunut meille kaikille. 1226 00:56:42,240 --> 00:56:43,950 Se luultavasti tapahtua sinulle. 1227 00:56:43,950 --> 00:56:46,352 Saada hyvä tapa käyttää puolipistettä. 1228 00:56:46,352 --> 00:56:46,852 OK. 1229 00:56:46,852 --> 00:56:49,010 >> Yleisö: Haluatko tehdä kenoviiva sen? 1230 00:56:49,010 --> 00:56:50,398 >> ANDI Peng: Toki. 1231 00:56:50,398 --> 00:56:51,856 Haluatko tehdä kenoviiva sen? 1232 00:56:51,856 --> 00:56:53,020 >> Yleisö: Kyllä. 1233 00:56:53,020 --> 00:56:54,330 >> ANDI Peng: Suuri. 1234 00:56:54,330 --> 00:56:54,830 OK. 1235 00:56:54,830 --> 00:56:57,872 Mitä teen seuraavaksi? 1236 00:56:57,872 --> 00:56:58,964 >> Yleisö: Get merkkijono. 1237 00:56:58,964 --> 00:56:59,880 ANDI Peng: Get merkkijono. 1238 00:56:59,880 --> 00:57:03,080 1239 00:57:03,080 --> 00:57:03,830 Joten mitä kirjoitan? 1240 00:57:03,830 --> 00:57:04,233 Joku? 1241 00:57:04,233 --> 00:57:05,040 >> Yleisö: String s. 1242 00:57:05,040 --> 00:57:05,873 >> ANDI Peng: String s. 1243 00:57:05,873 --> 00:57:07,251 Yleisö: GetString. 1244 00:57:07,251 --> 00:57:09,000 ANDI Peng: Joku, voitteko kertoa minulle, missä 1245 00:57:09,000 --> 00:57:12,000 tämä toiminto GetString on peräisin? 1246 00:57:12,000 --> 00:57:13,660 >> Yleisö: string.h. 1247 00:57:13,660 --> 00:57:15,256 >> ANDI Peng: string.h? 1248 00:57:15,256 --> 00:57:16,715 Luuletko se on peräisin string.h? 1249 00:57:16,715 --> 00:57:17,830 >> Yleisö: [äänetön]. 1250 00:57:17,830 --> 00:57:18,830 >> ANDI Peng: Niin sitä pitää. 1251 00:57:18,830 --> 00:57:21,280 Se on peräisin CS50.h. 1252 00:57:21,280 --> 00:57:24,530 Jos olet aina sekava missä kirjasto tiedosto on tai header-tiedosto on, 1253 00:57:24,530 --> 00:57:28,450 google kirjaimellisesti string.h, ja minä kerron sinulle 1254 00:57:28,450 --> 00:57:30,450 mitkä ovat kaikki toiminnot jotka ovat string.h. 1255 00:57:30,450 --> 00:57:31,340 OK. 1256 00:57:31,340 --> 00:57:35,210 >> Joten nyt olen luonut merkkijono ja olen kysyy käyttäjältä siitä, 1257 00:57:35,210 --> 00:57:38,770 Olen tallentanut sen muuttujaan nimeltään s, mitä minun täytyy tehdä nyt? 1258 00:57:38,770 --> 00:57:40,652 >> Yleisö: Tarkista, jos sitä on pieniä. 1259 00:57:40,652 --> 00:57:41,360 ANDI Peng: Anteeksi? 1260 00:57:41,360 --> 00:57:42,545 Yleisö: Tarkista, jos sitä on pieniä. 1261 00:57:42,545 --> 00:57:44,045 ANDI Peng: Hyvä on, tehdään se. 1262 00:57:44,045 --> 00:57:45,857 Miten teen sen? 1263 00:57:45,857 --> 00:57:47,940 Oikeastaan ​​varten luokan juuri nyt, 1264 00:57:47,940 --> 00:57:50,330 olemme juuri menossa olettaa, että kaikki 1265 00:57:50,330 --> 00:57:52,620 että me panos on jo pienillä kirjaimilla. 1266 00:57:52,620 --> 00:57:55,430 Jos halusi tarkistaa, olisit vain lisätä ehdon 1267 00:57:55,430 --> 00:57:59,640 että tarkastetaan, että juoksi läpi jokainen ryhmän elementin 1268 00:57:59,640 --> 00:58:02,540 ja tarkastetaan, onko se välillä tiettyjä arvoja. 1269 00:58:02,540 --> 00:58:05,627 Unohdan mitä numero arvojen pieniä ovat. 1270 00:58:05,627 --> 00:58:07,210 Voit etsiä se ASCII-taulukon. 1271 00:58:07,210 --> 00:58:08,800 Mutta joo, se on todella hyvä pointti. 1272 00:58:08,800 --> 00:58:11,758 Mutta juuri nyt, olemme juuri menossa olettaa, että kaikki jouset me tulo 1273 00:58:11,758 --> 00:58:13,130 ovat pienillä kirjaimilla. 1274 00:58:13,130 --> 00:58:13,870 OK. 1275 00:58:13,870 --> 00:58:18,069 >> Joten miten lähden siitä tämä ongelma seuraavaksi? 1276 00:58:18,069 --> 00:58:18,860 Yleisö: For silmukka. 1277 00:58:18,860 --> 00:58:19,340 ANDI Peng: For silmukka? 1278 00:58:19,340 --> 00:58:19,839 OK. 1279 00:58:19,839 --> 00:58:20,847 Kerro, mitä kirjoittaa. 1280 00:58:20,847 --> 00:58:25,230 >> Yleisö: INT i on yhtä suuri kuin 0. 1281 00:58:25,230 --> 00:58:27,230 >> ANDI Peng: OK. 1282 00:58:27,230 --> 00:58:36,350 >> Yleisö: Voi, todella, niin voit do pilkku ja tehdä n on strlen. 1283 00:58:36,350 --> 00:58:38,940 >> ANDI Peng: Niin tärkeintä mielestäni hän huomannut täällä 1284 00:58:38,940 --> 00:58:42,936 on, että meillä ei ollut sanoa int n toisen kerran teimme tämän. 1285 00:58:42,936 --> 00:58:45,060 Juuri tietää, että varten silmukka kun olet julistamisesta, 1286 00:58:45,060 --> 00:58:47,934 te itse ei tarvitse INT toisen kerran teet muuttuja. 1287 00:58:47,934 --> 00:58:51,202 Voit sanoa n strlen. 1288 00:58:51,202 --> 00:58:52,620 >> Yleisö: 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 >> Yleisö: Sitten puolipiste. 1292 00:58:58,370 --> 00:59:00,130 >> ANDI Peng: Toki. 1293 00:59:00,130 --> 00:59:04,050 >> Yleisö: Ja sitten [kuultavissa] n. 1294 00:59:04,050 --> 00:59:07,480 1295 00:59:07,480 --> 00:59:09,460 Sitten i ++. 1296 00:59:09,460 --> 00:59:11,780 >> ANDI Peng: Suuri. 1297 00:59:11,780 --> 00:59:12,280 Selvä. 1298 00:59:12,280 --> 00:59:14,690 Mitä haluamme sisällä Tämän silmukan nyt? 1299 00:59:14,690 --> 00:59:17,820 Muista, jos aiomme käydä läpi merkkijono ja ajaa läpi erilaisia, 1300 00:59:17,820 --> 00:59:19,287 haluamme tarkistaa asioita se. 1301 00:59:19,287 --> 00:59:20,370 Mitä me tarvitsemme? 1302 00:59:20,370 --> 00:59:23,070 1303 00:59:23,070 --> 00:59:26,900 Tämä on tavallaan hankala osa nyt. 1304 00:59:26,900 --> 00:59:27,960 Kellään arvaus? 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 Joten ensimmäinen, miten me jopa käyttää? 1308 00:59:37,830 --> 00:59:41,610 Kuinka me edes ensimmäinen tarkastus tai pääsyn elementti array? 1309 00:59:41,610 --> 00:59:42,920 Miten me sen teemme? 1310 00:59:42,920 --> 00:59:47,120 Mikä merkintätapa käytämme tehdä näin? 1311 00:59:47,120 --> 00:59:50,920 Mikä nimi tämän array nimeltään? 1312 00:59:50,920 --> 00:59:52,400 Sitä kutsutaan s, eikö? 1313 00:59:52,400 --> 00:59:54,850 >> Muista, mikä tahansa merkkijono on aina jono. 1314 00:59:54,850 --> 00:59:58,210 Joten s kiinnike i, eikö? 1315 00:59:58,210 --> 01:00:01,360 Koska se on käypä arvo tai indeksin arvo olemme tarkkailun. 1316 01:00:01,360 --> 01:00:05,156 Ja aiomme asettaa yhdenvertainen to-- haluamme pieniä arvo, eikö? 1317 01:00:05,156 --> 01:00:07,530 Haluamme kääntää että lower-- pahoillani, haluamme isoja. 1318 01:00:07,530 --> 01:00:10,014 Haluamme kääntää pieniä arvo osaksi isoja. 1319 01:00:10,014 --> 01:00:11,805 Ja niin like-- olen pahoillani, mikä on nimesi? 1320 01:00:11,805 --> 01:00:12,580 >> Yleisö: Heidi. 1321 01:00:12,580 --> 01:00:12,940 >> ANDI Peng: Anteeksi? 1322 01:00:12,940 --> 01:00:13,280 >> Yleisö: Heidi. 1323 01:00:13,280 --> 01:00:13,988 >> ANDI Peng: Heidi. 1324 01:00:13,988 --> 01:00:15,850 Kuten Heidi sanoi aluksi, olemme luultavasti 1325 01:00:15,850 --> 01:00:20,330 menossa on the-- olemme luultavasti menossa on vähentää 1326 01:00:20,330 --> 01:00:22,630 32 mistä tahansa charc että on, eikö? 1327 01:00:22,630 --> 01:00:24,680 Koska on ASCII- pöytä, ero 1328 01:00:24,680 --> 01:00:27,790 välillä pieni kirjain ja iso kirjain on 32. 1329 01:00:27,790 --> 01:00:31,290 Joten kun teemme tämän, olemme luultavasti menossa haluavat vähentää 32, eikö? 1330 01:00:31,290 --> 01:00:33,910 >> Joten aiomme tehdä s i. 1331 01:00:33,910 --> 01:00:37,590 1332 01:00:37,590 --> 01:00:41,200 Onko jokainen ymmärtää, miksi tein sen? 1333 01:00:41,200 --> 01:00:45,760 Koska juuri nyt, meidän array, Tarkistamme 0. indeksi, eikö? 1334 01:00:45,760 --> 01:00:49,190 Ja 0. indeksi merkkijono, se on ensimmäinen merkki. 1335 01:00:49,190 --> 01:00:51,820 Ja että merkki aiomme olettaa se on pieniä. 1336 01:00:51,820 --> 01:00:55,980 Jos haluamme tehdä isoja, me on vähennettävä 32 sen arvosta, 1337 01:00:55,980 --> 01:00:58,620 koska meidän ASCII pöytä, näin saamme sen 1338 01:00:58,620 --> 01:01:01,600 seuraavaan vastaavaa arvoa, joka tekee isoja. 1339 01:01:01,600 --> 01:01:03,714 Onko jokainen ymmärtää, että? 1340 01:01:03,714 --> 01:01:04,213 Joo. 1341 01:01:04,213 --> 01:01:06,530 >> Yleisö: Voisitko myös do pieniksi minus-- 1342 01:01:06,530 --> 01:01:08,080 >> ANDI Peng: Joo, niin se on todella todella hyvä. 1343 01:01:08,080 --> 01:01:10,455 Aion palata että kysymys jälkeen teemme tämän. 1344 01:01:10,455 --> 01:01:11,060 Joo. 1345 01:01:11,060 --> 01:01:13,940 Ja sitten jos haluan katso mitä tapahtuu, 1346 01:01:13,940 --> 01:01:16,180 Olen luultavasti haluat tulostaa, eikö? 1347 01:01:16,180 --> 01:01:19,930 Joku kertoa minulle, mitä Haluan tulostaa täällä. 1348 01:01:19,930 --> 01:01:29,160 >> Yleisö: printf prosenttia C kenoviiva [kuultavissa]. 1349 01:01:29,160 --> 01:01:33,570 Se arvo [äänetön] s i. 1350 01:01:33,570 --> 01:01:34,614 >> ANDI Peng: s i, pahoillani? 1351 01:01:34,614 --> 01:01:35,530 Yleisö: [äänetön]. 1352 01:01:35,530 --> 01:01:38,550 1353 01:01:38,550 --> 01:01:39,550 ANDI Peng: En tiedä. 1354 01:01:39,550 --> 01:01:40,600 Mitä mieltä olet? 1355 01:01:40,600 --> 01:01:44,016 >> Yleisö: No, minä wouldn't-- Luulen En bring-- 1356 01:01:44,016 --> 01:01:46,944 Haluan ottaa sen pois sisällä, koska [äänetön]. 1357 01:01:46,944 --> 01:01:49,726 1358 01:01:49,726 --> 01:01:51,392 ANDI Peng: Oh, olisit tehnyt sen? 1359 01:01:51,392 --> 01:01:53,867 Yleisö: Joo. 1360 01:01:53,867 --> 01:01:56,700 ANDI Peng: Jätetään se tapa se on, ja selitän miksi myöhemmin. 1361 01:01:56,700 --> 01:01:58,533 Muista, vaikka olisit on paikka haltija, 1362 01:01:58,533 --> 01:02:00,701 haluat laittaa sulkeet ympärille. 1363 01:02:00,701 --> 01:02:01,200 Selvä. 1364 01:02:01,200 --> 01:02:04,810 Joten tämän pitäisi olla kiinteä funktio tässä. 1365 01:02:04,810 --> 01:02:06,370 Katsotaanpa käyttää sitä ja katso jos se kokoaa. 1366 01:02:06,370 --> 01:02:08,750 Tee ylempi. 1367 01:02:08,750 --> 01:02:09,250 O-ou. 1368 01:02:09,250 --> 01:02:12,030 1369 01:02:12,030 --> 01:02:13,340 Tämä ei näytä kovin hyvältä. 1370 01:02:13,340 --> 01:02:14,507 Miksi näin tapahtuu? 1371 01:02:14,507 --> 01:02:17,340 Kuten minkä tahansa virheen, haluat mennä takaisin ja aloittaa ensimmäinen, 1372 01:02:17,340 --> 01:02:20,630 koska tyypillisesti yksi virhe syy paljon muita virheitä sen jälkeen. 1373 01:02:20,630 --> 01:02:26,700 Tässä näemme upper.c: 18: 25, joka kertoo minua tässä ohjelmassa nimeltä upper.c, 1374 01:02:26,700 --> 01:02:33,800 linjalla 18, virhe epäsuorasti julistamisesta kirjaston toimintoja strlen tyypin 1375 01:02:33,800 --> 01:02:36,330 unassigned-- blaa, en tiedä mitä tapahtuu sen jälkeen. 1376 01:02:36,330 --> 01:02:39,990 >> Kaikki se kertoo minulle juuri nyt että jotain on meneillään strlen. 1377 01:02:39,990 --> 01:02:43,520 Ja tietokone on hämmentynyt, koska Se on kuin, en tiedä mitä strlen on? 1378 01:02:43,520 --> 01:02:45,520 Mitä se luultavasti kertoa olet puuttuu? 1379 01:02:45,520 --> 01:02:46,490 >> Yleisö: Menetät [kuultavissa]. 1380 01:02:46,490 --> 01:02:47,630 >> ANDI Peng: Olet oikeassa. 1381 01:02:47,630 --> 01:02:49,510 Aivan. 1382 01:02:49,510 --> 01:02:52,140 Joten tämä on, jos se on tärkeää varmistaa, 1383 01:02:52,140 --> 01:02:56,970 että jokainen toiminto käytät oman koodi on ottaa oikea otsikko 1384 01:02:56,970 --> 01:02:59,660 tiedoston kirjastoon, tai muuten aiot saada paljon virheitä 1385 01:02:59,660 --> 01:03:01,150 ja koodi ei aio tietää, mitä on tekeillä. 1386 01:03:01,150 --> 01:03:03,050 Joten aiomme sisällyttää string.h täällä. 1387 01:03:03,050 --> 01:03:06,270 >> Nyt kun yritämme kääntää ylempi. 1388 01:03:06,270 --> 01:03:08,410 Koota oikein. 1389 01:03:08,410 --> 01:03:09,960 Katsotaanpa suorittaa tämän ohjelman. 1390 01:03:09,960 --> 01:03:12,000 Joten kirjoita jotakin pieniä kirjaimia. 1391 01:03:12,000 --> 01:03:14,920 Mitä te haluat kirjoittaa? 1392 01:03:14,920 --> 01:03:16,546 Huutaa jotain. 1393 01:03:16,546 --> 01:03:17,920 Hyvä, Charly vain käveli sisään. 1394 01:03:17,920 --> 01:03:18,990 Me kirjoita Charly nimi. 1395 01:03:18,990 --> 01:03:21,670 1396 01:03:21,670 --> 01:03:22,840 >> Charly pienillä. 1397 01:03:22,840 --> 01:03:27,742 Ja toivottavasti, toivottavasti, tämä on menossa huutaa ja sylkemään 1398 01:03:27,742 --> 01:03:28,575 Charly isoja kirjaimia. 1399 01:03:28,575 --> 01:03:30,830 Jee! 1400 01:03:30,830 --> 01:03:33,430 ei jokainen ymmärtää, miten Menin siitä, että ratkaistaan, että? 1401 01:03:33,430 --> 01:03:36,190 Tavalla, että voin manipuloida käyttämällä kokonaislukuja 1402 01:03:36,190 --> 01:03:39,410 ratkaisemaan jotain Haluan tehdä jouset, 1403 01:03:39,410 --> 01:03:44,390 koska merkkiä ja kokonaislukuja voi voi viitata samalla tavalla, koska 1404 01:03:44,390 --> 01:03:45,540 ASCII kartoitus. 1405 01:03:45,540 --> 01:03:52,890 >> Joten mennä takaisin kohtaan, jos minä halusi laittaa tänne sijasta 32 1406 01:03:52,890 --> 01:03:58,959 isoja miinus pieniä kirjaimia kuten että, joka toimisi yhtä hyvin, 1407 01:03:58,959 --> 01:04:01,750 koska se on yksinkertaisesti vain ero näiden kahden arvon. 1408 01:04:01,750 --> 01:04:09,570 Jos haluan tehdä tämän again-- Charly. 1409 01:04:09,570 --> 01:04:10,320 Voi ei. 1410 01:04:10,320 --> 01:04:11,820 Mielestäni menimme väärällä tavalla, joo? 1411 01:04:11,820 --> 01:04:13,260 >> Yleisö: [äänetön] pieniksi. 1412 01:04:13,260 --> 01:04:14,260 >> ANDI Peng: Niin sitä pitää. 1413 01:04:14,260 --> 01:04:22,380 1414 01:04:22,380 --> 01:04:22,880 Jep. 1415 01:04:22,880 --> 01:04:24,920 Ja ulos sylkee Charly. 1416 01:04:24,920 --> 01:04:28,020 Joten ole varovainen, kun olet vähentämällä arvot 1417 01:04:28,020 --> 01:04:30,400 muistaa kumpi on suurempi kuin muut. 1418 01:04:30,400 --> 01:04:35,220 Esimerkiksi täällä unohdin että pieniä on todella 1419 01:04:35,220 --> 01:04:38,540 suurempi kuin isoja A. Kun siis yritti vähentää niitä toisinpäin 1420 01:04:38,540 --> 01:04:40,600 noin, sain negatiivinen 32. 1421 01:04:40,600 --> 01:04:42,800 Ja minun tietokone oli kuin, En tiedä mikä se on. 1422 01:04:42,800 --> 01:04:45,810 Se on todennäköisyys vain joitakin satunnaisia arvo, joka ei ole kovin hyvä. 1423 01:04:45,810 --> 01:04:48,760 Ja niin varmista, että olet vähentämällä oikeassa pituus 1424 01:04:48,760 --> 01:04:52,831 löytää haluamasi merkki. 1425 01:04:52,831 --> 01:04:53,330 OK. 1426 01:04:53,330 --> 01:04:58,550 Onko kukaan sekava miten me kulki kirjoitan tätä toimintoa? 1427 01:04:58,550 --> 01:04:59,180 OK. 1428 01:04:59,180 --> 01:05:04,830 Joten oikeastaan, funktio jo olemassa kirjastossa nimeltään ctype.h. 1429 01:05:04,830 --> 01:05:06,417 Kirjaston nimeltään ctype.h. 1430 01:05:06,417 --> 01:05:08,500 Tämä toiminto on itse asiassa jo kirjoittanut teille. 1431 01:05:08,500 --> 01:05:10,820 Sitä kutsutaan ylemmän. 1432 01:05:10,820 --> 01:05:13,027 >> Ja niin varten Tämän PSET, olet menossa 1433 01:05:13,027 --> 01:05:15,860 löytää että todella haluat käyttää paljon sisältämät toiminnot 1434 01:05:15,860 --> 01:05:17,390 sisällä CNäppäile kirjasto. 1435 01:05:17,390 --> 01:05:21,040 Ylä-, alentaa, on ylempi, on lower-- ne ovat kaikki toiminnot 1436 01:05:21,040 --> 01:05:24,914 että voit käyttää hyvin, hyvin nopeasti oman koodin että 1437 01:05:24,914 --> 01:05:26,080 tekee juuri tämä tekee. 1438 01:05:26,080 --> 01:05:28,941 Kirjoitimme miten muuntaa merkkijonon isoiksi. 1439 01:05:28,941 --> 01:05:31,440 Mutta tämä on todella koodi että joku muu on kirjoittanut 1440 01:05:31,440 --> 01:05:33,800 ja että voit käyttää kautta on eri tehtävä. 1441 01:05:33,800 --> 01:05:34,300 Joo? 1442 01:05:34,300 --> 01:05:39,570 >> Yleisö: Joten vain kopioida on tuolla ja tehdä sen joka ikinen kirjain? 1443 01:05:39,570 --> 01:05:42,070 >> ANDI Peng: Joo, koska en välitä arvoja. 1444 01:05:42,070 --> 01:05:44,540 Minä vain välitä, että ero niiden välillä on 32, eikö? 1445 01:05:44,540 --> 01:05:48,210 Ero pieniä b ja isoja B on myös 32. 1446 01:05:48,210 --> 01:05:50,860 Ja ero C ja isoiksi C on aina 32. 1447 01:05:50,860 --> 01:05:53,235 >> Minulla on vain huolta Ero näiden kahden välillä, 1448 01:05:53,235 --> 01:05:56,666 koska kaikki kirjaimet noudattaa samaa kaavaa, eikö? 1449 01:05:56,666 --> 01:05:58,540 Jos minulla on erotus välillä yksi heistä, 1450 01:05:58,540 --> 01:06:01,050 Tiedän, mitä eroa niiden kaikkien välillä on. 1451 01:06:01,050 --> 01:06:01,740 Hyvä kysymys. 1452 01:06:01,740 --> 01:06:04,090 Joo. 1453 01:06:04,090 --> 01:06:06,660 Jokainen hyvä? 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 Niin toinen käsite, joka on olemaan erittäin hyödyllinen, kun 1459 01:06:20,310 --> 01:06:22,570 edelleen kehittää koodi on tämä ajatus 1460 01:06:22,570 --> 01:06:25,430 luoda toimintoja tai abstraktio. 1461 01:06:25,430 --> 01:06:28,479 Joten nyt olemme kaikki otettu algebran. 1462 01:06:28,479 --> 01:06:31,770 Algebra, olet opettanut, että on olemassa tämä ihana asia sanottu toiminto 1463 01:06:31,770 --> 01:06:35,300 kone, jossa jos panos yksi sellainen määrä, 1464 01:06:35,300 --> 01:06:38,720 se kulkee tässä ihanassa toiminto ja ulos ponnahtaa eri tuotos, eikö? 1465 01:06:38,720 --> 01:06:42,220 Koodin, sama asia tapahtuu vuonna minkäänlaista toimintaa. 1466 01:06:42,220 --> 01:06:48,230 >> Niin voisin fyysisesti kirjoittaa ruumiissani minun koodi 1467 01:06:48,230 --> 01:06:52,357 tärkein lausunto siitä, että itse ei riippumatta rungon koodin tekee. 1468 01:06:52,357 --> 01:06:54,940 Mutta ulkopuolella, että voin myös kirjoittaa monia eri toimintoja 1469 01:06:54,940 --> 01:06:56,320 että tehdä monia eri asioita. 1470 01:06:56,320 --> 01:06:58,570 Esimerkiksi, olemme jo alkoivat käyttää joitakin niistä. 1471 01:06:58,570 --> 01:07:00,610 Printf--, että on toiminto että joku muu 1472 01:07:00,610 --> 01:07:02,870 on jo kirjoittanut, että voimme kutsua meidän koodi. 1473 01:07:02,870 --> 01:07:05,410 Voit upper-- tässä tapauksessa, upper-- on toinen toiminto 1474 01:07:05,410 --> 01:07:07,330 olemme kirjoitettu, että me voi soittaa meidän koodi. 1475 01:07:07,330 --> 01:07:09,520 Ja niin kai miksi meillä on jopa toimintoja? 1476 01:07:09,520 --> 01:07:12,100 Miksi emme vain plop se kaikki samassa rivi koodia? 1477 01:07:12,100 --> 01:07:13,730 Se on helppo kaikille. 1478 01:07:13,730 --> 01:07:19,200 >> No, perustelut, että on ensinnäkin, organisaatio. 1479 01:07:19,200 --> 01:07:21,880 Se on todella ärsyttävää menossa kautta jonkun koodi 1480 01:07:21,880 --> 01:07:25,110 ja yksi toiminto kuin printf. 1481 01:07:25,110 --> 01:07:28,570 Jos te todella tiesi, mitä toiminto printf merkitsi kirjoittaa, 1482 01:07:28,570 --> 01:07:30,530 se on, kuten, 1000 riviä koodia. 1483 01:07:30,530 --> 01:07:32,357 >> Jos joka kerta halusin ja printf jotain, 1484 01:07:32,357 --> 01:07:35,440 Jouduin kirjoittamaan 1000 riviä koodia, että olisi todella ärsyttävää lukea, 1485 01:07:35,440 --> 01:07:36,290 oikea? 1486 01:07:36,290 --> 01:07:38,860 Siksi olemme juuri luonut tämän abstrakti toiminto 1487 01:07:38,860 --> 01:07:41,670 että meillä on jo joku muu on kirjoittanut jossain muualla. 1488 01:07:41,670 --> 01:07:44,920 Ja joka kerta kun täytyy käyttää sitä meidän koodi, meidän täytyy vain sanoa printf. 1489 01:07:44,920 --> 01:07:48,070 Ja joka pystyy käyttää toimintoa joku muu on kirjoittanut meidän koodi. 1490 01:07:48,070 --> 01:07:51,020 Se helpottaa organisatorisesti lukea koodia. 1491 01:07:51,020 --> 01:07:53,460 >> Toiseksi, se on yksinkertaistaminen. 1492 01:07:53,460 --> 01:07:56,750 Se yksinkertaistaa vaiheet olemme ryhtyä ratkaista ongelmamme. 1493 01:07:56,750 --> 01:07:59,300 Printf, toimintoja, kuten printf, toiminnot, kuten ylemmän 1494 01:07:59,300 --> 01:08:03,560 ovat kaikki asioita, joiden avulla voimme yksinkertaistaa koodi alas niin se on helpompaa. 1495 01:08:03,560 --> 01:08:05,830 Ja viimeinen asia on uudelleenkäyttöä. 1496 01:08:05,830 --> 01:08:08,710 >> Niin että meillä on toiminto nimeltään Printf 1497 01:08:08,710 --> 01:08:11,990 että voimme soittaa monia eri kertaa ja sallii sen olevan uudelleenkäytettäviä. 1498 01:08:11,990 --> 01:08:14,980 Jos minun pitäisi kirjoittaa printf, Minä vain kirjoitan sen kerran. 1499 01:08:14,980 --> 01:08:16,439 Se on olemassa vain tässä yhdessä paikassa. 1500 01:08:16,439 --> 01:08:19,890 Jos halusin tehdä sen uudestaan, olisin on kopioida ja liittää kaikki kyseisen 1501 01:08:19,890 --> 01:08:21,760 minun toinen rivi koodia. 1502 01:08:21,760 --> 01:08:24,880 Siksi jos luomme toiminto joka on olemassa ulkopuolella tärkein, 1503 01:08:24,880 --> 01:08:26,880 voimme vain pyytää se ja käyttää sitä aina 1504 01:08:26,880 --> 01:08:29,604 Tarvitsemme niin että se on paljon helpompaa meille ohjelmia kirjoittaa. 1505 01:08:29,604 --> 01:08:32,220 1506 01:08:32,220 --> 01:08:35,549 >> Niin että me todella kirjoittaa funktio on hyvin samankaltainen, eikö? 1507 01:08:35,549 --> 01:08:37,590 Tämä on tavallaan ensimmäinen Esimerkiksi jossa me will 1508 01:08:37,590 --> 01:08:42,830 katso toiminto ottamaan tyyli erilainen kuin meidän int main mitätön. 1509 01:08:42,830 --> 01:08:46,779 Tässä tapauksessa, jos halusin kirjoittaa toiminto nimeltään q, oikea? 1510 01:08:46,779 --> 01:08:49,370 >> Ja int arvo täällä on kaikki kertoo minulle, 1511 01:08:49,370 --> 01:08:51,649 mitä haluan tämän Toiminto palauttaa minulle? 1512 01:08:51,649 --> 01:08:54,484 Jos haluan kuutio kokonaisluku, Aion haluat syöttää. 1513 01:08:54,484 --> 01:08:55,525 Nämä ovat parametreja. 1514 01:08:55,525 --> 01:08:58,490 Aion syöttää arvo tyyppiä int. 1515 01:08:58,490 --> 01:09:01,300 Ja aion palata toisentyyppistä arvo int. 1516 01:09:01,300 --> 01:09:03,050 Ja täällä, kun voi nähdä, kaikki olen tekemässä 1517 01:09:03,050 --> 01:09:07,300 on cubing mitä minun panos on minun tuotanto ja palauttamalla sen. 1518 01:09:07,300 --> 01:09:10,790 >> Joten kaikki tämä toiminto ei ei ottaa jonkinlainen kokonaisluku. 1519 01:09:10,790 --> 01:09:14,979 Se kertoo sen itse kahdesti niin että se kuutiot vaikutus. 1520 01:09:14,979 --> 01:09:17,729 Ja sitten se palaa mitä se tuotos on. 1521 01:09:17,729 --> 01:09:20,540 Joten tässä tapauksessa, se on kaksi riviä koodi, joka meidän piti kirjoittaa ylimääräistä. 1522 01:09:20,540 --> 01:09:22,880 Mutta jos halusimme soittaa tälle useita kertoja, 1523 01:09:22,880 --> 01:09:26,210 se on paljon helpompi kirjoittaa, että yksi line täällä, joka on vuonna kuutio kuin 1524 01:09:26,210 --> 01:09:28,830 täytyy käydä läpi useita kertoja. 1525 01:09:28,830 --> 01:09:34,180 >> Niin siten, että oleellisesti kaikki alustamista varten minkäänlaista toiminto 1526 01:09:34,180 --> 01:09:36,420 tulee olla olemassa on kuin täällä. 1527 01:09:36,420 --> 01:09:38,659 Joten meillä on funktion nimi. 1528 01:09:38,659 --> 01:09:39,950 Tässä tapauksessa, sitä kutsutaan kuutio. 1529 01:09:39,950 --> 01:09:42,033 Ja me name it kuutio koska se on helppo muistaa. 1530 01:09:42,033 --> 01:09:44,220 Voit nimetä sen lähtöruutuun ja se voidaan todella cubed. 1531 01:09:44,220 --> 01:09:45,500 Ei ole väliä. 1532 01:09:45,500 --> 01:09:48,020 Vain nimi, joka olet määrittämällä funktio. 1533 01:09:48,020 --> 01:09:51,660 >> Tämä täällä, int, on tyyppi parametrin tarvitset. 1534 01:09:51,660 --> 01:09:54,149 Mitä tämä toiminto tarvitsevat voidakseen toimia? 1535 01:09:54,149 --> 01:09:55,990 No, se tarvitsee syöttää. 1536 01:09:55,990 --> 01:09:56,704 Nimesin sen panos. 1537 01:09:56,704 --> 01:09:58,120 Voit nimetä sen mitä haluat. 1538 01:09:58,120 --> 01:10:00,500 Mutta minä tarvitsen jotain tyyppiä int. 1539 01:10:00,500 --> 01:10:03,730 Se tulee todella toteuttaa mikä on sisällä täällä, 1540 01:10:03,730 --> 01:10:04,990 kehon funktion. 1541 01:10:04,990 --> 01:10:07,847 Ja sitten palautuva täällä, tämä int-- 1542 01:10:07,847 --> 01:10:09,680 kaikki se kertoo minulle on että tämä toiminto on 1543 01:10:09,680 --> 01:10:11,250 aio palata minulle int. 1544 01:10:11,250 --> 01:10:14,460 Joten se aikoo ryhtyä int, ja se tulee antaa sinulle takaisin int. 1545 01:10:14,460 --> 01:10:17,750 Onko jokainen ymmärtää, miten muotoilun tällaista toimii? 1546 01:10:17,750 --> 01:10:18,250 Viileä. 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 Joten älä olla huolissaan, jos tämä näyttää hieman abstrakti juuri nyt. 1550 01:10:31,770 --> 01:10:33,450 Tämä on jotain, että me puhumme. 1551 01:10:33,450 --> 01:10:36,310 Me sukeltaa syvemmälle myöhemmin kurssin. 1552 01:10:36,310 --> 01:10:41,170 Että minkäänlaista korkeamman tason abstraktio näistä asioista työtä 1553 01:10:41,170 --> 01:10:43,530 on, että muistissa, vuonna tietokone, kaiken 1554 01:10:43,530 --> 01:10:47,660 tallennetaan tämän tyyppinen pino, sanoisin. 1555 01:10:47,660 --> 01:10:49,070 >> Joten siellä huipulla. 1556 01:10:49,070 --> 01:10:50,861 En tiedä, jos kaverit voivat nähdä, että hyvin. 1557 01:10:50,861 --> 01:10:52,590 Yritän zoomata. 1558 01:10:52,590 --> 01:10:55,111 Täällä huipulla, me on fyysinen teksti 1559 01:10:55,111 --> 01:10:57,860 mitä tietokone on interpreting-- kaikki nollia ja ykkösiä, että 1560 01:10:57,860 --> 01:10:59,540 ovat olemassa meidän tietokone. 1561 01:10:59,540 --> 01:11:03,390 Ja sitten meillä on alustettu tiedot ja alustamattoman tiedot, 1562 01:11:03,390 --> 01:11:05,340 mitä kutsumme globaaleja muuttujia. 1563 01:11:05,340 --> 01:11:08,200 Niin muuttujia, jotka ovat olemassa kaikkiin ohjelmiin 1564 01:11:08,200 --> 01:11:11,815 ja poikki koko, olennaisesti, koodi. 1565 01:11:11,815 --> 01:11:13,940 Ei hätää, jos te olette eräänlainen epäselvä tästä. 1566 01:11:13,940 --> 01:11:16,060 Se ei ole oikeastaan ​​väliä juuri nyt. 1567 01:11:16,060 --> 01:11:18,680 >> Ja sitten meillä on mitä kutsutaan kasaan pino. 1568 01:11:18,680 --> 01:11:21,140 Ajattele pinon kirjaimellisesti kuten pino asioita, 1569 01:11:21,140 --> 01:11:23,098 pino eri asiat työnnettiin päälle 1570 01:11:23,098 --> 01:11:27,870 toistensa jotka tallentavat eri muuttujat ja syntaksi oman koodin. 1571 01:11:27,870 --> 01:11:31,460 Ja sitten täällä alareunassa, meillä ympäristömuuttujat 1572 01:11:31,460 --> 01:11:35,480 mitä olet täytäntöönpanovaltion sisällä vain pikku riviä koodia. 1573 01:11:35,480 --> 01:11:40,510 >> Ja me vain menossa zoomata on todellinen pino osa. 1574 01:11:40,510 --> 01:11:43,880 Joten täällä, jos me zoomata on juuri tällä alueella pino, 1575 01:11:43,880 --> 01:11:45,140 tämä on mitä se näyttää. 1576 01:11:45,140 --> 01:11:48,590 Ja tämä on oikeastaan ​​aika tärkeä kun te puhua toimintoja, 1577 01:11:48,590 --> 01:11:52,330 koska ilmoitus, että muistia tietokoneen 1578 01:11:52,330 --> 01:11:55,600 on tallennetaan muuttujat ja toiminnot 1579 01:11:55,600 --> 01:11:58,790 ja parametrit sekä oman toiminta ja tärkeimmät muuttujat 1580 01:11:58,790 --> 01:12:00,190 eri paikoissa. 1581 01:12:00,190 --> 01:12:03,390 >> Joten nyt, tärkein on todellinen toiminto 1582 01:12:03,390 --> 01:12:04,780 että olet suoritettavana koodin. 1583 01:12:04,780 --> 01:12:08,050 Olet sen parametrit tallennettu täällä ja sen paikallisia muuttujia tallennettu täällä. 1584 01:12:08,050 --> 01:12:12,270 Paikallinen muuttuja vain mitä tahansa muuttujan jotka ovat olemassa vain kyseisessä toiminto. 1585 01:12:12,270 --> 01:12:15,610 Ja sen päälle, sinulla on tämä erillinen toiminto nimeltään kuutio. 1586 01:12:15,610 --> 01:12:18,240 Sinulla on, että parametrit samoin kuin paikalliset. 1587 01:12:18,240 --> 01:12:21,540 >> Ja syy voit katso tässä, että mitä 1588 01:12:21,540 --> 01:12:25,030 tapahtuu, kun kuutio ottaa sisään arvo teidän päätehtävä 1589 01:12:25,030 --> 01:12:27,640 on, että itse asiassa se on kopiointi että yli. 1590 01:12:27,640 --> 01:12:31,470 Joten jos halusin kuutio 2 ja palata 8, että 2 1591 01:12:31,470 --> 01:12:33,730 on todella syötetään parametri ja se on 1592 01:12:33,730 --> 01:12:37,690 kopioida niin, että sinulla on se nykyisten kahdessa eri paikassa muistiin. 1593 01:12:37,690 --> 01:12:40,520 Ja sinun täytyy olla hyvin varovainen muistamiseen kumpi näistä 1594 01:12:40,520 --> 01:12:42,520 olet todella manipuloimalla. 1595 01:12:42,520 --> 01:12:47,170 Ja esimerkki siitä, mitä tapahtui että olisi hyvin, hyvin huono 1596 01:12:47,170 --> 01:12:48,050 olemassa täällä. 1597 01:12:48,050 --> 01:12:50,760 1598 01:12:50,760 --> 01:12:58,650 >> Joten täällä, olen saanut, teoriassa, ohjelma täällä, päätehtävä 1599 01:12:58,650 --> 01:13:02,180 että olen julistaa int x on 1. 1600 01:13:02,180 --> 01:13:04,505 Olen julistaa toisen int y = 2. 1601 01:13:04,505 --> 01:13:06,380 Ja sitten olen käynnissä se kautta tämä toiminto 1602 01:13:06,380 --> 01:13:09,647 kutsutaan swap, jossa oletan, että se vaihtamalla kaksi arvoa. 1603 01:13:09,647 --> 01:13:11,480 Ja sitten aion tulostaa ne, eikö? 1604 01:13:11,480 --> 01:13:13,220 Se, mitä haluan tämän ohjelman tehdä. 1605 01:13:13,220 --> 01:13:15,180 >> Joten tule alas ja katsomaan. 1606 01:13:15,180 --> 01:13:18,200 Joten jos olen itse kirjoittaa eri toiminto, kuten näette, 1607 01:13:18,200 --> 01:13:19,750 meillä on päätehtävä täällä. 1608 01:13:19,750 --> 01:13:22,860 Ja sitten meillä on Toinen funktio tässä. 1609 01:13:22,860 --> 01:13:24,520 Void swap. 1610 01:13:24,520 --> 01:13:27,090 Void vain sitä, että se on ei aio palata mitään. 1611 01:13:27,090 --> 01:13:28,930 Funktion nimi on kutsutaan swap, ja se on 1612 01:13:28,930 --> 01:13:33,730 menossa saanti kaksi muuttujaa, int ja int b, teidän [kuultavissa] toiminto. 1613 01:13:33,730 --> 01:13:39,010 >> Joten lähinnä täällä, olemme kulkee X ja Y osaksi tätä toimintoa. 1614 01:13:39,010 --> 01:13:40,760 Ja jos me luoda this-- joten haluamme 1615 01:13:40,760 --> 01:13:42,420 luoda tilapäisen arvon, eikö? 1616 01:13:42,420 --> 01:13:43,930 Aiomme antaa että. 1617 01:13:43,930 --> 01:13:45,388 Ja sitten on menossa nyt yhtäläiset b. 1618 01:13:45,388 --> 01:13:47,660 Ja b tulee olemaan takaisin jossa lämpötila arvo oli, 1619 01:13:47,660 --> 01:13:51,070 joka on, koska kun haluat vaihtaa asioita, 1620 01:13:51,070 --> 01:13:52,320 et voi vain haluavat vaihtaa niitä. 1621 01:13:52,320 --> 01:13:54,360 >> Sinun pitää yksi tässä niin, että se muistaa 1622 01:13:54,360 --> 01:13:56,485 mitä se on, koska kerran vaihdat yksi, unohdat 1623 01:13:56,485 --> 01:13:58,200 mitä se alkuperäinen arvo oli, eikö? 1624 01:13:58,200 --> 01:14:00,990 Joten teoriassa, tämän ohjelman pitäisi toimia, eikö? 1625 01:14:00,990 --> 01:14:03,630 Jos halusin vaihtaa kaksi, ne tulisi vaihtaa. 1626 01:14:03,630 --> 01:14:05,490 Joten käyttää sitä ja katso jos se toimii. 1627 01:14:05,490 --> 01:14:11,130 1628 01:14:11,130 --> 01:14:16,940 >> Niin te voi nähdä, X oli kerran 1 ja y oli kerran 2. 1629 01:14:16,940 --> 01:14:21,475 Ja jos minä tulostaa sen, x on edelleen 1 ja y on 2. 1630 01:14:21,475 --> 01:14:25,970 Hmm, tämä ohjelma ei näytä olevan työ siten, että haluan sen toimivan. 1631 01:14:25,970 --> 01:14:29,950 Onko kukaan halua ottaa ampui arvailla miksi tämä tapahtui? 1632 01:14:29,950 --> 01:14:34,430 Se liittyy siihen, miten että eri asiat ovat 1633 01:14:34,430 --> 01:14:38,172 varastoitu eri paikkoihin muistissa. 1634 01:14:38,172 --> 01:14:39,377 >> OK. 1635 01:14:39,377 --> 01:14:41,960 Joten te ei tarvitse huolehtia liian paljon tästä juuri nyt. 1636 01:14:41,960 --> 01:14:46,610 Mutta tiedän, että kuution paikallinen muuttujat olivat a ja b, 1637 01:14:46,610 --> 01:14:49,230 koska täällä meidän tehtävämme, olemme julisti ja b 1638 01:14:49,230 --> 01:14:53,570 kuten muuttujat olemassa sisällä kuutio, että toiminto. 1639 01:14:53,570 --> 01:14:59,490 Mutta kuten näette, parametrit, se ryhtyy ne on varastoitu täällä. 1640 01:14:59,490 --> 01:15:01,370 Mutta emme olleet oikeastaan palaavat mitään. 1641 01:15:01,370 --> 01:15:03,120 Emme olleet todella muuttuu x ja y. 1642 01:15:03,120 --> 01:15:04,440 Olimme juuri muuttumassa ja b. 1643 01:15:04,440 --> 01:15:08,340 >> Olimme kopioitu x ja y osaksi jotain kutsutaan ja b. 1644 01:15:08,340 --> 01:15:11,092 Mutta emme koskaan itse manipuloitu x ja y itse. 1645 01:15:11,092 --> 01:15:12,800 Oletteko nähdä miten se tapahtuu? 1646 01:15:12,800 --> 01:15:16,140 On, että olemme yksinkertaisesti kopioitu se yli, mutta emme ole oikeastaan ​​pidetty 1647 01:15:16,140 --> 01:15:18,030 kirjaa, jossa hänellä oli muistissa. 1648 01:15:18,030 --> 01:15:20,127 >> Ja nyt tietokone etsii, OH, olen 1649 01:15:20,127 --> 01:15:21,960 suorita tämä asia läpi tämä ihana toiminto. 1650 01:15:21,960 --> 01:15:23,690 Mutta x ja y ovat edelleen x ja y. 1651 01:15:23,690 --> 01:15:26,240 Mitään ei tapahtunut niitä, koska se 1652 01:15:26,240 --> 01:15:28,340 että kyseiset parametrit ja paikalliset muuttujat 1653 01:15:28,340 --> 01:15:30,150 tallennetaan eri laita muistiin. 1654 01:15:30,150 --> 01:15:32,030 Ja tämä on korkeamman tason käsite, että me will 1655 01:15:32,030 --> 01:15:34,300 alat nähdä myöhemmin kurssin. 1656 01:15:34,300 --> 01:15:36,950 Mutta vain tietää, että tämä on ongelma, joka voi tapahtua 1657 01:15:36,950 --> 01:15:41,400 ja että me selvittää keinoja, miten käsitellä tätä myöhemmin kurssin. 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 Selvä. 1661 01:15:48,250 --> 01:15:51,780 Niin viimeinen käsite olemme todella aikoo kattaa 1662 01:15:51,780 --> 01:15:53,880 että tulee olemaan hyödyllinen sillä PSET tällä viikolla 1663 01:15:53,880 --> 01:15:56,060 ovat mitä kutsutaan komentoriviargumentteja. 1664 01:15:56,060 --> 01:16:00,820 Joten Rob hänen luento meni läpi eräänlainen lyhyesti, miten nämä työt. 1665 01:16:00,820 --> 01:16:02,770 Pohjimmiltaan tietää, että kun olet kirjoittamassa 1666 01:16:02,770 --> 01:16:06,280 kuten päätehtävä, kun kirjoitti toiminnot ennen aikaisemmin, 1667 01:16:06,280 --> 01:16:07,804 meillä oli int main mitätön. 1668 01:16:07,804 --> 01:16:10,470 Ja syy meillä oli mitätön siellä oli sillä ohjelmia ei 1669 01:16:10,470 --> 01:16:12,520 on syötettävä arvot ajaa, eikö? 1670 01:16:12,520 --> 01:16:16,020 Kun juoksin Mario, en tarvinnut todella vain kirjoittaa jotain 1671 01:16:16,020 --> 01:16:16,970 kun juoksin Mario. 1672 01:16:16,970 --> 01:16:20,170 Voisin kysyy käyttäjältä myöhemmin. 1673 01:16:20,170 --> 01:16:22,450 Mutta se ei aina tapahdu. 1674 01:16:22,450 --> 01:16:24,980 >> Esimerkiksi, tässä viikon ongelma asetetaan, 1675 01:16:24,980 --> 01:16:28,365 aiot pyydetään, että lisäksi suorittaa ohjelma, 1676 01:16:28,365 --> 01:16:30,990 olet menossa halua syöttää tiettyjä asioita suorassa, kun 1677 01:16:30,990 --> 01:16:32,050 ajaa ohjelma. 1678 01:16:32,050 --> 01:16:34,720 Joten miten teemme, jota kutsutaan Komentoriviargumentti, joka 1679 01:16:34,720 --> 01:16:37,280 on kuin argumentti voit syöttää suoraan 1680 01:16:37,280 --> 01:16:39,260 kun yrität ajaa ohjelman. 1681 01:16:39,260 --> 01:16:44,680 >> Joten merkintätapa tämän, se on melko monimutkainen näköisiä, 1682 01:16:44,680 --> 01:16:47,320 mutta se ei todellakaan ole, että vaikea. Niin int main-- 1683 01:16:47,320 --> 01:16:48,910 se on vain teidän päätehtävä. 1684 01:16:48,910 --> 01:16:52,110 Osaksi argc pilkku merkkijono argv suluissa. 1685 01:16:52,110 --> 01:16:56,040 Niin kaikki mitä sanon, että tämä int argc-- kaikki se kertoo sinulle 1686 01:16:56,040 --> 01:17:00,560 on, että ne ovat määrä perustelut tietokone pitäisi odottaa. 1687 01:17:00,560 --> 01:17:03,130 >> Niin yksi asia, joka on todella tärkeää seurata 1688 01:17:03,130 --> 01:17:07,080 on fyysinen nimi ohjelman lasketaan yhdeksi nämä väitteet. 1689 01:17:07,080 --> 01:17:11,080 Joten jos halusin olla minun ohjelma ajaa plus yksi ylimääräinen komentoriviltä 1690 01:17:11,080 --> 01:17:13,310 argumentti, olen oikeastaan menossa on kaksi. 1691 01:17:13,310 --> 01:17:15,080 Argc on todella olemaan kaksi. 1692 01:17:15,080 --> 01:17:18,010 Ja sitten merkkijono argv bracket-- kaikki, joka tekee, 1693 01:17:18,010 --> 01:17:20,410 se antaa minulle joukko merkkijonoja, jotka on 1694 01:17:20,410 --> 01:17:24,870 menossa vain näyttää ja tallentaa mitä kaikki nämä komentoriviargumentteja ovat. 1695 01:17:24,870 --> 01:17:34,090 >> Niinpä esimerkiksi, jos halusin saada tämä ohjelma, ./copy INFILE outfile, eikö? 1696 01:17:34,090 --> 01:17:37,330 Se on vain tyypillinen linux komento. 1697 01:17:37,330 --> 01:17:38,830 Mikä oikeastaan ​​on argc? 1698 01:17:38,830 --> 01:17:41,320 Kuinka monta komentoriviargumentteja ovat siellä todella tämän? 1699 01:17:41,320 --> 01:17:45,130 Kaikki tämä tekee on kopioida INFILE nimen yksi tiedosto 1700 01:17:45,130 --> 01:17:47,070 ja se kopioi se toinen tiedosto, eikö? 1701 01:17:47,070 --> 01:17:48,700 Siinä kaikki tämä tekee. 1702 01:17:48,700 --> 01:17:53,080 Kuten näette, teen sen yhdelle riville ilman todella tarvitsee ohjelman. 1703 01:17:53,080 --> 01:17:55,380 >> Mikä on meidän argc tässä tapauksessa? 1704 01:17:55,380 --> 01:17:58,968 Kuinka monta argumenttia meillä on? 1705 01:17:58,968 --> 01:17:59,634 Yleisö: Kolme? 1706 01:17:59,634 --> 01:18:01,200 ANDI Peng: Meillä on kolme, tarkalleen. 1707 01:18:01,200 --> 01:18:05,030 Joten on hyvin intuitiivinen vain ajatella, että se on vain 1708 01:18:05,030 --> 01:18:06,290 INFILE ja outfile. 1709 01:18:06,290 --> 01:18:10,190 Mutta tiedän, että fyysinen nimi ohjelma käytät lasketaan yhdeksi. 1710 01:18:10,190 --> 01:18:13,220 Joten tässä tapauksessa, argc on oikeastaan ​​kolme. 1711 01:18:13,220 --> 01:18:15,860 Entä, mitä on argv 0? 1712 01:18:15,860 --> 01:18:18,180 Muista, kaikki komentoriviargumentteja 1713 01:18:18,180 --> 01:18:20,500 säilytettiin erilaisia ​​jouset. 1714 01:18:20,500 --> 01:18:24,140 Joten jos yritän käyttää sitä, mitä olisi argv kiinnike 0 antaa minulle? 1715 01:18:24,140 --> 01:18:25,364 >> Yleisö: [äänetön]. 1716 01:18:25,364 --> 01:18:26,155 ANDI Peng: Aivan. 1717 01:18:26,155 --> 01:18:28,550 Se antaisi minulle piste slash kopioida, koska se on 1718 01:18:28,550 --> 01:18:31,070 0. elementti, ensimmäinen osa minun array. 1719 01:18:31,070 --> 01:18:33,236 Entä argv 1? 1720 01:18:33,236 --> 01:18:33,945 >> Yleisö: INFILE. 1721 01:18:33,945 --> 01:18:35,070 ANDI Peng: INFILE, tarkalleen. 1722 01:18:35,070 --> 01:18:36,272 Entä argv 2? 1723 01:18:36,272 --> 01:18:37,022 Yleisö: outfile. 1724 01:18:37,022 --> 01:18:38,190 ANDI Peng: outfile. 1725 01:18:38,190 --> 01:18:39,290 Tämä on vähän hankala nyt. 1726 01:18:39,290 --> 01:18:42,630 Mitä olette mieltä argv 3 aiotaan antaa minulle 1727 01:18:42,630 --> 01:18:45,522 jos Yritin tulostaa että ulos? 1728 01:18:45,522 --> 01:18:48,260 >> Yleisö: [äänetön]? 1729 01:18:48,260 --> 01:18:50,164 >> ANDI Peng: Oliko sinulla käsi ylös? 1730 01:18:50,164 --> 01:18:50,663 Joo. 1731 01:18:50,663 --> 01:18:51,550 >> Yleisö: vaihtoehto. 1732 01:18:51,550 --> 01:18:52,341 >> ANDI Peng: Aivan. 1733 01:18:52,341 --> 01:18:55,440 Joten muistaa luento että me on lopussa rodun jotain 1734 01:18:55,440 --> 01:18:56,640 kutsutaan null terminaattori? 1735 01:18:56,640 --> 01:18:58,890 Pääsemme tähän myös edelleen luokassa. 1736 01:18:58,890 --> 01:19:02,472 Mutta tiedämme, että merkintätapa, Muuten tietokone 1737 01:19:02,472 --> 01:19:04,430 tietää, että se päättyy array on, että se 1738 01:19:04,430 --> 01:19:07,310 laittaa jotain kutsutaan null terminaattori tai viiva nolla. 1739 01:19:07,310 --> 01:19:12,047 >> Joten jos yrität käyttää argv 3, aiot lyödä tämän viiva 0. 1740 01:19:12,047 --> 01:19:13,630 Tämä on jopa enemmän kompakysymys. 1741 01:19:13,630 --> 01:19:17,020 Entä argv 4? 1742 01:19:17,020 --> 01:19:20,920 Joten tämä on ohi null terminaattori, ohi rajat meidän array. 1743 01:19:20,920 --> 01:19:24,380 Mitä luulet tulee tapahtuu, kun yritämme tehdä niin? 1744 01:19:24,380 --> 01:19:25,842 >> Yleisö: [äänetön]? 1745 01:19:25,842 --> 01:19:26,550 ANDI Peng: Anteeksi? 1746 01:19:26,550 --> 01:19:28,025 Sano että hieman kovempaa? 1747 01:19:28,025 --> 01:19:29,086 >> Yleisö: [äänetön]. 1748 01:19:29,086 --> 01:19:29,710 ANDI Peng: Kyllä. 1749 01:19:29,710 --> 01:19:32,420 Että on nimi alue sinulla todennäköisesti saada. 1750 01:19:32,420 --> 01:19:36,610 Mutta tiedämme, että argv 4-- jonka avulla voit käyttää 1751 01:19:36,610 --> 01:19:38,610 paikkoja tietokoneen muisti, että olet todella 1752 01:19:38,610 --> 01:19:41,650 ei pitäisi olla koskematta, koska nyt tiedät mitä argv on. 1753 01:19:41,650 --> 01:19:46,220 Te tiedätte, että se on taulukon koko 3 että on piste kopioida, INFILE ja outfile. 1754 01:19:46,220 --> 01:19:50,200 >> Jos yrität mennä niin kauas, että että olet ohi null Terminator, 1755 01:19:50,200 --> 01:19:53,050 tietokoneessa on todennäköisesti tallennettu jotain argv 4. 1756 01:19:53,050 --> 01:19:55,790 Ja sinun ei todellakaan pitäisi olla sallittava pääsy argv 4, 1757 01:19:55,790 --> 01:19:58,130 koska sinulla on tiedosto kaappi ja olet vain 1758 01:19:58,130 --> 01:19:59,790 päästetä näiden kolme hyllyä. 1759 01:19:59,790 --> 01:20:02,870 Mutta jos yrität päästä pidemmälle hyllyllä jossa sallitaan, 1760 01:20:02,870 --> 01:20:04,930 aiot aloittaa Messing kanssa muita asioita tietokoneen muistiin. 1761 01:20:04,930 --> 01:20:06,690 Se tulee olemaan todella, todella huono. 1762 01:20:06,690 --> 01:20:07,440 Joten vain tietää, että. 1763 01:20:07,440 --> 01:20:10,370 Ole tarkkana, että olet eivät vain satunnaisesti käynnisty 1764 01:20:10,370 --> 01:20:14,772 pääsy elementtejä array, joka eivät olleet mitä halusi luoda. 1765 01:20:14,772 --> 01:20:17,114 Jep. 1766 01:20:17,114 --> 01:20:18,430 >> OK. 1767 01:20:18,430 --> 01:20:26,360 Joten aiomme tehdä uuden terminaali esimerkki tästä. 1768 01:20:26,360 --> 01:20:27,300 OK. 1769 01:20:27,300 --> 01:20:29,900 Joten Rob nopeasti luento toinen päivä meni 1770 01:20:29,900 --> 01:20:35,040 läpi tämän esimerkin, jossa hän oli int main int argc merkkijono argv 1771 01:20:35,040 --> 01:20:39,090 kiinnikkeet, joka kertoo minulle, että olen menossa on komentoriviargumentteja. 1772 01:20:39,090 --> 01:20:41,860 >> Hänellä on, jos argc vastaa vastaa 2-- muistaa, 1773 01:20:41,860 --> 01:20:45,070 vastaa tasavertaisten tarkoittaa vertailua. 1774 01:20:45,070 --> 01:20:47,980 Jos se on 2, niin olen painoon Hei, 1775 01:20:47,980 --> 01:20:51,190 mitä ensimmäinen alkio on. 1776 01:20:51,190 --> 01:20:54,100 Else tulostaa Hello World. 1777 01:20:54,100 --> 01:20:56,300 Mitä tämä tulee tapahtua olennaisesti? 1778 01:20:56,300 --> 01:21:00,570 Voiko joku vain selittää Englanti, mitä tämä ohjelma tekee? 1779 01:21:00,570 --> 01:21:01,272 Joo. 1780 01:21:01,272 --> 01:21:08,160 >> Yleisö: Jos joku kirjoitetaan komento ja sanoi heidän ensimmäinen ja viimeinen nimi, 1781 01:21:08,160 --> 01:21:12,096 se ei vain tulostaa Ensimmäinen ja sanoa, hei, 1782 01:21:12,096 --> 01:21:14,090 Mikä tahansa etunimi on. 1783 01:21:14,090 --> 01:21:15,410 >> ANDI Peng: OK, katsotaanpa käyttää sitä. 1784 01:21:15,410 --> 01:21:22,470 Niinpä esimerkiksi, jos olisin tehdä tämä tiedosto tehdä hei to-- hei 1785 01:21:22,470 --> 01:21:24,500 to-- mitä haluat minun syöttää? 1786 01:21:24,500 --> 01:21:25,900 >> Yleisö: Etu- ja sukunimi. 1787 01:21:25,900 --> 01:21:27,280 >> ANDI Peng: etu- ja sukunimi? 1788 01:21:27,280 --> 01:21:28,180 Spaces? 1789 01:21:28,180 --> 01:21:29,690 >> Yleisö: Joo. 1790 01:21:29,690 --> 01:21:33,490 >> ANDI Peng: Voiko joku kertoa minua juuri nyt, mikä on argc? 1791 01:21:33,490 --> 01:21:35,630 Juuri tuolla? 1792 01:21:35,630 --> 01:21:36,290 Oho, anteeksi. 1793 01:21:36,290 --> 01:21:37,920 Anna minun mennä takaisin. 1794 01:21:37,920 --> 01:21:40,740 Kuinka monta komentoriviargumentteja are-- te voi oikeastaan ​​nähdä. 1795 01:21:40,740 --> 01:21:43,760 Mutta yritän zoomata. 1796 01:21:43,760 --> 01:21:44,290 Yritän. 1797 01:21:44,290 --> 01:21:45,414 Joo, siellä on kolme, eikö? 1798 01:21:45,414 --> 01:21:48,750 Se on piste slash Hei, se on Andi, ja se on Peng. 1799 01:21:48,750 --> 01:21:51,870 >> Mitä te olette mieltä tästä ohjelma aiotaan tulostaa? 1800 01:21:51,870 --> 01:21:55,550 1801 01:21:55,550 --> 01:21:56,060 Oi. 1802 01:21:56,060 --> 01:21:57,120 Anteeksi. 1803 01:21:57,120 --> 01:21:57,810 Väärän nimen. 1804 01:21:57,810 --> 01:22:03,630 1805 01:22:03,630 --> 01:22:06,130 Se tulostamisen, Hello World. 1806 01:22:06,130 --> 01:22:09,603 Onko kukaan halua selittää miksi tämä tapahtuu? 1807 01:22:09,603 --> 01:22:10,103 Joo? 1808 01:22:10,103 --> 01:22:11,019 >> Yleisö: [äänetön]. 1809 01:22:11,019 --> 01:22:14,439 1810 01:22:14,439 --> 01:22:15,230 ANDI Peng: Aivan. 1811 01:22:15,230 --> 01:22:19,940 Joten tässä, ovat ehdollisia on, jos argc vastaa = 2. 1812 01:22:19,940 --> 01:22:23,650 Joten vain siinä tapauksessa, että on olemassa kaksi komentoriviargumentteja. 1813 01:22:23,650 --> 01:22:25,850 Sitten aion tulostaa, Hei, mitä se on. 1814 01:22:25,850 --> 01:22:28,210 Mutta muuta, aion tulostaa vain, Hello World. 1815 01:22:28,210 --> 01:22:30,040 Joten ei joku halua antaa minulle esimerkki 1816 01:22:30,040 --> 01:22:35,050 miten voisin todella saada se tulostaa arvon argv 1? 1817 01:22:35,050 --> 01:22:38,600 >> Mitä minun täytyy syöttää täällä? 1818 01:22:38,600 --> 01:22:39,840 Vain yksi asia, eikö? 1819 01:22:39,840 --> 01:22:42,900 Koska piste hello to jo lasketaan ensimmäinen argumentti. 1820 01:22:42,900 --> 01:22:43,930 Minulla on vain yksi. 1821 01:22:43,930 --> 01:22:46,470 Joten piste hei jos vain tehdä Andi. 1822 01:22:46,470 --> 01:22:47,270 Hei, Andi. 1823 01:22:47,270 --> 01:22:49,186 Onko jokainen ymmärtää miksi tämä tapahtuu? 1824 01:22:49,186 --> 01:22:49,602 Joo. 1825 01:22:49,602 --> 01:22:52,500 >> Yleisö: Niin väli komento line-- on se [äänetön]? 1826 01:22:52,500 --> 01:22:56,247 1827 01:22:56,247 --> 01:22:56,830 ANDI Peng: Ei. 1828 01:22:56,830 --> 01:23:03,810 Joten tilaa komentoriviltä argumentti, X, kertoa tietokoneen 1829 01:23:03,810 --> 01:23:06,820 että tämä on alku uuden merkkijonon. 1830 01:23:06,820 --> 01:23:11,130 Joten merkkijono argv here-- se myymälöissä kaikki komennot argumentteja 1831 01:23:11,130 --> 01:23:13,110 in jouset. 1832 01:23:13,110 --> 01:23:17,420 Ja niin tilaa komentoriviltä argument-- tämä vain kertoa, 1833 01:23:17,420 --> 01:23:21,030 tämä on lopussa yhden merkkijonon ja on aika siirtyä toiseen. 1834 01:23:21,030 --> 01:23:21,990 >> Joo. 1835 01:23:21,990 --> 01:23:23,530 Tämä on aika tärkeää sinun PSET, koska olet 1836 01:23:23,530 --> 01:23:24,613 aiotaan testaamalla nämä. 1837 01:23:24,613 --> 01:23:29,300 Joten ei kellään kysyttävää tästä? 1838 01:23:29,300 --> 01:23:30,016 OK, viileä. 1839 01:23:30,016 --> 01:23:30,515 Joo? 1840 01:23:30,515 --> 01:23:35,008 >> Yleisö: Eli syy olisit laittaa kokonaisluku argumentti lask sijaan 1841 01:23:35,008 --> 01:23:40,059 of [äänetön] olisi kun haluat kirjoittaa lisätietoja 1842 01:23:40,059 --> 01:23:41,030 [Äänetön]? 1843 01:23:41,030 --> 01:23:42,090 >> ANDI Peng: Joo, täsmälleen. 1844 01:23:42,090 --> 01:23:45,370 Jotkin ohjelmat vaativat sinua syöttää Komentoriviargumentti 1845 01:23:45,370 --> 01:23:47,732 että se kulkee ja jotka sitä käyttävät. 1846 01:23:47,732 --> 01:23:49,035 Joo. 1847 01:23:49,035 --> 01:23:50,410 Yleisö: Mitä jos [äänetön]? 1848 01:23:50,410 --> 01:23:55,440 1849 01:23:55,440 --> 01:23:58,870 >> ANDI Peng: No, mitä minulla on vaihtaa sitten minun ohjelma? 1850 01:23:58,870 --> 01:23:59,870 >> Yleisö: Vain 3. 1851 01:23:59,870 --> 01:24:12,460 1852 01:24:12,460 --> 01:24:15,020 >> ANDI Peng: Miksi näin tapahtuu, luulet? 1853 01:24:15,020 --> 01:24:18,940 >> Yleisö: Koska [kuultavissa]. 1854 01:24:18,940 --> 01:24:22,370 >> Yleisö: Sinun täytyy vaihda se 2 [kuulumattomiin]. 1855 01:24:22,370 --> 01:24:23,484 >> Yleisö: 1 ja 2. 1856 01:24:23,484 --> 01:24:24,650 ANDI Peng: 1 ja 2, tarkalleen. 1857 01:24:24,650 --> 01:24:29,150 Joten tässä tapauksessa, olet luultavasti haluavat olla kaksi printf statements-- 1858 01:24:29,150 --> 01:24:32,601 joka painetut argv 1 ja joka painetun argv 2. 1859 01:24:32,601 --> 01:24:33,100 Täällä. 1860 01:24:33,100 --> 01:24:34,516 Itse asiassa voin tehdä sen todella nopeasti. 1861 01:24:34,516 --> 01:24:46,720 1862 01:24:46,720 --> 01:24:47,320 Ole hyvä. 1863 01:24:47,320 --> 01:24:48,287 Oi. 1864 01:24:48,287 --> 01:24:49,370 Ei ihan mitä halusit. 1865 01:24:49,370 --> 01:24:52,590 Mutta jos te pelleillä muotoilua, se tulee ulos. 1866 01:24:52,590 --> 01:24:54,981 Joo. 1867 01:24:54,981 --> 01:24:55,480 Viileä. 1868 01:24:55,480 --> 01:24:57,670 Tiedän olemme vähän vähän aikaa. 1869 01:24:57,670 --> 01:25:02,469 Mutta olen juuri menossa nopeasti viettää pari minuuttia läpi helpful-- 1870 01:25:02,469 --> 01:25:03,760 Yleisö: Sinulla on kaksi minuuttia. 1871 01:25:03,760 --> 01:25:05,010 ANDI Peng: Minulla on kaksi minuuttia? 1872 01:25:05,010 --> 01:25:06,340 Kiitos. 1873 01:25:06,340 --> 01:25:09,180 Nopea PSET vinkkejä. 1874 01:25:09,180 --> 01:25:13,100 Joten tämä PSET, suosittelen lämpimästi, kuten sanoin, jokainen lukea spec. 1875 01:25:13,100 --> 01:25:16,804 Sinulta kirjallisesti kolme programs-- yksi kutsutaan initials.c, yksi nimeltään caesar.c, 1876 01:25:16,804 --> 01:25:17,720 yksi nimeltään vigenere.c. 1877 01:25:17,720 --> 01:25:20,465 1878 01:25:20,465 --> 01:25:22,340 Muutamia tärkeitä vinkkejä, että te todella haluat 1879 01:25:22,340 --> 01:25:25,040 pitää mind-- niin on tämä toiminto 1880 01:25:25,040 --> 01:25:27,770 nimeltään atoi-- kuin haluan sanoa, trois. 1881 01:25:27,770 --> 01:25:29,520 Epäselvät jos se oikeastaan ​​miten sen sanot. 1882 01:25:29,520 --> 01:25:32,510 Mutta kaikki se tekee, se syöttämällä. 1883 01:25:32,510 --> 01:25:34,320 Se muuttaa merkkijonon int. 1884 01:25:34,320 --> 01:25:37,490 Joten edustaa ASCII i kokonaisluku. 1885 01:25:37,490 --> 01:25:40,310 Se on vain muuntaa ASCII arvot kokonaislukuina. 1886 01:25:40,310 --> 01:25:44,510 Muista siis argv, array, joka tallentaa kaikki komennot linja arguments-- 1887 01:25:44,510 --> 01:25:46,300 se tallentaa ne kaikki merkkijonoina. 1888 01:25:46,300 --> 01:25:50,010 Joten jos haluat pystyä on yksi heistä tulee kokonaisluku, 1889 01:25:50,010 --> 01:25:52,750 olet menossa on käyttää tätä arvoa täällä. 1890 01:25:52,750 --> 01:25:56,690 >> Modulo, kuten kävimme aiemmin luokan tänään, 1891 01:25:56,690 --> 01:25:59,550 voit olla Loput mitä sinulla on. 1892 01:25:59,550 --> 01:26:03,620 Joten jos meillä on todella, todella suurin joukoin Caesar, 1893 01:26:03,620 --> 01:26:06,117 mitä jos meillä on lopussa merkkijono Vigenere? 1894 01:26:06,117 --> 01:26:08,450 Miten aiotte pystyä saada, että kääri ympärille? 1895 01:26:08,450 --> 01:26:11,330 Jos osuin z ja haluan se palata, 1896 01:26:11,330 --> 01:26:13,650 miten olen menossa saada että kääri ympärille? 1897 01:26:13,650 --> 01:26:15,960 Luultavasti halua käyttää modulo siellä jossain. 1898 01:26:15,960 --> 01:26:19,190 >> Toiseksi, selata noin kirjastosta. ctype.h. 1899 01:26:19,190 --> 01:26:20,680 Se on uusi kirjasto meillä on. 1900 01:26:20,680 --> 01:26:25,270 Löydät paljon todella, todella hyödyllinen functions-- isupper, islower, 1901 01:26:25,270 --> 01:26:27,681 toupper, tolower, isalpha, jne. 1902 01:26:27,681 --> 01:26:30,680 Kaikki toiminnot, jotka ovat erittäin hyödyllisiä kun olet yrittää selvittää, 1903 01:26:30,680 --> 01:26:33,780 on tämä merkki pieni kirjain? 1904 01:26:33,780 --> 01:26:35,730 Miten voin muuttaa tätä merkkijono isoja? 1905 01:26:35,730 --> 01:26:38,146 Kaikki nämä asiat ovat hyvin, erittäin hyödyllistä oman PSET. 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 >> Virka tänä iltana ovat 8:00 11:00 in TEAL luokkahuoneessa huomenna 1909 01:26:49,644 --> 01:26:51,310 sekä keskiviikkona ja torstai-iltana. 1910 01:26:51,310 --> 01:26:53,280 Virka ovat Commons. 1911 01:26:53,280 --> 01:26:56,180 Erittäin ehdottaa te kaikki aloittaa heti, 1912 01:26:56,180 --> 01:27:00,490 koska et halua olla, että lapsi, joka torstai-iltana on ongelmia 1913 01:27:00,490 --> 01:27:03,870 lähetät PSET ja on kuten, en tiedä mitä tehdä. 1914 01:27:03,870 --> 01:27:05,870 Aloitin, olen valmis, olen esittänyt. 1915 01:27:05,870 --> 01:27:09,737 Yritä antaa itsellesi tilaa, koska koodi ongelmia aina esiintyä. 1916 01:27:09,737 --> 01:27:11,570 Haluat varmistaa että annat itsellesi 1917 01:27:11,570 --> 01:27:14,810 paljon aikaa pystyä loppuun psets. 1918 01:27:14,810 --> 01:27:15,310 Viileä. 1919 01:27:15,310 --> 01:27:16,720 Minä roikkua täällä. 1920 01:27:16,720 --> 01:27:18,226 >> Yleisö: Onko tämä verkossa jo? 1921 01:27:18,226 --> 01:27:20,850 ANDI Peng: En tiedä, jos se on verkossa jo, mutta se tulee olemaan. 1922 01:27:20,850 --> 01:27:23,500 Minä roikkua täällä, jos joku on kysyttävää jo. 1923 01:27:23,500 --> 01:27:25,390 Kiitos, että tulit. 1924 01:27:25,390 --> 01:27:27,105