1 00:00:00,000 --> 00:00:05,830 2 00:00:05,830 --> 00:00:08,650 >> JASON Hirschhorn: Vitajte CS50 sekcia, všetci. 3 00:00:08,650 --> 00:00:11,430 Moje meno je Jason Hirschhorn. 4 00:00:11,430 --> 00:00:15,850 Som veľa z vás TFs, ale veľa ľudia budú snáď sa k nám 5 00:00:15,850 --> 00:00:20,420 on-line, predlžovací študentov alebo študenti Snaží sa hľadať cez časť, ak 6 00:00:20,420 --> 00:00:22,830 minuli časť, ktorá sa týždeň alebo len dohnať, ak chcú 7 00:00:22,830 --> 00:00:24,510 preskúmať nejaký materiál. 8 00:00:24,510 --> 00:00:30,060 >> Takže podľa učebných osnov, ktoré všetky ze ste si prečítali, že? 9 00:00:30,060 --> 00:00:31,390 Vidím veľa hlavy prikývne. 10 00:00:31,390 --> 00:00:34,220 Sekcia vám poskytnú príležitosti preskúmať priebeh je 11 00:00:34,220 --> 00:00:37,420 materiál vo viacerých intímne prostredie, rovnako ako ponoriť sa do 12 00:00:37,420 --> 00:00:38,810 praktickej činnosti. 13 00:00:38,810 --> 00:00:41,230 >> Takže to je v podstate to, čo sme bude robiť každý týždeň. 14 00:00:41,230 --> 00:00:45,090 Chystáme sa prejsť, čo máme stanovená na najdôležitejšie 15 00:00:45,090 --> 00:00:49,170 Témy v prednáške, a tie, pravdepodobne tiež najužitočnejšie a 16 00:00:49,170 --> 00:00:52,780 s najväčšou pravdepodobnosťou prísť na problémové sady a kvízy, a vaše kódovanie 17 00:00:52,780 --> 00:00:53,970 život mimo CS50. 18 00:00:53,970 --> 00:00:57,260 Takže sme ísť do týchto témach, diskutovať o nich, ísť cez ne, 19 00:00:57,260 --> 00:01:00,660 odpovedať na všetky otázky, ktoré ľudí majú, a potom budeme robiť veľa 20 00:01:00,660 --> 00:01:02,250 problémy praxe kódovanie. 21 00:01:02,250 --> 00:01:04,239 >> Vy všetci priniesli notebooky, čo je fantastické. 22 00:01:04,239 --> 00:01:05,710 To je počítačová veda triedy. 23 00:01:05,710 --> 00:01:10,070 Avšak, mnoho cvičení, ktoré robíme, nebudete potrebovať vaše notebooky. 24 00:01:10,070 --> 00:01:11,720 Môžete to urobiť je na list papiera. 25 00:01:11,720 --> 00:01:13,580 To je, ako budete to je na kvízy. 26 00:01:13,580 --> 00:01:16,450 A skutočne, je to skvelý spôsob, ako Naozaj viem, že, ako to urobiť 27 00:01:16,450 --> 00:01:19,720 niečo, ak nemáte Pozrite sa na 50 spoliehajú na alebo Vytvoriť spoliehať na, hovoriť 28 00:01:19,720 --> 00:01:20,620 ste urobili nejaké chyby. 29 00:01:20,620 --> 00:01:25,670 >> Takže ste vítaní kódu na zariadenie alebo run.cs50.net, ktorý je 30 00:01:25,670 --> 00:01:29,770 Ďalším nástrojom, ktorý umožňuje kódovať on-line, ale tiež by som odporučiť, ak 31 00:01:29,770 --> 00:01:32,280 ste to skúsil, za použitia listu papiera a snažia tieto praktiky 32 00:01:32,280 --> 00:01:33,640 problémy na list papiera. 33 00:01:33,640 --> 00:01:35,330 Vzhľadom k tomu znova, to je nakoniec čo budeš 34 00:01:35,330 --> 00:01:37,430 požiadaný, aby na kvízy. 35 00:01:37,430 --> 00:01:44,080 >> Takže začnime s našimi agenda pre dnešok. 36 00:01:44,080 --> 00:01:47,710 Chystáme sa ísť cez niektoré normy pre Naše sekcie, potom budeme potápať 37 00:01:47,710 --> 00:01:51,180 do poľa, funkcie a príkazového riadku argumenty, čo je to, čo vy 38 00:01:51,180 --> 00:01:56,200 sa vzťahuje minulý týždeň v prednáške a potom pondelok a to, čo budete kryť 39 00:01:56,200 --> 00:01:57,330 viac zajtra. 40 00:01:57,330 --> 00:01:59,060 A nakoniec, budeme hovoriť o pset2. 41 00:01:59,060 --> 00:02:03,640 Ak by som mohol dostať zdvihnutím ruky, ak som sa pozrel na problém nastaviť dva 42 00:02:03,640 --> 00:02:04,890 špecifikácia. 43 00:02:04,890 --> 00:02:07,060 44 00:02:07,060 --> 00:02:08,120 Povieme, že každého. 45 00:02:08,120 --> 00:02:09,419 Fantastic. 46 00:02:09,419 --> 00:02:12,070 >> Preberieme základné problémové okruhy vo chvíli, ale keď si prečítate problém sadu 47 00:02:12,070 --> 00:02:14,340 špecifikácia, to je všetko, čo musíte urobiť. 48 00:02:14,340 --> 00:02:18,370 Ak budete čítať, že predtým, než ste prišiel do triedy a časť v utorok, budete 49 00:02:18,370 --> 00:02:19,220 byť skvelý pozíciu. 50 00:02:19,220 --> 00:02:21,680 Môžeme prejsť problém set, čo je to, čo budeme 51 00:02:21,680 --> 00:02:22,090 k tomu na konci. 52 00:02:22,090 --> 00:02:23,500 Chystáme sa prejsť logika, uistite sa, že 53 00:02:23,500 --> 00:02:24,710 všetci sú na rovnakej stránke. 54 00:02:24,710 --> 00:02:28,650 >> Chcem, aby si bol schopný opustiť utorok cítiť veľmi pohodlne s tým, čo 55 00:02:28,650 --> 00:02:31,560 je potrebné urobiť pre tento týždeň problému set, a ak nie, budem šťastne 56 00:02:31,560 --> 00:02:33,050 zostať po a pracovať s vami. 57 00:02:33,050 --> 00:02:36,850 Ale to je jedna vec, ktorú musíte robiť, ale myslím, že by bolo naozaj šikovný, 58 00:02:36,850 --> 00:02:40,500 len preto, aby si problém sadu Špecifikácia podľa tried v utorok, 59 00:02:40,500 --> 00:02:42,640 ktoré znie ako Veľa z vás urobil. 60 00:02:42,640 --> 00:02:45,810 >> Začnem s programom, každá trieda takže viete, kam ideme. 61 00:02:45,810 --> 00:02:49,520 To je tiež užitočné pre ľudí sledujú online, pretože každá časť 62 00:02:49,520 --> 00:02:53,540 je farebne odlíšené, takže ak chcete, aby sa späť a len pozerať 10 minút skôr 63 00:02:53,540 --> 00:02:56,950 ako celé 90-minútové časti je stačí ísť na farebné kódované časti 64 00:02:56,950 --> 00:02:57,890 a pozrieť sa na túto časť. 65 00:02:57,890 --> 00:03:01,510 Tak som sa snažil rozohnať do peknej moduly, ktoré vám umožnia - 66 00:03:01,510 --> 00:03:03,960 Ak sa chcete vrátiť a skontrolovať, alebo ostatní študenti, ktorí sú práve 67 00:03:03,960 --> 00:03:05,350 sledovanie sekciu Recenzia - 68 00:03:05,350 --> 00:03:08,130 nájsť konkrétnu vec, ktorú chcete venovať pozornosť 69 00:03:08,130 --> 00:03:10,480 a dozvedieť sa viac o 70 00:03:10,480 --> 00:03:11,390 Sladký. 71 00:03:11,390 --> 00:03:12,180 >> Normy. 72 00:03:12,180 --> 00:03:13,680 Som vedúci FOP na akademickej pôde. 73 00:03:13,680 --> 00:03:14,900 Neviem, či niekto urobil FOP. 74 00:03:14,900 --> 00:03:16,280 Vedeli niekto robiť FOP? 75 00:03:16,280 --> 00:03:17,100 Jeden človek urobil FOP. 76 00:03:17,100 --> 00:03:18,430 Dvaja ľudia robili FOP. 77 00:03:18,430 --> 00:03:19,250 Skvelé. 78 00:03:19,250 --> 00:03:22,360 Takže FOP je prvý rok Outdoor Orientačný program. 79 00:03:22,360 --> 00:03:27,240 Berieme prvák do lesa a aby najkúzelnejšou skúseností 80 00:03:27,240 --> 00:03:28,830 ich životy, že? 81 00:03:28,830 --> 00:03:29,220 Jo. 82 00:03:29,220 --> 00:03:30,080 Znie to akurát. 83 00:03:30,080 --> 00:03:36,360 >> Tak som chcel začať naše prvé sekcie diskutovať o niektoré normy 84 00:03:36,360 --> 00:03:38,860 pre túto triedu a náš vzťah pretože si myslím, 85 00:03:38,860 --> 00:03:40,010 sú veľmi dôležité. 86 00:03:40,010 --> 00:03:43,630 Po prvé a predovšetkým, ako tí z vás, ktorí sú moja časť dostali a 87 00:03:43,630 --> 00:03:47,150 je v ňom popísaná e-mail, milujem to. 88 00:03:47,150 --> 00:03:48,130 Toto je moja obľúbená časť roka. 89 00:03:48,130 --> 00:03:49,100 Bola som tak nadšená. 90 00:03:49,100 --> 00:03:50,040 Bol som tu dnes niekoľko hodín. 91 00:03:50,040 --> 00:03:54,560 Som neopustil túto budovu okrem ísť jesť, pretože mám rád CS50 kategóriu I 92 00:03:54,560 --> 00:03:58,620 rád učenie, milujem prácu s vami. 93 00:03:58,620 --> 00:04:02,000 >> Jednou z mojich priorít, ak nie môj prioritou číslo jedna, a to nielen pre 94 00:04:02,000 --> 00:04:05,130 Táto trieda zahŕňa ale môj druhý triedy a extracurriculars, je 95 00:04:05,130 --> 00:04:09,350 podporovať ľudí, a pomôže vám chlapci, a v mojich silách, aby sa ubezpečil, že vám 96 00:04:09,350 --> 00:04:13,780 chlapci majú skvelý, zábavný, produktívne, pútavé, vzrušujúce 97 00:04:13,780 --> 00:04:15,250 skúsenosti v tejto triede. 98 00:04:15,250 --> 00:04:16,190 To je to, čo som odhodlaný. 99 00:04:16,190 --> 00:04:17,959 To je dôvod, prečo som rád, ako to urobiť. 100 00:04:17,959 --> 00:04:20,190 To je moje číslo jedna vec, podporu, chlapci. 101 00:04:20,190 --> 00:04:25,110 Ak máte nejaké otázky týkajúce sa prednášky, Problém set, časť, 102 00:04:25,110 --> 00:04:28,830 život, aj keď so mnou chceš hovoriť o život, neváhajte osloviť. 103 00:04:28,830 --> 00:04:31,210 >> Máš moje číslo mobilného telefónu, Máte môj e-mail 104 00:04:31,210 --> 00:04:32,910 adresu, máte moje GChat. 105 00:04:32,910 --> 00:04:37,540 Môžete ma kontaktovať na niektoré alebo všetky tí kedykoľvek, ale pravdepodobne nebude mať 106 00:04:37,540 --> 00:04:38,720 reakciu, kedykoľvek. 107 00:04:38,720 --> 00:04:41,020 Snažím sa dostať späť do 24 hodín. 108 00:04:41,020 --> 00:04:44,760 Často to bude v rámci 20 minút alebo 24 minút. 109 00:04:44,760 --> 00:04:46,110 Mala som povedal, že , Aby bolo rovnobežné. 110 00:04:46,110 --> 00:04:48,840 Ale dostanete odpoveď celkom rýchlo. 111 00:04:48,840 --> 00:04:54,220 >> Ak text mi hodinu pred Problém sada je vďaka, budem upokojiť 112 00:04:54,220 --> 00:04:57,660 dole a robiť hlboké dychové cvičenia s vami, ale ak ste ešte nezačali, 113 00:04:57,660 --> 00:05:00,270 budete pravdepodobne nebude až do konca, a Nemôžem pomoct tam 114 00:05:00,270 --> 00:05:01,710 aj keď sa budem snažiť čo najlepšie. 115 00:05:01,710 --> 00:05:03,920 Tak som sa robiť všetko Môžem vás podporiť. 116 00:05:03,920 --> 00:05:07,980 Prosím, neváhajte osloviť, či je to v časti opäť v úradných hodinách 117 00:05:07,980 --> 00:05:09,150 ak ste ma vidieť, alebo dokonca vonku. 118 00:05:09,150 --> 00:05:11,800 Som rád, nastaviť čas na stretnutie a pôsobí prostredníctvom problémov 119 00:05:11,800 --> 00:05:14,410 s alebo ísť cez materiál. 120 00:05:14,410 --> 00:05:15,990 Takže to je číslo jedna, podpora. 121 00:05:15,990 --> 00:05:17,940 Urobím všetko, čo som môžu, aby ho podporili. 122 00:05:17,940 --> 00:05:21,520 >> Číslo dva, stretnutia v stredu. 123 00:05:21,520 --> 00:05:24,760 Rovnako ako by som chcel byť, som nie je všemocný a všemohúci, alebo 124 00:05:24,760 --> 00:05:28,410 vševedúci, takže neviem všetky Doba či to, čo robím, je stále 125 00:05:28,410 --> 00:05:33,410 naprieč, v prípade, že spôsob, ako učím téma vám pomôže naučiť sa to, alebo ak si 126 00:05:33,410 --> 00:05:36,120 sú zmätení na tému, ale nie zdvihnite ruku a opýtajte sa ma 127 00:05:36,120 --> 00:05:37,390 alebo mi pošlite e-mail. 128 00:05:37,390 --> 00:05:42,150 Alebo aj keď ste znovu, sú zmätení o niečom, čo na problém televízore. 129 00:05:42,150 --> 00:05:44,240 Ak nechcete dostať ku mne, Nemôžem vedieť, že určite. 130 00:05:44,240 --> 00:05:46,950 Budem robiť moje najlepšie skontrolovať na vy, uistite sa, že je všetko 131 00:05:46,950 --> 00:05:51,170 to dobre, pokúste sa naučiť veci takým spôsobom, , Ktorý bude napomáhať k väčšine 132 00:05:51,170 --> 00:05:54,910 vaše štýly učenia, ale ak existuje Môžem niečo urobiť, dajte mi vedieť. 133 00:05:54,910 --> 00:05:58,520 >> Pozdĺž týchto liniek, ak chcete nejakú pomoc s problémom set, som viac 134 00:05:58,520 --> 00:05:59,700 ako radi pomôžu sa problémov k 135 00:05:59,700 --> 00:06:02,300 Chystáme sa urobiť veľa , Že k druhému 136 00:06:02,300 --> 00:06:03,460 polovica tohto oddielu. 137 00:06:03,460 --> 00:06:06,040 Ale ak ste nečítali problém sady zálohovanie a neboli sledoval prechádzku 138 00:06:06,040 --> 00:06:09,310 vďaka a ešte sledoval, kraťasy a očakávajú, aby som vás naučí, 139 00:06:09,310 --> 00:06:13,260 všetko, čo bolo nahrával on-line alebo ktoré môžete nájsť na CS50 140 00:06:13,260 --> 00:06:16,720 štúdie, v skutočnosti to nie je fér mi alebo vaše ďalšie kolegov. 141 00:06:16,720 --> 00:06:20,440 142 00:06:20,440 --> 00:06:25,730 >> Takže, prosím, že som viac ako radi pomôžu vy, ale vy tu so mnou stretnúť v 143 00:06:25,730 --> 00:06:27,230 prostredný. 144 00:06:27,230 --> 00:06:30,100 Máme veľa zdrojov na vám k dispozícii CS50. 145 00:06:30,100 --> 00:06:31,230 Som sa zmienil niektoré z nich. 146 00:06:31,230 --> 00:06:32,960 Prosím, využiť z nich. 147 00:06:32,960 --> 00:06:35,140 Ak ste zmätení, že som viac než šťastný ktoré vám pomôžu vysvetliť im 148 00:06:35,140 --> 00:06:39,290 iný spôsob, ale nie je to fér, ak Študenti ukáže v úradných hodinách, 149 00:06:39,290 --> 00:06:42,530 nezačali nič, a to je Vo štvrtok v noci a oni očakávajú 150 00:06:42,530 --> 00:06:45,880 TF prejsť skrz každý vec za problém nastavený z dôvodu 151 00:06:45,880 --> 00:06:47,140 V poludnie nasledujúceho dňa. 152 00:06:47,140 --> 00:06:48,300 Zmysel? 153 00:06:48,300 --> 00:06:50,890 Opäť, prosím, s nami stretnúť v stredu. 154 00:06:50,890 --> 00:06:53,230 >> A konečne, vysoké očakávania. 155 00:06:53,230 --> 00:06:58,010 Budem sa triedenie každý, kto je v mojom oddieli, alebo zaznamenávať vaše 156 00:06:58,010 --> 00:06:59,020 základné problémové okruhy. 157 00:06:59,020 --> 00:07:01,240 Ste sa vrátili problém nastaviť nulu alebo ešte jeden. 158 00:07:01,240 --> 00:07:02,250 Sme ľúto. 159 00:07:02,250 --> 00:07:04,970 Trvalo nám nejakú dobu, aby konečne usadiť sekcie a teraz 160 00:07:04,970 --> 00:07:05,560 môžeme začať triedenie. 161 00:07:05,560 --> 00:07:09,560 >> Dostanem späť k vám čo najskôr. 162 00:07:09,560 --> 00:07:11,890 To sú niektoré z mojich advisees vonku. 163 00:07:11,890 --> 00:07:14,150 Dostanem späť k vám čo najskôr. 164 00:07:14,150 --> 00:07:18,046 A problém nastaviť dva, budeme na plánovať a začneme dostať je 165 00:07:18,046 --> 00:07:20,440 pre vás veľmi rýchlo po dáte im palce 166 00:07:20,440 --> 00:07:24,130 >> Keď sa váš problém nastaviť naspäť, budete dostanete skóre, ako viete z 167 00:07:24,130 --> 00:07:28,150 čítanie osnovy - správnosť, dizajn, rozsah a štýl skóre. 168 00:07:28,150 --> 00:07:29,760 Budete tiež získať pripomienky. 169 00:07:29,760 --> 00:07:32,160 Komentáre sú dôležitejšie než skóre. 170 00:07:32,160 --> 00:07:33,780 Myslím, že to je bezpečné hovoriť, že. 171 00:07:33,780 --> 00:07:37,930 >> Výsledky sú len číslo od jednej do piatich. 172 00:07:37,930 --> 00:07:38,930 Je ťažké si na tie. 173 00:07:38,930 --> 00:07:40,720 Je to ťažké pre zlepšenie od tých. 174 00:07:40,720 --> 00:07:44,460 Ale komentára sa poukázať na špecifické čo si urobil dobre, alebo oblasti 175 00:07:44,460 --> 00:07:48,360 môžete zlepšiť a dať vám niektoré nápady pre budúcnosť alebo alternatívne 176 00:07:48,360 --> 00:07:49,160 spôsoby, ako robiť veci. 177 00:07:49,160 --> 00:07:52,270 >> Takže, prosím, prosím, prečítajte si prostredníctvom pripomienok. 178 00:07:52,270 --> 00:07:54,190 Dal som veľa času na tieto pripomienky. 179 00:07:54,190 --> 00:07:57,190 Prečítajte si skrze ne, a to nielen posunúť dole na dno 180 00:07:57,190 --> 00:08:01,890 PDF, pozrite sa na svoje skóre, alebo on-line a nájsť svoje skóre, a potom ignorovať 181 00:08:01,890 --> 00:08:02,800 komentáre. 182 00:08:02,800 --> 00:08:03,910 To nie je, ako ste bude lepší. 183 00:08:03,910 --> 00:08:06,550 To nie je, ako budete zvyšovať vaše skóre nakoniec rovnako 184 00:08:06,550 --> 00:08:07,340 pri pohľade na skóre. 185 00:08:07,340 --> 00:08:08,760 Pozrite sa prosím na týchto pripomienok. 186 00:08:08,760 --> 00:08:13,240 >> A po línii vysokým očakávaním, znova, ako som povedal, si 187 00:08:13,240 --> 00:08:14,260 možno skóroval z jedného až piatich rokov. 188 00:08:14,260 --> 00:08:17,120 Dvojky, trojky, štvorky a sú Drvivá väčšina skóre 189 00:08:17,120 --> 00:08:17,940 budete sa dostať. 190 00:08:17,940 --> 00:08:20,180 Ty a päťky sú obaja veľmi zriedkavé. 191 00:08:20,180 --> 00:08:21,720 Vždycky veci môžeme urobiť lepšie. 192 00:08:21,720 --> 00:08:23,490 Kedykoľvek som kód programu, je tu vždy niečo, čo som 193 00:08:23,490 --> 00:08:24,800 mohol urobiť lepšie. 194 00:08:24,800 --> 00:08:28,740 >> Takže skôr než hovoriť dostanete päť stále na všetko a urobil 195 00:08:28,740 --> 00:08:31,960 všetko perfektné, nemyslím si, že by z nás naozaj veria, že my - alebo 196 00:08:31,960 --> 00:08:34,830 dúfajme, že nerobíme všetko perfektné po celú dobu. 197 00:08:34,830 --> 00:08:37,010 Takže nemusíte mať strach, ak nedostal päťku. 198 00:08:37,010 --> 00:08:40,470 Päť nie je mapovať na, štyri nie je mapovať na B, tri sa 199 00:08:40,470 --> 00:08:42,950 nie je mapa je na C. To nie je ako skóre fungovať. 200 00:08:42,950 --> 00:08:48,140 >> Rovnako ako David mnohokrát povedal, na Semester Koniec všetky vaše skóre a 201 00:08:48,140 --> 00:08:53,390 Vstup odo mňa, vaša TF, zídu a určiť výslednú známku pre vás. 202 00:08:53,390 --> 00:08:56,760 Ale znovu, to nie je päť, , Štyri, B, a tak ďalej. 203 00:08:56,760 --> 00:09:01,150 Takže budem mať vysoké očakávania pre ľudí. 204 00:09:01,150 --> 00:09:03,670 Budem očakávať dobrú problému súpravy a Idem dať 205 00:09:03,670 --> 00:09:05,010 spätnú väzbu ako taký. 206 00:09:05,010 --> 00:09:07,430 A nebude to znamenať, že si dostane horšiu známku. 207 00:09:07,430 --> 00:09:09,760 Tie sú odstupňované z hľadiska váš postup z týždňa 208 00:09:09,760 --> 00:09:11,260 nulu kurzu je koniec. 209 00:09:11,260 --> 00:09:17,190 >> A napokon, pokiaľ ide o vysoko očakávania v triede, Milujem, keď 210 00:09:17,190 --> 00:09:18,460 ľudí podieľať. 211 00:09:18,460 --> 00:09:23,180 Chápem, niektorí ľudia cítia viac či menej pohodlné zúčastňuje. 212 00:09:23,180 --> 00:09:26,050 Ostatní ľudia sa zúčastňujú nie je zdvihnutím ruky a 213 00:09:26,050 --> 00:09:27,320 hovorí po celú dobu. 214 00:09:27,320 --> 00:09:30,570 Ale my sme v tejto triede sa bude robí veľa malých problémov, veľa 215 00:09:30,570 --> 00:09:33,770 mini otázok, a ešte niečo navyše väčšie problémy kódovanie. 216 00:09:33,770 --> 00:09:36,760 Takže určite pracovať týchto cvičení sa keď sme si ich na počítači alebo na 217 00:09:36,760 --> 00:09:37,900 list papiera. 218 00:09:37,900 --> 00:09:40,933 >> Ale ja tiež dať nejaký čas, než niekedy niekto musí odpovedať na niektoré 219 00:09:40,933 --> 00:09:42,220 z otázok, ktoré som sa opýtať. 220 00:09:42,220 --> 00:09:44,930 Takže, pretože som vám nejaký čas na o tom premýšľať, pretože ideme 221 00:09:44,930 --> 00:09:49,380 robiť veci niekedy partnermi, Budem očakávať, že všetci 222 00:09:49,380 --> 00:09:52,150 sa zaoberá trochu. 223 00:09:52,150 --> 00:09:56,030 A pre nedostatok lepšieho termínu, je bude pravdepodobne cold calling, ktoré 224 00:09:56,030 --> 00:09:59,045 je miesto, kde každý bude mať šancu premýšľať o odpoveď, a potom 225 00:09:59,045 --> 00:10:01,150 Zavolám na vás, a potom povieš odpoveď. 226 00:10:01,150 --> 00:10:05,200 >> Neboj sa, alebo sa báť o to. 227 00:10:05,200 --> 00:10:08,610 Ja som to urobil v minulosti, a zistili sme, že je oveľa úspešnejší, 228 00:10:08,610 --> 00:10:11,810 prečítajte si tiež pedagogický výskum na to, aby určiť, či je, alebo nie je 229 00:10:11,810 --> 00:10:12,640 dobrá taktika. 230 00:10:12,640 --> 00:10:15,790 To je veľmi užitočné, najmä ak dať študentom čas na premýšľanie o 231 00:10:15,790 --> 00:10:20,070 odpovede a nedávajú im len tak a povie to hneď bat. 232 00:10:20,070 --> 00:10:22,620 Ale ak sa necítite pohodlne odpovede, som tiež celkom dobre 233 00:10:22,620 --> 00:10:25,370 vycítil, že von, a my nebudeme ťa na mieste, najmä na 234 00:10:25,370 --> 00:10:28,240 fotoaparát, aj keď žiadny z ste na kamere práve teraz. 235 00:10:28,240 --> 00:10:32,250 >> Takže to sú tie normy mám. 236 00:10:32,250 --> 00:10:34,670 Ešte jedna vec, v duchu splniť v stredu. 237 00:10:34,670 --> 00:10:36,490 Budem vám chlapci veľa spätnej väzby. 238 00:10:36,490 --> 00:10:38,310 Prosím, dajte mi spätnú väzbu, rovnako. 239 00:10:38,310 --> 00:10:46,190 K dispozícii je internetové stránky, sayat.me/cs50. 240 00:10:46,190 --> 00:10:48,380 Takže je to úprimná spätná väzba. 241 00:10:48,380 --> 00:10:50,730 Ak chcete, aby to v priebehu časti, Mám e-mail vždy, keď sa to stane. 242 00:10:50,730 --> 00:10:53,820 Dáme si prestávku v trochu, takže budem prezrieť spätnej väzby po tom. 243 00:10:53,820 --> 00:10:55,970 Ak budete mať nejaké pripomienky, prosím, daj mi ho tam. 244 00:10:55,970 --> 00:11:01,380 >> Dáte Ak mi spätnú väzbu o Q, to je nádherné, ale to je príručka 245 00:11:01,380 --> 00:11:02,570 že si na konci. 246 00:11:02,570 --> 00:11:05,690 Ale, že bude na konci semestra tak Nebudem môcť vziať nič z toho 247 00:11:05,690 --> 00:11:08,620 spätná väzba a otočte ho do výučby vy lepšie. 248 00:11:08,620 --> 00:11:11,020 Takže prosím, ak máte nejaké spätná väzba, daj mi to. 249 00:11:11,020 --> 00:11:12,010 Milujem spätnú väzbu. 250 00:11:12,010 --> 00:11:14,490 Späť na FOP, dostaneme spätnú väzbu po celú dobu. 251 00:11:14,490 --> 00:11:18,610 >> Môžete mi dať plusy, dobré veci, delty, veci môžem zlepšiť na. 252 00:11:18,610 --> 00:11:20,600 Môžete komentovať na mojom oblečení. 253 00:11:20,600 --> 00:11:24,170 To nebude tak užitočné, ale ty si vitajte komentovať akékoľvek 254 00:11:24,170 --> 00:11:24,570 všetko. 255 00:11:24,570 --> 00:11:26,280 Prosím, prosím, daj mi spätnú väzbu. 256 00:11:26,280 --> 00:11:28,740 Vážim si ho veľa, a to znamená pre mňa veľa. 257 00:11:28,740 --> 00:11:31,760 258 00:11:31,760 --> 00:11:33,280 >> Ešte jedna norma, legrace. 259 00:11:33,280 --> 00:11:34,530 Budeme mať veľa zábavy. 260 00:11:34,530 --> 00:11:36,930 Dúfajme, že v tomto kurze, budete majú veľa zábavy. 261 00:11:36,930 --> 00:11:38,780 Budeme mať cukroví na časti. 262 00:11:38,780 --> 00:11:40,040 Budeme mať hudbu. 263 00:11:40,040 --> 00:11:45,510 Budeme snáď poznávanie sa ďalšie trochu dobre, takže chcem, 264 00:11:45,510 --> 00:11:47,690 to byť zábavné, pútavé skúsenosti. 265 00:11:47,690 --> 00:11:50,890 >> Viem, že niektorí z vás zaspal prednášky ste mali dneska, 266 00:11:50,890 --> 00:11:53,750 takže dúfajme, že nebude je tomu teraz. 267 00:11:53,750 --> 00:11:55,960 A ak je tomu teraz, len nie chrápať, pretože to by mohlo 268 00:11:55,960 --> 00:11:57,580 sa zachytil na kameru. 269 00:11:57,580 --> 00:11:58,770 Sladký. 270 00:11:58,770 --> 00:12:04,020 Akékoľvek otázky, pripomienky alebo obavy než som sa ďalej o niečom máme 271 00:12:04,020 --> 00:12:05,270 hovorili? 272 00:12:05,270 --> 00:12:08,620 273 00:12:08,620 --> 00:12:11,350 Skvelé. 274 00:12:11,350 --> 00:12:14,830 >> Takže sme ísť do poľa ako prvý. 275 00:12:14,830 --> 00:12:17,140 To je, ako si urobiť poľa. 276 00:12:17,140 --> 00:12:18,410 Videli sme to predtým. 277 00:12:18,410 --> 00:12:21,830 Máte dátový typ, máte meno, a potom máte veľkosť. 278 00:12:21,830 --> 00:12:24,430 Práve tu vytvoriť dve polia. 279 00:12:24,430 --> 00:12:30,360 Prvý z nich je pole znakov, a má 26 miest. 280 00:12:30,360 --> 00:12:33,790 Druhá je pole skóre, a to má tri 281 00:12:33,790 --> 00:12:35,390 priestory pre tri celé čísla. 282 00:12:35,390 --> 00:12:35,827 Áno? 283 00:12:35,827 --> 00:12:38,200 >> Študent: Sú všetky tieto snímky niekde k dispozícii pre nás? 284 00:12:38,200 --> 00:12:38,850 >> JASON Hirschhorn: Veľká otázka. 285 00:12:38,850 --> 00:12:40,650 Otázkou bolo, sú všetky Tieto snímky k dispozícii? 286 00:12:40,650 --> 00:12:40,920 Áno. 287 00:12:40,920 --> 00:12:43,420 Všetky tieto snímky budú k dispozícii, a do budúcna budem poslať e-mailom 288 00:12:43,420 --> 00:12:44,640 ste predtým sekcie. 289 00:12:44,640 --> 00:12:47,340 Ale dnes, pretože sa jedná o prvý týždeň sme mali oneskorený štart. 290 00:12:47,340 --> 00:12:49,675 Takže zvyčajne, budete si tieto snímky, ale budú k dispozícii online a 291 00:12:49,675 --> 00:12:52,420 Budem e-mail je pre vás hneď po triede. 292 00:12:52,420 --> 00:12:54,140 Nejaké ďalšie otázky? 293 00:12:54,140 --> 00:13:01,330 >> Takže znova, polia sú boxy pre nedostatok lepšie slovo, ktoré drží viac 294 00:13:01,330 --> 00:13:06,420 prvky jedného typu dát, a oni sú vedľa seba v pamäti. 295 00:13:06,420 --> 00:13:11,370 A tak opäť, je to, ako môžete robia dva druhy polí. 296 00:13:11,370 --> 00:13:15,090 >> Takže potom, čo ste vykonali polia s že prvý riadok - int skóre, držiak 297 00:13:15,090 --> 00:13:17,430 tri, zátvorka - môžete Chcete ju inicializovať. 298 00:13:17,430 --> 00:13:19,050 Ak chcete dať nejaké hodnoty tam. 299 00:13:19,050 --> 00:13:24,660 A to je, ako sa dať nejaké hodnoty tam, len výber Index a 300 00:13:24,660 --> 00:13:25,670 písanie číslo. 301 00:13:25,670 --> 00:13:27,130 Poďme nakresliť to na tabuľu. 302 00:13:27,130 --> 00:13:28,270 Každý môže vidieť? 303 00:13:28,270 --> 00:13:29,030 Každý môže vidieť. 304 00:13:29,030 --> 00:13:30,790 Sladký. 305 00:13:30,790 --> 00:13:36,550 >> Tak, že to bude môj Pole s názvom skóre. 306 00:13:36,550 --> 00:13:37,730 Ako vidíte, je to veľkosť tri. 307 00:13:37,730 --> 00:13:39,210 K dispozícii sú tri polia v tam. 308 00:13:39,210 --> 00:13:43,120 Každý z nich sa zmestí to, čo Typ dátového typu? 309 00:13:43,120 --> 00:13:43,790 >> STUDENT: Integer. 310 00:13:43,790 --> 00:13:45,250 >> JASON Hirschhorn: číslo v tejto jednej. 311 00:13:45,250 --> 00:13:48,790 Napísali sme int skóre a prvé slovo je dátový typ, ktorý sa bude 312 00:13:48,790 --> 00:13:50,910 ísť do polí v tomto poli. 313 00:13:50,910 --> 00:13:52,160 Tak som sa zmestí tri. 314 00:13:52,160 --> 00:13:54,880 315 00:13:54,880 --> 00:13:57,000 Prečo mám nula až tam na palube? 316 00:13:57,000 --> 00:13:59,240 Prečo sa hovorí skóre nula rovná 1? 317 00:13:59,240 --> 00:14:02,090 318 00:14:02,090 --> 00:14:03,180 Pripomeňte mi svoje meno. 319 00:14:03,180 --> 00:14:03,470 >> STUDENT: Kurt. 320 00:14:03,470 --> 00:14:04,070 >> JASON Hirschhorn: Kurt. 321 00:14:04,070 --> 00:14:04,480 >> Žiak: Áno. 322 00:14:04,480 --> 00:14:04,920 >> JASON Hirschhorn: Prečo? 323 00:14:04,920 --> 00:14:07,230 >> Žiak: Pretože prvý index je nula, začneme počítať od nuly. 324 00:14:07,230 --> 00:14:08,480 >> JASON Hirschhorn: Takže začneme počítať od nuly. 325 00:14:08,480 --> 00:14:09,580 To je presne to pravé. 326 00:14:09,580 --> 00:14:12,340 To je mätúce časť a vôľa výlet ste sa, a to najmä, keď ste 327 00:14:12,340 --> 00:14:14,900 snaží iterovat polí, ktoré budeme robiť trochu. 328 00:14:14,900 --> 00:14:15,980 Začneme počítať od nuly. 329 00:14:15,980 --> 00:14:19,170 Takže ak chcem odkázať na prvý box, nie je to jeden box. 330 00:14:19,170 --> 00:14:22,290 Bohužiaľ, je to pole nulová. 331 00:14:22,290 --> 00:14:26,460 Druhý z nich je jeden box, a v tomto prípad, tretí je box dva. 332 00:14:26,460 --> 00:14:28,700 >> Čo poli tri? 333 00:14:28,700 --> 00:14:30,670 Kde je box tri? 334 00:14:30,670 --> 00:14:34,750 Alebo keď chcem robiť výsledky, držiak tri, zátvorka, čo je to? 335 00:14:34,750 --> 00:14:37,650 336 00:14:37,650 --> 00:14:39,760 Takže ste povedal, že znak null. 337 00:14:39,760 --> 00:14:41,600 Akékoľvek iné myšlienky? 338 00:14:41,600 --> 00:14:44,590 Čo je to hodnotenie držiak držiak tri? 339 00:14:44,590 --> 00:14:48,045 >> STUDENT: Je to v skutočnosti neexistuje, pretože jenom definovaná ako skóre, 340 00:14:48,045 --> 00:14:49,370 držiak tri. 341 00:14:49,370 --> 00:14:51,400 >> JASON Hirschhorn: Takže hovoríte, že v skutočnosti neexistuje. 342 00:14:51,400 --> 00:14:54,230 V niektorých prípadoch, kedy máme čo do činenia s struny, zvyčajne dáme null 343 00:14:54,230 --> 00:14:54,790 znak na konci. 344 00:14:54,790 --> 00:14:56,100 Dostaneme sa k tomu v druhom. 345 00:14:56,100 --> 00:15:01,020 Ale v tomto prípade žiadna tretia okno tady. 346 00:15:01,020 --> 00:15:06,390 Takže posledný pole v každom poli je zmenšenej 1. 347 00:15:06,390 --> 00:15:11,310 Takže ak máme poľa veľkosti n, Prvé pole je na nule, posledný z nich je 348 00:15:11,310 --> 00:15:12,700 v n mínus 1. 349 00:15:12,700 --> 00:15:14,970 A v tomto prípade, že neexistuje. 350 00:15:14,970 --> 00:15:17,970 Existuje niečo, čo tu pamäť, ale to nie je naša. 351 00:15:17,970 --> 00:15:18,460 Nemáme vlastné. 352 00:15:18,460 --> 00:15:19,570 Nemali sme na neho spýta. 353 00:15:19,570 --> 00:15:22,606 Takže keď sa snažíme o prístup, ktorý my budeme urobiť trochu, budeme pravdepodobne bude 354 00:15:22,606 --> 00:15:24,970 dostať do ťažkostí. 355 00:15:24,970 --> 00:15:29,180 >> V tomto prípade som inicializácia moju dušu pole s tromi premennými. 356 00:15:29,180 --> 00:15:36,195 Dávame jeden v kolónke nula, dva v jeden box, a tri v poli dvaja. 357 00:15:36,195 --> 00:15:39,280 Má niekto nejaké otázky, o inicializáciu poľa? 358 00:15:39,280 --> 00:15:44,540 359 00:15:44,540 --> 00:15:46,970 >> Tak sme išli na to práve teraz. 360 00:15:46,970 --> 00:15:52,725 Skóre, držiak tri, zátvorka, že neexistuje. 361 00:15:52,725 --> 00:15:58,130 Sme nula indexované v informatike, takže začneme počítať od nuly. 362 00:15:58,130 --> 00:16:01,860 Posledné políčko máme k dispozícii, je Tretia pole, ale je to len krabička 363 00:16:01,860 --> 00:16:03,110 číslo dva. 364 00:16:03,110 --> 00:16:05,790 365 00:16:05,790 --> 00:16:09,710 >> Dole, to je alternatíva spôsob inicializácia poľa. 366 00:16:09,710 --> 00:16:13,410 Takže namiesto vytvárania poľa na jednej linka, vyplňovanie prvého poľa, potom 367 00:16:13,410 --> 00:16:17,070 druhý rámik, potom tretie okno, môžete to urobiť všetko v jednom riadku. 368 00:16:17,070 --> 00:16:19,040 Takže v tomto riadku obe polia. 369 00:16:19,040 --> 00:16:23,460 Tým sa vytvorí presne rovnaký ako pole to, čo sme vytvorili tu, ale 370 00:16:23,460 --> 00:16:24,710 Len sa to v jednej línii. 371 00:16:24,710 --> 00:16:29,740 372 00:16:29,740 --> 00:16:31,360 >> Teraz sme vytvorili našu ponuku. 373 00:16:31,360 --> 00:16:34,100 Spravidla raz vytvoriť maticu, môžete Chcete s tým niečo urobiť, či už 374 00:16:34,100 --> 00:16:38,430 ktorý je vyplniť, alebo si veci z nej a vytlačiť ich na obrazovke. 375 00:16:38,430 --> 00:16:42,270 V tomto prípade, ideme cez naše skóre pole, ktoré inicializovaný 376 00:16:42,270 --> 00:16:44,740 prvý riadok tu v šedej farbe. 377 00:16:44,740 --> 00:16:49,600 A potom sa na druhom riadku, začneme iterácie poľa. 378 00:16:49,600 --> 00:16:52,640 Má niekto nejaké otázky týkajúce sa Štruktúra pre slučky? 379 00:16:52,640 --> 00:16:55,250 380 00:16:55,250 --> 00:16:56,400 >> Tak to je pre slučke. 381 00:16:56,400 --> 00:16:59,530 Máme pôvodného stavu, a potom naša posledná stav a potom sme 382 00:16:59,530 --> 00:17:01,160 iterácii, ja, každý slučky. 383 00:17:01,160 --> 00:17:05,579 A v zložených zátvorkách v tomto pre slučky, čo sa stane, keby som spustiť 384 00:17:05,579 --> 00:17:06,290 tento program? 385 00:17:06,290 --> 00:17:10,410 Môže mi niekto povedať, čo by sme sa dostali? 386 00:17:10,410 --> 00:17:11,589 [? Matu? ?] 387 00:17:11,589 --> 00:17:13,819 >> Matu: Tlač všetkých bodov na každom riadku. 388 00:17:13,819 --> 00:17:14,900 To by vytlačte každý gól na samostatnom riadku. 389 00:17:14,900 --> 00:17:16,300 >> JASON Hirschhorn: Čo presne by to vytlačiť? 390 00:17:16,300 --> 00:17:19,790 >> Žiak: To by jeden vytlačiť, potom dva, potom tri. 391 00:17:19,790 --> 00:17:20,235 >> JASON Hirschhorn: Presne tak. 392 00:17:20,235 --> 00:17:23,490 To by tlačiť jeden, potom dva, potom tri, každý na samostatných riadkoch, pretože 393 00:17:23,490 --> 00:17:27,810 ideme cez pole a budete vidieť, že druhý, printf 394 00:17:27,810 --> 00:17:29,275 vyhlásenie, skóre i 395 00:17:29,275 --> 00:17:32,880 Takže v prvom kole cez naše pre slučky, aj nulová, čo znamená, že sme 396 00:17:32,880 --> 00:17:34,640 získanie hodnoty na nulu - 397 00:17:34,640 --> 00:17:36,900 ktoré, ak sa vrátime k Naše diagram, je - 398 00:17:36,900 --> 00:17:38,630 a vyplnenie - 399 00:17:38,630 --> 00:17:39,700 oh, to hovorí, že c 400 00:17:39,700 --> 00:17:41,680 To by malo byť% d 401 00:17:41,680 --> 00:17:43,970 Budem opraviť, že vo chvíli, keď Som ruku, ktorá sa na vás. 402 00:17:43,970 --> 00:17:48,670 Ale my predstavuje celé číslo, takže to by mala byť% d tu, nie% c 403 00:17:48,670 --> 00:17:50,340 Čo je% c pre? 404 00:17:50,340 --> 00:17:50,790 >> STUDENT: Character. 405 00:17:50,790 --> 00:17:52,680 >> JASON Hirschhorn: Znak, presne tak. 406 00:17:52,680 --> 00:17:53,690 Čo je ten druhý? 407 00:17:53,690 --> 00:17:56,260 Ak nechcete robiť,% d pre integer, čo iného môžete robiť? 408 00:17:56,260 --> 00:17:57,000 >> Žiak:. 409 00:17:57,000 --> 00:17:59,180 >> JASON Hirschhorn:% i, presne tak. 410 00:17:59,180 --> 00:18:01,660 Takže nejaké otázky ohľadom iterácie cez pole? 411 00:18:01,660 --> 00:18:05,500 412 00:18:05,500 --> 00:18:07,800 Takže čo sa stane, keď to urobíme? 413 00:18:07,800 --> 00:18:10,290 Namiesto toho, i je menšia než tri, my aj menej 414 00:18:10,290 --> 00:18:11,390 než alebo rovný trom. 415 00:18:11,390 --> 00:18:13,420 Čo sa stane, keď tento kód spustiť? 416 00:18:13,420 --> 00:18:17,510 417 00:18:17,510 --> 00:18:18,940 Áno, Annie? 418 00:18:18,940 --> 00:18:22,030 >> STUDENT: Chystajú sa vytlačiť divné veci na štvrtom riadku. 419 00:18:22,030 --> 00:18:23,850 >> JASON Hirschhorn: Takže ste povedal, je bude tlačiť divný veci na 420 00:18:23,850 --> 00:18:24,390 štvrtý riadok? 421 00:18:24,390 --> 00:18:25,750 Má niekto odpoveď na jej otázku? 422 00:18:25,750 --> 00:18:28,940 423 00:18:28,940 --> 00:18:33,160 Takže je pravdepodobné, že ak sa dostaneme do - 424 00:18:33,160 --> 00:18:36,700 tak na štvrtom bicykli cez náš pre slučky, rovnako ako ste si mysleli, Annie, 425 00:18:36,700 --> 00:18:39,430 to bude skóre držiak tri, ktoré už sme zistili, nie je 426 00:18:39,430 --> 00:18:41,990 existujú, a budeme sa snažiť a prístup, aby ju vytlačiť 427 00:18:41,990 --> 00:18:43,350 von, použite ju nejakým spôsobom. 428 00:18:43,350 --> 00:18:46,060 Takže počítač bude pravdepodobne hnevať sa na nás. 429 00:18:46,060 --> 00:18:46,760 Máš úplnú pravdu. 430 00:18:46,760 --> 00:18:48,830 >> To by mohlo ukončiť program úplne. 431 00:18:48,830 --> 00:18:52,222 To by mohlo vytlačiť niečo naozaj divné. 432 00:18:52,222 --> 00:18:53,420 Nemôžete povedať s istotou. 433 00:18:53,420 --> 00:18:56,210 Kurzy sú to nejspíš hnevať na vy a len prestať hneď. 434 00:18:56,210 --> 00:19:00,100 >> Ale to je častý omyl, budete musieť , Kde ste len kúsok od jedného na 435 00:19:00,100 --> 00:19:05,110 koniec, a to je chyba, ktorá bude mor po celú dobu svojho kódovania. 436 00:19:05,110 --> 00:19:09,350 437 00:19:09,350 --> 00:19:14,150 Jeden spôsob, ako by som chcel urobiť, je len na tabule, prejsť každej iterácii 438 00:19:14,150 --> 00:19:18,190 zo slučky na ruky alebo na papieri vidieť čo sa deje, a potom 439 00:19:18,190 --> 00:19:20,440 všeobecne si uvedomiť, oh počkať, ja by som nemal šli do nižšej alebo 440 00:19:20,440 --> 00:19:20,870 rovný trom. 441 00:19:20,870 --> 00:19:24,730 Mal som sa zastavil pri dvoch, čo je čo sa stane, keď sa váš stav je menej 442 00:19:24,730 --> 00:19:26,206 ako tri. 443 00:19:26,206 --> 00:19:29,120 Akékoľvek otázky tak ďaleko? 444 00:19:29,120 --> 00:19:31,010 Sladký. 445 00:19:31,010 --> 00:19:33,360 >> Takže všetci máte váš počítač otvorený. 446 00:19:33,360 --> 00:19:36,760 Chystáme sa dať dve až tri minút napísať program, ktorý 447 00:19:36,760 --> 00:19:40,460 vytvorí pole s celými číslami jedna cez päť a potom vytlačí každý 448 00:19:40,460 --> 00:19:41,720 číslo na nový riadok. 449 00:19:41,720 --> 00:19:44,330 450 00:19:44,330 --> 00:19:46,000 A ak máte nejaké otázky, zdvihnite ruku. 451 00:19:46,000 --> 00:19:48,140 Som rád, že prísť. 452 00:19:48,140 --> 00:19:50,630 Ako som povedal, poďme si vziať tri minút to napísať. 453 00:19:50,630 --> 00:20:41,300 454 00:20:41,300 --> 00:20:45,110 Sú všetci v poriadku, ak pôjdem do nové okno a zatvorte to? 455 00:20:45,110 --> 00:22:13,420 456 00:22:13,420 --> 00:22:15,520 >> Ospravedlňujem sa, či ste nemali šancu až do konca, ale budeme to robiť 457 00:22:15,520 --> 00:22:17,310 spolu práve teraz. 458 00:22:17,310 --> 00:22:23,640 Takže na obrazovke, som # include cs50.h, # include stdio.h. 459 00:22:23,640 --> 00:22:26,090 Môže mi niekto povedať, čo tieto dva riadky robiť? 460 00:22:26,090 --> 00:22:32,250 461 00:22:32,250 --> 00:22:33,155 Michael? 462 00:22:33,155 --> 00:22:40,030 >> STUDENT: Zahŕňajú knižnice že CS50 urobil a že má Steve 463 00:22:40,030 --> 00:22:44,210 uložené pre vás na použitie na aby váš život jednoduchší. 464 00:22:44,210 --> 00:22:46,820 >> JASON Hirschhorn: Takže ste povedal, že patrí knižnice, jednu CS50 465 00:22:46,820 --> 00:22:51,230 urobil, cs50.h, a ten, ktorý je len štandard, je dodávaný s 466 00:22:51,230 --> 00:22:53,510 Balíček C, stdio.h. 467 00:22:53,510 --> 00:22:54,890 Čo tým myslíš patrí knižnice, aj keď? 468 00:22:54,890 --> 00:22:55,770 Môžete byť trochu konkrétnejší? 469 00:22:55,770 --> 00:23:01,180 >> Žiak: To je to tak, že môžete používať niektoré kódové slová majú 470 00:23:01,180 --> 00:23:05,710 fungovať stáť, bez toho aby museli ísť a aby funkcia c sami. 471 00:23:05,710 --> 00:23:08,730 >> JASON Hirschhorn: Dokážeš mi dať príklad? 472 00:23:08,730 --> 00:23:11,160 >> STUDENT: Ako printf ich môžete použiť. 473 00:23:11,160 --> 00:23:11,860 >> JASON Hirschhorn: printf. 474 00:23:11,860 --> 00:23:14,680 Takže ste povedal printf je jedným z tých, funkcie, kde skôr než 475 00:23:14,680 --> 00:23:19,840 napísať printf na vlastnú päsť, je printf súčasťou skutočne stdio.h, takže 476 00:23:19,840 --> 00:23:22,010 stačí použiť, a predpokladajú, že to bude fungovať. 477 00:23:22,010 --> 00:23:28,270 V stdio.h, ak ste otvoril tento súbor, by zahŕňala ako printf 478 00:23:28,270 --> 00:23:31,620 práca, všetok kód pre printf? 479 00:23:31,620 --> 00:23:33,105 Prečo sa trasie hlavou? 480 00:23:33,105 --> 00:23:35,710 >> STUDENT: Vzhľadom k tomu, hlavičkový súbor len obsahuje deklaráciu funkcie. 481 00:23:35,710 --> 00:23:36,400 >> JASON Hirschhorn: Presne tak. 482 00:23:36,400 --> 00:23:39,680 Hlavičkový súbor obsahuje len deklarácie funkcie. 483 00:23:39,680 --> 00:23:42,950 Takže v podstate, pri kompilácii to, klikol na Make gróf, ktorý budeme robiť v 484 00:23:42,950 --> 00:23:48,070 Druhá, kompilátor vie, že ak použiť printf, printf existuje. 485 00:23:48,070 --> 00:23:49,370 Bude to byť definovaný niekde inde. 486 00:23:49,370 --> 00:23:51,200 To nie je pre vás problém používať. 487 00:23:51,200 --> 00:23:55,490 A potom o niečo neskôr, bude obsahovať jedničiek a núl, ktoré skutočne obsahujú 488 00:23:55,490 --> 00:23:58,360 printf je vykonávanie a zlúčiť so svojím kódom. 489 00:23:58,360 --> 00:24:01,935 Ako sa uistite sa, že obsahuje jedničiek a núl, povedzme, sa reťazec? 490 00:24:01,935 --> 00:24:05,670 491 00:24:05,670 --> 00:24:07,210 >> STUDENT: Získajte reťazec je cs50.h. 492 00:24:07,210 --> 00:24:07,830 >> JASON Hirschhorn: Správne. 493 00:24:07,830 --> 00:24:11,110 Tak, že sa hovorí, že existuje reťazec, deklarácie funkcie. 494 00:24:11,110 --> 00:24:15,410 Ale potom jedničiek a núl, binárne súbor, ktorý v skutočnosti obsahuje 495 00:24:15,410 --> 00:24:17,370 realizácia get string? 496 00:24:17,370 --> 00:24:19,310 Ako sa uistiť, že ide s programom? 497 00:24:19,310 --> 00:24:23,220 >> STUDENT: Pass linker v argument príkazového riadka. 498 00:24:23,220 --> 00:24:25,430 >> JASON Hirschhorn: Pass linker na argument príkazového riadku. 499 00:24:25,430 --> 00:24:26,700 Ako to robíte, že? 500 00:24:26,700 --> 00:24:29,730 >> Žiak: To je-l riadok v rinčaním 501 00:24:29,730 --> 00:24:30,480 >> JASON Hirschhorn: Presne tak. 502 00:24:30,480 --> 00:24:32,900 Hovoríte-l CS50, že jo? 503 00:24:32,900 --> 00:24:34,940 To zahŕňa jedničiek a núl. 504 00:24:34,940 --> 00:24:36,460 >> Žiak: Ale Uistite sa že pre vás, nie? 505 00:24:36,460 --> 00:24:37,010 >> JASON Hirschhorn: Presne tak. 506 00:24:37,010 --> 00:24:40,390 Uistite sa, že pre vás, ale nakoniec, nebudete mať Make, alebo 507 00:24:40,390 --> 00:24:43,220 budete musieť robiť Urobiť na vlastnú päsť, tak to je 508 00:24:43,220 --> 00:24:43,940 dobrá vec, mať na pamäti. 509 00:24:43,940 --> 00:24:47,350 Ak sa chystáte použiť jeden z týchto ďalšie knižnice, a to nielen máte 510 00:24:47,350 --> 00:24:49,490 písať # include a potom knižnica. 511 00:24:49,490 --> 00:24:51,420 Tiež je potrebné prepojiť ju dovnútra 512 00:24:51,420 --> 00:24:54,480 A tieto dve veci sú odlišné. L-CS50 je odlišný 513 00:24:54,480 --> 00:24:59,260 ako # include cs50.h. 514 00:24:59,260 --> 00:25:02,870 >> Potom máme int main void zložené zátvorky, a teraz ideme do kódu 515 00:25:02,870 --> 00:25:03,590 vnútri hlavnej. 516 00:25:03,590 --> 00:25:07,090 Prvý riadok Mám tu je komentár , Ktorý hovorí, vytvoriť pole 517 00:25:07,090 --> 00:25:08,820 s ints jedna až päť. 518 00:25:08,820 --> 00:25:12,600 Čo je dobré slovo popisovať to, čo som majú teraz na obrazovke, len 519 00:25:12,600 --> 00:25:14,170 komentáre vnútri hlavnej? 520 00:25:14,170 --> 00:25:15,722 Čo hovoríme, že? 521 00:25:15,722 --> 00:25:16,820 >> STUDENT: Pseudocode. 522 00:25:16,820 --> 00:25:17,840 >> JASON Hirschhorn: Pseudocode. 523 00:25:17,840 --> 00:25:18,420 Ďakujem, Jeffrey. 524 00:25:18,420 --> 00:25:19,540 To je presne to pravé. 525 00:25:19,540 --> 00:25:20,005 Pseudokódu. 526 00:25:20,005 --> 00:25:22,854 Už ste videli pseudocode predtým? 527 00:25:22,854 --> 00:25:28,340 Zdvihnite ruku, ak ste použili pseudokódu pred problém nastaviť jeden. 528 00:25:28,340 --> 00:25:29,400 Asi polovica z vás. 529 00:25:29,400 --> 00:25:32,700 >> Ja by som Veľmi odporúčam používať pseudokódu rozobrať problémy do 530 00:25:32,700 --> 00:25:35,210 menšie, ľahko odhryznúť kúsky. 531 00:25:35,210 --> 00:25:38,630 Tiež, ak budete robiť pseudocode, vy mať svoje pripomienky už z veľkej časti 532 00:25:38,630 --> 00:25:40,760 postavená v roku, takže nemusíte vrátiť a pokúsiť sa zistiť, 533 00:25:40,760 --> 00:25:42,450 čo ste robili. 534 00:25:42,450 --> 00:25:44,730 Takže môže mi niekto dať túto prvú líniu vytvoriť pole s jedným ints 535 00:25:44,730 --> 00:25:45,980 až päť? 536 00:25:45,980 --> 00:25:48,700 537 00:25:48,700 --> 00:25:49,130 Vy? 538 00:25:49,130 --> 00:25:53,350 >> STUDENT: Int a potom môžete volať bez ohľadu na počet a potom námestí 539 00:25:53,350 --> 00:25:54,830 držiak päť. 540 00:25:54,830 --> 00:25:57,820 >> JASON Hirschhorn: Takže int čísla, hranatá zátvorka päť. 541 00:25:57,820 --> 00:25:59,160 >> STUDENT: Rovná a potom zložené zátvorky. 542 00:25:59,160 --> 00:26:00,830 >> JASON Hirschhorn: Rovná, Zložené zátvorky. 543 00:26:00,830 --> 00:26:01,830 >> STUDENT: Jeden, dva, tri, štyri. 544 00:26:01,830 --> 00:26:05,566 >> JASON Hirschhorn: Jeden, dva, tri, štyri, päť. 545 00:26:05,566 --> 00:26:07,390 >> Žiak: A potom zložené zátvorky a potom bodkočiarka. 546 00:26:07,390 --> 00:26:09,240 >> JASON Hirschhorn: a kučeravé traky a bodkočiarkou. 547 00:26:09,240 --> 00:26:10,330 Výborný. 548 00:26:10,330 --> 00:26:12,210 Vytlačte si každý int na nový riadok. 549 00:26:12,210 --> 00:26:17,140 Môže niekto dať mi ten kód, prosím? 550 00:26:17,140 --> 00:26:17,530 [? Matu? ?] 551 00:26:17,530 --> 00:26:18,560 Len do toho. 552 00:26:18,560 --> 00:26:20,440 >> STUDENT: Pre ( 553 00:26:20,440 --> 00:26:21,750 >> JASON Hirschhorn: Pro ( 554 00:26:21,750 --> 00:26:23,740 >> STUDENT: int i = 0 555 00:26:23,740 --> 00:26:26,070 >> JASON Hirschhorn: int i = 0 556 00:26:26,070 --> 00:26:28,190 >> STUDENT: bodkočiarka aj menej ako päť. 557 00:26:28,190 --> 00:26:31,680 >> JASON Hirschhorn: bodkočiarku, aj menej ako päť. 558 00:26:31,680 --> 00:26:33,600 >> STUDENT: bodkočiarka, i + +. 559 00:26:33,600 --> 00:26:35,140 >> JASON Hirschhorn: bodkočiarku, i + +. 560 00:26:35,140 --> 00:26:37,720 >> STUDENT: Uzavreté zátvorky, potom otvorte rovnátka. 561 00:26:37,720 --> 00:26:39,410 >> JASON Hirschhorn: Uzavreté zátvorky a dve traky. 562 00:26:39,410 --> 00:26:40,510 Vnútri zátvoriek? 563 00:26:40,510 --> 00:26:47,640 >> Žiak: A potom printf "% d / n" 564 00:26:47,640 --> 00:26:48,695 >> JASON Hirschhorn: Ospravedlňujeme sa, ale vydrž. 565 00:26:48,695 --> 00:26:52,330 Printf "% d / n, uzavreté citácie. 566 00:26:52,330 --> 00:26:55,980 >> Žiak: A potom uzavretý citujem, čiarka, počítať, aj držiak. 567 00:26:55,980 --> 00:26:58,350 >> JASON Hirschhorn: Comma, počítať, aj držiak. 568 00:26:58,350 --> 00:26:59,970 >> STUDENT: Je nám ľúto, čísla aj konzoly. 569 00:26:59,970 --> 00:27:01,416 >> JASON Hirschhorn: Čísla, držiak som. 570 00:27:01,416 --> 00:27:03,200 >> STUDENT: Ospravedlňujem sa. 571 00:27:03,200 --> 00:27:04,750 A potom zavrel zátvorky, bodkočiarka. 572 00:27:04,750 --> 00:27:07,156 >> JASON Hirschhorn: Zatvorené zátvorky, bodkočiarky. 573 00:27:07,156 --> 00:27:08,680 Chystám sa okrem toho, že. 574 00:27:08,680 --> 00:27:12,670 Chystáme sa robiť počítať. 575 00:27:12,670 --> 00:27:14,742 A ako mám spustiť počítať? 576 00:27:14,742 --> 00:27:16,470 >> STUDENT: Spätné lomítko. 577 00:27:16,470 --> 00:27:17,180 >> STUDENT: Dot lomítko - 578 00:27:17,180 --> 00:27:18,050 >> JASON Hirschhorn:. / Spočítať, presne tak. 579 00:27:18,050 --> 00:27:19,380 Ďakujem. . / Počítať. 580 00:27:19,380 --> 00:27:21,060 Jedna, dve, tri, štyri, päť na nových tratiach. 581 00:27:21,060 --> 00:27:22,110 Vyzerá to, že to fungovalo. 582 00:27:22,110 --> 00:27:23,200 Áno, Noah? 583 00:27:23,200 --> 00:27:26,660 >> STUDENT: Môžete si tiež urobiť menšie alebo , Rovná sa štyrom, ako aj je menšia než 584 00:27:26,660 --> 00:27:27,630 alebo rovná sa štyrom? 585 00:27:27,630 --> 00:27:31,190 Je nejaká výhoda robí menej ako päť, alebo len iný spôsob 586 00:27:31,190 --> 00:27:31,610 písanie? 587 00:27:31,610 --> 00:27:35,280 >> JASON Hirschhorn: Takže otázka je, mohol urobiť aj je menší ako alebo 588 00:27:35,280 --> 00:27:37,450 , Rovná sa štyrom miesto i je menšia než päť. 589 00:27:37,450 --> 00:27:38,935 To by fungovalo rovnako? 590 00:27:38,935 --> 00:27:39,760 >> STUDENT: Malo by. 591 00:27:39,760 --> 00:27:39,860 >> JASON Hirschhorn: Áno. 592 00:27:39,860 --> 00:27:41,660 Úplne by to fungovať rovnako. 593 00:27:41,660 --> 00:27:44,780 Štylisticky je to zvyčajne menej ako a uvidíte v druhom, kedy 594 00:27:44,780 --> 00:27:48,160 my reťazca, môžete použiť niečo volal strlen, ktoré ste videli 595 00:27:48,160 --> 00:27:50,380 skôr, aby sa dĺžka z reťazca. 596 00:27:50,380 --> 00:27:54,090 A nemôžete robiť menej, než alebo rovné strlen. 597 00:27:54,090 --> 00:27:56,500 Dalo by sa urobiť menšie alebo rovnať strlen mínus jedna. 598 00:27:56,500 --> 00:27:59,260 Takže je to krajšie robiť menej než strlen. 599 00:27:59,260 --> 00:28:00,240 Áno? 600 00:28:00,240 --> 00:28:03,270 >> STUDENT: A skutočná kvízy, vykonajte musíme predložiť pripomienky k našej 601 00:28:03,270 --> 00:28:04,620 Kód rovnako? 602 00:28:04,620 --> 00:28:06,130 >> JASON Hirschhorn: Otázka bol v kvízy, máte 603 00:28:06,130 --> 00:28:07,760 musieť predložiť pripomienky? 604 00:28:07,760 --> 00:28:12,050 Takže budeme hovoriť o kvízy, keď oni prídu, ale všeobecne, dobrú 605 00:28:12,050 --> 00:28:14,530 pravidlom je, keď ste písanie kódu, predložiť pripomienky. 606 00:28:14,530 --> 00:28:18,130 Ak máte kód zle, ale komentár pravdu, môžete získať niektoré 607 00:28:18,130 --> 00:28:22,280 úver aj odo mňa, či som triedenie Ste na problém súboru alebo na kvíz. 608 00:28:22,280 --> 00:28:24,660 Takže komentáre sú vždy vhodné zabezpečiť. 609 00:28:24,660 --> 00:28:25,040 Sladký. 610 00:28:25,040 --> 00:28:25,460 Počítajte. 611 00:28:25,460 --> 00:28:26,720 Vynikajúca práca. 612 00:28:26,720 --> 00:28:28,570 Poďme ďalej. 613 00:28:28,570 --> 00:28:29,920 >> Reťazce. 614 00:28:29,920 --> 00:28:30,630 Reťazce. 615 00:28:30,630 --> 00:28:31,730 Videli sme to predtým na prednáške. 616 00:28:31,730 --> 00:28:33,390 To mi vyrazil dych, keď som Prvý to zistila. 617 00:28:33,390 --> 00:28:37,240 To asi nemal vyhodiť kohokoľvek myseľ tu, ale to je v poriadku. 618 00:28:37,240 --> 00:28:41,260 >> Reťazce sú polia znakov a oni skončí s, ako ste povedal, 619 00:28:41,260 --> 00:28:45,710 null terminátor, ktorý je to / 0 charakteru. 620 00:28:45,710 --> 00:28:47,740 Ak budeme kresliť reťazec na doska, budeme kresliť to sem. 621 00:28:47,740 --> 00:28:53,080 622 00:28:53,080 --> 00:28:56,420 Tak ako dlho je tento reťazec? 623 00:28:56,420 --> 00:28:56,680 Prepáčte. 624 00:28:56,680 --> 00:28:57,660 Ako dlho je tento reťazec? 625 00:28:57,660 --> 00:28:57,910 >> STUDENT: [nepočuteľné]. 626 00:28:57,910 --> 00:28:59,010 >> JASON Hirschhorn: Štyri? 627 00:28:59,010 --> 00:28:59,880 Prečo je to štyri? 628 00:28:59,880 --> 00:29:02,240 >> STUDENT: Vzhľadom k tomu, piate miesto je pre nulový znak. 629 00:29:02,240 --> 00:29:04,070 >> JASON Hirschhorn: Takže piate miesto je pre nulový znak. 630 00:29:04,070 --> 00:29:07,130 Takže ak by som mal bežať na strlen to by sa mi štyri. 631 00:29:07,130 --> 00:29:07,850 Opravte. 632 00:29:07,850 --> 00:29:11,640 A pole, aj keď, ak by som mal inicializovať pole, koľko miesta 633 00:29:11,640 --> 00:29:13,444 budem musieť žiadať? 634 00:29:13,444 --> 00:29:13,821 >> STUDENT: Five. 635 00:29:13,821 --> 00:29:14,200 >> JASON Hirschhorn: Five. 636 00:29:14,200 --> 00:29:17,650 Chcel by som sa spýtať na päť, ale ja dal len štyri znaky tu 637 00:29:17,650 --> 00:29:19,750 pretože musím dať, že null zakončenie na konci. 638 00:29:19,750 --> 00:29:25,260 Takže budeme písať "Ohai" a dal null zakončenie v konci. 639 00:29:25,260 --> 00:29:31,820 640 00:29:31,820 --> 00:29:34,940 Povieme, že je to reťazec s to sa rovná. 641 00:29:34,940 --> 00:29:36,610 Čo je to držiak nula? 642 00:29:36,610 --> 00:29:40,210 643 00:29:40,210 --> 00:29:41,550 Držiak je nula, Annie? 644 00:29:41,550 --> 00:29:41,950 >> STUDENT: O. 645 00:29:41,950 --> 00:29:45,400 >> JASON Hirschhorn: Ó, presne tak. je držiak jeden? 646 00:29:45,400 --> 00:29:48,200 je držiak päť? 647 00:29:48,200 --> 00:29:52,670 648 00:29:52,670 --> 00:29:53,955 je držiak päť? 649 00:29:53,955 --> 00:29:54,740 >> STUDENT: neexistuje. 650 00:29:54,740 --> 00:29:55,040 >> JASON Hirschhorn: neexistuje. 651 00:29:55,040 --> 00:29:57,050 Presne tak. 652 00:29:57,050 --> 00:29:57,940 Skvelý. 653 00:29:57,940 --> 00:30:03,120 Máte otázky k pochopeniu reťazca ako pole postáv? 654 00:30:03,120 --> 00:30:03,870 OK, potom. 655 00:30:03,870 --> 00:30:05,440 Ešte jeden program pre vás. 656 00:30:05,440 --> 00:30:09,190 Napíšte program, ktorý vyzve užívateľa pre reťazec a potom vytlačí každý 657 00:30:09,190 --> 00:30:11,880 znak na nový riadok. 658 00:30:11,880 --> 00:30:14,160 Takže poďme sa tri minúty písať tento program, a potom budeme kódovať ho 659 00:30:14,160 --> 00:30:15,410 ako skupina. 660 00:30:15,410 --> 00:31:04,730 661 00:31:04,730 --> 00:31:04,830 >> Prepáčte. 662 00:31:04,830 --> 00:31:06,470 Vedeli ste potrebné vidieť? 663 00:31:06,470 --> 00:31:07,410 >> STUDENT: Nie 664 00:31:07,410 --> 00:31:08,660 >> JASON Hirschhorn: OK. 665 00:31:08,660 --> 00:31:36,390 666 00:31:36,390 --> 00:31:40,605 Poďme ešte jednu minútu kód tohto alebo aspoň začať na ňom. 667 00:31:40,605 --> 00:32:13,900 668 00:32:13,900 --> 00:32:17,020 >> Takže môžete pokračovať v práci, ale budem začať chodiť cez neho. 669 00:32:17,020 --> 00:32:22,560 Tak ako predtým, mám na obrazovke # Include cs50.h, # include stdio.h. 670 00:32:22,560 --> 00:32:24,020 int main neplatné. 671 00:32:24,020 --> 00:32:28,880 Vnútri zložených zátvoriek Hlavné je, mám dve pripomienky, pseudokód. 672 00:32:28,880 --> 00:32:30,980 Jedným z nich je požiadať o reťazec od užívateľa. 673 00:32:30,980 --> 00:32:33,900 Druhá je vytlačiť každý znak na nový riadok. 674 00:32:33,900 --> 00:32:39,780 Takže Anna, môžete mi dať opýtať pre reťazec od používateľa? 675 00:32:39,780 --> 00:32:41,970 >> STUDENT: printf. 676 00:32:41,970 --> 00:32:42,720 >> JASON Hirschhorn: printf? 677 00:32:42,720 --> 00:32:45,050 >> Žiak: Áno. 678 00:32:45,050 --> 00:32:46,165 ( 679 00:32:46,165 --> 00:32:47,610 >> JASON Hirschhorn: ( 680 00:32:47,610 --> 00:32:49,300 >> Študent: "Daj mi reťazec. 681 00:32:49,300 --> 00:32:52,380 >> JASON Hirschhorn: "dať me str - pardon - 682 00:32:52,380 --> 00:32:53,710 string. 683 00:32:53,710 --> 00:32:59,980 >> STUDENT: / n ") bodkočiarka. 684 00:32:59,980 --> 00:33:02,300 >> JASON Hirschhorn: Koniec reťazec, uzavreté zátvorky, bodkočiarky. 685 00:33:02,300 --> 00:33:03,550 >> Žiak: Áno. 686 00:33:03,550 --> 00:33:09,080 A potom ďalší riadok, reťazec s = dostať reťazec. 687 00:33:09,080 --> 00:33:11,240 >> JASON Hirschhorn: String s = dostať reťazec. 688 00:33:11,240 --> 00:33:11,665 >> Žiak: Áno. 689 00:33:11,665 --> 00:33:13,080 A potom () 690 00:33:13,080 --> 00:33:14,365 >> JASON Hirschhorn: () 691 00:33:14,365 --> 00:33:14,720 >> STUDENT: bodkočiarku. 692 00:33:14,720 --> 00:33:15,540 >> JASON Hirschhorn: bodkočiarku. 693 00:33:15,540 --> 00:33:16,890 Fantastic. 694 00:33:16,890 --> 00:33:19,000 Takže budem sa dostať reťazec a Idem uložiť v čom? 695 00:33:19,000 --> 00:33:21,830 Čo je to premenná s názvom ktorý ste vytvorili? 696 00:33:21,830 --> 00:33:23,290 >> STUDENT: String s 697 00:33:23,290 --> 00:33:24,580 >> JASON Hirschhorn: Premenná sa nazýva s. 698 00:33:24,580 --> 00:33:25,700 Je to typ string. 699 00:33:25,700 --> 00:33:27,200 Presne tak. 700 00:33:27,200 --> 00:33:30,080 Ďalšia vec, ktorú chceme, je vytlačiť každá postava na nový riadok. 701 00:33:30,080 --> 00:33:31,710 Kto mi môže dať tento kód? 702 00:33:31,710 --> 00:33:32,110 [Nepočuteľný]? 703 00:33:32,110 --> 00:33:33,000 Môžeš mi to dať? 704 00:33:33,000 --> 00:33:33,580 >> STUDENT: Jasne. 705 00:33:33,580 --> 00:33:35,420 >> JASON Hirschhorn: Poďme na to. 706 00:33:35,420 --> 00:33:36,080 A ospravedlňujem sa. 707 00:33:36,080 --> 00:33:38,896 Nemám rád opakovať to, čo hovoríte, pretože ste ako na to, ale myslím, 708 00:33:38,896 --> 00:33:42,100 musí opakovať tak, že keď sa prepísať to, môžu sa všetky 709 00:33:42,100 --> 00:33:44,870 text sa na prepisov. 710 00:33:44,870 --> 00:33:47,180 Takže si môžete len držať hovoriť. 711 00:33:47,180 --> 00:33:48,590 Ja mám bohužiaľ to povedať nad vami. 712 00:33:48,590 --> 00:33:49,510 Je mi ľúto, ale - 713 00:33:49,510 --> 00:33:50,610 >> Študent: To je v poriadku. 714 00:33:50,610 --> 00:33:53,010 Pre int i = 0 715 00:33:53,010 --> 00:33:54,170 >> JASON Hirschhorn: Pre int i = 0 716 00:33:54,170 --> 00:33:56,740 >> Žiak: Myslím, menej ako - 717 00:33:56,740 --> 00:33:58,206 >> JASON Hirschhorn: bodkočiarku. 718 00:33:58,206 --> 00:34:00,650 >> STUDENT: Pred tým môžeme dať premenné tak dostanete pravý dĺžky názvu? 719 00:34:00,650 --> 00:34:01,870 >> JASON Hirschhorn: Oh, to nie chcete umiestniť bodkočiarku? 720 00:34:01,870 --> 00:34:02,310 OK. 721 00:34:02,310 --> 00:34:05,120 Tak čo chceš robiť po nulu? 722 00:34:05,120 --> 00:34:09,340 >> STUDENT: Chcem sa dostať Dĺžka reťazca a s 723 00:34:09,340 --> 00:34:10,410 nastaviť, aby sa do premennej? 724 00:34:10,410 --> 00:34:11,760 >> JASON Hirschhorn: OK, tak ako to mám urobiť, že? 725 00:34:11,760 --> 00:34:17,636 >> Žiak: Takže vy int length = 726 00:34:17,636 --> 00:34:20,010 >> JASON Hirschhorn: int length = 727 00:34:20,010 --> 00:34:22,230 >> STUDENT: S-T-R-L-E-N. 728 00:34:22,230 --> 00:34:24,260 >> JASON Hirschhorn: S-T-R-L-E-N - 729 00:34:24,260 --> 00:34:25,380 >> STUDENT: S. 730 00:34:25,380 --> 00:34:25,790 Konzoly. 731 00:34:25,790 --> 00:34:27,920 >> JASON Hirschhorn: (y). 732 00:34:27,920 --> 00:34:33,040 >> Žiak: A potom myslím, že budete musieť dať bodkočiarku medzi dvoma ints. 733 00:34:33,040 --> 00:34:34,590 >> JASON Hirschhorn: bodkočiarku Po nastavení nuly? 734 00:34:34,590 --> 00:34:35,260 >> STUDENT: Jo. 735 00:34:35,260 --> 00:34:40,670 Potom dal bodkočiarka po tom, a hovoríte, aj menšie ako dĺžka. 736 00:34:40,670 --> 00:34:43,250 aj menšie ako dĺžka, ktorá je variabilná. 737 00:34:43,250 --> 00:34:44,590 >> Žiak: A potom bodkočiarku. 738 00:34:44,590 --> 00:34:45,790 >> JASON Hirschhorn: bodkočiarku. 739 00:34:45,790 --> 00:34:46,290 >> STUDENT: i + +. 740 00:34:46,290 --> 00:34:46,909 >> JASON Hirschhorn: i + +. 741 00:34:46,909 --> 00:34:47,530 Tu je náš cyklu for. 742 00:34:47,530 --> 00:34:48,860 OK, vnútri slučky for. 743 00:34:48,860 --> 00:34:51,670 >> Žiak: A potom to printf. 744 00:34:51,670 --> 00:34:53,340 >> JASON Hirschhorn: printf. 745 00:34:53,340 --> 00:34:53,889 >> STUDENT: Zátvorky. 746 00:34:53,889 --> 00:34:55,130 >> JASON Hirschhorn: zátvorky, úvodzovky. 747 00:34:55,130 --> 00:34:59,930 >> STUDENT: Zátvorky, citácie,% c / n 748 00:34:59,930 --> 00:35:00,760 >> JASON Hirschhorn:% c, OK. 749 00:35:00,760 --> 00:35:01,670 >> STUDENT: / n 750 00:35:01,670 --> 00:35:03,470 >> JASON Hirschhorn: / n 751 00:35:03,470 --> 00:35:04,410 >> STUDENT: Uzavreté citácie. 752 00:35:04,410 --> 00:35:05,270 >> JASON Hirschhorn: Uzavreté citácie. 753 00:35:05,270 --> 00:35:05,810 >> STUDENT: Comma. 754 00:35:05,810 --> 00:35:06,860 >> JASON Hirschhorn: Comma. 755 00:35:06,860 --> 00:35:07,800 >> STUDENT: S. 756 00:35:07,800 --> 00:35:08,070 >> JASON Hirschhorn: S. 757 00:35:08,070 --> 00:35:08,690 >> STUDENT: Konzola i 758 00:35:08,690 --> 00:35:10,230 >> JASON Hirschhorn: Konzola i 759 00:35:10,230 --> 00:35:11,520 >> Žiak: A zavrel zátvorky. 760 00:35:11,520 --> 00:35:12,540 >> JASON Hirschhorn: Uzavreté zátvorky. 761 00:35:12,540 --> 00:35:13,660 >> Žiak: A potom bodkočiarku. 762 00:35:13,660 --> 00:35:13,770 >> JASON Hirschhorn: bodkočiarku. 763 00:35:13,770 --> 00:35:14,380 Fantastic. 764 00:35:14,380 --> 00:35:16,890 Takže poďme zachrániť toto. 765 00:35:16,890 --> 00:35:19,770 Urobiť kúzlo. 766 00:35:19,770 --> 00:35:20,040 Ach jo. 767 00:35:20,040 --> 00:35:22,275 Mám pár chýb. 768 00:35:22,275 --> 00:35:33,120 Prvá chyba na riadku 11, hovorí, očakáva, že výraz, a to dáva 769 00:35:33,120 --> 00:35:36,910 me chyba, že druhý int, tam je chyba. 770 00:35:36,910 --> 00:35:38,430 Existuje nejaká chyba asi tam. 771 00:35:38,430 --> 00:35:41,060 Vie niekto, čo to je chyba? 772 00:35:41,060 --> 00:35:41,640 Kurt? 773 00:35:41,640 --> 00:35:44,108 >> Žiak: Myslím, že to má byť čiarka a nie bodkočiarka. 774 00:35:44,108 --> 00:35:46,010 >> JASON Hirschhorn: OK, čiarka miesto bodkočiarkou. 775 00:35:46,010 --> 00:35:47,340 Tak je to, že všetko, čo je potrebné opraviť? 776 00:35:47,340 --> 00:35:47,655 >> STUDENT: Nie 777 00:35:47,655 --> 00:35:48,930 >> JASON Hirschhorn: Čo iné potrebujeme opraviť? 778 00:35:48,930 --> 00:35:50,920 >> STUDENT: Musíme zahrnúť string.h. 779 00:35:50,920 --> 00:35:51,680 >> JASON Hirschhorn: Zahrnúť string.h. 780 00:35:51,680 --> 00:35:53,730 Kam musím patrí, že? 781 00:35:53,730 --> 00:35:57,085 >> STUDENT: Rovnaké miesto máte, vrátane ďalšie veci, že jo 782 00:35:57,085 --> 00:35:59,560 po zahŕňajú stdio.h. 783 00:35:59,560 --> 00:36:01,610 >> JASON Hirschhorn: Uvidíme, či to beží prvý, pretože všeobecne sa mi páči 784 00:36:01,610 --> 00:36:06,360 opraviť jednu vec a až potom spustiť to, a potom zistiť chyby, ktoré dostávame. 785 00:36:06,360 --> 00:36:11,620 Takže ideme na vymazanie terminálu s riadiacim n, poďme to urobiť kúzlo. 786 00:36:11,620 --> 00:36:15,190 787 00:36:15,190 --> 00:36:18,770 Takže ďalšia chyba na riadku 11. 788 00:36:18,770 --> 00:36:20,540 Predpokladaný bodkočiarka. 789 00:36:20,540 --> 00:36:22,640 A ja som stále dostáva chyby na tomto riadku. 790 00:36:22,640 --> 00:36:25,270 Tak to mi nedala chybové hlásenie, že ho nechápe, čo je strlen, 791 00:36:25,270 --> 00:36:28,980 ale je to, že mi chyby na tomto linka, takže čo iné je zle? 792 00:36:28,980 --> 00:36:29,690 Označiť? 793 00:36:29,690 --> 00:36:30,940 Marcus. 794 00:36:30,940 --> 00:36:32,570 >> STUDENT: Máte na odstránenie Druhý int vyhlásenie? 795 00:36:32,570 --> 00:36:34,990 >> JASON Hirschhorn: Odstrániť druhý int. 796 00:36:34,990 --> 00:36:35,710 Skúsme to. 797 00:36:35,710 --> 00:36:37,600 Teraz vymazanie terminálu. 798 00:36:37,600 --> 00:36:40,130 Urobiť kúzlo. 799 00:36:40,130 --> 00:36:40,490 Chyba. 800 00:36:40,490 --> 00:36:42,890 Implicitne vyhlásil knižnice Funkcia strlen. 801 00:36:42,890 --> 00:36:44,270 Takže teraz vidím, že chybu. 802 00:36:44,270 --> 00:36:45,760 Čo treba zahrnúť? 803 00:36:45,760 --> 00:36:46,660 >> STUDENT: string.h. 804 00:36:46,660 --> 00:36:51,880 >> JASON Hirschhorn: Include string.h, Urobíme # include string.h v hornej 805 00:36:51,880 --> 00:36:52,920 na obrazovke. 806 00:36:52,920 --> 00:36:55,450 Zachráňme, aby kúzlo. 807 00:36:55,450 --> 00:36:56,970 Teraz zostavujú. 808 00:36:56,970 --> 00:37:01,970 Takže znova, čo sme potrebovali pamätať linku 12 v našom pre slučku 809 00:37:01,970 --> 00:37:08,010 sme jeho zriadenie, int i = 0, dĺžka = strlen (s). 810 00:37:08,010 --> 00:37:09,350 >> To je fantastický stratégie. 811 00:37:09,350 --> 00:37:12,590 Štýl je to skvelé, Konštrukcia je to skvelé. 812 00:37:12,590 --> 00:37:15,620 Môžeme ísť do Z týchto dôvodov neskôr, ale takto stačí zavolať 813 00:37:15,620 --> 00:37:19,040 strlen raz namiesto každý spustenie priechodu slučkou. 814 00:37:19,040 --> 00:37:22,255 Avšak, budete musieť použiť čiarku tam a nemusíte int znova. 815 00:37:22,255 --> 00:37:24,180 Ak ste vyhlásil ako tých ukazovatele spolu, 816 00:37:24,180 --> 00:37:26,850 Nemusíte int znova. 817 00:37:26,850 --> 00:37:29,820 A potom, ak budete používať strlen, čo je ďalšia knižnica 818 00:37:29,820 --> 00:37:33,560 Funkcia nie je zahrnutá do stdio.h alebo cs50.h, aby 819 00:37:33,560 --> 00:37:35,310 nezabudnite zahrnúť string.h. 820 00:37:35,310 --> 00:37:35,900 Kurt? 821 00:37:35,900 --> 00:37:39,085 >> Žiak: Takže ak nepotrebujete povedať, aký typ dĺžka, to robí 822 00:37:39,085 --> 00:37:40,290 neznamená, že musí byť int? 823 00:37:40,290 --> 00:37:41,930 Tie nemohol mať dva rôzne Typy tam? 824 00:37:41,930 --> 00:37:43,290 >> JASON Hirschhorn: Takže ste mohli majú dva rôzne typy. 825 00:37:43,290 --> 00:37:45,730 Dĺžka je int tu, hoci. 826 00:37:45,730 --> 00:37:48,590 Dĺžka je int, pretože je to čiarka a potom to isté. 827 00:37:48,590 --> 00:37:50,460 >> Žiak: Takže to predpokladá, že to bude byť rovnaký ako prvý? 828 00:37:50,460 --> 00:37:52,423 >> JASON Hirschhorn: Presne tak. 829 00:37:52,423 --> 00:37:54,970 Nebudeme robiť teraz, ale môže obsahovať dve premenné na 830 00:37:54,970 --> 00:37:57,080 rovnakom riadku pomocou jedného dátového typu. 831 00:37:57,080 --> 00:38:01,415 Takže int x, y by vytvoriť dve premenné. 832 00:38:01,415 --> 00:38:05,830 833 00:38:05,830 --> 00:38:10,770 Takže int x, y, ak urobíme to, že dáva me nepoužité premenné x a y, pretože 834 00:38:10,770 --> 00:38:12,020 nebudeme používať. 835 00:38:12,020 --> 00:38:17,950 836 00:38:17,950 --> 00:38:21,650 Takže uvedenie neplatné, než je len fantázie trik, ak nechcete použiť 837 00:38:21,650 --> 00:38:22,810 niečo použiť. 838 00:38:22,810 --> 00:38:26,300 Ale ako vidíte, ja stvorím xay na rovnakom riadku s čiarkou. 839 00:38:26,300 --> 00:38:28,450 Je to vytvorenie dvoch celých čísel práve tam. 840 00:38:28,450 --> 00:38:31,560 Takže áno, úplne možné vytvoriť dve veci na rovnakom riadku 841 00:38:31,560 --> 00:38:33,720 oddelené čiarkou. 842 00:38:33,720 --> 00:38:35,470 Zbavme sa tých, hoci. 843 00:38:35,470 --> 00:38:36,370 >> Takže to kúzlo. 844 00:38:36,370 --> 00:38:39,200 Ďakujem vám chalani pre kódovanie to pre nás. 845 00:38:39,200 --> 00:38:43,040 Poďme urobiť to ešte raz, spustite ho. 846 00:38:43,040 --> 00:38:44,580 Daj mi reťazec. 847 00:38:44,580 --> 00:38:45,580 [Nepočuteľné], si najviac. 848 00:38:45,580 --> 00:38:47,910 Čo je reťazec? 849 00:38:47,910 --> 00:38:48,250 >> STUDENT: Dobrý deň. 850 00:38:48,250 --> 00:38:50,110 >> JASON Hirschhorn: Dobrý deň. 851 00:38:50,110 --> 00:38:52,810 H-E-L-L-O, kde každý znak v jednom riadku. 852 00:38:52,810 --> 00:38:53,700 Vyzerá skvele. 853 00:38:53,700 --> 00:38:54,750 Poďme znova spustite. 854 00:38:54,750 --> 00:38:56,050 Vždy ísť na kontrolu pre rohové a prípady. 855 00:38:56,050 --> 00:38:57,750 Čo je dobré roh vec skontrolovať? 856 00:38:57,750 --> 00:39:00,250 857 00:39:00,250 --> 00:39:00,890 >> STUDENT: číslo? 858 00:39:00,890 --> 00:39:02,240 >> JASON Hirschhorn: číslo. 859 00:39:02,240 --> 00:39:06,580 Tak som si dal v 1, a to vytlačí 1. 860 00:39:06,580 --> 00:39:08,970 Nie je to pýta na listy, takže Vyzerá to, že čísla prácu. 861 00:39:08,970 --> 00:39:09,890 Dobrý roh puzdro pre kontrolu. 862 00:39:09,890 --> 00:39:11,740 Aký je ďalší dobrý roh puzdro pre kontrolu? 863 00:39:11,740 --> 00:39:12,420 >> STUDENT: prázdny reťazec. 864 00:39:12,420 --> 00:39:12,910 >> JASON Hirschhorn: Hm? 865 00:39:12,910 --> 00:39:13,880 >> STUDENT: Rovnako ako prázdny reťazec. 866 00:39:13,880 --> 00:39:14,400 >> JASON Hirschhorn: Prázdny reťazec. 867 00:39:14,400 --> 00:39:16,730 Takže poďme sa dať nič. 868 00:39:16,730 --> 00:39:18,660 A čo sa bude tlačiť? 869 00:39:18,660 --> 00:39:19,090 >> STUDENT: Nič. 870 00:39:19,090 --> 00:39:19,870 >> JASON Hirschhorn: Nic. 871 00:39:19,870 --> 00:39:20,555 Vyzerá to, že to funguje. 872 00:39:20,555 --> 00:39:23,790 Môžete skúsiť viac rohových prípady, ale všeobecne čísla, odlišné údaje 873 00:39:23,790 --> 00:39:26,160 skvelé vyskúšať, rovnako nič nie je. 874 00:39:26,160 --> 00:39:29,180 Nič, nula, negatívy sú vždy veľké veci vyskúšať a veci, ktoré 875 00:39:29,180 --> 00:39:33,140 by mal test, čo určite budeme testovať Skontrolujte pre a 50 sa bude testovať. 876 00:39:33,140 --> 00:39:34,720 Máte nejaké otázky ohľadom spell.c? 877 00:39:34,720 --> 00:39:37,752 878 00:39:37,752 --> 00:39:39,310 >> OK, poďme vrátime. 879 00:39:39,310 --> 00:39:42,420 Mám ešte jeden program, pre vy písať. 880 00:39:42,420 --> 00:39:44,700 Hovorí sa students.c. 881 00:39:44,700 --> 00:39:49,020 Ide o program, ktorý požiada užívateľa o päť mien, potom sa náhodne vyberie 882 00:39:49,020 --> 00:39:51,600 a vytlačí jednu z mien. 883 00:39:51,600 --> 00:39:54,840 Tento program je trochu viac zapojiť, ako posledné dva sme už písali, 884 00:39:54,840 --> 00:39:58,080 tak prečo sme sa päť minút, kód to individuálne, a potom budeme 885 00:39:58,080 --> 00:40:00,130 kód je spoločne. 886 00:40:00,130 --> 00:40:03,795 >> Tento program tiež zahŕňa niektoré veci nemusí nevideli, takže ak 887 00:40:03,795 --> 00:40:06,390 Máte otázku ohľadom, ako sa To urobím, zdvihnite ruku. 888 00:40:06,390 --> 00:40:08,530 Prídem a bod, ktorý v správnom smere. 889 00:40:08,530 --> 00:40:10,820 Ale my sme tiež robí to, pretože to bude dobrý spôsob, ako predstaviť niektoré 890 00:40:10,820 --> 00:40:12,070 témy, ktoré sú zradné. 891 00:40:12,070 --> 00:44:14,600 892 00:44:14,600 --> 00:44:15,560 >> Tak to funguje, nie? 893 00:44:15,560 --> 00:44:17,580 >> STUDENT: Jo. 894 00:44:17,580 --> 00:44:19,180 >> JASON Hirschhorn: Keď zapnete v Problém set, je tu mnoho spôsobov, ako 895 00:44:19,180 --> 00:44:20,790 to, ale niektoré sú elegantný než ostatné. 896 00:44:20,790 --> 00:44:29,000 897 00:44:29,000 --> 00:44:31,110 Poďme sa ponoriť dovnútra 898 00:44:31,110 --> 00:44:32,880 # Include cs50.h. 899 00:44:32,880 --> 00:44:34,250 # Include stdio.h. 900 00:44:34,250 --> 00:44:37,240 int main void zložené zátvorky. 901 00:44:37,240 --> 00:44:39,430 Vnútri zložených zátvoriek, Mám dve pripomienky. 902 00:44:39,430 --> 00:44:41,500 Prvý z nich je, spýtajte sa Užívateľ päť mien. 903 00:44:41,500 --> 00:44:46,580 Druhý je, že náhodne vyberie a vytlačiť jeden z názvov. 904 00:44:46,580 --> 00:44:50,250 Takže poďme urobiť ten prvý, spýtajte sa užívateľ pre päť mien. 905 00:44:50,250 --> 00:44:53,730 Kto požiadal užívateľa na päť mien a môžete mi povedať, ako to urobiť? 906 00:44:53,730 --> 00:44:56,760 907 00:44:56,760 --> 00:44:58,570 Len dvaja ľudia urobili prvú časť. 908 00:44:58,570 --> 00:45:00,150 Traja ľudia urobili prvú časť. 909 00:45:00,150 --> 00:45:00,670 Štyri, päť. 910 00:45:00,670 --> 00:45:03,140 Tom, ako to robíte? 911 00:45:03,140 --> 00:45:09,940 >> STUDENT: Tie by deklarovať reťazcovú a potom meno, držiak päť. 912 00:45:09,940 --> 00:45:12,070 >> JASON Hirschhorn: String meno držiak päť. 913 00:45:12,070 --> 00:45:15,350 Takže čo je to linka robí, Názov reťazca držiak päť? 914 00:45:15,350 --> 00:45:17,800 >> STUDENT: Tie by deklarovať Pole reťazcov. 915 00:45:17,800 --> 00:45:19,000 >> JASON Hirschhorn: Toto je Pole reťazcov. 916 00:45:19,000 --> 00:45:21,590 Koľko reťazca budú aby sa sem zmestil? 917 00:45:21,590 --> 00:45:22,010 >> STUDENT: Five. 918 00:45:22,010 --> 00:45:22,320 >> JASON Hirschhorn: Five. 919 00:45:22,320 --> 00:45:22,660 Výborný. 920 00:45:22,660 --> 00:45:26,360 Budeme hovoriť mená, pretože budeme mať viac ty. 921 00:45:26,360 --> 00:45:27,790 OK, ďalšie? 922 00:45:27,790 --> 00:45:29,270 >> Žiak: A potom ste majú pre sláčiky - 923 00:45:29,270 --> 00:45:30,060 >> JASON Hirschhorn: pre sláčiky. 924 00:45:30,060 --> 00:45:33,035 >> Študent: - pre i = 0. 925 00:45:33,035 --> 00:45:37,040 >> JASON Hirschhorn: for (int i = 0. 926 00:45:37,040 --> 00:45:38,270 >> STUDENT: bodkočiarku. 927 00:45:38,270 --> 00:45:38,880 >> JASON Hirschhorn: bodkočiarku. 928 00:45:38,880 --> 00:45:39,790 >> Žiak: Myslím, menej ako päť. 929 00:45:39,790 --> 00:45:41,310 >> JASON Hirschhorn: Aj nižší ako päť. 930 00:45:41,310 --> 00:45:42,230 >> STUDENT: bodkočiarku. 931 00:45:42,230 --> 00:45:42,560 >> JASON Hirschhorn: bodkočiarku. 932 00:45:42,560 --> 00:45:43,380 >> STUDENT: i + +. 933 00:45:43,380 --> 00:45:46,050 >> JASON Hirschhorn: i + +. 934 00:45:46,050 --> 00:45:47,100 >> Žiak: A zavrel zátvorky. 935 00:45:47,100 --> 00:45:48,600 >> JASON Hirschhorn: Uzavreté zátvorky, a potom niektoré zložené zátvorky. 936 00:45:48,600 --> 00:45:50,050 Vnútri zložených zátvoriek? 937 00:45:50,050 --> 00:45:51,423 >> Žiak: A potom printf. 938 00:45:51,423 --> 00:45:52,535 >> JASON Hirschhorn: printf. 939 00:45:52,535 --> 00:45:56,200 >> STUDENT: Otvorené zátvorky name% d 940 00:45:56,200 --> 00:45:57,090 >> JASON Hirschhorn: Je nám ľúto? 941 00:45:57,090 --> 00:45:57,660 >> STUDENT: Meno. 942 00:45:57,660 --> 00:45:58,200 >> JASON Hirschhorn: Meno. 943 00:45:58,200 --> 00:46:01,700 >> Žiak: A potom medzeru a potom% d 944 00:46:01,700 --> 00:46:02,950 >> JASON Hirschhorn: Meno, priestor,% d 945 00:46:02,950 --> 00:46:05,630 946 00:46:05,630 --> 00:46:10,820 >> STUDENT: A / n, a potom zavrel. 947 00:46:10,820 --> 00:46:15,070 >> JASON Hirschhorn: Takže názov, miesto, % D / n, uzavreté zátvorky. 948 00:46:15,070 --> 00:46:17,730 >> STUDENT: Čiarka, i + 1. 949 00:46:17,730 --> 00:46:19,390 Ospravedlňujem sa. 950 00:46:19,390 --> 00:46:21,040 Uzavretý citácie a potom čiarka, i +1. 951 00:46:21,040 --> 00:46:24,400 >> JASON Hirschhorn: Zatvorené Ponuka, čiarka, i +1. 952 00:46:24,400 --> 00:46:25,850 >> Žiak: Áno. 953 00:46:25,850 --> 00:46:27,650 A potom ďalší riadok - 954 00:46:27,650 --> 00:46:29,400 >> JASON Hirschhorn: i + 1. 955 00:46:29,400 --> 00:46:31,600 >> Žiak: Áno. 956 00:46:31,600 --> 00:46:36,440 A potom ďalšiu snímku sú mená aj držiak. 957 00:46:36,440 --> 00:46:39,000 >> JASON Hirschhorn: Ďalší riadok sú mená aj držiak. 958 00:46:39,000 --> 00:46:41,360 >> STUDENT: = dostať reťazec. 959 00:46:41,360 --> 00:46:43,460 >> JASON Hirschhorn: = Get - 960 00:46:43,460 --> 00:46:44,510 kapitálu G-E-T - 961 00:46:44,510 --> 00:46:45,530 string. 962 00:46:45,530 --> 00:46:47,800 Jejda, ospravedlňujem sa. 963 00:46:47,800 --> 00:46:49,050 >> STUDENT: Otvorené, uzatvorené zátvorky a potom - 964 00:46:49,050 --> 00:46:50,940 >> JASON Hirschhorn: Otvorená, uzavretá zátvorka. 965 00:46:50,940 --> 00:46:51,030 >> STUDENT: bodkočiarku. 966 00:46:51,030 --> 00:46:52,500 >> JASON Hirschhorn: bodkočiarku. 967 00:46:52,500 --> 00:46:57,545 OK, takže inicializáciu poľa reťazca, mená, a potom prejsť 968 00:46:57,545 --> 00:47:02,720 pre sláčiky, a päťkrát vytlačte niektoré výzvu pre užívateľa a uložiť 969 00:47:02,720 --> 00:47:03,360 päť reťazca. 970 00:47:03,360 --> 00:47:08,090 Má niekto nejaký úpravy to? 971 00:47:08,090 --> 00:47:10,030 Tom, myslím, že každý s vami súhlasí. 972 00:47:10,030 --> 00:47:10,880 Vyzerá to celkom dobre. 973 00:47:10,880 --> 00:47:11,660 OK. 974 00:47:11,660 --> 00:47:14,830 Prečo si to urobila aj +1, aj keď? 975 00:47:14,830 --> 00:47:18,000 >> Žiak: Myslím, že nemá byť, ale aj +1 tak, že je 976 00:47:18,000 --> 00:47:19,700 meno, kto vymenovali päť. 977 00:47:19,700 --> 00:47:21,930 V opačnom prípade by to bolo meno nula pomenovať štyri. 978 00:47:21,930 --> 00:47:24,400 >> JASON Hirschhorn: Tak ste aj 1 pretože inak by sa 979 00:47:24,400 --> 00:47:27,060 vytlačiť nula až štyri, pretože to, ako počítače premýšľať, ale ľudia 980 00:47:27,060 --> 00:47:28,530 nie je naozaj čítať takhle. 981 00:47:28,530 --> 00:47:30,190 To je ďalšia vec, s ktorými sa stretnete. 982 00:47:30,190 --> 00:47:33,210 Niekedy, keď tlačíte niečo pre užívateľov, budete chcieť, aby sa to 983 00:47:33,210 --> 00:47:35,733 trochu krajšie, a tým i +1 je v tomto prípade 984 00:47:35,733 --> 00:47:37,430 spôsob, ako to krajšie. 985 00:47:37,430 --> 00:47:41,380 >> Vidím tiež päť dvakrát, názov reťazca je päť, aj je menšia než päť. 986 00:47:41,380 --> 00:47:42,430 Viem, kde máš päť. 987 00:47:42,430 --> 00:47:44,890 Máš to odo mňa rozprávanie si päť mien. 988 00:47:44,890 --> 00:47:49,000 Ale ak by sme chceli, aby kód trochu robustnejšie, jedna vec, ktorú by sme 989 00:47:49,000 --> 00:47:53,110 môže urobiť, je tu, mimo int, by sme mohli urobiť niečo také, 990 00:47:53,110 --> 00:47:57,070 # Define, a my sme mohli robiť mien 5. 991 00:47:57,070 --> 00:48:01,580 992 00:48:01,580 --> 00:48:05,390 >> Takže v podstate tam, kde píšem kapitál N, kapitál, kapitál M, kapitál E, 993 00:48:05,390 --> 00:48:08,890 S mestom, že reťazec, nahradí že s 5 v kóde. 994 00:48:08,890 --> 00:48:11,530 995 00:48:11,530 --> 00:48:13,445 Alebo si jednoducho hovoria - my budeme len zavolať, že číslo. 996 00:48:13,445 --> 00:48:17,190 Takže som definovať všetky čiapky ČÍSLO byť 5. 997 00:48:17,190 --> 00:48:22,830 >> Takže teraz tam, kde som číslo 5, som ho nahradiť všetky ČÍSLO čiapky. 998 00:48:22,830 --> 00:48:26,880 A teraz, keď chcem zmeniť číslo mien, všetko, čo potrebujete urobiť, je 999 00:48:26,880 --> 00:48:31,350 tento jeden riadok, riadok štyri, kde mám # Define číslo 5, zmeniť na 10, 1000 00:48:31,350 --> 00:48:34,340 alebo zmeniť na 4. 1001 00:48:34,340 --> 00:48:37,400 Keď kód dostane dlhšie, nie ste bude pamätať všetky miesta, ktoré 1002 00:48:37,400 --> 00:48:41,630 dať, koľko mien ste chceli, a Aby pre vás nenechajte ujsť jeden, je to 1003 00:48:41,630 --> 00:48:45,490 dobrý spôsob, ako to urobiť, nájsť niečo, hore hore a potom stačí použiť túto frázu 1004 00:48:45,490 --> 00:48:46,400 všade v celom svojom kóde. 1005 00:48:46,400 --> 00:48:46,780 Marcus? 1006 00:48:46,780 --> 00:48:49,780 >> STUDENT: Je to štylisticky prednostné než globálne definovať 1007 00:48:49,780 --> 00:48:51,270 konštantný n? 1008 00:48:51,270 --> 00:48:53,760 >> JASON Hirschhorn: Takže je to, že štylisticky radšej než na celom svete 1009 00:48:53,760 --> 00:48:54,980 stanovenie konštantný n? 1010 00:48:54,980 --> 00:48:59,036 Takže hovoríš, že by áno, int číslo = 5? 1011 00:48:59,036 --> 00:49:01,300 >> STUDENT: Majú spoluhlásky v C, alebo nie? 1012 00:49:01,300 --> 00:49:02,720 >> JASON Hirschhorn: Alebo const - v sebe rovní. 1013 00:49:02,720 --> 00:49:04,275 Takže hovoríš, že práve globálna premenná? 1014 00:49:04,275 --> 00:49:04,990 >> STUDENT: Jo. 1015 00:49:04,990 --> 00:49:08,670 >> JASON Hirschhorn: Takže štylisticky nie je nevyhnutne jediný správny 1016 00:49:08,670 --> 00:49:12,050 odpovedať, ale obaja z nich sú lepšie než len hádzanie takýchto náhodných 1017 00:49:12,050 --> 00:49:12,960 čísel na celom svojom kóde. 1018 00:49:12,960 --> 00:49:14,650 Hovoríme im magická čísla. 1019 00:49:14,650 --> 00:49:16,450 Keď sa pozriem na váš kód, alebo keď niekto číta cez to, že 1020 00:49:16,450 --> 00:49:18,790 Nechcem práve tieto náhodných čísel ktoré nemajú zmysel. 1021 00:49:18,790 --> 00:49:22,420 Aj číslo 26, ktorý je všeobecne počet písmen v abecede, 1022 00:49:22,420 --> 00:49:28,870 je lepšie definovať abecedy do hornej a uložiť číslo 26 v tomto reťazci 1023 00:49:28,870 --> 00:49:29,550 ak to dáva zmysel. 1024 00:49:29,550 --> 00:49:33,210 >> Alebo na problém nastaviť jeden, skôr ako - znova, nehovorili sme o tom na 1025 00:49:33,210 --> 00:49:37,020 čas, ale namiesto toho len hádzanie v 25 alebo 10 všade, môžete 1026 00:49:37,020 --> 00:49:41,860 uložiť číslo 25 ako štvrti a 10 ako DIME, a to uľahčuje 1027 00:49:41,860 --> 00:49:44,140 kto číta cez váš kód pochopiť, prečo ste si vybrali tento počet. 1028 00:49:44,140 --> 00:49:46,540 A tiež pre vás, ak ste niekedy chceli aktualizovať kód, ale je to trochu 1029 00:49:46,540 --> 00:49:47,290 viac robustný. 1030 00:49:47,290 --> 00:49:48,070 Jo? 1031 00:49:48,070 --> 00:49:50,830 >> STUDENT: Tento kód je tiež bude k dispozícii pre nás po? 1032 00:49:50,830 --> 00:49:52,453 >> JASON Hirschhorn: Všetky z týchto kódov čo sme napísali spolu so 1033 00:49:52,453 --> 00:49:54,620 bude zaslané chlapci a sú k dispozícii. 1034 00:49:54,620 --> 00:49:55,740 Áno. 1035 00:49:55,740 --> 00:49:58,040 Takže pýtať užívateľa na päť mien. 1036 00:49:58,040 --> 00:50:00,280 Náhodne vyberte a vytlačte jeden z názvov. 1037 00:50:00,280 --> 00:50:00,940 Kto to urobil čiaru? 1038 00:50:00,940 --> 00:50:02,230 Toto je najzložitejšie stávke. 1039 00:50:02,230 --> 00:50:02,450 Je nám ľúto, Tom. 1040 00:50:02,450 --> 00:50:05,510 Vy ste naozaj dobrú prácu, ale to je trochu zložitejšie. 1041 00:50:05,510 --> 00:50:06,600 Marcus, choďte do toho. 1042 00:50:06,600 --> 00:50:10,180 >> Žiak: No v prvom rade, budete treba zahrnúť stdlib.h a time.h. 1043 00:50:10,180 --> 00:50:13,200 >> JASON Hirschhorn: Takže hovoríš, že na hore, zahŕňa dve ďalšie knižnice. 1044 00:50:13,200 --> 00:50:18,830 Chceš, aby som patrí S-T-D-L-I-B bod H, Štandardná knižnica a čo 1045 00:50:18,830 --> 00:50:19,760 bol druhý? 1046 00:50:19,760 --> 00:50:21,010 >> STUDENT: Time.h. 1047 00:50:21,010 --> 00:50:25,130 1048 00:50:25,130 --> 00:50:27,840 >> JASON Hirschhorn: # include time.h. 1049 00:50:27,840 --> 00:50:29,470 To sú ďalšie dve knižnice. 1050 00:50:29,470 --> 00:50:31,790 Predpokladám, že teraz budeme používať funkcie, ktoré sú obsiahnuté v týchto 1051 00:50:31,790 --> 00:50:34,240 dvaja, čo je dôvod, prečo ste potrebovali zahrnúť je? 1052 00:50:34,240 --> 00:50:36,980 >> Žiak: Takže, ty si prvý bude chcieť písať srand. 1053 00:50:36,980 --> 00:50:38,770 >> JASON Hirschhorn: srand. 1054 00:50:38,770 --> 00:50:42,070 >> STUDENT: (čas (0) 1055 00:50:42,070 --> 00:50:42,700 >> JASON Hirschhorn: Ospravedlňujem sa. 1056 00:50:42,700 --> 00:50:45,580 Srand (time ( 1057 00:50:45,580 --> 00:50:46,890 >> STUDENT: 0. 1058 00:50:46,890 --> 00:50:47,230 >> JASON Hirschhorn: 0. 1059 00:50:47,230 --> 00:50:49,990 >> Študent :)), bodkočiarka. 1060 00:50:49,990 --> 00:50:51,320 >> JASON Hirschhorn: Ďalšie uzavretá zátvorka? 1061 00:50:51,320 --> 00:50:51,650 Bodkočiarka. 1062 00:50:51,650 --> 00:50:53,610 Idem len vymeniť Váš nula s NULL. 1063 00:50:53,610 --> 00:50:55,980 Bude to robiť rovnakú vec, ale všeobecne, uvidíte NULL, čo 1064 00:50:55,980 --> 00:50:57,720 budeme o tom hovoriť riadok druhý. 1065 00:50:57,720 --> 00:50:58,580 >> STUDENT: Štylisticky lepší? 1066 00:50:58,580 --> 00:51:02,240 >> JASON Hirschhorn: Všeobecne platí, že ľudia, právo NULL, ale je to to isté. 1067 00:51:02,240 --> 00:51:05,010 >> Žiak: A potom int meno. 1068 00:51:05,010 --> 00:51:06,490 >> JASON Hirschhorn: Int meno. 1069 00:51:06,490 --> 00:51:07,280 >> STUDENT: = 1070 00:51:07,280 --> 00:51:07,780 >> JASON Hirschhorn: = 1071 00:51:07,780 --> 00:51:08,580 >> STUDENT: Rand. 1072 00:51:08,580 --> 00:51:09,340 >> JASON Hirschhorn: Rand. 1073 00:51:09,340 --> 00:51:10,420 >> STUDENT: () 1074 00:51:10,420 --> 00:51:11,500 >> JASON Hirschhorn: () 1075 00:51:11,500 --> 00:51:12,850 >> STUDENT: Modulo číslo. 1076 00:51:12,850 --> 00:51:14,310 >> JASON Hirschhorn: Čo je modulo? 1077 00:51:14,310 --> 00:51:14,970 Postava? 1078 00:51:14,970 --> 00:51:16,000 Znak percenta? 1079 00:51:16,000 --> 00:51:17,790 >> STUDENT: znak percenta. 1080 00:51:17,790 --> 00:51:19,521 Modulo číslo, ktoré ste definovali až hore. 1081 00:51:19,521 --> 00:51:22,030 >> JASON Hirschhorn: Modulo ČÍSLO. 1082 00:51:22,030 --> 00:51:24,052 >> Žiak: A potom bodkočiarku. 1083 00:51:24,052 --> 00:51:24,660 >> JASON Hirschhorn: bodkočiarku. 1084 00:51:24,660 --> 00:51:27,820 >> Žiak: A potom nová linka, printf. 1085 00:51:27,820 --> 00:51:28,460 >> JASON Hirschhorn: printf. 1086 00:51:28,460 --> 00:51:29,730 >> STUDENT: ( 1087 00:51:29,730 --> 00:51:30,620 >> JASON Hirschhorn: ( 1088 00:51:30,620 --> 00:51:31,650 >> Študent: " 1089 00:51:31,650 --> 00:51:32,630 >> JASON Hirschhorn: " 1090 00:51:32,630 --> 00:51:35,320 >> STUDENT:% s / n 1091 00:51:35,320 --> 00:51:37,220 >> JASON Hirschhorn:% s / n 1092 00:51:37,220 --> 00:51:38,420 >> Študent: " 1093 00:51:38,420 --> 00:51:40,640 >> JASON Hirschhorn:% s / n " 1094 00:51:40,640 --> 00:51:43,540 >> STUDENT: čiarka, medzera mená. 1095 00:51:43,540 --> 00:51:44,350 >> JASON Hirschhorn: Space - 1096 00:51:44,350 --> 00:51:46,300 >> Žiak: No, myslím, že to, čo to hovoríme tu? 1097 00:51:46,300 --> 00:51:48,640 >> JASON Hirschhorn: Hovorili sme, že mená. 1098 00:51:48,640 --> 00:51:52,360 >> STUDENT: Open držiak meno. 1099 00:51:52,360 --> 00:51:55,090 >> JASON Hirschhorn: Open držiak meno. 1100 00:51:55,090 --> 00:51:55,850 >> STUDENT: Uzavretý držiak. 1101 00:51:55,850 --> 00:51:56,490 >> JASON Hirschhorn: Uzavretý držiak. 1102 00:51:56,490 --> 00:51:57,460 >> STUDENT :) 1103 00:51:57,460 --> 00:51:58,800 >> JASON Hirschhorn :) 1104 00:51:58,800 --> 00:51:59,440 >> STUDENT: bodkočiarku. 1105 00:51:59,440 --> 00:52:00,410 >> JASON Hirschhorn: bodkočiarku. 1106 00:52:00,410 --> 00:52:01,500 OK, poďme zachrániť. 1107 00:52:01,500 --> 00:52:04,410 Poďme urobiť tento kód. 1108 00:52:04,410 --> 00:52:06,365 Študenti. 1109 00:52:06,365 --> 00:52:07,100 Poďme spustením tohto kódu. 1110 00:52:07,100 --> 00:52:08,480 Študenti. 1111 00:52:08,480 --> 00:52:11,630 Nie. / Študenta. . / Študentov. 1112 00:52:11,630 --> 00:52:12,870 Menuj jedného. 1113 00:52:12,870 --> 00:52:15,490 Povieme, že Dávid. 1114 00:52:15,490 --> 00:52:18,070 Meno dva, RJ. 1115 00:52:18,070 --> 00:52:20,561 Meno tri, Rob. 1116 00:52:20,561 --> 00:52:22,490 Názov štyri, Lucasa. 1117 00:52:22,490 --> 00:52:26,060 Názov päť, Joseph. 1118 00:52:26,060 --> 00:52:28,850 A potom sa to vytlačí Joseph znova. 1119 00:52:28,850 --> 00:52:31,730 >> Dovoľte mi teda plynúť znova. 1120 00:52:31,730 --> 00:52:32,460 Dovoľte mi, aby som to rovnaké mená. 1121 00:52:32,460 --> 00:52:39,760 David, RJ, Rob, Lucas, Josef. 1122 00:52:39,760 --> 00:52:41,070 A to mi dal David tentoraz. 1123 00:52:41,070 --> 00:52:43,030 Tak som urobil to isté, ale dal ma iná vec, a to je 1124 00:52:43,030 --> 00:52:45,410 pretože, samozrejme, žiadame pre náhodné meno. 1125 00:52:45,410 --> 00:52:50,950 Takže si myslím, založený okrem mňa putovanie po miestnosti, že väčšina ľudí 1126 00:52:50,950 --> 00:52:55,960 pravdepodobne dostali prvú časť vpravo, zriadenie tohto poľa a potom sa dostať 1127 00:52:55,960 --> 00:52:56,430 všetky mená. 1128 00:52:56,430 --> 00:52:59,320 Hovorím o tratiach 10 až 16 rokov. 1129 00:52:59,320 --> 00:53:02,150 Ale riadky 18 až 21 sú pravdepodobne niektoré veci, ktoré ste ešte nevideli, 1130 00:53:02,150 --> 00:53:03,750 takže poďme prejsť ty. 1131 00:53:03,750 --> 00:53:10,390 >> Táto linka, srand čas NULL je v podstate - 1132 00:53:10,390 --> 00:53:14,300 Ospravedlňujem sa, poďme preskočiť dole linka, rand (). 1133 00:53:14,300 --> 00:53:17,320 To vám dáva náhodné číslo, náhodné celé číslo. 1134 00:53:17,320 --> 00:53:19,630 A ak ste nájomný vrah rand, ktorá mnoho z vás urobili - 1135 00:53:19,630 --> 00:53:21,530 M-A-N priestor R-A-N-D - 1136 00:53:21,530 --> 00:53:25,910 v termináli, ako je tento, M-A-N priestor R - N-D, stlačte kláves Enter. 1137 00:53:25,910 --> 00:53:30,490 Tie by prísť do návodu na obsluhu a by mal byť schopný čítať, že rand 1138 00:53:30,490 --> 00:53:34,260 Príkaz výstupy num pseudo náhodných bajtov Po naočkovaní náhodné číslo 1139 00:53:34,260 --> 00:53:35,510 generátor raz. 1140 00:53:35,510 --> 00:53:38,450 1141 00:53:38,450 --> 00:53:39,700 >> Takže je to popis. 1142 00:53:39,700 --> 00:53:43,860 1143 00:53:43,860 --> 00:53:46,800 To je to, čo robí rand, dáva Ste náhodné číslo, ak 1144 00:53:46,800 --> 00:53:48,610 budete volať túto funkciu. 1145 00:53:48,610 --> 00:53:53,140 Bohužiaľ, to nie je naozaj náhodná pretože keď stačí zavolať náhodne 1146 00:53:53,140 --> 00:53:55,970 bez toho aby sa to nejaký olej, niektoré počiatočný bod, bude to vždy zvoliť 1147 00:53:55,970 --> 00:53:59,100 rovnaký a používa vzorec určiť ďalšie. 1148 00:53:59,100 --> 00:54:01,730 Takže, ak povieš rand, bude to len vám to isté. 1149 00:54:01,730 --> 00:54:02,610 To bude veľmi predvídateľný. 1150 00:54:02,610 --> 00:54:03,790 V skutočnosti sa to byť ľubovoľné. 1151 00:54:03,790 --> 00:54:09,610 >> Takže to, čo musíme urobiť, na Marcusa Pokyny pre mňa, boli semeno rand 1152 00:54:09,610 --> 00:54:13,810 s niečím iným, čo je to, čo funkcie srand robí. 1153 00:54:13,810 --> 00:54:18,055 To semená Rand sa niečo trochu viac náhodné, než to isté, a 1154 00:54:18,055 --> 00:54:23,360 on siatie ju s časovým NULL, čo je, rovnako konvencií, aktuálne 1155 00:54:23,360 --> 00:54:24,650 čas v sekundách. 1156 00:54:24,650 --> 00:54:29,790 >> Takže za predpokladu, že každý nie je chystá spustiť kód na presné 1157 00:54:29,790 --> 00:54:33,620 Rovnaký sekundu, takže je to stávka na istotu, že Doba NULL bude iný 1158 00:54:33,620 --> 00:54:35,250 zakaždým, keď tento kód spustený. 1159 00:54:35,250 --> 00:54:39,020 Stávka na istotu, že takto bude srand semeno rand s niečím iným každom 1160 00:54:39,020 --> 00:54:39,990 jednotlivý čas. 1161 00:54:39,990 --> 00:54:44,110 Takže konvencií, keď budeme robiť chcú náhodné číslo, píšeme tento riadok, 1162 00:54:44,110 --> 00:54:50,540 srand čas NULL, aby nám moc viac hniezda, a potom spustiť 1163 00:54:50,540 --> 00:54:52,080 rand, čo nám dáva náhodné číslo. 1164 00:54:52,080 --> 00:54:52,840 Jo? 1165 00:54:52,840 --> 00:54:54,140 >> STUDENT: Môžete povedať, čo myslíš osivo? 1166 00:54:54,140 --> 00:54:55,630 >> JASON Hirschhorn: Semeno ako - 1167 00:54:55,630 --> 00:54:58,730 takže rand sa chystá vybrať určitý počet a bude to používať niektoré 1168 00:54:58,730 --> 00:55:00,060 vzorec sa tam dostať. 1169 00:55:00,060 --> 00:55:03,250 Takže to bude začať s niečím a potom zase do niečoho na základe 1170 00:55:03,250 --> 00:55:03,890 z tohto vzorca. 1171 00:55:03,890 --> 00:55:06,090 Ak ste vždy dať to isté, je to vždy premeniť 1172 00:55:06,090 --> 00:55:06,790 to isté. 1173 00:55:06,790 --> 00:55:08,450 Tak, že prvá vec, ktorú dať je semeno. 1174 00:55:08,450 --> 00:55:10,880 Takže chcete, aby to niečo inak začať s, a tak to 1175 00:55:10,880 --> 00:55:12,610 sa premeniť v niečo iné. 1176 00:55:12,610 --> 00:55:15,840 >> A nakoniec, riadok 20, toto sa nazýva% 1177 00:55:15,840 --> 00:55:17,470 modulo, a to je mätúce. 1178 00:55:17,470 --> 00:55:19,850 To je niečo, čo je trochu iný tu, že ste naozaj nemám 1179 00:55:19,850 --> 00:55:22,240 majú v reálnom živote matematike. 1180 00:55:22,240 --> 00:55:27,430 Ale v podstate, keď budete mať obra číslo a rozdeliť v C, čo 1181 00:55:27,430 --> 00:55:29,482 sa stane zostávajúce? 1182 00:55:29,482 --> 00:55:30,510 >> STUDENT: Dostane skrátené. 1183 00:55:30,510 --> 00:55:31,220 >> JASON Hirschhorn: Dostane skrátené. 1184 00:55:31,220 --> 00:55:35,200 Tak 20 delené 3 je to, čo? 1185 00:55:35,200 --> 00:55:37,950 Čo to návrat do tie, 20 delené 3. 1186 00:55:37,950 --> 00:55:39,260 Ospravedlňujeme sa, 10 delené 3. 1187 00:55:39,260 --> 00:55:41,062 Čo to späť k vám? 1188 00:55:41,062 --> 00:55:41,540 >> STUDENT: [nepočuteľné]. 1189 00:55:41,540 --> 00:55:45,170 >> JASON Hirschhorn: 10 delené 3 iba vráti 3, nie 3 zvyšok 1. 1190 00:55:45,170 --> 00:55:51,490 Takže to, čo sa vracia 10 modulo 3 je len zvyšok, 1. 1191 00:55:51,490 --> 00:55:54,020 Takže ak by ste chceli vedieť, čo delí 10 o 3 vlastne bol, že nie 1192 00:55:54,020 --> 00:55:58,950 do 10 delené 3, mali by ste dostať 3, a potom by som urobil 10 modulo 3, a 1193 00:55:58,950 --> 00:55:59,860 by ste dostať jeden. 1194 00:55:59,860 --> 00:56:04,630 Takže by ste si uvedomiť, že 10 rozdelené o 3 je 3, zvyšok 1. 1195 00:56:04,630 --> 00:56:07,990 >> A v tejto rade, môže byť rand ľubovoľné celé číslo, v podstate. 1196 00:56:07,990 --> 00:56:12,660 Takže modulo hovorí, rozdeliť ju číslo, ktoré je v tomto prípade 5.. 1197 00:56:12,660 --> 00:56:16,420 A ak ste niekedy vydeľte číslom, číslo musí byť vždy menšia než 1198 00:56:16,420 --> 00:56:17,590 toto číslo. 1199 00:56:17,590 --> 00:56:22,200 Takže ak ste delenie číslom 5, Zvyšok sa vždy bude 1200 00:56:22,200 --> 00:56:23,396 nula až štyri. 1201 00:56:23,396 --> 00:56:25,520 Tak to proste matematika funguje. 1202 00:56:25,520 --> 00:56:29,700 >> Takže veľké množstvo moduloed by menšie číslo bude vždy vrátiť 1203 00:56:29,700 --> 00:56:33,530 zvyšok a bude vždy vrátiť niektoré číslo, ktoré je menšie ako číslo, ktoré 1204 00:56:33,530 --> 00:56:34,693 delené. 1205 00:56:34,693 --> 00:56:37,920 Má niekto nejaké otázky týkajúce sa modulo, pretože to príde veľmi, 1206 00:56:37,920 --> 00:56:41,450 veľmi šikovný, takže chcem, aby sa ubezpečil, všetkým je to jasné? 1207 00:56:41,450 --> 00:56:43,710 Skvelý. 1208 00:56:43,710 --> 00:56:46,000 A videli sme, že tento program funguje. 1209 00:56:46,000 --> 00:56:50,280 OK, ďalej. 1210 00:56:50,280 --> 00:56:52,970 >> Takže nabudúce, budeme ísť do funkcie, a my sme ísť 1211 00:56:52,970 --> 00:56:55,580 cez zvyšok tejto veci dosť rýchlo, pretože chcem dostať do 1212 00:56:55,580 --> 00:56:57,150 Argumenty príkazového riadka. 1213 00:56:57,150 --> 00:57:00,330 Takže funkcie sú v podstate, Ako ste videli, čierne skrinky. 1214 00:57:00,330 --> 00:57:04,290 Berú veci zvané parametrov robia niečo pre nich, a to buď 1215 00:57:04,290 --> 00:57:06,990 zmeniť alebo vytvoriť niektoré nežiaduce účinky, a konečne, že pľuvať 1216 00:57:06,990 --> 00:57:09,530 niečo, čo, ktorý je návratová hodnota. 1217 00:57:09,530 --> 00:57:12,495 Môže mi niekto dať jeden dôvod Preto by sme použiť funkcie? 1218 00:57:12,495 --> 00:57:15,870 1219 00:57:15,870 --> 00:57:16,360 Niekto? 1220 00:57:16,360 --> 00:57:19,360 Jedným z dôvodov, prečo by sme použili funkciu? 1221 00:57:19,360 --> 00:57:21,280 Každý, kto? 1222 00:57:21,280 --> 00:57:22,700 Videl som obe ruky. 1223 00:57:22,700 --> 00:57:23,590 Čo je to dobrý dôvod? 1224 00:57:23,590 --> 00:57:24,930 Marcus? 1225 00:57:24,930 --> 00:57:27,730 >> STUDENT: Ak máte možnosť volať rovnaké kus kódu viackrát. 1226 00:57:27,730 --> 00:57:29,150 >> JASON Hirschhorn: OK, ak potrebujete možnosť volať rovnaké kus 1227 00:57:29,150 --> 00:57:30,040 kód viackrát. 1228 00:57:30,040 --> 00:57:32,470 Jeff, si mal iný dôvod? 1229 00:57:32,470 --> 00:57:34,230 >> STUDENT: Len tak, aby môžete kód menej. 1230 00:57:34,230 --> 00:57:35,070 >> JASON Hirschhorn: Môžete kódovať menej. 1231 00:57:35,070 --> 00:57:35,320 Presne tak. 1232 00:57:35,320 --> 00:57:38,720 Ak chcete urobiť niečo veľa - 1233 00:57:38,720 --> 00:57:41,720 v predchádzajúcom kóde, mohol som mať napísal dostať reťazec, päťkrát, ale 1234 00:57:41,720 --> 00:57:44,620 pre sláčiky robí to vyzerať krajšie a musíte napísať menej kódu. 1235 00:57:44,620 --> 00:57:45,760 Funkcie sú podobné nápad. 1236 00:57:45,760 --> 00:57:48,720 Ak chcem urobiť to isté veľa, presunúť do funkcie a volať, že 1237 00:57:48,720 --> 00:57:49,610 fungovať zakaždým. 1238 00:57:49,610 --> 00:57:51,190 To bude robiť to, čo pre vás. 1239 00:57:51,190 --> 00:57:53,740 To je veľký dôvod používať funkcie. 1240 00:57:53,740 --> 00:57:54,870 >> Tak anatómie funkcie. 1241 00:57:54,870 --> 00:57:56,670 Funkcia bude všeobecne vyzerať takto. 1242 00:57:56,670 --> 00:57:59,280 Bude začínať návratový typ, potom budete mať meno. 1243 00:57:59,280 --> 00:58:02,935 Zaberie to argumenty, inak známy ako parametre, a vo vnútri 1244 00:58:02,935 --> 00:58:05,290 tie zložené zátvorky, budete napísať svoj kód. 1245 00:58:05,290 --> 00:58:07,150 >> Videli sme jednu funkciu veľa. 1246 00:58:07,150 --> 00:58:09,160 To je hlavné. 1247 00:58:09,160 --> 00:58:13,820 Tu je hlavný prekrýva na že anatómia som mal predtým. 1248 00:58:13,820 --> 00:58:15,525 Čo int tu znamenať? 1249 00:58:15,525 --> 00:58:18,534 1250 00:58:18,534 --> 00:58:19,450 Čo int znamená? 1251 00:58:19,450 --> 00:58:21,026 Keď píšem int main (void). 1252 00:58:21,026 --> 00:58:21,740 >> STUDENT: Návrat typ? 1253 00:58:21,740 --> 00:58:22,350 >> JASON Hirschhorn: Je nám ľúto? 1254 00:58:22,350 --> 00:58:23,170 >> STUDENT: Návratový typ. 1255 00:58:23,170 --> 00:58:24,820 >> JASON Hirschhorn: Int návratový typ, presne tak. 1256 00:58:24,820 --> 00:58:25,870 Hlavné vracia int. 1257 00:58:25,870 --> 00:58:28,678 Čo je hlavné? 1258 00:58:28,678 --> 00:58:29,510 >> Študent: Názov funkcie. 1259 00:58:29,510 --> 00:58:30,800 >> JASON Hirschhorn: Hlavné je názov funkcie. 1260 00:58:30,800 --> 00:58:31,510 Presne tak. 1261 00:58:31,510 --> 00:58:31,840 A neplatné? 1262 00:58:31,840 --> 00:58:33,190 Čo je neplatná v zátvorkách? 1263 00:58:33,190 --> 00:58:36,650 1264 00:58:36,650 --> 00:58:42,030 >> STUDENT: Neberie žiadne externé hodnoty. 1265 00:58:42,030 --> 00:58:42,930 >> JASON Hirschhorn: Takže void - 1266 00:58:42,930 --> 00:58:43,240 pravdu. 1267 00:58:43,240 --> 00:58:45,940 Vnútri zátvoriek, dáme parametre alebo argumenty, že 1268 00:58:45,940 --> 00:58:48,480 funkcie má, čo sa deje vnútri čiernej skrinky. 1269 00:58:48,480 --> 00:58:50,760 Pri písaní neplatný, hovoríš To nijako palcov 1270 00:58:50,760 --> 00:58:53,802 Takže int main void znamená, že hlavné je neberie nič palcov 1271 00:58:53,802 --> 00:58:56,950 >> Vnútri zložených zátvoriek, máme nejaké kód, a potom vidíme na konci 1272 00:58:56,950 --> 00:58:57,640 vráti nulu. 1273 00:58:57,640 --> 00:59:01,220 Čo znamená návrat nula znamená? 1274 00:59:01,220 --> 00:59:02,470 No, my sme hovorili o návratový typ. 1275 00:59:02,470 --> 00:59:03,780 Hlavné potrebuje vrátiť int. 1276 00:59:03,780 --> 00:59:04,960 To je to, čo robí tento riadok. 1277 00:59:04,960 --> 00:59:07,330 Vracia int, nula. 1278 00:59:07,330 --> 00:59:13,600 >> Samozrejme, že sme nevideli, že mnoho pretože v programovaní robíme s 1279 00:59:13,600 --> 00:59:16,070 stroje, ktoré robíme a prekladače používame dnes, vás 1280 00:59:16,070 --> 00:59:16,990 nemusí tento riadok. 1281 00:59:16,990 --> 00:59:20,070 Hlavné je dosť zvláštne, že vie, keď sa dostanete na koniec hlavnej, len 1282 00:59:20,070 --> 00:59:22,060 vráti nulu, ak všetko dobre dopadlo. 1283 00:59:22,060 --> 00:59:25,560 V skutočnosti, ak niečo nie je dobre, Hlavným sa často vráti iný 1284 00:59:25,560 --> 00:59:28,500 číslo znamenať, že niečo sa stalo s programom. 1285 00:59:28,500 --> 00:59:32,470 >> Takže väčšinou, keď vidíte kód, nepíšte vráti nulu, ale je to dobré 1286 00:59:32,470 --> 00:59:34,770 vedieť, že sa to deje za scény, pretože keď píšete 1287 00:59:34,770 --> 00:59:36,370 iný typ funkcie, budete musieť 1288 00:59:36,370 --> 00:59:37,400 zahŕňajú vratné potrubie. 1289 00:59:37,400 --> 00:59:39,710 Ak hovoríš, že idem vrátiť int, musíte 1290 00:59:39,710 --> 00:59:41,250 napísať niečo vracať. 1291 00:59:41,250 --> 00:59:45,160 Ak poviete void tady na začiatok, void main void, pre 1292 00:59:45,160 --> 00:59:48,670 príklad, potom to nie je návratu čokoľvek - void znamená, že nič - 1293 00:59:48,670 --> 00:59:50,320 takže nemusíte že vratné potrubie. 1294 00:59:50,320 --> 00:59:53,610 Ale ste niekedy napísať niečo, čo nie je neplatnosť návratový typ, čo potrebujete 1295 00:59:53,610 --> 00:59:55,950 riadok, ktorý hovorí, že návratnosť a vy je potrebné dať tam niečo 1296 00:59:55,950 --> 00:59:57,650 , Ktoré sa zhoduje s typom. 1297 00:59:57,650 --> 00:59:58,900 Máte nejaké otázky ohľadom že? 1298 00:59:58,900 --> 01:00:03,110 1299 01:00:03,110 --> 01:00:04,680 Sladký. 1300 01:00:04,680 --> 01:00:05,930 >> Rozsah. 1301 01:00:05,930 --> 01:00:07,360 To je niečo, čo sme dotkol tiež. 1302 01:00:07,360 --> 01:00:10,720 Každá premenná, ako vieme, má istý rozsah, a to je v podstate 1303 01:00:10,720 --> 01:00:14,160 hovorí o tom, kde premenná môžu alebo nemusia byť odkazované. 1304 01:00:14,160 --> 01:00:16,310 A páči sa mi povedať, čo sa stane, do zložených zátvoriek pobyty 1305 01:00:16,310 --> 01:00:18,000 vnútri zložených zátvoriek. 1306 01:00:18,000 --> 01:00:21,490 Tak napríklad, ak sa pozrieme na tohto kódu, budeme definovať globálne premenné 1307 01:00:21,490 --> 01:00:24,510 mimo hlavnej, int, tu hore. 1308 01:00:24,510 --> 01:00:27,380 Hovoríme ďalšie int vnútri hlavné. 1309 01:00:27,380 --> 01:00:29,760 Máme nejaké ďalšie zložené zátvorky a hovoríme ďalšie int. 1310 01:00:29,760 --> 01:00:31,690 >> Máme tri je v kóde. 1311 01:00:31,690 --> 01:00:32,550 Nejedná sa o to isté. 1312 01:00:32,550 --> 01:00:34,880 Ktoré som vytvoril tri rôzne premenné. 1313 01:00:34,880 --> 01:00:39,370 Potom sa vnútri týchto vnútorných kučeravé traky, hovorím = 4. 1314 01:00:39,370 --> 01:00:44,130 Čo je to, že hovoríš, Prvý, druhý, 1315 01:00:44,130 --> 01:00:47,045 alebo tretej? 1316 01:00:47,045 --> 01:00:47,920 >> STUDENT: tretí. 1317 01:00:47,920 --> 01:00:49,320 >> JASON Hirschhorn: Je to hovorí o tretieho. 1318 01:00:49,320 --> 01:00:52,850 Všetky z nich je v skutočnosti môže byť hovoril o tejto konkrétnej 1319 01:00:52,850 --> 01:00:58,660 inštancie, pretože ich rozsah všetko ide do týchto najvnútornejších zložených zátvoriek. 1320 01:00:58,660 --> 01:01:02,360 Avšak, keď budete volať veci samej meno, je tu niečo, čo nazýva skrýva. 1321 01:01:02,360 --> 01:01:09,670 Takže ste sa zaoberajú iba alebo opraviť, alebo použite Posledná premenná, alebo jeden 1322 01:01:09,670 --> 01:01:11,090 najbližšie k vám. 1323 01:01:11,090 --> 01:01:14,760 Takže tu vnútri, je najbližšie táto tretia na tejto linke, a = 4, takže je 1324 01:01:14,760 --> 01:01:16,550 vplyv na tretiu. 1325 01:01:16,550 --> 01:01:19,890 A posledný riadok, a = 2, čo je že hovorí o, prvý, druhý, 1326 01:01:19,890 --> 01:01:20,805 alebo tretej? 1327 01:01:20,805 --> 01:01:22,530 >> STUDENT: Druhý. 1328 01:01:22,530 --> 01:01:24,430 >> JASON Hirschhorn: Je to hovorí o druhý pohľad. 1329 01:01:24,430 --> 01:01:27,970 Samozrejme, tretí je najbližšie sa v kóde, ale tretí 1330 01:01:27,970 --> 01:01:30,200 neexistuje mimo tie zložené zátvorky. 1331 01:01:30,200 --> 01:01:32,650 Akonáhle sa dostanete do tohto uzavretého kučeravé rovnátka, je to ako, že je preč, 1332 01:01:32,650 --> 01:01:33,570 v podstate. 1333 01:01:33,570 --> 01:01:36,150 Takže len dvaja ste zostalo, sú tie, Prvé dva, a samozrejme, teraz 1334 01:01:36,150 --> 01:01:37,960 je to bližšie k druhej. 1335 01:01:37,960 --> 01:01:39,410 >> Takže je to dobrá vec pamätať o rozsahu. 1336 01:01:39,410 --> 01:01:42,900 Napríklad som si istý, že ste sa stretli To do while. 1337 01:01:42,900 --> 01:01:46,680 Ak inicializovať premennú vnútri sa while a skúste 1338 01:01:46,680 --> 01:01:50,360 prístup von, budete pravdepodobne dostal nejaké varovanie, ako je táto 1339 01:01:50,360 --> 01:01:51,680 premenná neexistuje. 1340 01:01:51,680 --> 01:01:54,370 To je z dôvodu rozsahu nápad, že veci existujú iba 1341 01:01:54,370 --> 01:01:55,320 vnútri týchto zložených zátvoriek. 1342 01:01:55,320 --> 01:01:59,320 Zložené zátvorky sú ako obrie objatí, že dávate do kódu, je ďalší 1343 01:01:59,320 --> 01:02:01,380 spôsob, ako sa o tom premýšľať. 1344 01:02:01,380 --> 01:02:05,280 >> Takže to je ďalšia funkcia, niečo pre vy do kódu hellofunction.c. 1345 01:02:05,280 --> 01:02:08,240 Budeme preskočiť, že pre túto chvíľu, ale je to niečo, čo som povzbudiť, aby ste 1346 01:02:08,240 --> 01:02:09,740 praxi na vlastnú päsť. 1347 01:02:09,740 --> 01:02:12,510 Napíšte program, v ktorom hlavné hovory ďalšiu funkciu, ktorá vytlačí 1348 01:02:12,510 --> 01:02:13,750 pozdrav pre užívateľa. 1349 01:02:13,750 --> 01:02:17,750 Je to v podstate s hello world a abstrahovať, že printf do 1350 01:02:17,750 --> 01:02:18,680 ďalšie funkcie. 1351 01:02:18,680 --> 01:02:22,360 Ale my nebudeme robiť, že práve teraz pretože nemáme toľko času 1352 01:02:22,360 --> 01:02:23,350 vľavo, ako by som si prial. 1353 01:02:23,350 --> 01:02:26,250 >> Tak deklarácie funkcie. 1354 01:02:26,250 --> 01:02:28,080 Videli sme to predtým tiež. 1355 01:02:28,080 --> 01:02:31,180 Ak chcete napísať inú funkciu, budete potrebovať, aby sa počítač vedieť a 1356 01:02:31,180 --> 01:02:32,600 Hlavné viem, že to existuje. 1357 01:02:32,600 --> 01:02:37,140 Takže to, čo robíme, je nad hlavnou, my píšeme návratový typ, názov a 1358 01:02:37,140 --> 01:02:42,970 parametre, a potom dole hlavné, tu sme vlastne skopírovať linky 1359 01:02:42,970 --> 01:02:45,080 a potom napísať skutočný kód. 1360 01:02:45,080 --> 01:02:50,990 Takže týmto spôsobom, ak volanie funkcie v hlavnom hore, vie, že hlavnou 1361 01:02:50,990 --> 01:02:54,650 Dobrý deň existuje, napríklad, keď sa zavolať ahoj, a potom to vyzerá, že 1362 01:02:54,650 --> 01:02:56,710 vykonávanie dole. 1363 01:02:56,710 --> 01:02:59,680 Čo sa stane, keď nebudem zahrnúť line up hore, stratu ahoj (void)? 1364 01:02:59,680 --> 01:03:03,820 1365 01:03:03,820 --> 01:03:06,560 >> Ak nemám obsahovať tento riadok a hlavné výzvy ahoj, ja som 1366 01:03:06,560 --> 01:03:07,640 dostaneme chybu. 1367 01:03:07,640 --> 01:03:10,090 Chystám sa dostanem chybu, pretože kompilátor nevie 1368 01:03:10,090 --> 01:03:13,070 že táto vec existuje. 1369 01:03:13,070 --> 01:03:16,680 To je dôvod, prečo sa podobné to # include cs50.h. 1370 01:03:16,680 --> 01:03:21,390 Čo je na tom v podstate cs50.h je uvedenie dostať reťazec tam. 1371 01:03:21,390 --> 01:03:23,120 Je to dávať si tam int. 1372 01:03:23,120 --> 01:03:26,570 Je to dávať všetky tie funkcie Prototypy sa pred hlavnou tak, že keď 1373 01:03:26,570 --> 01:03:29,900 im zavoláte na hlavný, hlavný vie že tieto veci existujú. 1374 01:03:29,900 --> 01:03:31,630 To je to, čo ty. H. súbory robiť. 1375 01:03:31,630 --> 01:03:33,850 A tak ak sa chystáte vytvoriť svoj vlastný funkcie, musíš sa uistiť, 1376 01:03:33,850 --> 01:03:36,690 si dal, že prototyp tam. 1377 01:03:36,690 --> 01:03:38,380 Akékoľvek otázky týkajúce sa to tak ďaleko? 1378 01:03:38,380 --> 01:03:41,630 1379 01:03:41,630 --> 01:03:42,490 >> Argumenty príkazového riadka. 1380 01:03:42,490 --> 01:03:44,780 To je to, čo budeme do konca , A potom snáď budem 1381 01:03:44,780 --> 01:03:46,180 stlačiť v niektorých pset. 1382 01:03:46,180 --> 01:03:48,700 Ja neviem, či budeme schopní stlačiť že vzhľadom k času, ale 1383 01:03:48,700 --> 01:03:51,560 s vami, ktorí sú tu, a ak chalani chcem povedať, po na chvíľu sme sa 1384 01:03:51,560 --> 01:03:54,290 môže ísť cez neho von. 1385 01:03:54,290 --> 01:03:56,020 Ale budeme na záver Argumenty príkazového riadka 1386 01:03:56,020 --> 01:03:58,510 za posledných 15 minút. 1387 01:03:58,510 --> 01:03:59,930 Sme hore, Michael? 1388 01:03:59,930 --> 01:04:01,180 Si hore? 1389 01:04:01,180 --> 01:04:01,660 Dobre. 1390 01:04:01,660 --> 01:04:03,760 Ja neviem, či budete spať so zavretými očami. 1391 01:04:03,760 --> 01:04:05,800 To by bolo zložité. 1392 01:04:05,800 --> 01:04:07,180 >> Argumenty príkazového riadka. 1393 01:04:07,180 --> 01:04:10,430 Jedná sa o jediný spôsob, ako odovzdávať informácie do programu. 1394 01:04:10,430 --> 01:04:12,780 Nakoniec, budeme stretnúť s ďalšími. 1395 01:04:12,780 --> 01:04:15,600 Ale v podstate, budeme zastaviť písanie int main (void), ak chceme 1396 01:04:15,600 --> 01:04:16,720 vziať nejaké argumenty príkazového riadku. 1397 01:04:16,720 --> 01:04:19,850 Chystáme sa napísať túto vec tzv int main (int argc, 1398 01:04:19,850 --> 01:04:22,430 string argv, konzoly. 1399 01:04:22,430 --> 01:04:23,710 To je mätúce. 1400 01:04:23,710 --> 01:04:26,070 To je veľa listov, ktoré nie sú v človek anglicky, takže budeme 1401 01:04:26,070 --> 01:04:27,680 rozbaliť práve teraz. 1402 01:04:27,680 --> 01:04:30,450 >> Argc je skratka pre počet argumentov - 1403 01:04:30,450 --> 01:04:32,600 a znova, budú všetky tieto k dispozícii online - 1404 01:04:32,600 --> 01:04:34,280 a to je počet argumentov. 1405 01:04:34,280 --> 01:04:37,940 Argv znamená argument, vektora, a to sú argumenty samotných. 1406 01:04:37,940 --> 01:04:38,830 Je to pole reťazcov. 1407 01:04:38,830 --> 01:04:40,880 Sme vlastne videli rad reťazcov pred dnes. 1408 01:04:40,880 --> 01:04:44,390 Vytvorili sme jednu v poslednej program, ktorý sme kódované. 1409 01:04:44,390 --> 01:04:45,720 >> Tak tu je jeden príklad. 1410 01:04:45,720 --> 01:04:50,230 Píšem. / Ohai CS50 sekcie na mojom príkazovom riadku. 1411 01:04:50,230 --> 01:04:54,090 Argc v tomto prípade rovná 3. 1412 01:04:54,090 --> 01:05:01,170 Argv držiak 0 je Ohai, argv držiak 1 Je CS50, argv držiak 2 je časť. 1413 01:05:01,170 --> 01:05:05,160 Opäť platí, že argc je počet argumentov, a výlet vás trochu 1414 01:05:05,160 --> 01:05:08,710 bit, sme sa vždy spoľahnúť na meno funkcie ako prvý argument. 1415 01:05:08,710 --> 01:05:12,350 Takže v tomto prípade, že sú tri argumenty, názov funkcie 1416 01:05:12,350 --> 01:05:14,590 a potom tí dvaja, ktoré som napísal palcov 1417 01:05:14,590 --> 01:05:18,900 >> Ďalej budeme okrem tých, argumenty sa v argv. 1418 01:05:18,900 --> 01:05:22,690 A opäť, rovnako ako sme videli predtým, my sme to v poslednom programe sme kódované. 1419 01:05:22,690 --> 01:05:27,110 Môžete sa pohybovať po poli argv a dostať tie reťazca. 1420 01:05:27,110 --> 01:05:28,830 To je v podstate to, čo sme robili v koniec posledného programu. 1421 01:05:28,830 --> 01:05:33,190 Vybrali sme náhodný názov a potom šiel do Mená držiak čokoľvek a vytlačiť 1422 01:05:33,190 --> 01:05:34,580 z reťazca tam nachádza. 1423 01:05:34,580 --> 01:05:39,870 1424 01:05:39,870 --> 01:05:43,670 >> V hornej časti iba na jednom poli, pretože Reťazce sú samy o sebe pole, ako 1425 01:05:43,670 --> 01:05:46,320 hovoril o, môžete mať polia polí, ktorá je 1426 01:05:46,320 --> 01:05:48,530 v podstate to, čo je argv. 1427 01:05:48,530 --> 01:05:51,370 Jeden spôsob, ako si môžete myslieť To je riadky a stĺpce. 1428 01:05:51,370 --> 01:05:54,750 Môžem čerpať, že práve teraz. 1429 01:05:54,750 --> 01:05:57,370 Tak argv - 1430 01:05:57,370 --> 01:05:58,630 to nie je mazanie. 1431 01:05:58,630 --> 01:05:59,880 Poďme nakresliť pod Ohai. 1432 01:05:59,880 --> 01:06:09,320 1433 01:06:09,320 --> 01:06:12,490 >> Takže keď som písal, Ohai časti CS50, Chystám sa skrátiť 1434 01:06:12,490 --> 01:06:14,520 sekcie pre tento príklad. 1435 01:06:14,520 --> 01:06:29,026 Ale v podstate, moje multi-dimenzionální pole, Ohai CS50, 1436 01:06:29,026 --> 01:06:32,200 budeme robiť sektu. 1437 01:06:32,200 --> 01:06:34,610 Tak tu, mám prístup - 1438 01:06:34,610 --> 01:06:40,930 1439 01:06:40,930 --> 01:06:45,710 keď som len dať argv jedno číslo - 1440 01:06:45,710 --> 01:06:46,390 To je zle. 1441 01:06:46,390 --> 01:06:49,020 Čo sa deje v tomto diagrame? 1442 01:06:49,020 --> 01:06:49,690 >> STUDENT: Začnite na nulu. 1443 01:06:49,690 --> 01:06:50,350 >> JASON Hirschhorn: Malo by sa začať s nulou. 1444 01:06:50,350 --> 01:06:52,940 Asi by som mala tiež otočiť, ale pretože som už vypracované to tak, som 1445 01:06:52,940 --> 01:06:54,120 nechám to tam do teraz. 1446 01:06:54,120 --> 01:06:55,160 Ale to začína na nule. 1447 01:06:55,160 --> 01:06:56,410 To je pravda. 1448 01:06:56,410 --> 01:06:58,980 1449 01:06:58,980 --> 01:07:00,120 Ospravedlňujem sa, či to je len malá. 1450 01:07:00,120 --> 01:07:01,370 Môže vás druh vidieť? 1451 01:07:01,370 --> 01:07:03,620 1452 01:07:03,620 --> 01:07:06,670 Takže keď som to argv 0, ja dostať všetky Ohai. 1453 01:07:06,670 --> 01:07:08,555 Ak sa mi argv 1, dostanem všetky CS50. 1454 01:07:08,555 --> 01:07:10,720 Ak sa mi argv 2, dostanem všetky sekty. 1455 01:07:10,720 --> 01:07:13,370 >> Ale teraz, ako sme už povedali, struny sú polia sami. 1456 01:07:13,370 --> 01:07:19,740 Takže to, čo môžem urobiť, je môžem liečiť túto ako multi-dimenzionální pole, a ja 1457 01:07:19,740 --> 01:07:24,190 Môžete urobiť niečo v duchu argv 0, 0, čo mi práve 1458 01:07:24,190 --> 01:07:25,400 znak 0. 1459 01:07:25,400 --> 01:07:28,760 Argv 0, 1, čo mi dáva len hodiny. 1460 01:07:28,760 --> 01:07:33,960 Argv 1, 3, čo mi dáva len Tento 0 tu dole CS50. 1461 01:07:33,960 --> 01:07:37,690 >> Takže, pretože reťazca sami sú polia, budeme dávať 1462 01:07:37,690 --> 01:07:38,540 že v inom poli. 1463 01:07:38,540 --> 01:07:42,850 V súčasnej dobe máme rad polí, a my je index do nášho prvého poľa a 1464 01:07:42,850 --> 01:07:44,840 potom index do nášho druhého poľa. 1465 01:07:44,840 --> 01:07:48,650 A ako sa dalo očakávať, že robíme len o uvedenie tých dvoch - 1466 01:07:48,650 --> 01:07:51,760 urobíme hranaté zátvorky len hneď vedľa seba. 1467 01:07:51,760 --> 01:07:58,930 Takže v tomto prípade, je argv 1 a CS50 argv 1, 2, ako sme povedali, je iba 5. 1468 01:07:58,930 --> 01:08:02,120 Má niekto nejaké otázky týkajúce sa multi-dimenzionální pole? 1469 01:08:02,120 --> 01:08:05,090 1470 01:08:05,090 --> 01:08:06,380 Vy robíte úžasné. 1471 01:08:06,380 --> 01:08:07,750 Sladký. 1472 01:08:07,750 --> 01:08:11,980 >> Takže máme iný program práve tu, a to je posledná vec, že ​​sme 1473 01:08:11,980 --> 01:08:13,690 robiť práve teraz. 1474 01:08:13,690 --> 01:08:18,160 Takže chcem vám napísať program, ktorý trvá celé meno užívateľa, dve a iba 1475 01:08:18,160 --> 01:08:21,649 dva argumenty príkazového riadku, a konečne, vytlačiť na pozdrav 1476 01:08:21,649 --> 01:08:24,180 používateľ, ktorý patrí ich krstné meno. 1477 01:08:24,180 --> 01:08:27,800 Tak prečo si nevezmeš tri alebo štyri minút, ako to urobiť, a potom pôjdeme 1478 01:08:27,800 --> 01:08:29,870 nad ním ako skupina, a potom si zabaliť? 1479 01:08:29,870 --> 01:09:44,189 1480 01:09:44,189 --> 01:09:48,084 >> A opäť tu, keď hovoríme, že sa plné meno užívateľa podľa popisu 1481 01:09:48,084 --> 01:09:54,473 tohto problému by malo byť príkaz argumentom, nepoužívajú sa reťazec. 1482 01:09:54,473 --> 01:09:55,450 Jo, Marcus? 1483 01:09:55,450 --> 01:09:58,260 >> Žiak: Takže keď hovoríte, dve riadiace argumentom, je to, že okrem 1484 01:09:58,260 --> 01:10:00,000 . / Beh, alebo - 1485 01:10:00,000 --> 01:10:02,980 >> JASON Hirschhorn: Dobrá otázka. 1486 01:10:02,980 --> 01:10:05,995 Do, vrátane. / Beh, tri Argumenty príkazového riadka. 1487 01:10:05,995 --> 01:10:08,550 1488 01:10:08,550 --> 01:10:11,320 Alebo vrátane. / Individuálne, v V tomto prípade, pretože to je 1489 01:10:11,320 --> 01:10:12,360 Názov tohto súboru. 1490 01:10:12,360 --> 01:10:13,300 Takže argc by mali byť tri. 1491 01:10:13,300 --> 01:10:19,480 Ale ja chcem len dva argumenty vzhľadom k programu. 1492 01:10:19,480 --> 01:10:20,400 Mal by som upresniť, že. 1493 01:10:20,400 --> 01:10:23,380 Budem robiť, že zmeny, než som príspevok Tieto a poslať ich na vás. 1494 01:10:23,380 --> 01:10:32,747 1495 01:10:32,747 --> 01:10:34,740 >> Študent: Čo keď mať prostredné meno? 1496 01:10:34,740 --> 01:10:36,800 >> JASON Hirschhorn: Ak máte stredná meno, si smolu. 1497 01:10:36,800 --> 01:10:38,050 Ospravedlňujem sa. 1498 01:10:38,050 --> 01:10:40,320 1499 01:10:40,320 --> 01:10:43,744 Alebo ak chcete ísť len o Shakira, ste tiež smolu. 1500 01:10:43,744 --> 01:10:55,672 1501 01:10:55,672 --> 01:10:56,425 Jo? 1502 01:10:56,425 --> 01:11:00,760 >> Žiak: Takže, keď ľudia nemajú cs50.h, nedefinujú argv 1503 01:11:00,760 --> 01:11:03,450 ako char argv hviezdy? 1504 01:11:03,450 --> 01:11:05,160 Alebo je to ešte volal reťazec argv? 1505 01:11:05,160 --> 01:11:07,430 >> JASON Hirschhorn: Áno. 1506 01:11:07,430 --> 01:11:10,480 Takže reťazca, opäť sme sa maskovať z toho, čo presne sa tam deje. 1507 01:11:10,480 --> 01:11:14,040 To bude možno bez obalu v stredu, ale čoskoro. 1508 01:11:14,040 --> 01:11:16,380 Je to ako koliesok. 1509 01:11:16,380 --> 01:11:18,370 Vzhľadom k tomu, v podstate je to to isté. 1510 01:11:18,370 --> 01:11:37,040 1511 01:11:37,040 --> 01:11:42,560 >> Takže poďme sa ďalšiu minútu na programe to, a potom pôjdeme cez 1512 01:11:42,560 --> 01:11:45,130 sa ako skupina, a potom ako som povedal, zabaliť. 1513 01:11:45,130 --> 01:11:47,770 A myslím, že sú stále ďalšie cukroví, takže vy by dúfajme 1514 01:11:47,770 --> 01:11:49,790 to, alebo si vezmem. 1515 01:11:49,790 --> 01:12:20,380 1516 01:12:20,380 --> 01:12:22,560 >> Ospravedlňujeme sa, ak ste ešte písanie, ale chcem sa do toho ponoriť a my 1517 01:12:22,560 --> 01:12:24,010 môže skončiť spolu. 1518 01:12:24,010 --> 01:12:30,470 Tak som napísal v roku, # include cs50.h, # include stdio.h. 1519 01:12:30,470 --> 01:12:33,970 int main (void), zložená zátvorka, kučeravé rovnátka, vnútri tri riadky 1520 01:12:33,970 --> 01:12:38,760 pseudokódu, vezmeš celé meno užívateľa, práve dve príkazového riadka 1521 01:12:38,760 --> 01:12:42,670 argumenty, vytlačiť na pozdrav používateľ, ktorý patrí ich krstné meno. 1522 01:12:42,670 --> 01:12:45,810 >> Takže prvé, sa užívateľovho celé meno. 1523 01:12:45,810 --> 01:12:47,290 Kto mi môže pomôcť sa užívateľovho celé meno? 1524 01:12:47,290 --> 01:12:50,882 1525 01:12:50,882 --> 01:12:52,780 Ako to mám urobiť, že časť? 1526 01:12:52,780 --> 01:12:57,685 1527 01:12:57,685 --> 01:12:59,500 Vedeli ste, chlapci, že prvá časť? 1528 01:12:59,500 --> 01:13:02,587 1529 01:13:02,587 --> 01:13:03,894 Take celé meno používateľa. 1530 01:13:03,894 --> 01:13:05,860 No, že jeden príkazový riadok Argument, čo by som mal písať? 1531 01:13:05,860 --> 01:13:09,624 Čo by som mal zmeniť na môj deklarácie funkcie? 1532 01:13:09,624 --> 01:13:11,140 >> STUDENT: Nechcete že je neplatné už. 1533 01:13:11,140 --> 01:13:11,410 >> JASON Hirschhorn: Presne tak. 1534 01:13:11,410 --> 01:13:12,385 Nechcem, aby to bolo neplatné. 1535 01:13:12,385 --> 01:13:13,630 Čo chcete, aby sa? 1536 01:13:13,630 --> 01:13:14,650 >> STUDENT: argc Int. 1537 01:13:14,650 --> 01:13:15,720 >> JASON Hirschhorn: argc Int. 1538 01:13:15,720 --> 01:13:17,430 >> STUDENT: String argv. 1539 01:13:17,430 --> 01:13:19,055 >> JASON Hirschhorn: String argv. 1540 01:13:19,055 --> 01:13:19,705 >> STUDENT: Bracket, držiak. 1541 01:13:19,705 --> 01:13:20,070 >> JASON Hirschhorn: Bracket, držiak. 1542 01:13:20,070 --> 01:13:21,780 To je presne to pravé, a to v skutočnosti, ako budem mať 1543 01:13:21,780 --> 01:13:22,820 užívateľovho celé meno. 1544 01:13:22,820 --> 01:13:24,070 Chystajú sa dať to tam. 1545 01:13:24,070 --> 01:13:27,720 1546 01:13:27,720 --> 01:13:28,780 Tak, že človek urobil. 1547 01:13:28,780 --> 01:13:30,780 Takže teraz chcem práve dve Argumenty príkazového riadka. 1548 01:13:30,780 --> 01:13:35,065 Noe teda, čo je jeden spôsob, ako môžem kontrolovať počet príkazu 1549 01:13:35,065 --> 01:13:36,315 argumentom mám? 1550 01:13:36,315 --> 01:13:39,676 1551 01:13:39,676 --> 01:13:40,725 >> STUDENT: Robíte Ak vyhlásenie. 1552 01:13:40,725 --> 01:13:42,270 >> JASON Hirschhorn: Ak je vyhlásenie, presne tak. 1553 01:13:42,270 --> 01:13:44,830 Čo chcem ako podmienku? 1554 01:13:44,830 --> 01:13:48,370 >> STUDENT: Ak argc vyšší ako 3. 1555 01:13:48,370 --> 01:13:52,485 >> JASON Hirschhorn: Ak argc je väčší ako 3. 1556 01:13:52,485 --> 01:13:58,430 Ak argc vyššia ako 3, čo mám robiť? 1557 01:13:58,430 --> 01:13:59,400 >> STUDENT: Vracia 1. 1558 01:13:59,400 --> 01:14:01,856 >> JASON Hirschhorn: Vracia 1. 1559 01:14:01,856 --> 01:14:04,050 Bude to zabezpečiť, mám práve dve? 1560 01:14:04,050 --> 01:14:07,280 1561 01:14:07,280 --> 01:14:07,820 >> STUDENT: Nie 1562 01:14:07,820 --> 01:14:13,110 Ak argc je väčší než 3 a menej ako 2. 1563 01:14:13,110 --> 01:14:17,770 >> JASON Hirschhorn: Ak argc je väčšia ako 3 a argc je menej ako 2. 1564 01:14:17,770 --> 01:14:21,540 Čo je jeden spôsob, ako môžem napísať to v práve jeden riadok, alebo bez použitia, ktoré 1565 01:14:21,540 --> 01:14:23,890 a logický operátor? 1566 01:14:23,890 --> 01:14:25,942 >> Študent: To nie je rovné 2. 1567 01:14:25,942 --> 01:14:28,790 >> JASON Hirschhorn: Ak argc sa nerovná 2. 1568 01:14:28,790 --> 01:14:29,260 Presne tak. 1569 01:14:29,260 --> 01:14:34,890 Takže ak argc nie je rovné 2, že bude mi tento program, 1570 01:14:34,890 --> 01:14:37,250 osobné, kedy som ho spustiť a ktorý vám dá mi, koľko 1571 01:14:37,250 --> 01:14:38,740 Argumenty príkazového riadku? 1572 01:14:38,740 --> 01:14:42,110 Koľko budem kontrolovať? 1573 01:14:42,110 --> 01:14:42,370 >> Prepáčte. 1574 01:14:42,370 --> 01:14:43,400 Dovoľte mi, aby som preformulovať to. 1575 01:14:43,400 --> 01:14:46,620 Ak argc = 2, koľko vecí som užívateľ zapísať do linky? 1576 01:14:46,620 --> 01:14:47,500 >> STUDENT: Jeden. 1577 01:14:47,500 --> 01:14:49,120 >> JASON Hirschhorn: Len jeden. 1578 01:14:49,120 --> 01:14:50,430 Takže predtým, než si pravdu, Noah. 1579 01:14:50,430 --> 01:14:52,192 Čo to vlastne je potrebné dať tam? 1580 01:14:52,192 --> 01:14:53,640 >> STUDENT: To sa rovná 3. 1581 01:14:53,640 --> 01:14:55,970 >> JASON Hirschhorn: argc nie je rovné 3. 1582 01:14:55,970 --> 01:15:00,250 Chcem sa rovná 3, pretože chcem osobné a ďalšie dva. 1583 01:15:00,250 --> 01:15:02,560 Takže ak argc sa nerovná 3, vráťte 1. 1584 01:15:02,560 --> 01:15:04,475 Prečo hovoríte návrate 1? 1585 01:15:04,475 --> 01:15:06,180 >> STUDENT: Vzhľadom k tomu, že znamená, že je to zlé. 1586 01:15:06,180 --> 01:15:08,420 >> JASON Hirschhorn: To znamená, že je to zle, A to je čo robiť? 1587 01:15:08,420 --> 01:15:10,360 >> STUDENT: Znovu vyzve užívateľa. 1588 01:15:10,360 --> 01:15:11,940 >> JASON Hirschhorn: Bude to skončiť programu, tak to bude musieť spustiť 1589 01:15:11,940 --> 01:15:14,520 znova, ale nemáme nič V sem a opýtajte sa na ne znovu. 1590 01:15:14,520 --> 01:15:14,840 Nepýtal som sa na to. 1591 01:15:14,840 --> 01:15:15,990 Tak to je presne to pravé. 1592 01:15:15,990 --> 01:15:17,680 Vracia 1 len ukončí program. 1593 01:15:17,680 --> 01:15:18,520 Skvelé. 1594 01:15:18,520 --> 01:15:21,600 >> A vytlačiť na pozdrav užívateľa ktorý obsahuje ich prvé meno. 1595 01:15:21,600 --> 01:15:24,010 Ako to môžem urobiť? 1596 01:15:24,010 --> 01:15:25,990 Anna? 1597 01:15:25,990 --> 01:15:26,580 >> STUDENT: printf. 1598 01:15:26,580 --> 01:15:27,785 >> JASON Hirschhorn: printf. 1599 01:15:27,785 --> 01:15:28,640 >> STUDENT: (" 1600 01:15:28,640 --> 01:15:30,460 >> JASON Hirschhorn: ( 1601 01:15:30,460 --> 01:15:31,600 >> Študent: "ahoj 1602 01:15:31,600 --> 01:15:33,210 >> JASON Hirschhorn: "ahoj 1603 01:15:33,210 --> 01:15:34,800 >> STUDENT:% s 1604 01:15:34,800 --> 01:15:37,230 >> JASON Hirschhorn:% s 1605 01:15:37,230 --> 01:15:38,840 >> STUDENT: / n 1606 01:15:38,840 --> 01:15:41,030 >> JASON Hirschhorn: / n 1607 01:15:41,030 --> 01:15:43,120 >> Študent: ", 1608 01:15:43,120 --> 01:15:45,130 >> JASON Hirschhorn: ", 1609 01:15:45,130 --> 01:15:46,620 >> STUDENT: argv 1610 01:15:46,620 --> 01:15:47,080 >> JASON Hirschhorn: Je nám ľúto? 1611 01:15:47,080 --> 01:15:47,750 >> STUDENT: argv 1612 01:15:47,750 --> 01:15:48,840 >> JASON Hirschhorn: argv 1613 01:15:48,840 --> 01:15:50,190 >> STUDENT: Hranaté zátvorky 1. 1614 01:15:50,190 --> 01:15:51,230 >> JASON Hirschhorn: Hranaté zátvorky? 1615 01:15:51,230 --> 01:15:51,870 >> STUDENT: 1. 1616 01:15:51,870 --> 01:15:54,050 >> JASON Hirschhorn: 1. 1617 01:15:54,050 --> 01:15:55,850 >> Žiak: A) bodkočiarku. 1618 01:15:55,850 --> 01:15:58,290 >> JASON Hirschhorn :) bodkočiarku. 1619 01:15:58,290 --> 01:16:00,250 Poďme tento príkaz. 1620 01:16:00,250 --> 01:16:03,730 Personalizované. 1621 01:16:03,730 --> 01:16:06,392 . / Osobné. 1622 01:16:06,392 --> 01:16:07,420 Je to jednoducho skončiť. 1623 01:16:07,420 --> 01:16:10,390 Prečo to skončiť? 1624 01:16:10,390 --> 01:16:11,310 >> Žiak: nedal žiadne argumenty. 1625 01:16:11,310 --> 01:16:12,560 >> JASON Hirschhorn: ja nie neklaďte žiadne argumenty palcov 1626 01:16:12,560 --> 01:16:16,360 1627 01:16:16,360 --> 01:16:16,920 Vyzerá skvele. 1628 01:16:16,920 --> 01:16:18,130 Vy pribitý. 1629 01:16:18,130 --> 01:16:22,420 Takže znova, šiel do argv a vy kontrolované na začiatku argc. 1630 01:16:22,420 --> 01:16:24,390 To sú dva dôležité veci na pamäti. 1631 01:16:24,390 --> 01:16:29,250 Takže naše posledné dve minúty pred tým, než odísť, nebudeme dostať do pset dvaja, ale 1632 01:16:29,250 --> 01:16:33,585 ako som povedal, ak chcete zostať po po dobu 10 minút, ja by som sa rád ísť 1633 01:16:33,585 --> 01:16:35,710 ako sa vy logikou Pre tieto základné problémové okruhy. 1634 01:16:35,710 --> 01:16:37,930 Mali sme veľa na pokrytie dnes takže som sa k nim dostať. 1635 01:16:37,930 --> 01:16:39,820 Všeobecne platí, že sa mi páči, aby zahŕňala že na konci. 1636 01:16:39,820 --> 01:16:42,150 Takže ak chcete držať okolo, držať okolo 10 minút. 1637 01:16:42,150 --> 01:16:42,990 Urobíme to. 1638 01:16:42,990 --> 01:16:46,250 >> Potom, ako som sa zmienil na začiatku, pset nula a jedna, dostaneme, že 1639 01:16:46,250 --> 01:16:48,040 spätná väzba k tebe ako čo najskôr. 1640 01:16:48,040 --> 01:16:51,260 Cieľom je dostať pset jeden spätnú väzbu, Komentáre časť, 1641 01:16:51,260 --> 01:16:52,850 pred pset dva je splatná. 1642 01:16:52,850 --> 01:16:56,730 Takže ak ste urobili nejaké chyby, alebo štylisticky by veci byť lepšie, 1643 01:16:56,730 --> 01:17:01,330 budete mať tieto informácie, takže si nebude robiť rovnaké veci v pset dva. 1644 01:17:01,330 --> 01:17:06,140 A potom sa v budúcnosti budete mať všetky vášho pset pripomienky a komentáre 1645 01:17:06,140 --> 01:17:08,190 späť pred ďalšou je spôsobené. 1646 01:17:08,190 --> 01:17:12,695 >> A napokon, ak by som mohol dať ďalší konektor pre spätnú väzbu. 1647 01:17:12,695 --> 01:17:13,935 Toto je váš prvý časť. 1648 01:17:13,935 --> 01:17:15,920 Bol to môj prvý časť vyučovanie v tomto roku. 1649 01:17:15,920 --> 01:17:16,930 Choďte tam. 1650 01:17:16,930 --> 01:17:19,800 Napíšte veci, dobré a zlé, a budem používať to, aby sa 1651 01:17:19,800 --> 01:17:21,320 sekcia lepšie nabudúce. 1652 01:17:21,320 --> 01:17:24,870 A nakoniec, opäť ak potrebujete niečo, dajte mi vedieť. 1653 01:17:24,870 --> 01:17:26,410 Som viac než šťastný, ktoré vám pomôžu chlapci. 1654 01:17:26,410 --> 01:17:28,420 Ak chcete len sladkosti, som bude mať ďalšie sladkosti. 1655 01:17:28,420 --> 01:17:29,800 Som rád, aby to na vás. 1656 01:17:29,800 --> 01:17:31,190 >> To bude úžasný kurz. 1657 01:17:31,190 --> 01:17:34,900 To je jeden z, ak nie môj obľúbený Samozrejme, že som si vzal v celom mojom živote, 1658 01:17:34,900 --> 01:17:37,220 a dúfam, že bude, že skvelé pre vás. 1659 01:17:37,220 --> 01:17:40,090 Tak som chcel urobiť všetko, čo bude v mojich silách aby bolo úžasné, že pre vás. 1660 01:17:40,090 --> 01:17:46,590 Chystám sa odoslať e-mail, ak ste v mojom oddieli alebo Noah, a 1661 01:17:46,590 --> 01:17:50,310 Pokúsim a naplánovať každý z ste si čas na kontrolu v priebehu 1662 01:17:50,310 --> 01:17:53,820 najbližších pár týždňov, aby som sa mohol Zmysel pre to, čo vaše CS pozadia, 1663 01:17:53,820 --> 01:17:58,170 a to tiež pomôže mi to na mieru časti, aby lepšie vyhovoval vašim potrebám. 1664 01:17:58,170 --> 01:17:59,740 Takže to je to, čo som dostal postavili. 1665 01:17:59,740 --> 01:18:02,260 Opäť uvidíme mimo Ak chcete byť. 1666 01:18:02,260 --> 01:18:03,700 To bol týždeň dve časti. 1667 01:18:03,700 --> 01:18:04,950 Ďakujem vám chalani moc. 1668 01:18:04,950 --> 01:18:09,067