1 00:00:00,000 --> 00:00:05,830 2 00:00:05,830 --> 00:00:08,650 >> JASON Hirschhorn: Tere tulemast CS50 jagu kõigile. 3 00:00:08,650 --> 00:00:11,430 Minu nimi on Jason Hirschhorn. 4 00:00:11,430 --> 00:00:15,850 Ma olen palju sinu TF, kuid palju inimesed loodetavasti meiega 5 00:00:15,850 --> 00:00:20,420 online, pikendamine õpilased või üliõpilased püüdes leida läbi lõik, kui nad 6 00:00:20,420 --> 00:00:22,830 Vastamata oma osa, et nädal või lihtsalt jõuda kui nad tahtsid 7 00:00:22,830 --> 00:00:24,510 läbi mõned materjali. 8 00:00:24,510 --> 00:00:30,060 >> Nii nagu iga õppekava, mis kõik teist on lugenud, on õige? 9 00:00:30,060 --> 00:00:31,390 Ma näen palju pea noogutab. 10 00:00:31,390 --> 00:00:34,220 Sektsioonid pakub võimalusi uurida kursuse 11 00:00:34,220 --> 00:00:37,420 materjali intiimsem keskkond, samuti sukelduda 12 00:00:37,420 --> 00:00:38,810 praktiliste tegevuste. 13 00:00:38,810 --> 00:00:41,230 >> Nii et põhimõtteliselt mida me oleme kavatse tegema iga nädal. 14 00:00:41,230 --> 00:00:45,090 Me läheme läbi, mida meil määratud olema kõige olulisem 15 00:00:45,090 --> 00:00:49,170 teemade loeng ja need, ilmselt ka kõige kasulikum ja 16 00:00:49,170 --> 00:00:52,780 kõige tõenäolisemalt tulla on probleem komplekti ja viktoriinid ja oma kodeerimine 17 00:00:52,780 --> 00:00:53,970 elu väljaspool CS50. 18 00:00:53,970 --> 00:00:57,260 Nii et me ei kavatse minna neid teemasid, arutada neid minna nende üle, 19 00:00:57,260 --> 00:01:00,660 kõikidele küsimustele teiega on, ja siis me ei kavatse teha palju 20 00:01:00,660 --> 00:01:02,250 praktikas probleeme kodeerimine. 21 00:01:02,250 --> 00:01:04,239 >> Te kõik tõi sülearvutid mis on fantastiline. 22 00:01:04,239 --> 00:01:05,710 See on arvutiteadus klass. 23 00:01:05,710 --> 00:01:10,070 Kuid palju harjutusi me teeme, sa ei pea oma sülearvutid. 24 00:01:10,070 --> 00:01:11,720 Seda saab teha neid paberil. 25 00:01:11,720 --> 00:01:13,580 See, kuidas sa lähed teha neid viktoriine. 26 00:01:13,580 --> 00:01:16,450 Ja tõepoolest, see on suurepärane võimalus tea, et kuidas seda teha 27 00:01:16,450 --> 00:01:19,720 midagi, kui sa ei pea Check 50 toetuda või muuta tugineda, ütlen 28 00:01:19,720 --> 00:01:20,620 sa tegid vigu. 29 00:01:20,620 --> 00:01:25,670 >> Nii et sa oled teretulnud kood seadme või run.cs50.net, mis on 30 00:01:25,670 --> 00:01:29,770 üks vahend, mis võimaldab teil kodeerida online, kuid ma soovitaks, kui 31 00:01:29,770 --> 00:01:32,280 sa pole seda proovinud, kasutades lehel Paberi ja üritab neid praktikas 32 00:01:32,280 --> 00:01:33,640 probleeme paberileht. 33 00:01:33,640 --> 00:01:35,330 Sest taas, see on lõppkokkuvõttes mida sa lähed, et olla 34 00:01:35,330 --> 00:01:37,430 palutakse teha viktoriine. 35 00:01:37,430 --> 00:01:44,080 >> Alustame meie tänase päevakorra. 36 00:01:44,080 --> 00:01:47,710 Me läheme üle mõned normid meie osa, siis me läheme sukelduma 37 00:01:47,710 --> 00:01:51,180 arvesse massiivid, funktsioonid ja käsurida argumente, mis on see, mida te 38 00:01:51,180 --> 00:01:56,200 on kaetud möödunud nädalal loengu ja siis esmaspäev, ja mida saate katta 39 00:01:56,200 --> 00:01:57,330 rohkem homme. 40 00:01:57,330 --> 00:01:59,060 Ja siis lõpuks, me rääkida pset2. 41 00:01:59,060 --> 00:02:03,640 Kui ma saaksin käe, kui te pole vaadeldi lahendamist kaks 42 00:02:03,640 --> 00:02:04,890 spetsifikatsioonile. 43 00:02:04,890 --> 00:02:07,060 44 00:02:07,060 --> 00:02:08,120 Me ütleme kõigile. 45 00:02:08,120 --> 00:02:09,419 Fantastiline. 46 00:02:09,419 --> 00:02:12,070 >> Me räägime probleem telerit natuke, aga kui sa loed probleemi komplekt 47 00:02:12,070 --> 00:02:14,340 spetsifikatsioon, mis on kõik mida sa pead tegema. 48 00:02:14,340 --> 00:02:18,370 Kui sa loed, et enne kui tulevad klass ja osa teisipäeval, siis 49 00:02:18,370 --> 00:02:19,220 olla suurepärane positsioon. 50 00:02:19,220 --> 00:02:21,680 Me võime minna läbi lahendamist, mis on see, mida me 51 00:02:21,680 --> 00:02:22,090 teha lõpus. 52 00:02:22,090 --> 00:02:23,500 Me läheme läbi loogika, veenduge, 53 00:02:23,500 --> 00:02:24,710 Kõik on samal lehel. 54 00:02:24,710 --> 00:02:28,650 >> Ma tahan, et te saaks lahkuda teisipäev tunne väga rahul, mida sa 55 00:02:28,650 --> 00:02:31,560 pead tegema selle nädala lahendamist, ja kui sa seda ei tee, siis ma õnnelikult 56 00:02:31,560 --> 00:02:33,050 viibimise pärast ja koos teiega. 57 00:02:33,050 --> 00:02:36,850 Aga see on üks asi, mida sa pead teha, kuid ma arvan, et oleks väga tark, 58 00:02:36,850 --> 00:02:40,500 lihtsalt lugeda lahendamist spetsifikatsiooni klassis teisipäeval, 59 00:02:40,500 --> 00:02:42,640 mis kõlab palju te tegite. 60 00:02:42,640 --> 00:02:45,810 >> Ma alustada päevakorra iga klassi et sa tead, kuhu me läheme. 61 00:02:45,810 --> 00:02:49,520 See on abiks ka inimesed vaatavad online-sest iga osa 62 00:02:49,520 --> 00:02:53,540 on värv kodeeritud, nii et kui sa tahad tulla tagasi ja lihtsalt vaadata 10 minutit pigem 63 00:02:53,540 --> 00:02:56,950 kui kogu 90-minutilise osa, siis võid minna värvikoodiga osa 64 00:02:56,950 --> 00:02:57,890 ja vaadata seda osa. 65 00:02:57,890 --> 00:03:01,510 Nii et ma olen püüdnud murda nad üles kena moodulid, mis võimaldab teil - 66 00:03:01,510 --> 00:03:03,960 kui sa tahad tagasi tulla ja vaadata, või teiste õpilastega, kes on lihtsalt 67 00:03:03,960 --> 00:03:05,350 vaadates lõik läbi - 68 00:03:05,350 --> 00:03:08,130 leida konkreetne asi, mida nad tahan pöörata tähelepanu 69 00:03:08,130 --> 00:03:10,480 ja rohkem teada. 70 00:03:10,480 --> 00:03:11,390 Sweet. 71 00:03:11,390 --> 00:03:12,180 >> Normidele. 72 00:03:12,180 --> 00:03:13,680 Olen FOP juht ülikoolilinnak. 73 00:03:13,680 --> 00:03:14,900 Ma ei tea, kas keegi tegi FOP. 74 00:03:14,900 --> 00:03:16,280 Kas keegi teha FOP? 75 00:03:16,280 --> 00:03:17,100 Üks inimene tegi FOP. 76 00:03:17,100 --> 00:03:18,430 Kaks inimest tegid pakendi esiküljel. 77 00:03:18,430 --> 00:03:19,250 Lahe. 78 00:03:19,250 --> 00:03:22,360 Nii pakendi esiküljel on esimene aasta Outdoor Orientation Program. 79 00:03:22,360 --> 00:03:27,240 Võtame rebaseid metsa ja teha kõige maagiline kogemusi 80 00:03:27,240 --> 00:03:28,830 oma elu, on õige? 81 00:03:28,830 --> 00:03:29,220 Jah. 82 00:03:29,220 --> 00:03:30,080 Helid õige. 83 00:03:30,080 --> 00:03:36,360 >> Nii et ma tahtsin, et alustada meie esimene lõik arutades mõned normid 84 00:03:36,360 --> 00:03:38,860 klassi ja meie suhe sest ma arvan, 85 00:03:38,860 --> 00:03:40,010 nad väga oluline. 86 00:03:40,010 --> 00:03:43,630 Ennekõike on need, kes on minu jagu saanud ja 87 00:03:43,630 --> 00:03:47,150 on arutatud, et e, ma armastan seda. 88 00:03:47,150 --> 00:03:48,130 See on mu lemmik osa aastast. 89 00:03:48,130 --> 00:03:49,100 Ma olen nii põnevil. 90 00:03:49,100 --> 00:03:50,040 Ma olen siin olnud tunde täna. 91 00:03:50,040 --> 00:03:54,560 Ma ei jäänud see hoone, välja arvatud minna sööma, sest ma armastan CS50 jagu, I 92 00:03:54,560 --> 00:03:58,620 armastan õpetamine, ma armastan töö teiega. 93 00:03:58,620 --> 00:04:02,000 >> Üks minu peamisi prioriteete, kui mitte minu prioriteet number üks, mitte ainult 94 00:04:02,000 --> 00:04:05,130 Selle klassi, vaid ka minu teisi klasside ja extracurriculars, on 95 00:04:05,130 --> 00:04:09,350 toetada teid ja teid aidata, ja teha oma parima, et veenduda, et sa 96 00:04:09,350 --> 00:04:13,780 kutid on imeline, lõbus produktiivne, huvitavat, põnevat 97 00:04:13,780 --> 00:04:15,250 kogemusi selles klassis. 98 00:04:15,250 --> 00:04:16,190 See on see, mida ma olen pühendunud. 99 00:04:16,190 --> 00:04:17,959 Sellepärast ma armastan seda. 100 00:04:17,959 --> 00:04:20,190 See on minu number üks asi, toetab teid. 101 00:04:20,190 --> 00:04:25,110 Kui teil on küsimusi loengu Ülesanded, osa, 102 00:04:25,110 --> 00:04:28,830 elu, isegi kui sa tahad rääkida elu, siis võib vabalt jõuda. 103 00:04:28,830 --> 00:04:31,210 >> Sul on mu mobiili number, sul on minu e-posti 104 00:04:31,210 --> 00:04:32,910 aadress, siis on minu gchat. 105 00:04:32,910 --> 00:04:37,540 Minuga saab ühendust aadressil või kõik neid alati, kuid ilmselt ei saa 106 00:04:37,540 --> 00:04:38,720 vastus alati. 107 00:04:38,720 --> 00:04:41,020 Püüan ja saada tagasi 24 tunni jooksul. 108 00:04:41,020 --> 00:04:44,760 Sageli on see sees 20 minutit või 24 minutit. 109 00:04:44,760 --> 00:04:46,110 Ma olen öelnud, et teha seda paralleelselt. 110 00:04:46,110 --> 00:04:48,840 Aga sa saad vastuse päris kiiresti. 111 00:04:48,840 --> 00:04:54,220 >> Kui te teksti mulle tund enne Ülesanded on tingitud, ma su maha rahustab 112 00:04:54,220 --> 00:04:57,660 maha ja teha sügav hingamine õppused teiega, aga kui sa pole veel alanud, 113 00:04:57,660 --> 00:05:00,270 sa oled ilmselt ei kavatse lõpetada, ja Ma ei saa tõesti aitab teil seal 114 00:05:00,270 --> 00:05:01,710 kuigi ma püüan oma parima. 115 00:05:01,710 --> 00:05:03,920 Nii et ma teen kõik Võin teid toetada. 116 00:05:03,920 --> 00:05:07,980 Vastake jõuda kas see on osa jälle juures Lahtiolekuaeg 117 00:05:07,980 --> 00:05:09,150 kui sa näed mind, või isegi väljaspool. 118 00:05:09,150 --> 00:05:11,800 Mul on hea meel, et luua aeg kohtuda ja töö kaudu probleeme 119 00:05:11,800 --> 00:05:14,410 või minna üle materjali. 120 00:05:14,410 --> 00:05:15,990 Nii et on number üks, toetust. 121 00:05:15,990 --> 00:05:17,940 Ma teen kõik, mida ma saab teid toetada. 122 00:05:17,940 --> 00:05:21,520 >> Number kaks, koosoleku keskel. 123 00:05:21,520 --> 00:05:24,760 Niipalju, kui ma tahaksin olla, ma olen mitte kõikvõimas ega kõikvõimas või 124 00:05:24,760 --> 00:05:28,410 kõiketeadev, nii et ma ei tea, kõik ajal, kui see, mida ma teen on saada 125 00:05:28,410 --> 00:05:33,410 üle, kui teed ma õpetan teema aitab teil õppida, või kui sa 126 00:05:33,410 --> 00:05:36,120 on segaduses mingil teemal, kuid ei tõsta oma käsi või küsi 127 00:05:36,120 --> 00:05:37,390 või saatke mulle email. 128 00:05:37,390 --> 00:05:42,150 Või isegi kui sa jälle segi midagi on probleem komplekti. 129 00:05:42,150 --> 00:05:44,240 Kui te ei jõua välja mulle, Ma ei tea seda kindlalt. 130 00:05:44,240 --> 00:05:46,950 Ma teen oma parima, et kontrollida sisse kutid, veendumaks, et kõik on 131 00:05:46,950 --> 00:05:51,170 läheb hästi, proovige õpetada asju teed mis soodustab ka enamik 132 00:05:51,170 --> 00:05:54,910 oma õppimise stiile, aga kui seal on ma saan midagi teha, andke teada. 133 00:05:54,910 --> 00:05:58,520 >> Selles suunas, kui sa tahad abi probleemiga set, ma olen rohkem 134 00:05:58,520 --> 00:05:59,700 kui hea meel teid aidata probleemi komplekti. 135 00:05:59,700 --> 00:06:02,300 Me teeme palju mis suunas teine 136 00:06:02,300 --> 00:06:03,460 pool sellest jagu. 137 00:06:03,460 --> 00:06:06,040 Aga kui sa ei ole lugenud probleem seab tagasi ja ei jälginud jalutuskäigu 138 00:06:06,040 --> 00:06:09,310 läbi ja ei jälginud püksid ja ootab mind õpetab 139 00:06:09,310 --> 00:06:13,260 kõik, mis on videole line, et leiad juures CS50 140 00:06:13,260 --> 00:06:16,720 uuring, et ei ole tõesti õiglane Sinu või teiste oma partnerit. 141 00:06:16,720 --> 00:06:20,440 142 00:06:20,440 --> 00:06:25,730 >> Nii et palun, ma olen rohkem kui õnnelik, et aidata teid, kuid te saite kohtuda mind 143 00:06:25,730 --> 00:06:27,230 keskel. 144 00:06:27,230 --> 00:06:30,100 Meil on tonni ressursse sa saadaval CS50. 145 00:06:30,100 --> 00:06:31,230 Mainisin mõned neist. 146 00:06:31,230 --> 00:06:32,960 Palun ära neid. 147 00:06:32,960 --> 00:06:35,140 Kui oled segaduses, ma olen rohkem kui rahul , mis aitavad teil neid kirjeldada 148 00:06:35,140 --> 00:06:39,290 teine ​​võimalus, kuid see ei ole õiglane, kui õpilased ilmuda tööaega 149 00:06:39,290 --> 00:06:42,530 ei ole alustanud midagi, ja see on Neljapäeva õhtul ja nad loodavad 150 00:06:42,530 --> 00:06:45,880 TF kõndida neid läbi iga asi probleem seatud tõttu 151 00:06:45,880 --> 00:06:47,140 keskpäeval järgmisel päeval. 152 00:06:47,140 --> 00:06:48,300 Mõtet? 153 00:06:48,300 --> 00:06:50,890 Jällegi palun meiega kohtuda keskel. 154 00:06:50,890 --> 00:06:53,230 >> Ja lõpuks, kõrged ootused. 155 00:06:53,230 --> 00:06:58,010 Ma lähen olema liigitamise kõigile, kes on minu jagu, või punktisüsteem oma 156 00:06:58,010 --> 00:06:59,020 probleem komplekti. 157 00:06:59,020 --> 00:07:01,240 Te ei ole läinud tagasi probleem määratud null või üks veel. 158 00:07:01,240 --> 00:07:02,250 Kahjuks sellest. 159 00:07:02,250 --> 00:07:04,970 Kulus natuke aega, et lõpuks lahendada lõigud ja nüüd 160 00:07:04,970 --> 00:07:05,560 saame alustada mune. 161 00:07:05,560 --> 00:07:09,560 >> Ma toon need sulle tagasi nii kiiresti kui võimalik. 162 00:07:09,560 --> 00:07:11,890 Need on mõned minu advisees seal. 163 00:07:11,890 --> 00:07:14,150 Ma toon need sulle tagasi nii kiiresti kui võimalik. 164 00:07:14,150 --> 00:07:18,046 Ja probleem komplekti kaks, me olema ajakava ja hakkame poolajaks 165 00:07:18,046 --> 00:07:20,440 et sa päris kiiresti pärast lülitad neid sisse 166 00:07:20,440 --> 00:07:24,130 >> Kui sa saad oma probleemile lükkus, siis saad punkte, kui sa tead 167 00:07:24,130 --> 00:07:28,150 Lugedes ainekava - korrektsus, disain, ulatust ja laadi hinded. 168 00:07:28,150 --> 00:07:29,760 Samuti saate kommenteerida. 169 00:07:29,760 --> 00:07:32,160 Kommentaarid on tähtsam kui hinded. 170 00:07:32,160 --> 00:07:33,780 Ma arvan, et see on ohutu öelda, et. 171 00:07:33,780 --> 00:07:37,930 >> Hinded on lihtsalt number üks kuni viis. 172 00:07:37,930 --> 00:07:38,930 Seda on raske välja lugeda neid. 173 00:07:38,930 --> 00:07:40,720 On raske parandada omadest. 174 00:07:40,720 --> 00:07:44,460 Aga kommentaarides tuua välja asjad, mida sa tegid hästi või piirkondade 175 00:07:44,460 --> 00:07:48,360 saab parandada ja anda teile mõningaid ideid tulevikuks või alternatiivsete 176 00:07:48,360 --> 00:07:49,160 viise asju. 177 00:07:49,160 --> 00:07:52,270 >> Nii et palun, palun, palun loe kaudu kommentaare. 178 00:07:52,270 --> 00:07:54,190 Ma panin palju aega need kommentaarid. 179 00:07:54,190 --> 00:07:57,190 Palun lugege neid ja ei ole lihtsalt kerige alt 180 00:07:57,190 --> 00:08:01,890 PDF, otsima oma skoor, või minna online ja leida oma skoor, ja siis ignoreeri 181 00:08:01,890 --> 00:08:02,800 kommentaarid. 182 00:08:02,800 --> 00:08:03,910 See ei ole, kuidas sa oled läheb aina paremaks. 183 00:08:03,910 --> 00:08:06,550 See ei ole, kuidas sa tahad, et suurendada oma hinded lõpuks, just 184 00:08:06,550 --> 00:08:07,340 vaadates hinded. 185 00:08:07,340 --> 00:08:08,760 Palun vaadake neid kommentaare. 186 00:08:08,760 --> 00:08:13,240 >> Ja piki suuri ootusi, jälle, nagu ma ütlesin, siis 187 00:08:13,240 --> 00:08:14,260 saab viskas ühest viieni. 188 00:08:14,260 --> 00:08:17,120 Kahed, kolmekesi ja püksid on Valdav enamus hinded 189 00:08:17,120 --> 00:08:17,940 sa lähed saada. 190 00:08:17,940 --> 00:08:20,180 Ones ja viied mõlemad tõesti harva. 191 00:08:20,180 --> 00:08:21,720 Alati on asju me saame teha paremini. 192 00:08:21,720 --> 00:08:23,490 Kui ma koodi programmi, seal on alati midagi, mida ma 193 00:08:23,490 --> 00:08:24,800 oleks võinud paremini teha. 194 00:08:24,800 --> 00:08:28,740 >> Nii et selle asemel öelda, et sa saad viie kogu aeg kõike ja tegi 195 00:08:28,740 --> 00:08:31,960 kõik täiuslik, ma ei usu, meist tõesti usun, et me - või 196 00:08:31,960 --> 00:08:34,830 loodetavasti, me ei tee kõike täiuslik kogu aeg. 197 00:08:34,830 --> 00:08:37,010 Nii et ärge olema mures, kui te ei saanud viis. 198 00:08:37,010 --> 00:08:40,470 Viis ei map peale, neli ei map peale B, kolm ei 199 00:08:40,470 --> 00:08:42,950 ei kaart peale C. See ei ole kuidas hinded tööle. 200 00:08:42,950 --> 00:08:48,140 >> Nagu David on öelnud mitu korda, on semestri lõpuks kõik oma hinded ja 201 00:08:48,140 --> 00:08:53,390 sisend minult oma TF, kokku ja määrata koondhinde teile. 202 00:08:53,390 --> 00:08:56,760 Aga jälle, see ei ole viis, , Nelja-, B-, jne. 203 00:08:56,760 --> 00:09:01,150 Nii et ma lähen on kõrged ootused kutid. 204 00:09:01,150 --> 00:09:03,670 Ma oodata head probleem komplekti ja ma annan 205 00:09:03,670 --> 00:09:05,010 sa tagasisidet kui sellist. 206 00:09:05,010 --> 00:09:07,430 Ja ta ei kavatse tähenda, et sa oled hakka halvem hinne. 207 00:09:07,430 --> 00:09:09,760 Sul on sorteeritud poolest oma edusamme nädalast 208 00:09:09,760 --> 00:09:11,260 nullini, et kursuse lõpus. 209 00:09:11,260 --> 00:09:17,190 >> Ja lõpuks, nii kõrge ootusi klassis, ma armastan, kui 210 00:09:17,190 --> 00:09:18,460 inimesed osaleda. 211 00:09:18,460 --> 00:09:23,180 Ma saan aru, mõned inimesed end rohkem või vähem mugav osalevad. 212 00:09:23,180 --> 00:09:26,050 Teised inimesed osalevad mitte tõstes oma käsi ja 213 00:09:26,050 --> 00:09:27,320 kogu aeg räägivad. 214 00:09:27,320 --> 00:09:30,570 Aga me selles klassis saab olema teeme palju väikseid probleeme, palju 215 00:09:30,570 --> 00:09:33,770 mini küsimusi, ja siis mõned suurem kodeerimine probleeme. 216 00:09:33,770 --> 00:09:36,760 Seega kindlasti tööd need harjutused välja kui me neid oma arvutis või 217 00:09:36,760 --> 00:09:37,900 paberileht. 218 00:09:37,900 --> 00:09:40,933 >> Aga ma ka teile veidi aega enne keegi kunagi on vastata mõnele 219 00:09:40,933 --> 00:09:42,220 küsimused küsin. 220 00:09:42,220 --> 00:09:44,930 Nii, kuna ma annan teile aega mõtle selle peale, sest me ei kavatse 221 00:09:44,930 --> 00:09:49,380 teha asju partnerite vahel, Ma eeldada, kõik 222 00:09:49,380 --> 00:09:52,150 tegelevad mõnevõrra. 223 00:09:52,150 --> 00:09:56,030 Ja puudumise tõttu parem termin, seal Tõenäoliselt cold calling, mis 224 00:09:56,030 --> 00:09:59,045 on koht, kus igaüks on võimalus mõelda vastust, ja seejärel 225 00:09:59,045 --> 00:10:01,150 Ma kutsun teid, ja siis saate öelda vastus. 226 00:10:01,150 --> 00:10:05,200 >> Ära muretse ega karda, et. 227 00:10:05,200 --> 00:10:08,610 Ma olen teinud seda varem ja oleme leidnud et see on palju edukamad, 228 00:10:08,610 --> 00:10:11,810 lugeda ka haridusuuringute on see, et kindlaks teha, kas see oli 229 00:10:11,810 --> 00:10:12,640 hea taktika. 230 00:10:12,640 --> 00:10:15,790 See on väga kasulik, eriti kui teil anda õpilastele aega, et mõelda 231 00:10:15,790 --> 00:10:20,070 vastuseid ja ei tee neid lihtsalt tulevad välja ja ütlevad, et see õigus ära nahkhiir. 232 00:10:20,070 --> 00:10:22,620 Aga kui sa ei tunne end mugavalt vastamine, ma olen ka päris hea 233 00:10:22,620 --> 00:10:25,370 kaugseire läbi, ja me ei kavatse panna teid kohapeal, eriti 234 00:10:25,370 --> 00:10:28,240 kaamera, kuigi ükski oled kaamera kohe. 235 00:10:28,240 --> 00:10:32,250 >> Nii et need on normid olen. 236 00:10:32,250 --> 00:10:34,670 Üks asi veel eeskujul kohtumine keskel. 237 00:10:34,670 --> 00:10:36,490 Ma annan teile poisid palju tagasisidet. 238 00:10:36,490 --> 00:10:38,310 Palun anna mulle tagasisidet samuti. 239 00:10:38,310 --> 00:10:46,190 Seal kodulehel sayat.me/cs50. 240 00:10:46,190 --> 00:10:48,380 Nii et see on aus tagasiside. 241 00:10:48,380 --> 00:10:50,730 Kui soovite anda selle käigus osa, Ma saan talle kui see juhtub. 242 00:10:50,730 --> 00:10:53,820 Võtame murda natuke, nii et ma vaadata läbi tagasiside siis. 243 00:10:53,820 --> 00:10:55,970 Kui sa kunagi mingit tagasisidet, palun anna mulle seal. 244 00:10:55,970 --> 00:11:01,380 >> Kui sa annad mulle tagasisidet Q, mis on suurepärane, aga see juhend 245 00:11:01,380 --> 00:11:02,570 et te lõpus. 246 00:11:02,570 --> 00:11:05,690 Aga see saab olema semestri lõpus nii Ma ei saa võtta ükskõik mis 247 00:11:05,690 --> 00:11:08,620 tagasisidet ja muuta see õpetamine kutid parem. 248 00:11:08,620 --> 00:11:11,020 Nii et palun, kui teil on tagasisidet, anna see mulle. 249 00:11:11,020 --> 00:11:12,010 Ma armastan tagasisidet. 250 00:11:12,010 --> 00:11:14,490 Tagasi pakendi esiküljel, saame tagasiside kogu aeg. 251 00:11:14,490 --> 00:11:18,610 >> Sa ei anna mulle plussid, häid asju, deltadega asjad võin täiustada. 252 00:11:18,610 --> 00:11:20,600 Võite kommenteerida mu varustus. 253 00:11:20,600 --> 00:11:24,170 See ei ole nii kasulik, kuid sa oled teretulnud kommenteerida iga ja 254 00:11:24,170 --> 00:11:24,570 kõike. 255 00:11:24,570 --> 00:11:26,280 Palun, palun andke mulle tagasisidet. 256 00:11:26,280 --> 00:11:28,740 Hindan seda palju ja see tähendab mulle palju. 257 00:11:28,740 --> 00:11:31,760 258 00:11:31,760 --> 00:11:33,280 >> Veel üks norm, fun. 259 00:11:33,280 --> 00:11:34,530 Me läheme, et on palju nalja. 260 00:11:34,530 --> 00:11:36,930 Loodetavasti selles muidugi, saate on palju lõbus. 261 00:11:36,930 --> 00:11:38,780 Me peame kristalliseerunud osa. 262 00:11:38,780 --> 00:11:40,040 Me peame muusika. 263 00:11:40,040 --> 00:11:45,510 Me loodetavasti üksteist tundma, veel mõnevõrra ka, nii et ma tahan 264 00:11:45,510 --> 00:11:47,690 see on lõbus, kaasates kogemused. 265 00:11:47,690 --> 00:11:50,890 >> Ma tean, et mõned teist on läinud magama loengud sul oli täna varem, 266 00:11:50,890 --> 00:11:53,750 Loodetavasti ei tee juhul praegu. 267 00:11:53,750 --> 00:11:55,960 Ja kui see on praegu, vaid ei norskama, sest see võib 268 00:11:55,960 --> 00:11:57,580 püütud kaamera. 269 00:11:57,580 --> 00:11:58,770 Sweet. 270 00:11:58,770 --> 00:12:04,020 Kõik küsimused, kommentaarid või muresid enne kui ma liikuma midagi oleme 271 00:12:04,020 --> 00:12:05,270 rääkis? 272 00:12:05,270 --> 00:12:08,620 273 00:12:08,620 --> 00:12:11,350 Great. 274 00:12:11,350 --> 00:12:14,830 >> Nii et me läheme arvesse massiivid esimene. 275 00:12:14,830 --> 00:12:17,140 See, kuidas sa teha massiiv. 276 00:12:17,140 --> 00:12:18,410 Me oleme näinud seda enne. 277 00:12:18,410 --> 00:12:21,830 Sul on andmetüüp, mida nimi ja siis on suurus. 278 00:12:21,830 --> 00:12:24,430 Siinsamas, ma saan luua kaks massiivid. 279 00:12:24,430 --> 00:12:30,360 Esimene neist on massiiv tähtedega ja see on 26 ruumi. 280 00:12:30,360 --> 00:12:33,790 Teine on massiiv hinded ja ta on kolm 281 00:12:33,790 --> 00:12:35,390 ruumid kolme täisarvu. 282 00:12:35,390 --> 00:12:35,827 Jah? 283 00:12:35,827 --> 00:12:38,200 >> Üliõpilane: Kas kõik need slaidid kuskil olemas meie jaoks? 284 00:12:38,200 --> 00:12:38,850 >> JASON Hirschhorn: Hea küsimus. 285 00:12:38,850 --> 00:12:40,650 Küsimus oli, on kõik need slaidid saadaval? 286 00:12:40,650 --> 00:12:40,920 Jah. 287 00:12:40,920 --> 00:12:43,420 Kõik need slaidid on kättesaadavad, ja tulevikus, ma neile meili 288 00:12:43,420 --> 00:12:44,640 te enne jagu. 289 00:12:44,640 --> 00:12:47,340 Aga täna, sest see on esimene nädal oli meil hilja alustada. 290 00:12:47,340 --> 00:12:49,675 Nii tavaliselt, saad neid slaide, kuid need tehakse kättesaadavaks internetis ja 291 00:12:49,675 --> 00:12:52,420 Ma neile meili sulle kohe pärast klassi. 292 00:12:52,420 --> 00:12:54,140 Muid küsimusi? 293 00:12:54,140 --> 00:13:01,330 >> Nii et taas, massiivid on karbid, puudumise tõttu parem sõna, et olla mitmeid 294 00:13:01,330 --> 00:13:06,420 elementide ühte andmetüüpi ja nad üksteise kõrval mällu. 295 00:13:06,420 --> 00:13:11,370 Ja nii uuesti, see on, kuidas saab teha kahte tüüpi massiive. 296 00:13:11,370 --> 00:13:15,090 >> Niisiis, kui olete teinud oma massiivi et esimene rida - int skoori, sulg 297 00:13:15,090 --> 00:13:17,430 kolm, sulg - te soovid vormindada see. 298 00:13:17,430 --> 00:13:19,050 Sa tahad panna mõned väärtused on. 299 00:13:19,050 --> 00:13:24,660 Ja see on, kuidas sa paned mõned väärtused seal, lihtsalt valides indice ja 300 00:13:24,660 --> 00:13:25,670 kirjalikult number. 301 00:13:25,670 --> 00:13:27,130 Joonistame selle lauale. 302 00:13:27,130 --> 00:13:28,270 Kas kõik võivad näha? 303 00:13:28,270 --> 00:13:29,030 Igaüks saab näha. 304 00:13:29,030 --> 00:13:30,790 Sweet. 305 00:13:30,790 --> 00:13:36,550 >> Nii et see saab olema minu massiivi nimetatakse punkte. 306 00:13:36,550 --> 00:13:37,730 Nagu näete, on see suurus kolm. 307 00:13:37,730 --> 00:13:39,210 On kolm kasti seal. 308 00:13:39,210 --> 00:13:43,120 Iga üks mahub mis liiki andmete tüüp? 309 00:13:43,120 --> 00:13:43,790 >> Üliõpilane: Integer. 310 00:13:43,790 --> 00:13:45,250 >> JASON Hirschhorn: täisarv see üks. 311 00:13:45,250 --> 00:13:48,790 Me kirjutasime int skoori, ja esimene sõna on andmetüüp, mis läheb 312 00:13:48,790 --> 00:13:50,910 minna kastide et massiivi. 313 00:13:50,910 --> 00:13:52,160 Nii et ma mahub kolm. 314 00:13:52,160 --> 00:13:54,880 315 00:13:54,880 --> 00:13:57,000 Miks mul on null kuni seal laual? 316 00:13:57,000 --> 00:13:59,240 Miks öeldakse tulemus null võrdub 1? 317 00:13:59,240 --> 00:14:02,090 318 00:14:02,090 --> 00:14:03,180 Meenutad mulle oma nimi. 319 00:14:03,180 --> 00:14:03,470 >> Üliõpilane: Kurt. 320 00:14:03,470 --> 00:14:04,070 >> JASON Hirschhorn: Kurt. 321 00:14:04,070 --> 00:14:04,480 >> Üliõpilane: Jah. 322 00:14:04,480 --> 00:14:04,920 >> JASON Hirschhorn: Miks? 323 00:14:04,920 --> 00:14:07,230 >> Õpilane: Kuna esimene indeks on null, alustame nullist. 324 00:14:07,230 --> 00:14:08,480 >> JASON Hirschhorn: Nii alustame nullist. 325 00:14:08,480 --> 00:14:09,580 See on täpselt õige. 326 00:14:09,580 --> 00:14:12,340 See on segane osa ja seiskub teid, eriti kui sa oled 327 00:14:12,340 --> 00:14:14,900 üritab korrata läbi massiivid mis me teeme natuke. 328 00:14:14,900 --> 00:14:15,980 Alustame nullist. 329 00:14:15,980 --> 00:14:19,170 Nii et kui ma tahan viidata esimese kast, see ei ole kasti üks. 330 00:14:19,170 --> 00:14:22,290 Kahjuks see kast null. 331 00:14:22,290 --> 00:14:26,460 Teine on kasti üks, ja selles juhul, kolmas on kast kaks. 332 00:14:26,460 --> 00:14:28,700 >> Aga kasti kolm? 333 00:14:28,700 --> 00:14:30,670 Kus on kasti kolm? 334 00:14:30,670 --> 00:14:34,750 Või kui ma tahan teha skoori, sulg kolm, sulg, mis see on? 335 00:14:34,750 --> 00:14:37,650 336 00:14:37,650 --> 00:14:39,760 Nii et sa ütlesid null iseloomu. 337 00:14:39,760 --> 00:14:41,600 Kõik muud mõtted? 338 00:14:41,600 --> 00:14:44,590 Mis on tulemus sulg kolm sulg? 339 00:14:44,590 --> 00:14:48,045 >> Üliõpilane: See ei ole tegelikult olemas, sest te ainult määratletud hinded, 340 00:14:48,045 --> 00:14:49,370 sulg kolm. 341 00:14:49,370 --> 00:14:51,400 >> JASON Hirschhorn: Nii te ütlete see ei ole tegelikult olemas. 342 00:14:51,400 --> 00:14:54,230 Mõningatel juhtudel, kui me tegeleme stringid, üldiselt me ​​paneme null 343 00:14:54,230 --> 00:14:54,790 märgi lõpus. 344 00:14:54,790 --> 00:14:56,100 Me jõuame, et teine. 345 00:14:56,100 --> 00:15:01,020 Aga sel juhul on ei ole kolmanda kasti siin. 346 00:15:01,020 --> 00:15:06,390 Nii tuleb viimane lahter igal massiivi on miinus 1. 347 00:15:06,390 --> 00:15:11,310 Nii et kui meil on massiivi suurus n, Esimene kast on nullis, viimane on 348 00:15:11,310 --> 00:15:12,700 kell n miinus 1. 349 00:15:12,700 --> 00:15:14,970 Ja sel juhul, et seda ei eksisteeri. 350 00:15:14,970 --> 00:15:17,970 Midagi on siin mälu, kuid see ei ole meie. 351 00:15:17,970 --> 00:15:18,460 Me ei oma. 352 00:15:18,460 --> 00:15:19,570 Me ei küsi seda. 353 00:15:19,570 --> 00:15:22,606 Nii et kui me püüame kasutada seda, mis me tulen teha natuke, me ilmselt läheb 354 00:15:22,606 --> 00:15:24,970 hätta. 355 00:15:24,970 --> 00:15:29,180 >> Sel juhul ma käivitumist minu massiivi kolm muutujat. 356 00:15:29,180 --> 00:15:36,195 Me paneme üks lahtrisse null, kaks lahtrisse üks, ja kolm kasti kaks. 357 00:15:36,195 --> 00:15:39,280 Kas keegi on mingeid küsimusi umbes käivitumist massiivi? 358 00:15:39,280 --> 00:15:44,540 359 00:15:44,540 --> 00:15:46,970 >> Läksime üle selle just praegu. 360 00:15:46,970 --> 00:15:52,725 Scores, sulg kolm, sulg, et ei ole olemas. 361 00:15:52,725 --> 00:15:58,130 Me null indekseeritud infotehnoloogia, nii me alustame nullist. 362 00:15:58,130 --> 00:16:01,860 Viimane lahter on meile kättesaadav, see on kolmas kast, kuid seda nimetatakse box 363 00:16:01,860 --> 00:16:03,110 number kaks. 364 00:16:03,110 --> 00:16:05,790 365 00:16:05,790 --> 00:16:09,710 >> Allapoole, see on alternatiivne viis käivitumist massiivid. 366 00:16:09,710 --> 00:16:13,410 Nii et selle asemel luua massiivi ühel line, täites esimene kast, siis 367 00:16:13,410 --> 00:16:17,070 teise kasti, siis kolmas kast saate seda teha kõik ühes reas. 368 00:16:17,070 --> 00:16:19,040 Nii et joon nii massiivid. 369 00:16:19,040 --> 00:16:23,460 See tekitab sama täpne massiivi mida me loodud siin, kuid see 370 00:16:23,460 --> 00:16:24,710 lihtsalt see ühele reale. 371 00:16:24,710 --> 00:16:29,740 372 00:16:29,740 --> 00:16:31,360 >> Nüüd oleme loonud meie massiivi. 373 00:16:31,360 --> 00:16:34,100 Tavaliselt, kui sa luua massiivi, siis tahan midagi teha, kas 374 00:16:34,100 --> 00:16:38,430 mis on seda täita või asju välja ja printida ekraanil. 375 00:16:38,430 --> 00:16:42,270 Sel juhul me läbi meie hinded massiiv, mis me vormindatud kohta 376 00:16:42,270 --> 00:16:44,740 esimene rida siin hallis. 377 00:16:44,740 --> 00:16:49,600 Ja siis on teine ​​rida, hakkame iterating läbi massiivi. 378 00:16:49,600 --> 00:16:52,640 Kas keegi on küsimusi struktuuri jaoks loop? 379 00:16:52,640 --> 00:16:55,250 380 00:16:55,250 --> 00:16:56,400 >> Nii et see on silmus. 381 00:16:56,400 --> 00:16:59,530 Meil on esialgne seisund ja seejärel meie viimane tingimus, ja siis me 382 00:16:59,530 --> 00:17:01,160 korrata, i, iga silmus. 383 00:17:01,160 --> 00:17:05,579 Ja looksulg selle eest loop, mis juhtub, kui ma joosta 384 00:17:05,579 --> 00:17:06,290 selle programmiga? 385 00:17:06,290 --> 00:17:10,410 Kas keegi oskab mulle öelda, mida me saame? 386 00:17:10,410 --> 00:17:11,589 [? Matu? ?] 387 00:17:11,589 --> 00:17:13,819 >> MATU: Prindi kõik hinded igale reale. 388 00:17:13,819 --> 00:17:14,900 Oleks printida iga tulemus eraldi real. 389 00:17:14,900 --> 00:17:16,300 >> JASON Hirschhorn: Mida täpselt oleks see printida? 390 00:17:16,300 --> 00:17:19,790 >> Üliõpilane: Oleks printida ühe, siis kaks, siis kolm. 391 00:17:19,790 --> 00:17:20,235 >> JASON Hirschhorn: Täpselt. 392 00:17:20,235 --> 00:17:23,490 Oleks printida üks, siis kaks, siis kolm, iga eraldi ridadel, sest 393 00:17:23,490 --> 00:17:27,810 me läheme läbi massiivi ja saate näha, et teine, printf 394 00:17:27,810 --> 00:17:29,275 avaldus, hinded i. 395 00:17:29,275 --> 00:17:32,880 Nii esimese ringi meie jaoks loop, i võrdub nulliga, mis tähendab, et me oleme 396 00:17:32,880 --> 00:17:34,640 saada väärtus skoor null - 397 00:17:34,640 --> 00:17:36,900 mis, kui me tagasi minna meie skeem on üks - 398 00:17:36,900 --> 00:17:38,630 ja täites - 399 00:17:38,630 --> 00:17:39,700 oh, see ütleb, c. 400 00:17:39,700 --> 00:17:41,680 See peaks olema% d. 401 00:17:41,680 --> 00:17:43,970 Ma kinnitada, et natuke, kui I poolt, et viia teid. 402 00:17:43,970 --> 00:17:48,670 Aga me esitades täisarv nii, et see peaks olema% d siin, mitte% c. 403 00:17:48,670 --> 00:17:50,340 Mis on% c jaoks? 404 00:17:50,340 --> 00:17:50,790 >> Üliõpilane: Iseloom. 405 00:17:50,790 --> 00:17:52,680 >> JASON Hirschhorn: Iseloom, täpselt. 406 00:17:52,680 --> 00:17:53,690 Mis on teine? 407 00:17:53,690 --> 00:17:56,260 Kui sa ei taha seda teha% d jaoks täisarv, mida veel saab teha? 408 00:17:56,260 --> 00:17:57,000 >> Üliõpilane: i. 409 00:17:57,000 --> 00:17:59,180 >> JASON Hirschhorn:% i, täpselt. 410 00:17:59,180 --> 00:18:01,660 Nii tekib küsimusi iterating läbi massiivi? 411 00:18:01,660 --> 00:18:05,500 412 00:18:05,500 --> 00:18:07,800 Mis juhtub, kui me seda teeme? 413 00:18:07,800 --> 00:18:10,290 Selle asemel, et teeme i on väiksem kui kolm me i on vähem 414 00:18:10,290 --> 00:18:11,390 võrdne või kolm. 415 00:18:11,390 --> 00:18:13,420 Mis juhtub, kui võtame selle koodi? 416 00:18:13,420 --> 00:18:17,510 417 00:18:17,510 --> 00:18:18,940 Jah, Annie? 418 00:18:18,940 --> 00:18:22,030 >> Üliõpilane: Nad lähevad välja trükkida imelik värk neljandal real. 419 00:18:22,030 --> 00:18:23,850 >> JASON Hirschhorn: Nii et sa ütlesid, on see trükkimineku välja imelik värk 420 00:18:23,850 --> 00:18:24,390 Neljas rida? 421 00:18:24,390 --> 00:18:25,750 Kas keegi on vastus oma küsimusele? 422 00:18:25,750 --> 00:18:28,940 423 00:18:28,940 --> 00:18:33,160 Nii tõenäoline, et kui saame - 424 00:18:33,160 --> 00:18:36,700 nii edasi neljanda vooru läbi meie jaoks loop, nagu sa arvasid, Annie, 425 00:18:36,700 --> 00:18:39,430 see saab olema hinded sulg kolm, mis me oleme juba arvasin, ei 426 00:18:39,430 --> 00:18:41,990 olemas, ja me ei kavatse proovida ja juurdepääs, et printida 427 00:18:41,990 --> 00:18:43,350 välja, kasuta seda mingil moel. 428 00:18:43,350 --> 00:18:46,060 Nii arvuti tõenäoliselt jääb vihasta meid. 429 00:18:46,060 --> 00:18:46,760 Sa oled täpselt õige. 430 00:18:46,760 --> 00:18:48,830 >> See võib lõpetada programmi täielikult. 431 00:18:48,830 --> 00:18:52,222 See võib välja printida midagi väga imelik. 432 00:18:52,222 --> 00:18:53,420 Sa ei saa öelda, kindlasti. 433 00:18:53,420 --> 00:18:56,210 Koefitsiendid on see ilmselt vihasta teile ja lihtsalt loobuda kohe. 434 00:18:56,210 --> 00:19:00,100 >> Aga see on üldine viga pead kus sa oled lihtsalt maha ükshaaval 435 00:19:00,100 --> 00:19:05,110 aasta lõpuks, ja see on viga, mis katk teile kogu oma kodeerimist. 436 00:19:05,110 --> 00:19:09,350 437 00:19:09,350 --> 00:19:14,150 Üks viis, kuidas mulle meeldib teha, on just tahvel, läbida iga iteratsiooni 438 00:19:14,150 --> 00:19:18,190 of loop käsi või paberil näha mis toimub, ja siis 439 00:19:18,190 --> 00:19:20,440 üldiselt mõistavad, oh oota, ma ei peaks läinud alla või 440 00:19:20,440 --> 00:19:20,870 võrdub kolm. 441 00:19:20,870 --> 00:19:24,730 Ma oleks pidanud peatunud kaks, mis on Mis juhtub siis, kui teie seisund on vähem 442 00:19:24,730 --> 00:19:26,206 kui kolm. 443 00:19:26,206 --> 00:19:29,120 Küsimusi nii palju? 444 00:19:29,120 --> 00:19:31,010 Sweet. 445 00:19:31,010 --> 00:19:33,360 >> Nii et kõik on arvutis avatud. 446 00:19:33,360 --> 00:19:36,760 Me anname teile 2:58 minutit, et kirjutada programm, mis 447 00:19:36,760 --> 00:19:40,460 loob massiivi täisarvud üks läbi viis ja seejärel prindib iga 448 00:19:40,460 --> 00:19:41,720 täisarv uuele reale. 449 00:19:41,720 --> 00:19:44,330 450 00:19:44,330 --> 00:19:46,000 Ja kui teil on küsimusi, tõsta oma käsi. 451 00:19:46,000 --> 00:19:48,140 Mul on hea meel tulla. 452 00:19:48,140 --> 00:19:50,630 Nagu ma ütlesin, võtame kolm minutit, et kirjutada seda. 453 00:19:50,630 --> 00:20:41,300 454 00:20:41,300 --> 00:20:45,110 Kas igaüks OK, kui ma minna uus aken ja sulgeda? 455 00:20:45,110 --> 00:22:13,420 456 00:22:13,420 --> 00:22:15,520 >> Mul on kahju, kui sa ei ole olnud võimalust lõpuni, kuid me ei kavatse seda teha 457 00:22:15,520 --> 00:22:17,310 koos kohe. 458 00:22:17,310 --> 00:22:23,640 Nii ekraanile, olen # include cs50.h, # include stdio.h. 459 00:22:23,640 --> 00:22:26,090 Kas keegi mulle öelda, mida need kaks rida teha? 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 >> Üliõpilane: Nende hulka kuuluvad raamatukogud et CS50 tehtud ja et Steve on 463 00:22:40,030 --> 00:22:44,210 salvestatud saate kasutada muuta oma elu lihtsamaks. 464 00:22:44,210 --> 00:22:46,820 >> JASON Hirschhorn: Nii et sa ütlesid, et nad sisaldavad raamatukogud, mis CS50 465 00:22:46,820 --> 00:22:51,230 tehtud, cs50.h, ja üks, mis on lihtsalt standardile kaasas 466 00:22:51,230 --> 00:22:53,510 C paketi stdio.h. 467 00:22:53,510 --> 00:22:54,890 Mida sa mõtled hulka raamatukogude, kuigi? 468 00:22:54,890 --> 00:22:55,770 Suudad sa olla veidi täpsemalt? 469 00:22:55,770 --> 00:23:01,180 >> Üliõpilane: See teeb seda nii, et sa ei kasutada teatud kood sõnad on 470 00:23:01,180 --> 00:23:05,710 toimida juhtuda ilma minna ja teha funktsioon c ise. 471 00:23:05,710 --> 00:23:08,730 >> JASON Hirschhorn: Kas te anna mulle näiteks? 472 00:23:08,730 --> 00:23:11,160 >> Õpilane: Asjalik printf on see, mida saab kasutada. 473 00:23:11,160 --> 00:23:11,860 >> JASON Hirschhorn: Printf. 474 00:23:11,860 --> 00:23:14,680 Nii et sa ütlesid printf on üks neist ülesandeid, kus selle asemel, et 475 00:23:14,680 --> 00:23:19,840 kirjuta printf ise, printf on lisatud tegelikult stdio.h, siis 476 00:23:19,840 --> 00:23:22,010 võid seda kasutada ja endale et ta töötab. 477 00:23:22,010 --> 00:23:28,270 In stdio.h, kui te avada see fail, oleks see sisaldama kuidas printf 478 00:23:28,270 --> 00:23:31,620 töötab, kõik kood printf? 479 00:23:31,620 --> 00:23:33,105 Miks sa loksutatakse oma pea? 480 00:23:33,105 --> 00:23:35,710 >> Õpilane: Kuna header fail lihtsalt sisaldab funktsiooni deklaratsiooni. 481 00:23:35,710 --> 00:23:36,400 >> JASON Hirschhorn: Täpselt õige. 482 00:23:36,400 --> 00:23:39,680 Päisefailist vaid hõlmab funktsiooni deklaratsiooni. 483 00:23:39,680 --> 00:23:42,950 Ühesõnaga, kui sa kompileerida see, tabanud Tee Count, mis me teeme 484 00:23:42,950 --> 00:23:48,070 teine, tõlkija teab, et kui kasutate printf, printf olemas. 485 00:23:48,070 --> 00:23:49,370 See saab kindlaks määrata kuskil. 486 00:23:49,370 --> 00:23:51,200 See ei ole probleem teie jaoks kasutada. 487 00:23:51,200 --> 00:23:55,490 Ja siis hiljem, siis see sisaldab ühtesid ja nulle, et tegelikult sisaldavad 488 00:23:55,490 --> 00:23:58,360 printf rakendamise ja liita neid oma koodi. 489 00:23:58,360 --> 00:24:01,935 Kuidas veenduda, et see hõlmab ühtesid ja nulle, ütleme, saada string? 490 00:24:01,935 --> 00:24:05,670 491 00:24:05,670 --> 00:24:07,210 >> Üliõpilane: Get string on cs50.h. 492 00:24:07,210 --> 00:24:07,830 >> JASON Hirschhorn: Õigus. 493 00:24:07,830 --> 00:24:11,110 Nii ütleb, et saada string on olemas, funktsiooni deklaratsiooni. 494 00:24:11,110 --> 00:24:15,410 Aga siis ühtesid ja nulle, binaarne faili, mis tegelikult hõlmab 495 00:24:15,410 --> 00:24:17,370 rakendamise get string? 496 00:24:17,370 --> 00:24:19,310 Kuidas teha kindlaks, et läheb koos oma programmi? 497 00:24:19,310 --> 00:24:23,220 >> Üliõpilane: Pass linker sisse käsurea argument. 498 00:24:23,220 --> 00:24:25,430 >> JASON Hirschhorn: Pass linker aastal käsurea argument. 499 00:24:25,430 --> 00:24:26,700 Kuidas sa seda tegid? 500 00:24:26,700 --> 00:24:29,730 >> Üliõpilane: On-l rida rõkkama 501 00:24:29,730 --> 00:24:30,480 >> JASON Hirschhorn: Täpselt õige. 502 00:24:30,480 --> 00:24:32,900 Ütlete-l CS50, eks? 503 00:24:32,900 --> 00:24:34,940 See hõlmab ühtesid ja nulle. 504 00:24:34,940 --> 00:24:36,460 >> Õpilane: Aga teha ei et teile, eks? 505 00:24:36,460 --> 00:24:37,010 >> JASON Hirschhorn: Täpselt. 506 00:24:37,010 --> 00:24:40,390 Tee ei tee seda sinu jaoks, kuid lõpuks sa ei pea tootja või 507 00:24:40,390 --> 00:24:43,220 sa pead tegema Make ise, nii et see 508 00:24:43,220 --> 00:24:43,940 hea asi, mida mäletan. 509 00:24:43,940 --> 00:24:47,350 Kui te ei kavatse kasutada ühte neist teised raamatukogud, mitte ainult teil 510 00:24:47,350 --> 00:24:49,490 kirjutada # include ja siis raamatukokku. 511 00:24:49,490 --> 00:24:51,420 Teil on vaja ka lingi sisse 512 00:24:51,420 --> 00:24:54,480 Ja need kaks asja on erinevad. -L CS50 on erinev 513 00:24:54,480 --> 00:24:59,260 kui # include cs50.h. 514 00:24:59,260 --> 00:25:02,870 >> Siis on meil int main void looksulg, ja nüüd me lähme kood 515 00:25:02,870 --> 00:25:03,590 sees peamine. 516 00:25:03,590 --> 00:25:07,090 Esimene rida on mul siin on kommentaar , mis ütleb luua massiivi 517 00:25:07,090 --> 00:25:08,820 koos ints üks läbi viis. 518 00:25:08,820 --> 00:25:12,600 Mis on hea sõna, et kirjeldada, mida ma on kohe ekraanil, lihtsalt 519 00:25:12,600 --> 00:25:14,170 Kommentaarid sees peamine? 520 00:25:14,170 --> 00:25:15,722 Mida me nimetame seda? 521 00:25:15,722 --> 00:25:16,820 >> Üliõpilane: Pseudocode. 522 00:25:16,820 --> 00:25:17,840 >> JASON Hirschhorn: Pseudocode. 523 00:25:17,840 --> 00:25:18,420 Aitäh, Jeffrey. 524 00:25:18,420 --> 00:25:19,540 See on täpselt õige. 525 00:25:19,540 --> 00:25:20,005 Pseudocode. 526 00:25:20,005 --> 00:25:22,854 Kas te olete näinud pseudokoodi enne? 527 00:25:22,854 --> 00:25:28,340 Tõsta käsi, kui olete kasutanud pseudokoodi enne probleemi seadma üheks. 528 00:25:28,340 --> 00:25:29,400 Umbes pool sulle. 529 00:25:29,400 --> 00:25:32,700 >> Ma väga soovitame kasutada pseudokoodi murda probleeme arvesse 530 00:25:32,700 --> 00:25:35,210 väiksemad, lihtne hammustada tükki. 531 00:25:35,210 --> 00:25:38,630 Samuti, kui sa pseudokoodi, siis on teie kommentaare juba suuresti 532 00:25:38,630 --> 00:25:40,760 ehitatud, nii et sa ei pea minna tagasi ja proovida aru saada, 533 00:25:40,760 --> 00:25:42,450 mida sa teed. 534 00:25:42,450 --> 00:25:44,730 Nii saab keegi anda mulle see esimene rida luua massiivi ints üks 535 00:25:44,730 --> 00:25:45,980 läbi viis? 536 00:25:45,980 --> 00:25:48,700 537 00:25:48,700 --> 00:25:49,130 You? 538 00:25:49,130 --> 00:25:53,350 >> Üliõpilane: Int ja siis saate helistada mis iganes number ja seejärel ruut 539 00:25:53,350 --> 00:25:54,830 sulg viis. 540 00:25:54,830 --> 00:25:57,820 >> JASON Hirschhorn: Nii int numbrid nurksulg viis. 541 00:25:57,820 --> 00:25:59,160 >> Üliõpilane: Vastus, ja siis looksulg. 542 00:25:59,160 --> 00:26:00,830 >> JASON Hirschhorn: Vastus, looksulg. 543 00:26:00,830 --> 00:26:01,830 >> Üliõpilane: Üks, kaks, kolm, neli. 544 00:26:01,830 --> 00:26:05,566 >> JASON Hirschhorn: Üks, kaks, kolm, neli, viis. 545 00:26:05,566 --> 00:26:07,390 >> Üliõpilane: Ja siis looksulg ja siis semikoolon. 546 00:26:07,390 --> 00:26:09,240 >> JASON Hirschhorn: Ja lokkis traksid ja semikooloniga. 547 00:26:09,240 --> 00:26:10,330 Suurepärane. 548 00:26:10,330 --> 00:26:12,210 Prindi välja iga int uuele reale. 549 00:26:12,210 --> 00:26:17,140 Kas keegi annab mulle, et kood, palun? 550 00:26:17,140 --> 00:26:17,530 [? Matu? ?] 551 00:26:17,530 --> 00:26:18,560 Lase käia. 552 00:26:18,560 --> 00:26:20,440 >> Üliõpilane: For ( 553 00:26:20,440 --> 00:26:21,750 >> JASON Hirschhorn kohta: ( 554 00:26:21,750 --> 00:26:23,740 >> Üliõpilane: 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 >> Üliõpilane: Semikoolon i alla viie. 557 00:26:28,190 --> 00:26:31,680 >> JASON Hirschhorn: semikooloniga i vähemalt 5. 558 00:26:31,680 --> 00:26:33,600 >> Üliõpilane: semikooloniga i + +. 559 00:26:33,600 --> 00:26:35,140 >> JASON Hirschhorn: semikooloniga i + +. 560 00:26:35,140 --> 00:26:37,720 >> Õpilane: Suletud sulgudes siis avatud traksidega. 561 00:26:37,720 --> 00:26:39,410 >> JASON Hirschhorn: Suletud sulgudes ja kaks traksid. 562 00:26:39,410 --> 00:26:40,510 Toas traksid? 563 00:26:40,510 --> 00:26:47,640 >> Üliõpilane: Ja siis printf "% d / n" 564 00:26:47,640 --> 00:26:48,695 >> JASON Hirschhorn: Vabandust, oota. 565 00:26:48,695 --> 00:26:52,330 Printf "% d / n, suletud tsiteerida. 566 00:26:52,330 --> 00:26:55,980 >> Üliõpilane: Ja siis suletud tsiteerin koma, count, sulg i. 567 00:26:55,980 --> 00:26:58,350 >> JASON Hirschhorn: Comma, loota, sulg i. 568 00:26:58,350 --> 00:26:59,970 >> Üliõpilane: Vabandust, numbrid sulg i. 569 00:26:59,970 --> 00:27:01,416 >> JASON Hirschhorn: numbrid, sulg i. 570 00:27:01,416 --> 00:27:03,200 >> Üliõpilane: Vabandust. 571 00:27:03,200 --> 00:27:04,750 Ja siis suletud sulgudes semikooloniga. 572 00:27:04,750 --> 00:27:07,156 >> JASON Hirschhorn: Suletud sulgudes semikooloniga. 573 00:27:07,156 --> 00:27:08,680 Ma lähen, et päästa seda. 574 00:27:08,680 --> 00:27:12,670 Me kavatseme teha count. 575 00:27:12,670 --> 00:27:14,742 Ja kuidas ma saan loota? 576 00:27:14,742 --> 00:27:16,470 >> Üliõpilane: Längkriipsu. 577 00:27:16,470 --> 00:27:17,180 >> Üliõpilane: Dot kaldkriips - 578 00:27:17,180 --> 00:27:18,050 >> JASON Hirschhorn /. Loota, täpselt. 579 00:27:18,050 --> 00:27:19,380 Aitäh. . / Loe. 580 00:27:19,380 --> 00:27:21,060 Üks, kaks, kolm, neli, viis on uued liinid. 581 00:27:21,060 --> 00:27:22,110 Paistab, et see töötas. 582 00:27:22,110 --> 00:27:23,200 Jah, Noah? 583 00:27:23,200 --> 00:27:26,660 >> Üliõpilane: Sa võid teha ka väiksem või võrdub neli, nagu i on väiksem kui 584 00:27:26,660 --> 00:27:27,630 võrdne või neli? 585 00:27:27,630 --> 00:27:31,190 Kas on olemas eelis, et teeme vähem kui viis, või lihtsalt teistmoodi 586 00:27:31,190 --> 00:27:31,610 kirjutamist? 587 00:27:31,610 --> 00:27:35,280 >> JASON Hirschhorn: Seega on küsimus teile oleks võinud teha i on väiksem või 588 00:27:35,280 --> 00:27:37,450 võrdub nelja asemel i on vähem kui viis. 589 00:27:37,450 --> 00:27:38,935 Kas see on töötanud sama? 590 00:27:38,935 --> 00:27:39,760 >> Üliõpilane: peaks. 591 00:27:39,760 --> 00:27:39,860 >> JASON Hirschhorn: Jah. 592 00:27:39,860 --> 00:27:41,660 See täiesti oleks tööd sama. 593 00:27:41,660 --> 00:27:44,780 Stiililiselt on tavaliselt alla, ja näete sekundis 594 00:27:44,780 --> 00:27:48,160 meil stringid, mida saab kasutada midagi nimetatakse strlen, mis sa oled näinud 595 00:27:48,160 --> 00:27:50,380 enne, et saada pikkus on string. 596 00:27:50,380 --> 00:27:54,090 Ja sa ei saa alla või võrdne strlen. 597 00:27:54,090 --> 00:27:56,500 Sa võiksid teha või väiksem võrdub strlen miinus üks. 598 00:27:56,500 --> 00:27:59,260 Nii et see on lihtsalt kenamaks teha vähem kui strlen. 599 00:27:59,260 --> 00:28:00,240 Jah? 600 00:28:00,240 --> 00:28:03,270 >> Üliõpilane: Ja tegelikult viktoriine, tee meil on pakkuda kommentaarid meie 601 00:28:03,270 --> 00:28:04,620 kood ka? 602 00:28:04,620 --> 00:28:06,130 >> JASON Hirschhorn: küsimus oli ka viktoriine, kas sa 603 00:28:06,130 --> 00:28:07,760 peavad esitama märkusi? 604 00:28:07,760 --> 00:28:12,050 Nii et me räägime rohkem viktoriine kui nad tulevad välja, kuid üldiselt hea 605 00:28:12,050 --> 00:28:14,530 Rusikareegel on, kui oled kirjutada koodi, esitada oma märkused. 606 00:28:14,530 --> 00:28:18,130 Kui sa kood vale kuid kommentaar õige, võite saada mõned 607 00:28:18,130 --> 00:28:22,280 krediidi nii mind kui ma hindasin Teid lahendamist või viktoriini. 608 00:28:22,280 --> 00:28:24,660 Nii kommentaarid on alati hea pakkuda. 609 00:28:24,660 --> 00:28:25,040 Sweet. 610 00:28:25,040 --> 00:28:25,460 Loe. 611 00:28:25,460 --> 00:28:26,720 Suurepärane töö. 612 00:28:26,720 --> 00:28:28,570 Liigume edasi. 613 00:28:28,570 --> 00:28:29,920 >> Strings. 614 00:28:29,920 --> 00:28:30,630 Strings. 615 00:28:30,630 --> 00:28:31,730 Me oleme näinud seda varem loeng. 616 00:28:31,730 --> 00:28:33,390 See puhus minu meelest, kui ma kõigepealt leida see välja. 617 00:28:33,390 --> 00:28:37,240 Tõenäoliselt ei puhu kellegi midagi siin, kuid see on OK. 618 00:28:37,240 --> 00:28:41,260 >> Strings on massiive märki ja nad lõpuks koos, nagu te ütlesite varem, 619 00:28:41,260 --> 00:28:45,710 null terminaator mis on see / 0 iseloomu. 620 00:28:45,710 --> 00:28:47,740 Kui me läheme juhtida string pardal, me teha seda siin. 621 00:28:47,740 --> 00:28:53,080 622 00:28:53,080 --> 00:28:56,420 Kui kaua on see string? 623 00:28:56,420 --> 00:28:56,680 Vabandust. 624 00:28:56,680 --> 00:28:57,660 Kui pikk on see string? 625 00:28:57,660 --> 00:28:57,910 >> Õpilane: [kuuldamatu]. 626 00:28:57,910 --> 00:28:59,010 >> JASON Hirschhorn: Neli? 627 00:28:59,010 --> 00:28:59,880 Miks on neli? 628 00:28:59,880 --> 00:29:02,240 >> Õpilane: Kuna viienda koha on null iseloomu. 629 00:29:02,240 --> 00:29:04,070 >> JASON Hirschhorn: Nii viienda koha on null iseloomu. 630 00:29:04,070 --> 00:29:07,130 Nii et kui ma joosta strlen edasi see oleks mulle neli. 631 00:29:07,130 --> 00:29:07,850 Õige. 632 00:29:07,850 --> 00:29:11,640 Ja massiivi, aga kui ma initsialiseerida see massiiv, kui palju ruumi 633 00:29:11,640 --> 00:29:13,444 oleks mul küsida? 634 00:29:13,444 --> 00:29:13,821 >> Üliõpilane: Viis. 635 00:29:13,821 --> 00:29:14,200 >> JASON Hirschhorn: viis. 636 00:29:14,200 --> 00:29:17,650 Ma pean küsima viis, aga ma ei panna ainult neli märki siin 637 00:29:17,650 --> 00:29:19,750 sest mul on vaja panna, et null terminaator otsas. 638 00:29:19,750 --> 00:29:25,260 Nii et me ei kavatse kirjutada "Ohai" ja pane null terminaator lõpus. 639 00:29:25,260 --> 00:29:31,820 640 00:29:31,820 --> 00:29:34,940 Me ütleme see on string s võrdub see. 641 00:29:34,940 --> 00:29:36,610 Mis on s sulg null? 642 00:29:36,610 --> 00:29:40,210 643 00:29:40,210 --> 00:29:41,550 s sulg null, Annie? 644 00:29:41,550 --> 00:29:41,950 >> Üliõpilane: O. 645 00:29:41,950 --> 00:29:45,400 >> JASON Hirschhorn: O, täpselt. s sulg üks? 646 00:29:45,400 --> 00:29:48,200 s sulg viis? 647 00:29:48,200 --> 00:29:52,670 648 00:29:52,670 --> 00:29:53,955 s sulg viis? 649 00:29:53,955 --> 00:29:54,740 >> Üliõpilane: ei ole olemas. 650 00:29:54,740 --> 00:29:55,040 >> JASON Hirschhorn: ei ole olemas. 651 00:29:55,040 --> 00:29:57,050 Täpselt õige. 652 00:29:57,050 --> 00:29:57,940 Lahe. 653 00:29:57,940 --> 00:30:03,120 Küsimusi mõista nöörid massiive tähemärki? 654 00:30:03,120 --> 00:30:03,870 Olgu siis. 655 00:30:03,870 --> 00:30:05,440 Üks programm kutid. 656 00:30:05,440 --> 00:30:09,190 Kirjutada programm, mis küsib kasutaja jaoks string siis prindib iga 657 00:30:09,190 --> 00:30:11,880 märgi uuele reale. 658 00:30:11,880 --> 00:30:14,160 Võtame kolm minutit, et kirjutada Selles programmis, ja siis me koodi see 659 00:30:14,160 --> 00:30:15,410 rühmana. 660 00:30:15,410 --> 00:31:04,730 661 00:31:04,730 --> 00:31:04,830 >> Vabandust. 662 00:31:04,830 --> 00:31:06,470 Kas teil on vaja näha seda? 663 00:31:06,470 --> 00:31:07,410 >> Õpilane: Ei 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 Võtame veel ühe minuti koodi see, või vähemalt alustada sellega. 667 00:31:40,605 --> 00:32:13,900 668 00:32:13,900 --> 00:32:17,020 >> Nii saab käia tööl, kuid ma lähen alustada läbimas ta. 669 00:32:17,020 --> 00:32:22,560 Nii nagu varem, mul on ekraanil # Include cs50.h, # include stdio.h. 670 00:32:22,560 --> 00:32:24,020 int main tühine. 671 00:32:24,020 --> 00:32:28,880 Toas peamine on looksulg, mul on kaks kommentaari, pseudokoodi. 672 00:32:28,880 --> 00:32:30,980 Üks on küsida string kasutaja. 673 00:32:30,980 --> 00:32:33,900 Teine on välja trükkida iga märgi uuele reale. 674 00:32:33,900 --> 00:32:39,780 Nii Anna, kas sa annad mulle palun jaoks string kasutaja? 675 00:32:39,780 --> 00:32:41,970 >> Üliõpilane: Printf. 676 00:32:41,970 --> 00:32:42,720 >> JASON Hirschhorn: Printf? 677 00:32:42,720 --> 00:32:45,050 >> Üliõpilane: Jah. 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 >> Üliõpilane: "Anna mulle string. 681 00:32:49,300 --> 00:32:52,380 >> JASON Hirschhorn: "anna mind tn - oops - 682 00:32:52,380 --> 00:32:53,710 string. 683 00:32:53,710 --> 00:32:59,980 >> Üliõpilane: / n ") semikooloniga. 684 00:32:59,980 --> 00:33:02,300 >> JASON Hirschhorn: Lõpetage string, suletud sulgudes semikooloniga. 685 00:33:02,300 --> 00:33:03,550 >> Üliõpilane: Jah. 686 00:33:03,550 --> 00:33:09,080 Ja siis järgmine rida, string s = saada string. 687 00:33:09,080 --> 00:33:11,240 >> JASON Hirschhorn: String s = saada string. 688 00:33:11,240 --> 00:33:11,665 >> Üliõpilane: Jah. 689 00:33:11,665 --> 00:33:13,080 Ja siis () 690 00:33:13,080 --> 00:33:14,365 >> JASON Hirschhorn: () 691 00:33:14,365 --> 00:33:14,720 >> Üliõpilane: semikooloniga. 692 00:33:14,720 --> 00:33:15,540 >> JASON Hirschhorn: semikooloniga. 693 00:33:15,540 --> 00:33:16,890 Fantastiline. 694 00:33:16,890 --> 00:33:19,000 Nii et ma lähen string ja Ma lähen, et salvestada see mida? 695 00:33:19,000 --> 00:33:21,830 Mis on muutuja nimega et te lõite? 696 00:33:21,830 --> 00:33:23,290 >> Üliõpilane: String s. 697 00:33:23,290 --> 00:33:24,580 >> JASON Hirschhorn: muutuja nimetatakse s. 698 00:33:24,580 --> 00:33:25,700 See tüüp string. 699 00:33:25,700 --> 00:33:27,200 Täpselt. 700 00:33:27,200 --> 00:33:30,080 Järgmine asi, mida me tahame on välja printida iga märk uuele reale. 701 00:33:30,080 --> 00:33:31,710 Kes saab anda mulle, et kood? 702 00:33:31,710 --> 00:33:32,110 [Kuuldamatu]? 703 00:33:32,110 --> 00:33:33,000 Kas sa annad selle mulle? 704 00:33:33,000 --> 00:33:33,580 >> Üliõpilane: Muidugi. 705 00:33:33,580 --> 00:33:35,420 >> JASON Hirschhorn: Teeme seda. 706 00:33:35,420 --> 00:33:36,080 Ja kahju. 707 00:33:36,080 --> 00:33:38,896 Mulle ei meeldi, et korrata seda, mida sa ütled sest sa saada see õigus, kuid ma 708 00:33:38,896 --> 00:33:42,100 tuleb korrata, et kui nad transkribeerida see, et nad saavad kõik 709 00:33:42,100 --> 00:33:44,870 teksti läbi transkriptsiooni. 710 00:33:44,870 --> 00:33:47,180 Nii saab muudkui räägib. 711 00:33:47,180 --> 00:33:48,590 Kahjuks pean ma öelda, et see sinu üle. 712 00:33:48,590 --> 00:33:49,510 Mul on kahju, kuid - 713 00:33:49,510 --> 00:33:50,610 >> Üliõpilane: See on hea. 714 00:33:50,610 --> 00:33:53,010 Sest int i = 0 715 00:33:53,010 --> 00:33:54,170 >> JASON Hirschhorn kohta: int i = 0 716 00:33:54,170 --> 00:33:56,740 >> Üliõpilane: I alla - 717 00:33:56,740 --> 00:33:58,206 >> JASON Hirschhorn: semikooloniga. 718 00:33:58,206 --> 00:34:00,650 >> Üliõpilane: Enne seda, me saame panna muutuja, nii saad int nimi pikkus? 719 00:34:00,650 --> 00:34:01,870 >> JASON Hirschhorn: Oh, sa ei pea tahan panna semikoolon? 720 00:34:01,870 --> 00:34:02,310 OK. 721 00:34:02,310 --> 00:34:05,120 Nii et mida sa tahad teha pärast nulli? 722 00:34:05,120 --> 00:34:09,340 >> Õpilane: Ma tahan saada string pikkusega s ja 723 00:34:09,340 --> 00:34:10,410 määrata, et muutuja? 724 00:34:10,410 --> 00:34:11,760 >> JASON Hirschhorn: OK, Niisiis, kuidas ma seda teen? 725 00:34:11,760 --> 00:34:17,636 >> Üliõpilane: Nii et sa ei int pikkus = 726 00:34:17,636 --> 00:34:20,010 >> JASON Hirschhorn: int pikkus = 727 00:34:20,010 --> 00:34:22,230 >> Üliõpilane: 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 >> Üliõpilane: s. 730 00:34:25,380 --> 00:34:25,790 Brackets. 731 00:34:25,790 --> 00:34:27,920 >> JASON Hirschhorn: (a). 732 00:34:27,920 --> 00:34:33,040 >> Üliõpilane: Ja siis ma arvan, et sa pead pane semikoolon kahe ints. 733 00:34:33,040 --> 00:34:34,590 >> JASON Hirschhorn: semikoolon pärast nulli? 734 00:34:34,590 --> 00:34:35,260 >> Üliõpilane: Jah. 735 00:34:35,260 --> 00:34:40,670 Siis pane semikoolon pärast seda, ning sa ütled, ma alla pikkus. 736 00:34:40,670 --> 00:34:43,250 i alla pikkus, mis on muutuja. 737 00:34:43,250 --> 00:34:44,590 >> Üliõpilane: Ja siis semikoolon. 738 00:34:44,590 --> 00:34:45,790 >> JASON Hirschhorn: semikooloniga. 739 00:34:45,790 --> 00:34:46,290 >> Üliõpilane: i + +. 740 00:34:46,290 --> 00:34:46,909 >> JASON Hirschhorn: i + +. 741 00:34:46,909 --> 00:34:47,530 Seal on meie jaoks silmus. 742 00:34:47,530 --> 00:34:48,860 OK, sees silmus. 743 00:34:48,860 --> 00:34:51,670 >> Üliõpilane: Ja siis tee printf. 744 00:34:51,670 --> 00:34:53,340 >> JASON Hirschhorn: Printf. 745 00:34:53,340 --> 00:34:53,889 >> Üliõpilane: Brackets. 746 00:34:53,889 --> 00:34:55,130 >> JASON Hirschhorn: sulgudes hinnapakkumisi. 747 00:34:55,130 --> 00:34:59,930 >> Üliõpilane: sulgudes hinnapakkumisi,% c / n. 748 00:34:59,930 --> 00:35:00,760 >> JASON Hirschhorn:% c, OK. 749 00:35:00,760 --> 00:35:01,670 >> Üliõpilane: / n. 750 00:35:01,670 --> 00:35:03,470 >> JASON Hirschhorn: / n. 751 00:35:03,470 --> 00:35:04,410 >> Õpilane: Suletud hinnapakkumisi. 752 00:35:04,410 --> 00:35:05,270 >> JASON Hirschhorn: Suletud hinnapakkumisi. 753 00:35:05,270 --> 00:35:05,810 >> Üliõpilane: koma. 754 00:35:05,810 --> 00:35:06,860 >> JASON Hirschhorn: koma. 755 00:35:06,860 --> 00:35:07,800 >> Üliõpilane: S. 756 00:35:07,800 --> 00:35:08,070 >> JASON Hirschhorn: S. 757 00:35:08,070 --> 00:35:08,690 >> Üliõpilane: Bracket i. 758 00:35:08,690 --> 00:35:10,230 >> JASON Hirschhorn: Bracket i. 759 00:35:10,230 --> 00:35:11,520 >> Üliõpilane: Ja siis suletud sulgudes. 760 00:35:11,520 --> 00:35:12,540 >> JASON Hirschhorn: Suletud sulgudes. 761 00:35:12,540 --> 00:35:13,660 >> Üliõpilane: Ja siis semikoolon. 762 00:35:13,660 --> 00:35:13,770 >> JASON Hirschhorn: semikooloniga. 763 00:35:13,770 --> 00:35:14,380 Fantastiline. 764 00:35:14,380 --> 00:35:16,890 Teeme salvestada. 765 00:35:16,890 --> 00:35:19,770 Tee õigekirja. 766 00:35:19,770 --> 00:35:20,040 Oh boy. 767 00:35:20,040 --> 00:35:22,275 Mul paar vigu. 768 00:35:22,275 --> 00:35:33,120 Esimene viga on line 11, ta ütleb, oodata väljendus, ja see annab 769 00:35:33,120 --> 00:35:36,910 minu viga, et teine int, seal on viga. 770 00:35:36,910 --> 00:35:38,430 On mõned viga seal ringi. 771 00:35:38,430 --> 00:35:41,060 Kas keegi teab, mis viga see on? 772 00:35:41,060 --> 00:35:41,640 Kurt? 773 00:35:41,640 --> 00:35:44,108 >> Õpilane: Ma arvan, et see peaks olema koma ning ei sisalda semikoolonit. 774 00:35:44,108 --> 00:35:46,010 >> JASON Hirschhorn: OK, koma asemel semikooloniga. 775 00:35:46,010 --> 00:35:47,340 Nii on see, et kõik me vajadust määrata? 776 00:35:47,340 --> 00:35:47,655 >> Õpilane: Ei 777 00:35:47,655 --> 00:35:48,930 >> JASON Hirschhorn: Mida meil on vaja kindlaks määrata? 778 00:35:48,930 --> 00:35:50,920 >> Üliõpilane: Peame lisada string. 779 00:35:50,920 --> 00:35:51,680 >> JASON Hirschhorn: lisada string. 780 00:35:51,680 --> 00:35:53,730 Kust ma vaja lisada, et? 781 00:35:53,730 --> 00:35:57,085 >> Üliõpilane: Samas kohas sa ka muud asjad, eks 782 00:35:57,085 --> 00:35:59,560 pärast sisaldama stdio.h. 783 00:35:59,560 --> 00:36:01,610 >> JASON Hirschhorn: Vaatame, kas see töötab esimene, sest üldiselt, mulle meeldib 784 00:36:01,610 --> 00:36:06,360 määrata üks asi esimene ja seejärel käivitage , ja siis vaata vigadest saame. 785 00:36:06,360 --> 00:36:11,620 Nii et me läheme puhtaks terminal kontrollgrupiga n, teeme teha õigekirja. 786 00:36:11,620 --> 00:36:15,190 787 00:36:15,190 --> 00:36:18,770 Nii teine ​​viga on line 11. 788 00:36:18,770 --> 00:36:20,540 Oodatud semikooloniga. 789 00:36:20,540 --> 00:36:22,640 Ja ma olen ikka saada vigu sellel liinil. 790 00:36:22,640 --> 00:36:25,270 Nii et see ei andnud mulle viga öeldes ei saa aru, mida strlen on 791 00:36:25,270 --> 00:36:28,980 kuid see annab mulle viga sellel line, nii et mida veel on valesti? 792 00:36:28,980 --> 00:36:29,690 Mark? 793 00:36:29,690 --> 00:36:30,940 Marcus. 794 00:36:30,940 --> 00:36:32,570 >> Üliõpilane: Kas teil on kõrvaldada Teise int deklaratsiooni? 795 00:36:32,570 --> 00:36:34,990 >> JASON Hirschhorn: Eemalda Teise int. 796 00:36:34,990 --> 00:36:35,710 Proovime seda. 797 00:36:35,710 --> 00:36:37,600 Nüüd selge terminal. 798 00:36:37,600 --> 00:36:40,130 Tee õigekirja. 799 00:36:40,130 --> 00:36:40,490 Viga. 800 00:36:40,490 --> 00:36:42,890 Kaudselt kuulutatakse raamatukogu funktsioon strlen. 801 00:36:42,890 --> 00:36:44,270 Nüüd me näeme, et viga. 802 00:36:44,270 --> 00:36:45,760 Mida me vajame, et kanda? 803 00:36:45,760 --> 00:36:46,660 >> Üliõpilane: string. 804 00:36:46,660 --> 00:36:51,880 >> JASON Hirschhorn: lisada string, Teeme # include string ülaosas 805 00:36:51,880 --> 00:36:52,920 ekraani. 806 00:36:52,920 --> 00:36:55,450 Hoiame teha õigekirja. 807 00:36:55,450 --> 00:36:56,970 Nüüd koostatakse. 808 00:36:56,970 --> 00:37:01,970 Nii et taas, mida me vaja Jäta line 12 meie jaoks silmus 809 00:37:01,970 --> 00:37:08,010 me selle loomiseks, int i = 0, pikkus = strlen (s). 810 00:37:08,010 --> 00:37:09,350 >> See on fantastiline strateegia. 811 00:37:09,350 --> 00:37:12,590 Stiil see on suur, disain see on suurepärane. 812 00:37:12,590 --> 00:37:15,620 Me ei hakka neid põhjusi hiljem vaid see, kuidas sa ainult vaja helistada 813 00:37:15,620 --> 00:37:19,040 strlen kord asemel iga käivitamisel läbi silmuse. 814 00:37:19,040 --> 00:37:22,255 Kuid teil on vaja kasutada koma seal ja sa ei pea int uuesti. 815 00:37:22,255 --> 00:37:24,180 Kui oled tuues välja nii need muutujad koos, siis 816 00:37:24,180 --> 00:37:26,850 ei pea int uuesti. 817 00:37:26,850 --> 00:37:29,820 Ja siis, kui te ei kavatse kasutada strlen, mis on teise raamatukogu 818 00:37:29,820 --> 00:37:33,560 funktsiooni, mis ei kuulu stdio.h või cs50.h teha 819 00:37:33,560 --> 00:37:35,310 Ärge unustage lisada string. 820 00:37:35,310 --> 00:37:35,900 Kurt? 821 00:37:35,900 --> 00:37:39,085 >> Õpilane: Niisiis, kui sa ei pea öelda, mis tüüpi pikkus on, siis kas see 822 00:37:39,085 --> 00:37:40,290 tähendab see peab olema int? 823 00:37:40,290 --> 00:37:41,930 Sa ei saa olla kahte erinevat tüübid on? 824 00:37:41,930 --> 00:37:43,290 >> JASON Hirschhorn: et sa võiksid on kaks erinevat liiki. 825 00:37:43,290 --> 00:37:45,730 Pikkus on int siin, kuigi. 826 00:37:45,730 --> 00:37:48,590 Pikkus on int, sest see on koma ja siis sama asi. 827 00:37:48,590 --> 00:37:50,460 >> Üliõpilane: Nii see eeldab, et see toimub olema sama kui esimene? 828 00:37:50,460 --> 00:37:52,423 >> JASON Hirschhorn: Täpselt. 829 00:37:52,423 --> 00:37:54,970 Me ei kavatse seda teha nüüd, aga sa võib sisaldada kaks muutujad 830 00:37:54,970 --> 00:37:57,080 sama liini kasutades üks andmetüüp. 831 00:37:57,080 --> 00:38:01,415 Nii int x, y tekitaks kahe muutuja. 832 00:38:01,415 --> 00:38:05,830 833 00:38:05,830 --> 00:38:10,770 Nii int x, y, kui me teeme seda, see annab mind kasutamata muutuja x ja y, sest 834 00:38:10,770 --> 00:38:12,020 me ei kasuta neid. 835 00:38:12,020 --> 00:38:17,950 836 00:38:17,950 --> 00:38:21,650 Nii paneb void enne on lihtsalt fancy trikk, kui te ei kasuta 837 00:38:21,650 --> 00:38:22,810 midagi, et seda kasutada. 838 00:38:22,810 --> 00:38:26,300 Aga nagu näete, ma loon x ja y samas kooskõlas koma. 839 00:38:26,300 --> 00:38:28,450 See loob kaks täisarvu seal. 840 00:38:28,450 --> 00:38:31,560 Nii et jah, täiesti võimalik luua kaks asja samal joonel 841 00:38:31,560 --> 00:38:33,720 eraldatud komaga. 842 00:38:33,720 --> 00:38:35,470 Laseme lahti neist, kuigi. 843 00:38:35,470 --> 00:38:36,370 >> Nii et seal on õigekirja. 844 00:38:36,370 --> 00:38:39,200 Aitäh poisid kodeerimine ta meile. 845 00:38:39,200 --> 00:38:43,040 Teeme seda veel kord, käivitage see. 846 00:38:43,040 --> 00:38:44,580 Anna string. 847 00:38:44,580 --> 00:38:45,580 [Kuuldamatu] sa seda kõige rohkem. 848 00:38:45,580 --> 00:38:47,910 Mis string? 849 00:38:47,910 --> 00:38:48,250 >> Üliõpilane: Tere. 850 00:38:48,250 --> 00:38:50,110 >> JASON Hirschhorn: Hello. 851 00:38:50,110 --> 00:38:52,810 H-E-L-L-O, iga märk on üks rida. 852 00:38:52,810 --> 00:38:53,700 Tundub hea. 853 00:38:53,700 --> 00:38:54,750 Olgem käivitada uuesti. 854 00:38:54,750 --> 00:38:56,050 Alati saab kontrollida nurgas juhtudel. 855 00:38:56,050 --> 00:38:57,750 Mis on hea nurga puhul kontrollida? 856 00:38:57,750 --> 00:39:00,250 857 00:39:00,250 --> 00:39:00,890 >> Üliõpilane: number? 858 00:39:00,890 --> 00:39:02,240 >> JASON Hirschhorn: number. 859 00:39:02,240 --> 00:39:06,580 Nii et ma panen 1, ja see prinditakse välja 1. 860 00:39:06,580 --> 00:39:08,970 See ei nõua tähtedega, nii tundub numbrid toimib. 861 00:39:08,970 --> 00:39:09,890 Hea nurga puhul kontrollida. 862 00:39:09,890 --> 00:39:11,740 Mis on veel üks hea nurga puhul kontrollida? 863 00:39:11,740 --> 00:39:12,420 >> Üliõpilane: tühi string. 864 00:39:12,420 --> 00:39:12,910 >> JASON Hirschhorn: Hm? 865 00:39:12,910 --> 00:39:13,880 >> Üliõpilane: Nagu tühi string. 866 00:39:13,880 --> 00:39:14,400 >> JASON Hirschhorn: Tühi string. 867 00:39:14,400 --> 00:39:16,730 Seega ärgem panna midagi. 868 00:39:16,730 --> 00:39:18,660 Ja mida saab välja printida? 869 00:39:18,660 --> 00:39:19,090 >> Üliõpilane: Mitte midagi. 870 00:39:19,090 --> 00:39:19,870 >> JASON Hirschhorn: Mitte midagi. 871 00:39:19,870 --> 00:39:20,555 Tundub, et see töötab. 872 00:39:20,555 --> 00:39:23,790 Võid proovida veel nurgas juhtudel, kuid tavaliselt numbreid, erinevaid andmeid on 873 00:39:23,790 --> 00:39:26,160 tore proovida, aga pole midagi. 874 00:39:26,160 --> 00:39:29,180 Mitte midagi, null, negatiivid on alati suuri asju proovida ja asju, mida 875 00:39:29,180 --> 00:39:33,140 peaks test, asjad kindlasti me testida ja Check 50 testib eest. 876 00:39:33,140 --> 00:39:34,720 Küsimusi spell.c? 877 00:39:34,720 --> 00:39:37,752 878 00:39:37,752 --> 00:39:39,310 >> Okei, pea taha. 879 00:39:39,310 --> 00:39:42,420 Mul on veel üks programm kutid kirjutada. 880 00:39:42,420 --> 00:39:44,700 Seda nimetatakse students.c. 881 00:39:44,700 --> 00:39:49,020 See on programm, mis küsib kasutaja jaoks viis nime, siis juhuslikult valib 882 00:39:49,020 --> 00:39:51,600 ja prindib välja üks nimesid. 883 00:39:51,600 --> 00:39:54,840 See programm on natuke rohkem seotud kui kaks viimast me kirjutasime, 884 00:39:54,840 --> 00:39:58,080 miks me ei võiks võtta viis minutit koodi see eraldi, ja siis me 885 00:39:58,080 --> 00:40:00,130 koodi see rühmana. 886 00:40:00,130 --> 00:40:03,795 >> See programm hõlmab mõningaid asju sa ei näinud enne, nii et kui 887 00:40:03,795 --> 00:40:06,390 teil on küsimus, kuidas teha Ma seda teen, tõsta oma käsi. 888 00:40:06,390 --> 00:40:08,530 Ma tulen üle ja juhtida teie õiges suunas. 889 00:40:08,530 --> 00:40:10,820 Aga me ka teeme seda, sest see on hea viis teha mõned 890 00:40:10,820 --> 00:40:12,070 teemasid, mis on keeruline. 891 00:40:12,070 --> 00:44:14,600 892 00:44:14,600 --> 00:44:15,560 >> Nii see toimib, eks? 893 00:44:15,560 --> 00:44:17,580 >> Üliõpilane: Jah. 894 00:44:17,580 --> 00:44:19,180 >> JASON Hirschhorn: Kui lülitate sisse Ülesanded, seal on palju võimalusi seda teha 895 00:44:19,180 --> 00:44:20,790 , kuid mõned on veel elegantne kui teised. 896 00:44:20,790 --> 00:44:29,000 897 00:44:29,000 --> 00:44:31,110 Olgem sukelduda sisse 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 õigustühine looksulg. 901 00:44:37,240 --> 00:44:39,430 Toas looksulg, Mul on kaks kommentaari. 902 00:44:39,430 --> 00:44:41,500 Esimene neist on, küsige kasutaja jaoks viis nime. 903 00:44:41,500 --> 00:44:46,580 Teine on, juhuslikult valida ja välja trükkida üks nimesid. 904 00:44:46,580 --> 00:44:50,250 Teeme esimene, küsige kasutaja jaoks viis nime. 905 00:44:50,250 --> 00:44:53,730 Kes on palunud kasutaja viieks nimed ja ei ütle mulle, kuidas seda teha? 906 00:44:53,730 --> 00:44:56,760 907 00:44:56,760 --> 00:44:58,570 Ainult kaks inimest tegid esimese osa. 908 00:44:58,570 --> 00:45:00,150 Kolm inimest tegi esimese osa. 909 00:45:00,150 --> 00:45:00,670 Neli, viis. 910 00:45:00,670 --> 00:45:03,140 Tom, kuidas sa seda teed? 911 00:45:03,140 --> 00:45:09,940 >> Üliõpilane: Sa oleks kuulutada string ja siis nimi, sulg viis. 912 00:45:09,940 --> 00:45:12,070 >> JASON Hirschhorn: String nimi sulg viis. 913 00:45:12,070 --> 00:45:15,350 Mis siis on see joon teed, string nimi sulg viis? 914 00:45:15,350 --> 00:45:17,800 >> Üliõpilane: Sa oleks kuulutada massiivi stringe. 915 00:45:17,800 --> 00:45:19,000 >> JASON Hirschhorn: See on massiivi stringe. 916 00:45:19,000 --> 00:45:21,590 Mitu strings lähevad mahtuda siin? 917 00:45:21,590 --> 00:45:22,010 >> Üliõpilane: Viis. 918 00:45:22,010 --> 00:45:22,320 >> JASON Hirschhorn: viis. 919 00:45:22,320 --> 00:45:22,660 Suurepärane. 920 00:45:22,660 --> 00:45:26,360 Me läheme seda nimetada nimesid, sest me ei kavatse saada mitu ones. 921 00:45:26,360 --> 00:45:27,790 OK, edasi? 922 00:45:27,790 --> 00:45:29,270 >> Üliõpilane: Ja siis on loop - 923 00:45:29,270 --> 00:45:30,060 >> JASON Hirschhorn: For loop. 924 00:45:30,060 --> 00:45:33,035 >> Üliõpilane: - i = 0. 925 00:45:33,035 --> 00:45:37,040 >> JASON Hirschhorn: jaoks (int i = 0. 926 00:45:37,040 --> 00:45:38,270 >> Üliõpilane: semikooloniga. 927 00:45:38,270 --> 00:45:38,880 >> JASON Hirschhorn: semikooloniga. 928 00:45:38,880 --> 00:45:39,790 >> Üliõpilane: ma vähem kui viis. 929 00:45:39,790 --> 00:45:41,310 >> JASON Hirschhorn: ma vähem kui viis. 930 00:45:41,310 --> 00:45:42,230 >> Üliõpilane: semikooloniga. 931 00:45:42,230 --> 00:45:42,560 >> JASON Hirschhorn: semikooloniga. 932 00:45:42,560 --> 00:45:43,380 >> Üliõpilane: i + +. 933 00:45:43,380 --> 00:45:46,050 >> JASON Hirschhorn: i + +. 934 00:45:46,050 --> 00:45:47,100 >> Üliõpilane: Ja siis suletud sulgudes. 935 00:45:47,100 --> 00:45:48,600 >> JASON Hirschhorn: Suletud sulgudes ja siis mõned looksulg. 936 00:45:48,600 --> 00:45:50,050 Toas looksulg? 937 00:45:50,050 --> 00:45:51,423 >> Üliõpilane: Ja siis printf. 938 00:45:51,423 --> 00:45:52,535 >> JASON Hirschhorn: Printf. 939 00:45:52,535 --> 00:45:56,200 >> Üliõpilane: Open sulgudes nime% d. 940 00:45:56,200 --> 00:45:57,090 >> JASON Hirschhorn: Vabandust? 941 00:45:57,090 --> 00:45:57,660 >> Üliõpilane: Nimi. 942 00:45:57,660 --> 00:45:58,200 >> JASON Hirschhorn: Nimi. 943 00:45:58,200 --> 00:46:01,700 >> Üliõpilane: Ja siis ruumi ja siis% d. 944 00:46:01,700 --> 00:46:02,950 >> JASON Hirschhorn: Nime, ruumi,% d. 945 00:46:02,950 --> 00:46:05,630 946 00:46:05,630 --> 00:46:10,820 >> Üliõpilane: Ja siis / n, ja siis suletud. 947 00:46:10,820 --> 00:46:15,070 >> JASON Hirschhorn: Nii nimi, kosmos, % D / n, suletud sulgudes. 948 00:46:15,070 --> 00:46:17,730 >> Üliõpilane: Comma, i + 1. 949 00:46:17,730 --> 00:46:19,390 Mul on kahju. 950 00:46:19,390 --> 00:46:21,040 Suletud quote, ja siis koma, i +1. 951 00:46:21,040 --> 00:46:24,400 >> JASON Hirschhorn: Suletud tsiteerida, koma, i +1. 952 00:46:24,400 --> 00:46:25,850 >> Üliõpilane: Jah. 953 00:46:25,850 --> 00:46:27,650 Ja siis järgmine rida - 954 00:46:27,650 --> 00:46:29,400 >> JASON Hirschhorn: i + 1. 955 00:46:29,400 --> 00:46:31,600 >> Üliõpilane: Jah. 956 00:46:31,600 --> 00:46:36,440 Ja siis järgmisele slaidile on nimed sulg i. 957 00:46:36,440 --> 00:46:39,000 >> JASON Hirschhorn: Järgmine rida on nimed sulg i. 958 00:46:39,000 --> 00:46:41,360 >> Üliõpilane: = saada string. 959 00:46:41,360 --> 00:46:43,460 >> JASON Hirschhorn: = Get - 960 00:46:43,460 --> 00:46:44,510 kapitali G-E-T - 961 00:46:44,510 --> 00:46:45,530 string. 962 00:46:45,530 --> 00:46:47,800 Oih, vabandust. 963 00:46:47,800 --> 00:46:49,050 >> Üliõpilane: avatud, suletud sulgudes ja siis - 964 00:46:49,050 --> 00:46:50,940 >> JASON Hirschhorn: avatud, suletud paren. 965 00:46:50,940 --> 00:46:51,030 >> Üliõpilane: semikooloniga. 966 00:46:51,030 --> 00:46:52,500 >> JASON Hirschhorn: semikooloniga. 967 00:46:52,500 --> 00:46:57,545 OK, nii et sa initsialiseerida array stringid, nimed ja seejärel minna läbi 968 00:46:57,545 --> 00:47:02,720 jaoks loop, ja viis korda välja printida mõned küsib kasutaja ja siis salvestada 969 00:47:02,720 --> 00:47:03,360 viis keelt. 970 00:47:03,360 --> 00:47:08,090 Kas keegi on muudatusi on? 971 00:47:08,090 --> 00:47:10,030 Tom, ma arvan, et kõik nõus sinuga. 972 00:47:10,030 --> 00:47:10,880 Paistab päris hea. 973 00:47:10,880 --> 00:47:11,660 OK. 974 00:47:11,660 --> 00:47:14,830 Miks sa seda tegid i +1, kuigi? 975 00:47:14,830 --> 00:47:18,000 >> Õpilane: Ma mõtlen, et ei ole olla, kuid i +1, nii et see on 976 00:47:18,000 --> 00:47:19,700 nimi üks nimetada viis. 977 00:47:19,700 --> 00:47:21,930 Vastasel juhul oleks see nimi null nimetada neli. 978 00:47:21,930 --> 00:47:24,400 >> JASON Hirschhorn: Nii et sa tegid i +1 sest vastasel korral oleks ta 979 00:47:24,400 --> 00:47:27,060 trükkida null läbi nelja sest see on, kuidas arvutid arvad, kuid inimestel 980 00:47:27,060 --> 00:47:28,530 tõesti ei lugenud sellist. 981 00:47:28,530 --> 00:47:30,190 See on teine ​​asi, saate kokku puutuda. 982 00:47:30,190 --> 00:47:33,210 Mõnikord, kui sa välja printida midagi kasutajale, mida sa tahad teha seda 983 00:47:33,210 --> 00:47:35,733 natuke ilusamaks ja teed i 1 on sellisel juhul 984 00:47:35,733 --> 00:47:37,430 nii, et oleks ilusam. 985 00:47:37,430 --> 00:47:41,380 >> Näen ka viis korda, string nimi on viis, i on vähem kui viis. 986 00:47:41,380 --> 00:47:42,430 Ma tean, kus sa said viie. 987 00:47:42,430 --> 00:47:44,890 Sul seda mulle räägib sa viis nime. 988 00:47:44,890 --> 00:47:49,000 Aga kui me tahtsime teha kood natuke tugevam, üks asi, mida me 989 00:47:49,000 --> 00:47:53,110 võiks teha, on siin, väljaspool int, me võiksime teha midagi sellist, 990 00:47:53,110 --> 00:47:57,070 # Define, ja me võiksime teha NIMED 5. 991 00:47:57,070 --> 00:48:01,580 992 00:48:01,580 --> 00:48:05,390 >> Ühesõnaga, kuhu ma kirjutan kapitali N, kapitali, kapitali M, kapitali E, 993 00:48:05,390 --> 00:48:08,890 kapitali S, et string, asendab see et koos 5-koodi. 994 00:48:08,890 --> 00:48:11,530 995 00:48:11,530 --> 00:48:13,445 Või lähme lihtsalt kutsun seda - me lihtsalt nimetame seda numbrit. 996 00:48:13,445 --> 00:48:17,190 Nii et ma olen määratletakse kõik mütsid NUMBER olla 5. 997 00:48:17,190 --> 00:48:22,830 >> Nüüd kus mul on number 5, I saab asendada see kõik mütsid number. 998 00:48:22,830 --> 00:48:26,880 Ja nüüd, kui ma tahan muuta number nimede, kõik, mida ma vaja teha, on 999 00:48:26,880 --> 00:48:31,350 see üks rida, rida neli, kus ma olen # Define number 5, muuta, et 10, 1000 00:48:31,350 --> 00:48:34,340 või muuta, et 4. 1001 00:48:34,340 --> 00:48:37,400 Kui teie kood muutub pikemaks, sa ei ole läheb vaja meeles pidada kõiki kohti 1002 00:48:37,400 --> 00:48:41,630 panna, kui palju nimesid, mida tahtsid, ning selleks, et sa ei pane üks, see on 1003 00:48:41,630 --> 00:48:45,490 Hea viis seda teha, et leida midagi, üleval ja siis lihtsalt kasutama, et fraas 1004 00:48:45,490 --> 00:48:46,400 kõikjal kogu oma kood. 1005 00:48:46,400 --> 00:48:46,780 Marcus? 1006 00:48:46,780 --> 00:48:49,780 >> Üliõpilane: Kas see stiililiselt eelistatud kui ülemaailmselt määratlemisel 1007 00:48:49,780 --> 00:48:51,270 pidev n? 1008 00:48:51,270 --> 00:48:53,760 >> JASON Hirschhorn: Nii et stiililiselt eelistatud kui maailmas 1009 00:48:53,760 --> 00:48:54,980 määratlemisel pidev n? 1010 00:48:54,980 --> 00:48:59,036 Nii et sa tahad öelda, et sa võiksid teha, int arv = 5? 1011 00:48:59,036 --> 00:49:01,300 >> Üliõpilane: Kas neil on kaashäälikud C või ei? 1012 00:49:01,300 --> 00:49:02,720 >> JASON Hirschhorn: Or const - võrdsetes. 1013 00:49:02,720 --> 00:49:04,275 Nii et sa tahad öelda, lihtsalt globaalne muutuja? 1014 00:49:04,275 --> 00:49:04,990 >> Üliõpilane: Jah. 1015 00:49:04,990 --> 00:49:08,670 >> JASON Hirschhorn: Nii stiililiselt, pole tingimata üks õige 1016 00:49:08,670 --> 00:49:12,050 vastata, kuid mõlemad neist on parem kui lihtsalt visata neid juhuslikult 1017 00:49:12,050 --> 00:49:12,960 numbrite kasutusõigused kogu oma kood. 1018 00:49:12,960 --> 00:49:14,650 Me kutsume neid magic numbreid. 1019 00:49:14,650 --> 00:49:16,450 Kui ma vaatan oma koodi või kui keegi loeb läbi, siis nad 1020 00:49:16,450 --> 00:49:18,790 ei taha lihtsalt neid juhuslike arvude et ei ole mõtet. 1021 00:49:18,790 --> 00:49:22,420 Isegi number 26, mis on üldiselt tähtede arv tähestik 1022 00:49:22,420 --> 00:49:28,870 see on parem määratleda tähestik üleval ja salvestage number 26, et string, 1023 00:49:28,870 --> 00:49:29,550 kui see on mõistlik. 1024 00:49:29,550 --> 00:49:33,210 >> Või probleem määrata ühe asemel - jälle, me ei räägi see on 1025 00:49:33,210 --> 00:49:37,020 aega, kuid selle asemel, et lihtsalt visata aastal 25 kõikjal või 10, saate 1026 00:49:37,020 --> 00:49:41,860 salvestada number 25 kui veerand või 10 kui DIME ja mis muudab lihtsamaks 1027 00:49:41,860 --> 00:49:44,140 kes loeb läbi oma koodi aru, miks te otsustasite, et number. 1028 00:49:44,140 --> 00:49:46,540 Ja ka teile, kui sa kunagi tahad uuendada oma koodi, see muudab natuke 1029 00:49:46,540 --> 00:49:47,290 jõulisem. 1030 00:49:47,290 --> 00:49:48,070 Jah? 1031 00:49:48,070 --> 00:49:50,830 >> Üliõpilane: see kood ka läheb olema kättesaadav meie pärast? 1032 00:49:50,830 --> 00:49:52,453 >> JASON Hirschhorn: Kõik need koodid et me oleme kirjutanud koos on 1033 00:49:52,453 --> 00:49:54,620 kavatse meilitsi poisid ja saadaval. 1034 00:49:54,620 --> 00:49:55,740 Jah. 1035 00:49:55,740 --> 00:49:58,040 Nii et küsida kasutaja jaoks viis nime. 1036 00:49:58,040 --> 00:50:00,280 Juhuslikult valida ja printida üks nendest nimedest. 1037 00:50:00,280 --> 00:50:00,940 Kes seda tegi rida? 1038 00:50:00,940 --> 00:50:02,230 See on trickiest line siin. 1039 00:50:02,230 --> 00:50:02,450 Vabandust, Tom. 1040 00:50:02,450 --> 00:50:05,510 Sa tegid väga head tööd, kuid see on veidi keerukam. 1041 00:50:05,510 --> 00:50:06,600 Marcus, edasi minna. 1042 00:50:06,600 --> 00:50:10,180 >> Õpilane: Noh esiteks, sa lähed vaja lisada stdlib.h ja time.h. 1043 00:50:10,180 --> 00:50:13,200 >> JASON Hirschhorn: Nii et sa räägid juures top, hõlmata veel kaks raamatukogudes. 1044 00:50:13,200 --> 00:50:18,830 Sa tahad, et lisada S-T-D-L-I-B dot H, Standard raamatukogu ja mida 1045 00:50:18,830 --> 00:50:19,760 oli teine? 1046 00:50:19,760 --> 00:50:21,010 >> Üliõpilane: 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 Nii et need on kaks raamatukogudes. 1050 00:50:29,470 --> 00:50:31,790 Eeldan, nüüd me ei kavatse olla kasutades funktsioonid, mis sisalduvad nendes 1051 00:50:31,790 --> 00:50:34,240 kaks, mis on põhjus, miks teil on vaja kaasata neid? 1052 00:50:34,240 --> 00:50:36,980 >> Õpilane: Niisiis, esimene oled lähed tahan kirjutada srand. 1053 00:50:36,980 --> 00:50:38,770 >> JASON Hirschhorn: srand. 1054 00:50:38,770 --> 00:50:42,070 >> Üliõpilane: (aeg (0) 1055 00:50:42,070 --> 00:50:42,700 >> JASON Hirschhorn: Vabandust. 1056 00:50:42,700 --> 00:50:45,580 Srand (aega ( 1057 00:50:45,580 --> 00:50:46,890 >> Üliõpilane: 0. 1058 00:50:46,890 --> 00:50:47,230 >> JASON Hirschhorn: 0. 1059 00:50:47,230 --> 00:50:49,990 >> Üliõpilane:)), semikoolon. 1060 00:50:49,990 --> 00:50:51,320 >> JASON Hirschhorn: Teine suletud paren? 1061 00:50:51,320 --> 00:50:51,650 Semikooloniga. 1062 00:50:51,650 --> 00:50:53,610 Ma lähen lihtsalt asendada oma nulli NULL. 1063 00:50:53,610 --> 00:50:55,980 Seda saad teha sama asja, kuid üldiselt, näete NULL, mis 1064 00:50:55,980 --> 00:50:57,720 me räägime seda line teine. 1065 00:50:57,720 --> 00:50:58,580 >> Üliõpilane: Stiililiselt paremini? 1066 00:50:58,580 --> 00:51:02,240 >> JASON Hirschhorn: Üldiselt, inimesed õigus NULL, kuid sama asi. 1067 00:51:02,240 --> 00:51:05,010 >> Üliõpilane: Ja siis int nimi. 1068 00:51:05,010 --> 00:51:06,490 >> JASON Hirschhorn: Int nimi. 1069 00:51:06,490 --> 00:51:07,280 >> Üliõpilane: = 1070 00:51:07,280 --> 00:51:07,780 >> JASON Hirschhorn: = 1071 00:51:07,780 --> 00:51:08,580 >> Üliõpilane: Rand. 1072 00:51:08,580 --> 00:51:09,340 >> JASON Hirschhorn: Rand. 1073 00:51:09,340 --> 00:51:10,420 >> Üliõpilane: () 1074 00:51:10,420 --> 00:51:11,500 >> JASON Hirschhorn: () 1075 00:51:11,500 --> 00:51:12,850 >> Üliõpilane: Modulo number. 1076 00:51:12,850 --> 00:51:14,310 >> JASON Hirschhorn: Mis on moodul? 1077 00:51:14,310 --> 00:51:14,970 Iseloomu? 1078 00:51:14,970 --> 00:51:16,000 Protsenti iseloomu? 1079 00:51:16,000 --> 00:51:17,790 >> Üliõpilane: Percent iseloomu. 1080 00:51:17,790 --> 00:51:19,521 Modulo number, mida määratletakse up top. 1081 00:51:19,521 --> 00:51:22,030 >> JASON Hirschhorn: Modulo number. 1082 00:51:22,030 --> 00:51:24,052 >> Üliõpilane: Ja siis semikoolon. 1083 00:51:24,052 --> 00:51:24,660 >> JASON Hirschhorn: semikooloniga. 1084 00:51:24,660 --> 00:51:27,820 >> Üliõpilane: Ja siis uus liin, printf. 1085 00:51:27,820 --> 00:51:28,460 >> JASON Hirschhorn: Printf. 1086 00:51:28,460 --> 00:51:29,730 >> Üliõpilane: ( 1087 00:51:29,730 --> 00:51:30,620 >> JASON Hirschhorn: ( 1088 00:51:30,620 --> 00:51:31,650 >> Üliõpilane: " 1089 00:51:31,650 --> 00:51:32,630 >> JASON Hirschhorn " 1090 00:51:32,630 --> 00:51:35,320 >> Üliõpilane:% s / n 1091 00:51:35,320 --> 00:51:37,220 >> JASON Hirschhorn:% s / n 1092 00:51:37,220 --> 00:51:38,420 >> Üliõpilane: " 1093 00:51:38,420 --> 00:51:40,640 >> JASON Hirschhorn:% s / n " 1094 00:51:40,640 --> 00:51:43,540 >> Üliõpilane: koma, tühik nimed. 1095 00:51:43,540 --> 00:51:44,350 >> JASON Hirschhorn: Space - 1096 00:51:44,350 --> 00:51:46,300 >> Üliõpilane: Oh, ma arvan, mida Kas me nimetame seda siin? 1097 00:51:46,300 --> 00:51:48,640 >> JASON Hirschhorn: Me kutsusime seda nime. 1098 00:51:48,640 --> 00:51:52,360 >> Üliõpilane: sulg, nimi. 1099 00:51:52,360 --> 00:51:55,090 >> JASON Hirschhorn: sulg, nimi. 1100 00:51:55,090 --> 00:51:55,850 >> Õpilane: Suletud sulg. 1101 00:51:55,850 --> 00:51:56,490 >> JASON Hirschhorn: Suletud sulg. 1102 00:51:56,490 --> 00:51:57,460 >> Üliõpilane:) 1103 00:51:57,460 --> 00:51:58,800 >> JASON Hirschhorn:) 1104 00:51:58,800 --> 00:51:59,440 >> Üliõpilane: semikooloniga. 1105 00:51:59,440 --> 00:52:00,410 >> JASON Hirschhorn: semikooloniga. 1106 00:52:00,410 --> 00:52:01,500 OK, olgem salvestada. 1107 00:52:01,500 --> 00:52:04,410 Teeme seda koodi. 1108 00:52:04,410 --> 00:52:06,365 Õpilased. 1109 00:52:06,365 --> 00:52:07,100 Olgem käivitada koodi. 1110 00:52:07,100 --> 00:52:08,480 Õpilased. 1111 00:52:08,480 --> 00:52:11,630 Ei. / Õpilane. . / Õpilased. 1112 00:52:11,630 --> 00:52:12,870 Nimeta üks. 1113 00:52:12,870 --> 00:52:15,490 Me ütleme David. 1114 00:52:15,490 --> 00:52:18,070 Nimeta kaks, RJ. 1115 00:52:18,070 --> 00:52:20,561 Nimeta kolm, Rob. 1116 00:52:20,561 --> 00:52:22,490 Nimi neli, Lucas. 1117 00:52:22,490 --> 00:52:26,060 Nimi viis, Joseph. 1118 00:52:26,060 --> 00:52:28,850 Ja siis ta trükib Joseph uuesti. 1119 00:52:28,850 --> 00:52:31,730 >> Nii et lubage mul kasutada seda uuesti. 1120 00:52:31,730 --> 00:52:32,460 Lubage mul teha sama nime. 1121 00:52:32,460 --> 00:52:39,760 David, RJ, Rob, Lucas, Joseph. 1122 00:52:39,760 --> 00:52:41,070 Ja see andis mulle David seekord. 1123 00:52:41,070 --> 00:52:43,030 Nii et ma tegin sama asja, kuid see andis minu teine ​​asi, ja see on 1124 00:52:43,030 --> 00:52:45,410 sest muidugi me palume jaoks juhuslik nimi. 1125 00:52:45,410 --> 00:52:50,950 Nii et ma arvan, põhineb off mind ekslemine ruumis ringi, et enamik inimesi, 1126 00:52:50,950 --> 00:52:55,960 ilmselt sai esimese osa paremale, loomist, et massiivi ja siis saada 1127 00:52:55,960 --> 00:52:56,430 kõik nimed. 1128 00:52:56,430 --> 00:52:59,320 Ma räägin read 10 kuni 16. 1129 00:52:59,320 --> 00:53:02,150 Aga ridade 18 kuni 21 on ilmselt mõned asjad, mida sa ei ole varem näinud, 1130 00:53:02,150 --> 00:53:03,750 nii lähme läbi need. 1131 00:53:03,750 --> 00:53:10,390 >> See liin, srand aeg NULL on sisuliselt - 1132 00:53:10,390 --> 00:53:14,300 Vabandust, lähme jätke maha line, rand (). 1133 00:53:14,300 --> 00:53:17,320 See annab teile juhusliku arvu, juhuslik täisarv. 1134 00:53:17,320 --> 00:53:19,630 Ja kui vajutad mees rand, mis palju sa tegid - 1135 00:53:19,630 --> 00:53:21,530 M--N ruum R-N-D - 1136 00:53:21,530 --> 00:53:25,910 terminalis niimoodi, M-, N ruum R-N-D, Enter. 1137 00:53:25,910 --> 00:53:30,490 Te tulla käsiraamat ja oleks võimalik lugeda, et rand 1138 00:53:30,490 --> 00:53:34,260 käsu väljundit num pseudo juhuslikke baite pärast külvamist juhuslik number 1139 00:53:34,260 --> 00:53:35,510 generaator kord. 1140 00:53:35,510 --> 00:53:38,450 1141 00:53:38,450 --> 00:53:39,700 >> Nii et see kirjeldus. 1142 00:53:39,700 --> 00:53:43,860 1143 00:53:43,860 --> 00:53:46,800 Just rand teeb, annab sa juhusliku arvu kui 1144 00:53:46,800 --> 00:53:48,610 sa nimetad seda funktsiooni. 1145 00:53:48,610 --> 00:53:53,140 Kahjuks see ei ole tõesti juhuslik sest kui sa lihtsalt helistada juhuslikult 1146 00:53:53,140 --> 00:53:55,970 ilma saada see mõned seemned, mõned lähtepunkt, siis alati valida 1147 00:53:55,970 --> 00:53:59,100 sama, ja see kasutab valemit kindlaks järgmise üks. 1148 00:53:59,100 --> 00:54:01,730 Nii et kui te helistate rand, see lihtsalt teile sama asi. 1149 00:54:01,730 --> 00:54:02,610 See saab olema väga etteaimatav. 1150 00:54:02,610 --> 00:54:03,790 See tegelikult ei ole juhuslik. 1151 00:54:03,790 --> 00:54:09,610 >> Niisiis, mida me peame tegema, inimese Marcus on juhised mind, olid seeme rand 1152 00:54:09,610 --> 00:54:13,810 millegi muuga, mis on see, mida srand funktsioon teeb. 1153 00:54:13,810 --> 00:54:18,055 See seemned rand koos midagi natuke rohkem juhuslik kui sama asi, ja 1154 00:54:18,055 --> 00:54:23,360 ta on külv see aeg NULL, mis on, lihtsalt kokkuleppeliselt, praegune 1155 00:54:23,360 --> 00:54:24,650 aeg sekundites. 1156 00:54:24,650 --> 00:54:29,790 >> Nii et sa oled eeldades, et kõik ei ole kavatse joosta koodi täpne 1157 00:54:29,790 --> 00:54:33,620 samas teine, nii et see on kindel, et aeg NULL saab olema erinev 1158 00:54:33,620 --> 00:54:35,250 iga kord, kui see kood töötab. 1159 00:54:35,250 --> 00:54:39,020 Kindel et seega srand tahe seeme rand midagi erinevat iga 1160 00:54:39,020 --> 00:54:39,990 ühtne kord. 1161 00:54:39,990 --> 00:54:44,110 Nii kokkuleppeliselt kui me ei taha juhuslik number, me kirjutame seda joont, 1162 00:54:44,110 --> 00:54:50,540 srand aeg NULL, et anda meile palju rohkem juhuslik seeme, ja siis võtame 1163 00:54:50,540 --> 00:54:52,080 rand, mis annab meile juhuslik number. 1164 00:54:52,080 --> 00:54:52,840 Jah? 1165 00:54:52,840 --> 00:54:54,140 >> Üliõpilane: Kas oskate öelda, mida mõtled seeme? 1166 00:54:54,140 --> 00:54:55,630 >> JASON Hirschhorn: Seed nagu - 1167 00:54:55,630 --> 00:54:58,730 nii rand läheb korja mõned number ja see saab kasutada mõningaid 1168 00:54:58,730 --> 00:55:00,060 valem sinna jõuda. 1169 00:55:00,060 --> 00:55:03,250 Nii see läheb alustada millegi ja seejärel muuta see midagi, mis põhineb 1170 00:55:03,250 --> 00:55:03,890 ära selle valemi. 1171 00:55:03,890 --> 00:55:06,090 Kui sa alati seda sama asja, See on alati kavatse muuta see 1172 00:55:06,090 --> 00:55:06,790 sama asi. 1173 00:55:06,790 --> 00:55:08,450 Nii et esimene asi, mida anna see seeme. 1174 00:55:08,450 --> 00:55:10,880 Nii et sa tahad seda midagi erinevate hakata läbi, ja nii see 1175 00:55:10,880 --> 00:55:12,610 muutub see midagi muud. 1176 00:55:12,610 --> 00:55:15,840 >> Ja siis lõpuks, joon 20, see% on nn 1177 00:55:15,840 --> 00:55:17,470 moodul ja see on segane. 1178 00:55:17,470 --> 00:55:19,850 See on midagi, mis on natuke erinevad siin, et sa tõesti ei 1179 00:55:19,850 --> 00:55:22,240 on reaalses elus matemaatikat. 1180 00:55:22,240 --> 00:55:27,430 Aga sisuliselt, kui te võtate hiiglane number ja sa jagad in C, mis 1181 00:55:27,430 --> 00:55:29,482 juhtub ülejäänud? 1182 00:55:29,482 --> 00:55:30,510 >> Õpilane: Läheb kärbitud. 1183 00:55:30,510 --> 00:55:31,220 >> JASON Hirschhorn: Läheb kärbitud. 1184 00:55:31,220 --> 00:55:35,200 Seega 20 jagatud 3 on mis? 1185 00:55:35,200 --> 00:55:37,950 Mis, et naasta te, 20 jagatud 3. 1186 00:55:37,950 --> 00:55:39,260 Vabandame, 10 jagatud 3. 1187 00:55:39,260 --> 00:55:41,062 Mis see tagasi sulle? 1188 00:55:41,062 --> 00:55:41,540 >> Õpilane: [kuuldamatu]. 1189 00:55:41,540 --> 00:55:45,170 >> JASON Hirschhorn: 10 jagatud 3 lihtsalt tagastab 3, mitte 3 ülejäänud 1. 1190 00:55:45,170 --> 00:55:51,490 Mis siis 10 moodul 3 naaseb on lihtsalt Ülejäänud 1. 1191 00:55:51,490 --> 00:55:54,020 Nii et kui sa tahad teada, mis 10 jagada 3 tegelikult oli, siis oleks 1192 00:55:54,020 --> 00:55:58,950 teha 10 jagatud 3, sa saad oma 3, ja siis teeksin 10 moodul 3, ja 1193 00:55:58,950 --> 00:55:59,860 soovite saada 1. 1194 00:55:59,860 --> 00:56:04,630 Nii, et sa mõistad, et 10 jagatud 3 on 3, ülejäänud 1. 1195 00:56:04,630 --> 00:56:07,990 >> Ja seda joont, rand võiks olla mis tahes täisarv, sisuliselt. 1196 00:56:07,990 --> 00:56:12,660 Nii mooduli ütleb, jagada see number, mis on antud juhul 5. 1197 00:56:12,660 --> 00:56:16,420 Ja kui sa kunagi jagage number, täisarv alati olema väiksem kui 1198 00:56:16,420 --> 00:56:17,590 mis number. 1199 00:56:17,590 --> 00:56:22,200 Seega, kui olete jagades number 5, Ülejäänud on alati saab olema 1200 00:56:22,200 --> 00:56:23,396 null kuni neli. 1201 00:56:23,396 --> 00:56:25,520 See on lihtsalt, kuidas matemaatika toimib läbi. 1202 00:56:25,520 --> 00:56:29,700 >> Nii suur hulk moduloed väiksemal number alati tagasi 1203 00:56:29,700 --> 00:56:33,530 Ülejäänud ja alati tagasi mõned number, mis on vähem, kui te 1204 00:56:33,530 --> 00:56:34,693 jagatud. 1205 00:56:34,693 --> 00:56:37,920 Kas keegi on küsimusi moodul, sest see tulla väga, 1206 00:56:37,920 --> 00:56:41,450 Väga mugav, nii et ma tahan veenduda, igaüks mõistab seda? 1207 00:56:41,450 --> 00:56:43,710 Lahe. 1208 00:56:43,710 --> 00:56:46,000 Ja me nägime, et see programm toimib. 1209 00:56:46,000 --> 00:56:50,280 OK, liigub edasi. 1210 00:56:50,280 --> 00:56:52,970 >> Nii et järgmine, me ei kavatse minna funktsioonide ja me läheme 1211 00:56:52,970 --> 00:56:55,580 läbi ülejäänud seda kraami päris kiiresti, sest ma tahan saada 1212 00:56:55,580 --> 00:56:57,150 käsurea argumente. 1213 00:56:57,150 --> 00:57:00,330 Nii funktsioonid on sisuliselt kui olete näinud, mustad kastid. 1214 00:57:00,330 --> 00:57:04,290 Nad võtavad asju nimetatakse parameetrid nad midagi teha, et neid kas 1215 00:57:04,290 --> 00:57:06,990 neid muuta või luua mõned kõrvaltoimed, ja lõpuks nad sülitasid 1216 00:57:06,990 --> 00:57:09,530 midagi välja, mis on tagastatav väärtus. 1217 00:57:09,530 --> 00:57:12,495 Kas keegi oskab anda mulle üks põhjus, miks me ei kasuta funktsioone? 1218 00:57:12,495 --> 00:57:15,870 1219 00:57:15,870 --> 00:57:16,360 Igaüks? 1220 00:57:16,360 --> 00:57:19,360 Üks põhjus, miks me tahaks kasutada funktsioone? 1221 00:57:19,360 --> 00:57:21,280 Keegi? 1222 00:57:21,280 --> 00:57:22,700 Ma nägin kahte kätt. 1223 00:57:22,700 --> 00:57:23,590 Mis on hea põhjus? 1224 00:57:23,590 --> 00:57:24,930 Marcus? 1225 00:57:24,930 --> 00:57:27,730 >> Üliõpilane: Kui teil on helistada sama tüki koodi mitu korda. 1226 00:57:27,730 --> 00:57:29,150 >> JASON Hirschhorn: OK, kui teil on vaja helistada sama tüki 1227 00:57:29,150 --> 00:57:30,040 koodi mitu korda. 1228 00:57:30,040 --> 00:57:32,470 Jeff, kas sul on mõni põhjus? 1229 00:57:32,470 --> 00:57:34,230 >> Õpilane: Just nii, et saab kodeerida vähem. 1230 00:57:34,230 --> 00:57:35,070 >> JASON Hirschhorn: Saate koodi alla. 1231 00:57:35,070 --> 00:57:35,320 Just. 1232 00:57:35,320 --> 00:57:38,720 Kui sa tahad teha midagi palju - 1233 00:57:38,720 --> 00:57:41,720 eelmise koodi, ma oleks võinud kirjalik saada string viis korda, kuid 1234 00:57:41,720 --> 00:57:44,620 silmus muudab ilusam ja teil on kirjutada vähem koodi. 1235 00:57:44,620 --> 00:57:45,760 Funktsioonid on sarnane idee. 1236 00:57:45,760 --> 00:57:48,720 Kui ma tahan teha sama palju, liiguta see funktsioon ja helistada, et 1237 00:57:48,720 --> 00:57:49,610 toimi iga kord. 1238 00:57:49,610 --> 00:57:51,190 See teeb selle asja teile. 1239 00:57:51,190 --> 00:57:53,740 See on hea põhjus kasutada funktsioone. 1240 00:57:53,740 --> 00:57:54,870 >> Nii anatoomia funktsioon. 1241 00:57:54,870 --> 00:57:56,670 Funktsioon on reeglina näeb välja selline. 1242 00:57:56,670 --> 00:57:59,280 Seda saad alustada tulu liik, siis saad ka nimi. 1243 00:57:59,280 --> 00:58:02,935 See võtan argumendid, vastasel tuntud parameetreid ja sees 1244 00:58:02,935 --> 00:58:05,290 need looksulg, saate kirjuta oma kood. 1245 00:58:05,290 --> 00:58:07,150 >> Me oleme näinud üks funktsioon palju. 1246 00:58:07,150 --> 00:58:09,160 See on peamine. 1247 00:58:09,160 --> 00:58:13,820 Siin on peamine üksteise peale et anatoomia Mul oli varem. 1248 00:58:13,820 --> 00:58:15,525 Mis int siin tähendama? 1249 00:58:15,525 --> 00:58:18,534 1250 00:58:18,534 --> 00:58:19,450 Mis int tähendab? 1251 00:58:19,450 --> 00:58:21,026 Kui ma kirjutan int main (void). 1252 00:58:21,026 --> 00:58:21,740 >> Üliõpilane: Return tüüp? 1253 00:58:21,740 --> 00:58:22,350 >> JASON Hirschhorn: Vabandust? 1254 00:58:22,350 --> 00:58:23,170 >> Üliõpilane: tagastab tüüp. 1255 00:58:23,170 --> 00:58:24,820 >> JASON Hirschhorn: Int on tagasi tüüp, täpselt õige. 1256 00:58:24,820 --> 00:58:25,870 Main tagastab int. 1257 00:58:25,870 --> 00:58:28,678 Mis on peamine? 1258 00:58:28,678 --> 00:58:29,510 >> Üliõpilane: funktsiooni nime. 1259 00:58:29,510 --> 00:58:30,800 >> JASON Hirschhorn: Main on funktsiooni nimi. 1260 00:58:30,800 --> 00:58:31,510 Täpselt õige. 1261 00:58:31,510 --> 00:58:31,840 Õigustühiseks? 1262 00:58:31,840 --> 00:58:33,190 Mis on tühine sulgudesse? 1263 00:58:33,190 --> 00:58:36,650 1264 00:58:36,650 --> 00:58:42,030 >> Üliõpilane: See ei võta välist väärtust. 1265 00:58:42,030 --> 00:58:42,930 >> JASON Hirschhorn: Nii void - 1266 00:58:42,930 --> 00:58:43,240 õige. 1267 00:58:43,240 --> 00:58:45,940 Sulgudes, paneme parameetrid või argumente 1268 00:58:45,940 --> 00:58:48,480 Funktsioon, mis toimub must kast. 1269 00:58:48,480 --> 00:58:50,760 Kui Sa kirjutad tühine, sa räägid see võtab midagi sisse 1270 00:58:50,760 --> 00:58:53,802 Nii int main void tähendab peamine on ei võta midagi sisse 1271 00:58:53,802 --> 00:58:56,950 >> Toas looksulg, meil on mõned kood ja siis me näeme lõpus 1272 00:58:56,950 --> 00:58:57,640 tagasi nulli. 1273 00:58:57,640 --> 00:59:01,220 Mis tulu null tähendab? 1274 00:59:01,220 --> 00:59:02,470 Noh, me rääkisime tagastab tüüp. 1275 00:59:02,470 --> 00:59:03,780 Main peab tagastama int. 1276 00:59:03,780 --> 00:59:04,960 See on see, mida see joon teeb. 1277 00:59:04,960 --> 00:59:07,330 Ta naaseb int, null. 1278 00:59:07,330 --> 00:59:13,600 >> Muidugi, me ei ole näinud, et palju sest programmeerimise me teeme 1279 00:59:13,600 --> 00:59:16,070 masinad teeme ja koostajad me kasutame tänapäeval, siis 1280 00:59:16,070 --> 00:59:16,990 ei ole vaja, et liin. 1281 00:59:16,990 --> 00:59:20,070 Põhiline on eriline piisavalt, et ta teab, kui jõuad lõpuks peamine, just 1282 00:59:20,070 --> 00:59:22,060 tagasi nulli, kui kõik läks hästi. 1283 00:59:22,060 --> 00:59:25,560 Tegelikult, kui midagi ei lähe hästi, Peamine pöörduvad sageli erinevad 1284 00:59:25,560 --> 00:59:28,500 number, tähistades midagi valesti läks oma programmi. 1285 00:59:28,500 --> 00:59:32,470 >> Nii üldiselt kui näete kood, siis ei kirjuta tagasi nulli, aga see on hea 1286 00:59:32,470 --> 00:59:34,770 teada, et see juhtub taga stseene, sest iga kord, kui sa kirjutad 1287 00:59:34,770 --> 00:59:36,370 teist tüüpi funktsiooni, te ei kavatse vaja 1288 00:59:36,370 --> 00:59:37,400 hõlmata turutingimustel liin. 1289 00:59:37,400 --> 00:59:39,710 Kui sa tahad öelda, et ma lähen tagasi int, pead 1290 00:59:39,710 --> 00:59:41,250 kirjutada midagi tagastada. 1291 00:59:41,250 --> 00:59:45,160 Kui te ütlete, void kuni siin Alguses void main void jaoks 1292 00:59:45,160 --> 00:59:48,670 Näiteks siis see ei tule midagi - tühjus ei tähenda midagi - 1293 00:59:48,670 --> 00:59:50,320 nii et sa ei pea seda tagasi rida. 1294 00:59:50,320 --> 00:59:53,610 Aga sa kunagi kirjutada midagi, mis ei ole kehtetuks tagastamise tüüp, peate 1295 00:59:53,610 --> 00:59:55,950 line, mis ütleb, tagastamise ja te on vaja panna midagi seal 1296 00:59:55,950 --> 00:59:57,650 mis vastab tüübile. 1297 00:59:57,650 --> 00:59:58,900 Kõik küsimused selle kohta? 1298 00:59:58,900 --> 01:00:03,110 1299 01:00:03,110 --> 01:00:04,680 Sweet. 1300 01:00:04,680 --> 01:00:05,930 >> Ulatus. 1301 01:00:05,930 --> 01:00:07,360 See on midagi, mida me oleme puudutas samuti. 1302 01:00:07,360 --> 01:00:10,720 Iga muutuja, nagu me teame, on teatud ulatus, ja see on põhimõtteliselt 1303 01:00:10,720 --> 01:00:14,160 räägi kus muutuja võib olla või mitte olla objektidega. 1304 01:00:14,160 --> 01:00:16,310 Ja ma tahan öelda, mis juhtub aastal looksulg jääb 1305 01:00:16,310 --> 01:00:18,000 sees looksulg. 1306 01:00:18,000 --> 01:00:21,490 Nii näiteks, kui me vaatame seda koodi me määratleda globaalne muutuja 1307 01:00:21,490 --> 01:00:24,510 väljaspool peamist, int, siin üleval. 1308 01:00:24,510 --> 01:00:27,380 Me kutsume veel int sees peamine. 1309 01:00:27,380 --> 01:00:29,760 Meil on veel mõned looksulg ja Me nimetame teise int. 1310 01:00:29,760 --> 01:00:31,690 >> Meil on kolm oma koodi. 1311 01:00:31,690 --> 01:00:32,550 Need ei ole sama asi. 1312 01:00:32,550 --> 01:00:34,880 Olen loonud kolm erinevat muutujat. 1313 01:00:34,880 --> 01:00:39,370 Siis sees need sisemine lokkis traksid, ma ütlen = 4. 1314 01:00:39,370 --> 01:00:44,130 Milline on see, et räägime, Esimene, teine, 1315 01:00:44,130 --> 01:00:47,045 või kolmas? 1316 01:00:47,045 --> 01:00:47,920 >> Üliõpilane: kolmas. 1317 01:00:47,920 --> 01:00:49,320 >> JASON Hirschhorn: See räägib umbes kolmas. 1318 01:00:49,320 --> 01:00:52,850 Kõik need on tegelikult võimalik rääkis selles konkreetses 1319 01:00:52,850 --> 01:00:58,660 Näiteks, kuna nende ulatus kõik läheb neisse sisemine looksulg. 1320 01:00:58,660 --> 01:01:02,360 Samas, kui sa nimetad asju sama nimi, seal on midagi, mida nimetatakse peidus. 1321 01:01:02,360 --> 01:01:09,670 Nii et sa ainult tegeleda või määrata või kasutage Viimane muutuja, või üks 1322 01:01:09,670 --> 01:01:11,090 Teile kõige lähemal. 1323 01:01:11,090 --> 01:01:14,760 Nii seest siin, see kolmas on kõige lähemal selle rea, a = 4, nii et see 1324 01:01:14,760 --> 01:01:16,550 mõjutab kolmas. 1325 01:01:16,550 --> 01:01:19,890 Ja viimane rida, a = 2, mis on et räägime, on esimese, teise, 1326 01:01:19,890 --> 01:01:20,805 või kolmas? 1327 01:01:20,805 --> 01:01:22,530 >> Õpilane: teine. 1328 01:01:22,530 --> 01:01:24,430 >> JASON Hirschhorn: See räägib umbes teine. 1329 01:01:24,430 --> 01:01:27,970 Muidugi, kolmas on kõige lähemal see kood, kuid kolmas 1330 01:01:27,970 --> 01:01:30,200 ei eksisteeri väljaspool need looksulg. 1331 01:01:30,200 --> 01:01:32,650 Kui sa saad selle suletud lokkis traksidega, see on nagu ta on läinud, 1332 01:01:32,650 --> 01:01:33,570 sisuliselt. 1333 01:01:33,570 --> 01:01:36,150 Nii ainult kaks olete lahkunud on need Esimesed kaks, ja muidugi nüüd 1334 01:01:36,150 --> 01:01:37,960 see on kõige lähemal teine. 1335 01:01:37,960 --> 01:01:39,410 >> Nii et see on hea asi Jäta umbes ulatus. 1336 01:01:39,410 --> 01:01:42,900 Näiteks, ma olen kindel, et olete kokku puutunud seda teha, samas silmus. 1337 01:01:42,900 --> 01:01:46,680 Kui te initsialiseerida muutuja sees ei samas loop ja siis proovida 1338 01:01:46,680 --> 01:01:50,360 kasutada seda väljaspool, siis ilmselt sain mõned hoiatus nagu see 1339 01:01:50,360 --> 01:01:51,680 muutuja ei ole olemas. 1340 01:01:51,680 --> 01:01:54,370 Ongi, sest ulatuse idee, et asjad eksisteerivad vaid 1341 01:01:54,370 --> 01:01:55,320 sees need looksulg. 1342 01:01:55,320 --> 01:01:59,320 Looksulg on nagu hiiglaslik kallistada, et sa oled andes oma koodi, on teine 1343 01:01:59,320 --> 01:02:01,380 viis mõelda. 1344 01:02:01,380 --> 01:02:05,280 >> Nii et see on veel üks funktsioon, mida kutid kood, hellofunction.c. 1345 01:02:05,280 --> 01:02:08,240 Me läheme vahele, et nüüd, kuid see on midagi, mida ma kutsun teid üles 1346 01:02:08,240 --> 01:02:09,740 praktiseerida oma. 1347 01:02:09,740 --> 01:02:12,510 Kirjutada programm, mille peamine kõned teine ​​funktsioon, mis prindib välja 1348 01:02:12,510 --> 01:02:13,750 tervitus kasutaja. 1349 01:02:13,750 --> 01:02:17,750 See on sisuliselt võttes tere ja refereerimine et printf sisse 1350 01:02:17,750 --> 01:02:18,680 teine ​​funktsioon. 1351 01:02:18,680 --> 01:02:22,360 Aga me ei kavatse teha, et kohe sest meil ei ole nii palju aega 1352 01:02:22,360 --> 01:02:23,350 lahkus, kui ma oleksin tahtnud. 1353 01:02:23,350 --> 01:02:26,250 >> Nii funktsiooni deklaratsiooni. 1354 01:02:26,250 --> 01:02:28,080 Me oleme näinud seda enne ka. 1355 01:02:28,080 --> 01:02:31,180 Kui sa tahad kirjutada teine ​​funktsioon, peate arvuti teaks ja 1356 01:02:31,180 --> 01:02:32,600 Peamine tean, et see on olemas. 1357 01:02:32,600 --> 01:02:37,140 Niisiis, mida me teeme, on eespool peamine, me kirjutame tagasi tüüp, nimi ja 1358 01:02:37,140 --> 01:02:42,970 parameetrid ja seejärel allapoole peamine, siia alla, me tegelikult kopeeri et liin 1359 01:02:42,970 --> 01:02:45,080 ja siis kirjutada tegelikku koodi. 1360 01:02:45,080 --> 01:02:50,990 Nii et see tee, kui te helistate funktsiooni peamiste tipus, peamised teab, et 1361 01:02:50,990 --> 01:02:54,650 Tema ei ole, näiteks kui ma helistada tere ja siis tundub, et 1362 01:02:54,650 --> 01:02:56,710 rakendamise allapoole. 1363 01:02:56,710 --> 01:02:59,680 Mis juhtub, kui ma ei hõlma see rivistama top, tühine tere (void)? 1364 01:02:59,680 --> 01:03:03,820 1365 01:03:03,820 --> 01:03:06,560 >> Kui ma ei hõlma see rida ja peamised kõned tere, ma olen 1366 01:03:06,560 --> 01:03:07,640 hakka viga. 1367 01:03:07,640 --> 01:03:10,090 Ma lähen, et saada viga, kuna koostaja ei tea 1368 01:03:10,090 --> 01:03:13,070 et see asi ei ole. 1369 01:03:13,070 --> 01:03:16,680 See on sarnane, miks me ei # include cs50.h. 1370 01:03:16,680 --> 01:03:21,390 Mis sisuliselt cs50.h teeb paneb saada string seal. 1371 01:03:21,390 --> 01:03:23,120 See paneb saada int seal. 1372 01:03:23,120 --> 01:03:26,570 See paneb kõik need funktsiooni prototüübid enne peamisi nii, et kui 1373 01:03:26,570 --> 01:03:29,900 helistate neile peamine, peamine teab et need asjad on olemas. 1374 01:03:29,900 --> 01:03:31,630 Just need. H faili teha. 1375 01:03:31,630 --> 01:03:33,850 Ja kui sa lähed teha oma funktsioon, sul veenduda 1376 01:03:33,850 --> 01:03:36,690 paned et prototüüp seal. 1377 01:03:36,690 --> 01:03:38,380 Küsimusi selle nii kaugele? 1378 01:03:38,380 --> 01:03:41,630 1379 01:03:41,630 --> 01:03:42,490 >> Käsurea argumendid. 1380 01:03:42,490 --> 01:03:44,780 See on see, mida me ei kavatse lõpetada kohta, ja siis LOODETAVASTI 1381 01:03:44,780 --> 01:03:46,180 pigistada mõned pset. 1382 01:03:46,180 --> 01:03:48,700 Ma ei tea, kas me saaks pigistada et kuna aega, kuid 1383 01:03:48,700 --> 01:03:51,560 teiega, kes siin on, ja kui sa tahate öelda peale jaoks natuke, me 1384 01:03:51,560 --> 01:03:54,290 võib minna üle väljaspool. 1385 01:03:54,290 --> 01:03:56,020 Aga me ei kavatse lõpetada käsureaargumentidena 1386 01:03:56,020 --> 01:03:58,510 viimase 15 minuti jooksul. 1387 01:03:58,510 --> 01:03:59,930 Me ärkvel, Michael? 1388 01:03:59,930 --> 01:04:01,180 Sa oled ärkvel? 1389 01:04:01,180 --> 01:04:01,660 Hea. 1390 01:04:01,660 --> 01:04:03,760 Ma ei tea, kas sa magad silmad kinni. 1391 01:04:03,760 --> 01:04:05,800 Oleks keeruline. 1392 01:04:05,800 --> 01:04:07,180 >> Käsurea argumendid. 1393 01:04:07,180 --> 01:04:10,430 Need on üks viis, kuidas edastada teavet arvesse programmi. 1394 01:04:10,430 --> 01:04:12,780 Lõpuks, me kogevad teised. 1395 01:04:12,780 --> 01:04:15,600 Aga sisuliselt me ​​lõpetada kirjalikult int main (void), kui tahame 1396 01:04:15,600 --> 01:04:16,720 võtta mõned käsurea argumente. 1397 01:04:16,720 --> 01:04:19,850 Me läheme kirjutada see asi nimetatakse int main (int argc, 1398 01:04:19,850 --> 01:04:22,430 string argv, sulgudes. 1399 01:04:22,430 --> 01:04:23,710 See on segane. 1400 01:04:23,710 --> 01:04:26,070 See on palju kirju, mis ei ole inimese inglise keeles, nii me läheme 1401 01:04:26,070 --> 01:04:27,680 lahti neist kohe. 1402 01:04:27,680 --> 01:04:30,450 >> Argc tähistab argument arv - 1403 01:04:30,450 --> 01:04:32,600 ja jälle, kõik neist on olema kättesaadav internetis - 1404 01:04:32,600 --> 01:04:34,280 ja see on mitmeid argumente. 1405 01:04:34,280 --> 01:04:37,940 Argv tähistab argument vektor ja need on argumendid ise. 1406 01:04:37,940 --> 01:04:38,830 See on massiivi stringe. 1407 01:04:38,830 --> 01:04:40,880 Oleme näinud hulgaliselt stringide enne täna. 1408 01:04:40,880 --> 01:04:44,390 Me oleme loonud ühe viimase Programmi me kodeeritud. 1409 01:04:44,390 --> 01:04:45,720 >> Nii et siin on näide. 1410 01:04:45,720 --> 01:04:50,230 Ma kirjutan. / Ohai CS50 osa minu käsurealt. 1411 01:04:50,230 --> 01:04:54,090 Argc sel juhul võrdub 3. 1412 01:04:54,090 --> 01:05:01,170 Argv sulg 0 on Ohai, argv sulg 1 on CS50, argv sulg 2 osa. 1413 01:05:01,170 --> 01:05:05,160 Jällegi argc on mitmeid argumente, ja reis sind veidi 1414 01:05:05,160 --> 01:05:08,710 natuke oleme alati loota nime funktsiooni esimese argumendina. 1415 01:05:08,710 --> 01:05:12,350 Nii et kui on kolm argumendid, funktsiooni nimi 1416 01:05:12,350 --> 01:05:14,590 ja siis need kaks, et ma kirjutada sisse 1417 01:05:14,590 --> 01:05:18,900 >> Järgmisena me salvestada need argumendid ise argv. 1418 01:05:18,900 --> 01:05:22,690 Ja jälle, nagu me nägime enne, tegime Selle viimase programmi me kodeeritud. 1419 01:05:22,690 --> 01:05:27,110 Võite liikuda massiivi argv ja saada need stringid. 1420 01:05:27,110 --> 01:05:28,830 See on sisuliselt mida me tegi lõpuks meie viimane programm. 1421 01:05:28,830 --> 01:05:33,190 Korjasime juhuslik nimi ja siis läks nimed sulg iganes ja trükitud 1422 01:05:33,190 --> 01:05:34,580 puhtaks sinna. 1423 01:05:34,580 --> 01:05:39,870 1424 01:05:39,870 --> 01:05:43,670 >> Peal lihtsalt üks massiiv, sest stringid ise paneelid 1425 01:05:43,670 --> 01:05:46,320 rääkis, sul võib olla massiivid massiivid, mis on 1426 01:05:46,320 --> 01:05:48,530 sisuliselt mida argv on. 1427 01:05:48,530 --> 01:05:51,370 Üks viis saate mõelda see on read ja veerud. 1428 01:05:51,370 --> 01:05:54,750 Võin teha, et kohe. 1429 01:05:54,750 --> 01:05:57,370 Nii argv - 1430 01:05:57,370 --> 01:05:58,630 see pole kustutamine. 1431 01:05:58,630 --> 01:05:59,880 Joonistame all Ohai. 1432 01:05:59,880 --> 01:06:09,320 1433 01:06:09,320 --> 01:06:12,490 >> Nii et kui ma kirjutasin, Ohai CS50 osa, Ma lähen kärpida 1434 01:06:12,490 --> 01:06:14,520 osa selles näiteks. 1435 01:06:14,520 --> 01:06:29,026 Aga sisuliselt minu mitmemõõtmeline massiiv, Ohai CS50, 1436 01:06:29,026 --> 01:06:32,200 me teeme sekti. 1437 01:06:32,200 --> 01:06:34,610 Nii et siin, ma ei saa kasutada - 1438 01:06:34,610 --> 01:06:40,930 1439 01:06:40,930 --> 01:06:45,710 kui ma andsin argv üks number - 1440 01:06:45,710 --> 01:06:46,390 see on vale. 1441 01:06:46,390 --> 01:06:49,020 Mis on valesti, seda skeemi? 1442 01:06:49,020 --> 01:06:49,690 >> Üliõpilane: Alusta nullist. 1443 01:06:49,690 --> 01:06:50,350 >> JASON Hirschhorn: see peaks alustada nullist. 1444 01:06:50,350 --> 01:06:52,940 Ma peaks ilmselt ka pöörata, kuid sest ma olen juba teinud seda, ma olen 1445 01:06:52,940 --> 01:06:54,120 jätan ta seal nüüd. 1446 01:06:54,120 --> 01:06:55,160 Aga see algab nullist. 1447 01:06:55,160 --> 01:06:56,410 Just nii. 1448 01:06:56,410 --> 01:06:58,980 1449 01:06:58,980 --> 01:07:00,120 Mul on kahju, kui see on väike. 1450 01:07:00,120 --> 01:07:01,370 Kas te poisid omamoodi näha? 1451 01:07:01,370 --> 01:07:03,620 1452 01:07:03,620 --> 01:07:06,670 Nii et kui ma teen argv 0, ma saad kõik Ohai. 1453 01:07:06,670 --> 01:07:08,555 Kui ma argv 1, ma saan kõik CS50. 1454 01:07:08,555 --> 01:07:10,720 Kui ma argv 2, ma saan kõik sekti. 1455 01:07:10,720 --> 01:07:13,370 >> Aga nüüd, kui me ütlesime, keelpillid on massiivid ise. 1456 01:07:13,370 --> 01:07:19,740 Niisiis, mida ma teha saan, on mul võimalik käsitleda seda kui mitmemõõtmeline array, ja ma 1457 01:07:19,740 --> 01:07:24,190 saab midagi eeskujul argv 0, 0, mis annab mulle lihtsalt 1458 01:07:24,190 --> 01:07:25,400 iseloomu 0. 1459 01:07:25,400 --> 01:07:28,760 Argv 0, 1, mis annab mulle lihtsalt h. 1460 01:07:28,760 --> 01:07:33,960 Argv 1, 3, mis annab mulle lihtsalt see 0 siin all CS50. 1461 01:07:33,960 --> 01:07:37,690 >> Niisiis, kuna stringid ise on massiive, me paneme 1462 01:07:37,690 --> 01:07:38,540 et teise massiivi. 1463 01:07:38,540 --> 01:07:42,850 Meil on nüüd massiiv massiivid, ja me võib indeks meie esimene massiivi ja 1464 01:07:42,850 --> 01:07:44,840 siis indeks meie teine ​​massiiv. 1465 01:07:44,840 --> 01:07:48,650 Ja nagu ikka, me teeme seda poolt lihtsalt paneb need kaks - 1466 01:07:48,650 --> 01:07:51,760 teeme nurksulgudes lihtsalt paremale üksteise kõrval. 1467 01:07:51,760 --> 01:07:58,930 Nii et see näide, argv 1 CS50 ja argv 1, 2, nagu me ütlesime, on vaid 5. 1468 01:07:58,930 --> 01:08:02,120 Kas keegi on küsimusi mitmemõõtmeline massiivid? 1469 01:08:02,120 --> 01:08:05,090 1470 01:08:05,090 --> 01:08:06,380 Te teete fantastiline. 1471 01:08:06,380 --> 01:08:07,750 Sweet. 1472 01:08:07,750 --> 01:08:11,980 >> Nii et meil on teise programmi siin, ja see on viimane asi, mida me oleme 1473 01:08:11,980 --> 01:08:13,690 teeme kohe. 1474 01:08:13,690 --> 01:08:18,160 Nii et ma tahan, et sa kirjutada programm, mis võtab kasutaja täielik nimi, kaks ja ainult 1475 01:08:18,160 --> 01:08:21,649 kaks käsurea argumente, ja lõpuks, välja printida tervituse 1476 01:08:21,649 --> 01:08:24,180 kasutaja, et on oma eesnimi. 1477 01:08:24,180 --> 01:08:27,800 Miks sa ei võta kolm või neli minutit, et seda teha, ja siis me läheme 1478 01:08:27,800 --> 01:08:29,870 üle rühmana ning siis me pakkima? 1479 01:08:29,870 --> 01:09:44,189 1480 01:09:44,189 --> 01:09:48,084 >> Ja jälle siin, kui me ütleme, võtta kasutaja täisnime kohta kirjeldus 1481 01:09:48,084 --> 01:09:54,473 selle probleemi, siis tuleb käsk argumente, mis ei kasuta saada string. 1482 01:09:54,473 --> 01:09:55,450 Jah, Marcus? 1483 01:09:55,450 --> 01:09:58,260 >> Üliõpilane: Nii et kui te ütlete, kaks käsk argumente on see, et lisaks 1484 01:09:58,260 --> 01:10:00,000 . / joosta, või - 1485 01:10:00,000 --> 01:10:02,980 >> JASON Hirschhorn: Hea küsimus. 1486 01:10:02,980 --> 01:10:05,995 Kas, sh. / Run, kolm käsurea argumente. 1487 01:10:05,995 --> 01:10:08,550 1488 01:10:08,550 --> 01:10:11,320 Või sh. / Personaliseeritud, in Sel juhul, kuna see on 1489 01:10:11,320 --> 01:10:12,360 Selle faili nimi. 1490 01:10:12,360 --> 01:10:13,300 Nii argc oleks kolm. 1491 01:10:13,300 --> 01:10:19,480 Aga ma tahan ainult kaks argumenti antud programmi. 1492 01:10:19,480 --> 01:10:20,400 Ma tuleks täpsustada, et. 1493 01:10:20,400 --> 01:10:23,380 Ma teen, mis muutus enne postitamist need ja saadab teid. 1494 01:10:23,380 --> 01:10:32,747 1495 01:10:32,747 --> 01:10:34,740 >> Üliõpilane: Mis siis, kui te on teine ​​nimi? 1496 01:10:34,740 --> 01:10:36,800 >> JASON Hirschhorn: Kui teil on keskel nimi, sa oled õnne. 1497 01:10:36,800 --> 01:10:38,050 Mul on kahju. 1498 01:10:38,050 --> 01:10:40,320 1499 01:10:40,320 --> 01:10:43,744 Või kui sul on ainult minna Shakira, sa oled ka õnne. 1500 01:10:43,744 --> 01:10:55,672 1501 01:10:55,672 --> 01:10:56,425 Jah? 1502 01:10:56,425 --> 01:11:00,760 >> Üliõpilane: Nii et kui inimesed ei ole cs50.h, nad määratlevad argv 1503 01:11:00,760 --> 01:11:03,450 kui char star argv? 1504 01:11:03,450 --> 01:11:05,160 Või on see ikka nimega string argv? 1505 01:11:05,160 --> 01:11:07,430 >> JASON Hirschhorn: Jah. 1506 01:11:07,430 --> 01:11:10,480 Nii string jälle me varjata selle üle, mida täpselt seal toimub. 1507 01:11:10,480 --> 01:11:14,040 See saab lahti pakkida võibolla Kolmapäeval, kuid kiiresti. 1508 01:11:14,040 --> 01:11:16,380 See on nagu abirattad. 1509 01:11:16,380 --> 01:11:18,370 Sest sisuliselt on see sama asi. 1510 01:11:18,370 --> 01:11:37,040 1511 01:11:37,040 --> 01:11:42,560 >> Võtame veel ühe minuti, et programm seda, ja siis me läheme üle 1512 01:11:42,560 --> 01:11:45,130 see grupp ja seejärel nagu ma ütlesin, pakkima. 1513 01:11:45,130 --> 01:11:47,770 Ja ma arvan, et nad ikka pildi kommid, nii et te peaks loodetavasti võtma 1514 01:11:47,770 --> 01:11:49,790 et, või siis võtta seda. 1515 01:11:49,790 --> 01:12:20,380 1516 01:12:20,380 --> 01:12:22,560 >> Vabandust, kui sa ikka kirjalikult, aga ma tahan sukelduda ja me 1517 01:12:22,560 --> 01:12:24,010 võib lõpetada koos. 1518 01:12:24,010 --> 01:12:30,470 Nii et mul on kirjutatud, # include cs50.h, # include stdio.h. 1519 01:12:30,470 --> 01:12:33,970 int main (void), lokkis traksidega, lokkis traksidega, sees kolm rida 1520 01:12:33,970 --> 01:12:38,760 pseudokoodi võtta kasutaja täielik nimi, kaks ja ainult kaks käsurea 1521 01:12:38,760 --> 01:12:42,670 argumendid, välja printida tervituse kasutaja, et on oma eesnimi. 1522 01:12:42,670 --> 01:12:45,810 >> Nii esimene, võtma kasutaja täisnime. 1523 01:12:45,810 --> 01:12:47,290 Kes saab mind aidata võtta kasutaja täielik nimi? 1524 01:12:47,290 --> 01:12:50,882 1525 01:12:50,882 --> 01:12:52,780 Kuidas seda teha, et osa? 1526 01:12:52,780 --> 01:12:57,685 1527 01:12:57,685 --> 01:12:59,500 Kas te teete, et esimene osa? 1528 01:12:59,500 --> 01:13:02,587 1529 01:13:02,587 --> 01:13:03,894 Võtke kasutaja täisnime. 1530 01:13:03,894 --> 01:13:05,860 Noh, et üks käsurea argument, mida ma peaksin kirjutama? 1531 01:13:05,860 --> 01:13:09,624 Mida ma peaks muutma umbes minu funktsioon deklaratsiooni? 1532 01:13:09,624 --> 01:13:11,140 >> Üliõpilane: Sa ei taha see õigustühiseks enam. 1533 01:13:11,140 --> 01:13:11,410 >> JASON Hirschhorn: Täpselt. 1534 01:13:11,410 --> 01:13:12,385 Ma ei taha, et see on tühine. 1535 01:13:12,385 --> 01:13:13,630 Mida ma tahan, et see tuleb? 1536 01:13:13,630 --> 01:13:14,650 >> Üliõpilane: Int argc. 1537 01:13:14,650 --> 01:13:15,720 >> JASON Hirschhorn: Int argc. 1538 01:13:15,720 --> 01:13:17,430 >> Üliõpilane: String argv. 1539 01:13:17,430 --> 01:13:19,055 >> JASON Hirschhorn: String argv. 1540 01:13:19,055 --> 01:13:19,705 >> Üliõpilane: Bracket, sulg. 1541 01:13:19,705 --> 01:13:20,070 >> JASON Hirschhorn: Bracket, sulg. 1542 01:13:20,070 --> 01:13:21,780 See on täpselt õige, ja see on tegelikult, kuidas ma lähen, et saada 1543 01:13:21,780 --> 01:13:22,820 kasutaja täisnime. 1544 01:13:22,820 --> 01:13:24,070 Nad lähed pane see sinna. 1545 01:13:24,070 --> 01:13:27,720 1546 01:13:27,720 --> 01:13:28,780 Nii et üks on tehtud. 1547 01:13:28,780 --> 01:13:30,780 Nüüd ma tahan kaks ja ainult kaks käsurea argumente. 1548 01:13:30,780 --> 01:13:35,065 Nii Noah, mis see on üks viis, kuidas ma arvu vaatamine käsk 1549 01:13:35,065 --> 01:13:36,315 argumente mul on? 1550 01:13:36,315 --> 01:13:39,676 1551 01:13:39,676 --> 01:13:40,725 >> Üliõpilane: Sa kas avalduse. 1552 01:13:40,725 --> 01:13:42,270 >> JASON Hirschhorn: Kui avaldus, täpselt. 1553 01:13:42,270 --> 01:13:44,830 Mida ma tahan on see haigus? 1554 01:13:44,830 --> 01:13:48,370 >> Üliõpilane: Kui argc üle 3. 1555 01:13:48,370 --> 01:13:52,485 >> JASON Hirschhorn: Kui argc on suurem kui 3. 1556 01:13:52,485 --> 01:13:58,430 Kui argc suurem kui 3, mida ma pean tegema? 1557 01:13:58,430 --> 01:13:59,400 >> Üliõpilane: Tagasi 1. 1558 01:13:59,400 --> 01:14:01,856 >> JASON Hirschhorn: Tagasi 1. 1559 01:14:01,856 --> 01:14:04,050 Kas see tagab mul kaks ja ainult kaks? 1560 01:14:04,050 --> 01:14:07,280 1561 01:14:07,280 --> 01:14:07,820 >> Õpilane: Ei 1562 01:14:07,820 --> 01:14:13,110 Kui argc on suurem kui 3 ja vähem kui 2. 1563 01:14:13,110 --> 01:14:17,770 >> JASON Hirschhorn: Kui argc on suurem kui 3 ja argc on alla 2. 1564 01:14:17,770 --> 01:14:21,540 Mis on üks viis, kuidas ma kirjutan selle lihtsalt üks rida, või ilma, et 1565 01:14:21,540 --> 01:14:23,890 ja Boole'i ​​operaatori? 1566 01:14:23,890 --> 01:14:25,942 >> Üliõpilane: See ei ole võrdne 2. 1567 01:14:25,942 --> 01:14:28,790 >> JASON Hirschhorn: Kui argc ei ole võrdne 2. 1568 01:14:28,790 --> 01:14:29,260 Täpselt. 1569 01:14:29,260 --> 01:14:34,890 Nii et kui argc ei ole võrdne 2, et annab mulle selle programmi, 1570 01:14:34,890 --> 01:14:37,250 personaliseeritud, kui ma saan seda ja mis annab mulle, kui palju 1571 01:14:37,250 --> 01:14:38,740 käsurea argumente? 1572 01:14:38,740 --> 01:14:42,110 Kui palju ma kontrollida? 1573 01:14:42,110 --> 01:14:42,370 >> Vabandust. 1574 01:14:42,370 --> 01:14:43,400 Lubage mul sõnastada seda. 1575 01:14:43,400 --> 01:14:46,620 Kui argc = 2, kui palju tegi kasutaja kirjutage line? 1576 01:14:46,620 --> 01:14:47,500 >> Üliõpilane: One. 1577 01:14:47,500 --> 01:14:49,120 >> JASON Hirschhorn: Lihtsalt üks. 1578 01:14:49,120 --> 01:14:50,430 Nii et enne, sul oli õigus, Noah. 1579 01:14:50,430 --> 01:14:52,192 Mida ma tegelikult vaja panna on? 1580 01:14:52,192 --> 01:14:53,640 >> Üliõpilane: See võrdub 3. 1581 01:14:53,640 --> 01:14:55,970 >> JASON Hirschhorn: Argc ei ole võrdne 3. 1582 01:14:55,970 --> 01:15:00,250 Tahan võrdne 3, sest ma tahan personaliseeritud pluss ülejäänud kaks. 1583 01:15:00,250 --> 01:15:02,560 Nii et kui argc ei võrdu 3, tagasi 1. 1584 01:15:02,560 --> 01:15:04,475 Miks sa ütled naasta 1? 1585 01:15:04,475 --> 01:15:06,180 >> Üliõpilane: Sest et tähendab, et see on vale. 1586 01:15:06,180 --> 01:15:08,420 >> JASON Hirschhorn: See tähendab, et see on vale, Ja mis see teeme? 1587 01:15:08,420 --> 01:15:10,360 >> Üliõpilane: Re-kiire kasutaja. 1588 01:15:10,360 --> 01:15:11,940 >> JASON Hirschhorn: See saab väljuda programmi, nii et see on joosta 1589 01:15:11,940 --> 01:15:14,520 uuesti, kuid meil ei ole midagi siin küsida uuesti. 1590 01:15:14,520 --> 01:15:14,840 Ma ei küsinud seda. 1591 01:15:14,840 --> 01:15:15,990 Nii see on täpselt õige. 1592 01:15:15,990 --> 01:15:17,680 Tagasi 1 lihtsalt sulgub programm. 1593 01:15:17,680 --> 01:15:18,520 Great. 1594 01:15:18,520 --> 01:15:21,600 >> Ja välja trükkida tervitus kasutajale mis sisaldab oma eesnimi. 1595 01:15:21,600 --> 01:15:24,010 Kuidas ma saan seda teha? 1596 01:15:24,010 --> 01:15:25,990 Anna? 1597 01:15:25,990 --> 01:15:26,580 >> Üliõpilane: Printf. 1598 01:15:26,580 --> 01:15:27,785 >> JASON Hirschhorn: Printf. 1599 01:15:27,785 --> 01:15:28,640 >> Üliõpilane: (" 1600 01:15:28,640 --> 01:15:30,460 >> JASON Hirschhorn: ( 1601 01:15:30,460 --> 01:15:31,600 >> Üliõpilane: "tere 1602 01:15:31,600 --> 01:15:33,210 >> JASON Hirschhorn: "tere 1603 01:15:33,210 --> 01:15:34,800 >> Üliõpilane:% s 1604 01:15:34,800 --> 01:15:37,230 >> JASON Hirschhorn:% s 1605 01:15:37,230 --> 01:15:38,840 >> Üliõpilane: / n 1606 01:15:38,840 --> 01:15:41,030 >> JASON Hirschhorn: / n 1607 01:15:41,030 --> 01:15:43,120 >> Üliõpilane: ", 1608 01:15:43,120 --> 01:15:45,130 >> JASON Hirschhorn: ", 1609 01:15:45,130 --> 01:15:46,620 >> Üliõpilane: argv 1610 01:15:46,620 --> 01:15:47,080 >> JASON Hirschhorn: Vabandust? 1611 01:15:47,080 --> 01:15:47,750 >> Üliõpilane: argv 1612 01:15:47,750 --> 01:15:48,840 >> JASON Hirschhorn: argv 1613 01:15:48,840 --> 01:15:50,190 >> Üliõpilane: Nurksulud 1. 1614 01:15:50,190 --> 01:15:51,230 >> JASON Hirschhorn: Nurksulud? 1615 01:15:51,230 --> 01:15:51,870 >> Üliõpilane: 1. 1616 01:15:51,870 --> 01:15:54,050 >> JASON Hirschhorn: 1. 1617 01:15:54,050 --> 01:15:55,850 >> Üliõpilane: Ja) semikooloniga. 1618 01:15:55,850 --> 01:15:58,290 >> JASON Hirschhorn:) semikooloniga. 1619 01:15:58,290 --> 01:16:00,250 Olgem selle käivitada. 1620 01:16:00,250 --> 01:16:03,730 Tee personaliseeritud. 1621 01:16:03,730 --> 01:16:06,392 . / Personaliseeritud. 1622 01:16:06,392 --> 01:16:07,420 See lihtsalt loobuda. 1623 01:16:07,420 --> 01:16:10,390 Miks see lõpetada? 1624 01:16:10,390 --> 01:16:11,310 >> Üliõpilane: Sa ei pane ühtegi argumenti. 1625 01:16:11,310 --> 01:16:12,560 >> JASON Hirschhorn: ma ei ole pane ühtegi argumenti sisse 1626 01:16:12,560 --> 01:16:16,360 1627 01:16:16,360 --> 01:16:16,920 Tundub hea. 1628 01:16:16,920 --> 01:16:18,130 Te naelutatud ta. 1629 01:16:18,130 --> 01:16:22,420 Nii et taas, sa läksid argv ja te kontrollitud alguses argc. 1630 01:16:22,420 --> 01:16:24,390 Need on kaks olulist asju meeles pidada. 1631 01:16:24,390 --> 01:16:29,250 Nii et meie viimase kahe minuti, enne kui me jätta, me ei saa, et pset kaks, kuid 1632 01:16:29,250 --> 01:16:33,585 nagu ma ütlesin, kui soovite jääda pärast 10 minutit, ma oleks ta hea meelega 1633 01:16:33,585 --> 01:16:35,710 üle teiega loogika Nende probleem komplekti. 1634 01:16:35,710 --> 01:16:37,930 Meil oli palju nähtud täna nii et ma ei saanud neid. 1635 01:16:37,930 --> 01:16:39,820 Üldiselt mulle meeldib lisada aasta lõpus. 1636 01:16:39,820 --> 01:16:42,150 Nii et kui soovite jääda umbes, kinni umbes 10 minutit. 1637 01:16:42,150 --> 01:16:42,990 Me teeme seda. 1638 01:16:42,990 --> 01:16:46,250 >> Siis, kui ma alguses mainisin, pset null ja üks, et me jõuame selle 1639 01:16:46,250 --> 01:16:48,040 tagasiside tagasi teile niipea kui võimalik. 1640 01:16:48,040 --> 01:16:51,260 Eesmärgiks on saada pset üks tagasisidet, Kommentaarid osa, 1641 01:16:51,260 --> 01:16:52,850 enne pset kaks on tingitud. 1642 01:16:52,850 --> 01:16:56,730 Nii et kui teil on tehtud mõningaid vigu või stiililiselt, asjad võiks olla parem, 1643 01:16:56,730 --> 01:17:01,330 sul on, et teave, et sa ei tee samu asju pset kaks. 1644 01:17:01,330 --> 01:17:06,140 Ja siis tulevikus saad sa kõik oma pset tagasisidet ja kommentaare 1645 01:17:06,140 --> 01:17:08,190 tagasi enne järgmise põhjuseks. 1646 01:17:08,190 --> 01:17:12,695 >> Lõpuks, kui ma saaks panna veel plug tagasisidet. 1647 01:17:12,695 --> 01:17:13,935 See on teie esimene lõik. 1648 01:17:13,935 --> 01:17:15,920 See oli minu esimene lõik õpetamine sellel aastal. 1649 01:17:15,920 --> 01:17:16,930 Minge sinna. 1650 01:17:16,930 --> 01:17:19,800 Kirjutage asju, hea ja halb, ja ma kasutan seda teha 1651 01:17:19,800 --> 01:17:21,320 osa järgmine kord paremini. 1652 01:17:21,320 --> 01:17:24,870 Ja viimane, samas, kui teil on vaja midagi, andke teada. 1653 01:17:24,870 --> 01:17:26,410 Ma olen rohkem kui õnnelik, et teid aidata. 1654 01:17:26,410 --> 01:17:28,420 Kui tahad lihtsalt kommi, ma on pildi kommid. 1655 01:17:28,420 --> 01:17:29,800 Ma olen õnnelik, et tuua selle sulle. 1656 01:17:29,800 --> 01:17:31,190 >> See saab olema hämmastav muidugi. 1657 01:17:31,190 --> 01:17:34,900 See on üks, kui mitte mu lemmik Loomulikult olen võtnud kogu mu elu, 1658 01:17:34,900 --> 01:17:37,220 ja ma loodan, et see saab olema, et imeline teile. 1659 01:17:37,220 --> 01:17:40,090 Ma tahan teha kõik, mis minu võimuses teha seda, mis vinge teie jaoks. 1660 01:17:40,090 --> 01:17:46,590 Ma lähen välja saata kiri, kui oled minu osa või Noa ja 1661 01:17:46,590 --> 01:17:50,310 kavatsen proovida ja ajakava koos iga kutid aeg vaadata üle 1662 01:17:50,310 --> 01:17:53,820 Järgmise paari nädala jooksul, et ma saan tunnet, mida teie CS taust, 1663 01:17:53,820 --> 01:17:58,170 ja see aitab ka mind kohandada need lõigud paremini sobib teie vajadustele. 1664 01:17:58,170 --> 01:17:59,740 Nii see on, mida mul on rivistatud. 1665 01:17:59,740 --> 01:18:02,260 Jällegi näeme väljaspool kui sa tahad olla seal. 1666 01:18:02,260 --> 01:18:03,700 See oli nädal kaks osa. 1667 01:18:03,700 --> 01:18:04,950 Tänan teid väga. 1668 01:18:04,950 --> 01:18:09,067