1 00:00:00,000 --> 00:00:02,742 >> [Muzika] 2 00:00:02,742 --> 00:00:05,030 3 00:00:05,030 --> 00:00:09,090 >> ANDI Peng: Kjo është CS50, dhe mirëpritur të javës së dytë të seksionit. 4 00:00:09,090 --> 00:00:11,740 Kjo është në fakt ndërsa javë dy nga class-- tona aktualisht, 5 00:00:11,740 --> 00:00:14,550 javën e parë që ne kemi pasur seksion. 6 00:00:14,550 --> 00:00:18,897 Shfaqje e duarve, sa prej jush të gjithë erdhi në seksionin super javën e kaluar? 7 00:00:18,897 --> 00:00:19,480 OK, kjo është në rregull. 8 00:00:19,480 --> 00:00:20,020 Eshte ne rregull. 9 00:00:20,020 --> 00:00:23,110 Sa prej jush shikuar Pjesa super javën e kaluar? 10 00:00:23,110 --> 00:00:23,610 NE RREGULL. 11 00:00:23,610 --> 00:00:25,702 Dhe ju djema bëri gjobë në problemin vendosur një? 12 00:00:25,702 --> 00:00:28,660 Kështu që unë jam duke shkuar për të marrë atë që ne kemi një bandë e fëmijëve me të vërtetë inteligjente 13 00:00:28,660 --> 00:00:32,310 në këtë klasë dhe gjërat do të jetë mirë. 14 00:00:32,310 --> 00:00:33,180 NE RREGULL. 15 00:00:33,180 --> 00:00:33,980 Pra first-- 16 00:00:33,980 --> 00:00:37,900 17 00:00:37,900 --> 00:00:41,090 >> Së pari, ne jemi vetëm do të shkurtimisht shkoni mbi rendin e ditës për sot. 18 00:00:41,090 --> 00:00:42,700 Ne do të flasim për kurs logjistikës. 19 00:00:42,700 --> 00:00:45,480 Një shumë prej jush ndoshta kanë pyetje në lidhje me 20 00:00:45,480 --> 00:00:46,920 si gjërat të kandidojë në këtë kurs. 21 00:00:46,920 --> 00:00:47,897 Ne do të përgjigjet atyre. 22 00:00:47,897 --> 00:00:49,730 Ne jemi duke shkuar për shkurtimisht shkoni mbi sythe në rast 23 00:00:49,730 --> 00:00:51,410 ndonjë nga ju djema të humbura seksion super. 24 00:00:51,410 --> 00:00:53,240 Ne do të flasim për hartës ASCII. 25 00:00:53,240 --> 00:00:56,180 Ne do të flasim vargjeve, funksionet, argumente command line. 26 00:00:56,180 --> 00:01:00,210 Dhe së fundi, çfarë ju djema ndoshta të gjithë me të vërtetë duan të jenë këtu për të mësuar në lidhje me, 27 00:01:00,210 --> 00:01:01,270 është pset2 juaj. 28 00:01:01,270 --> 00:01:04,209 Ne do të kemi disa nga truket e bukur dhe këshilla për mënyrën se si ta bëjnë këtë. 29 00:01:04,209 --> 00:01:07,910 30 00:01:07,910 --> 00:01:08,690 >> NE RREGULL. 31 00:01:08,690 --> 00:01:11,450 Gjithashtu, së dyti, ne kemi shumë karamele këtu. 32 00:01:11,450 --> 00:01:13,583 Kushdo që i pëlqen karamele, vetëm të vijnë deri këtu. 33 00:01:13,583 --> 00:01:14,430 Grab disa. 34 00:01:14,430 --> 00:01:15,100 Unë kam një bandë. 35 00:01:15,100 --> 00:01:16,390 Ne kemi një ton në zyrë. 36 00:01:16,390 --> 00:01:18,230 Unë vërtetë nuk e duan për të ngrënë karamele gjatë gjithë ditës. 37 00:01:18,230 --> 00:01:20,300 Ju djema duhet të hani të gjithë karamele, sepse unë e solli atë këtu për ju djema. 38 00:01:20,300 --> 00:01:20,990 Vetëm të hani karamele. 39 00:01:20,990 --> 00:01:24,080 Nuk do të jetë karamele çdo seksion. 40 00:01:24,080 --> 00:01:25,330 >> Pra, së pari, kush jam unë? 41 00:01:25,330 --> 00:01:27,080 Emri im është Andi Peng. 42 00:01:27,080 --> 00:01:30,270 Unë jam kreu i AT CS50 këtu në Yale. 43 00:01:30,270 --> 00:01:32,540 Dhe përveç se, unë do të be-- 44 00:01:32,540 --> 00:01:35,600 në qoftë se dikush do të like-- drejtimin tuaj buddy, sup juaj të qaj më. 45 00:01:35,600 --> 00:01:39,140 Nëse një natë më parë për shkak pset tuaj, ju nuk kanë idenë se çfarë po ndodh, 46 00:01:39,140 --> 00:01:40,080 goditi mua. 47 00:01:40,080 --> 00:01:42,770 Ne do të mëshiroj së bashku, e të tjera. 48 00:01:42,770 --> 00:01:46,100 Vetëm e di se unë jam këtu si një burimeve për ju si vijën e frontit 49 00:01:46,100 --> 00:01:51,830 për të ndihmuar ju djema kuptoj se si për të zgjidhur problemet në CS50 dhe përtej. 50 00:01:51,830 --> 00:01:54,590 >> E-mail im është andi.peng@yale.edu. 51 00:01:54,590 --> 00:01:58,390 Unë gjithashtu do të dërgojë nga një individ email me numrin tim të telefonit në të 52 00:01:58,390 --> 00:02:01,860 kështu që jo të gjithë mbi internet mund të shihni numrin e telefonit. 53 00:02:01,860 --> 00:02:03,640 Mos ngurroni të më telefononi në çdo kohë. 54 00:02:03,640 --> 00:02:07,510 Seriozisht, telefoni im është bashkangjitur zakonisht në dorën time. 55 00:02:07,510 --> 00:02:10,240 Unë nuk mund të përgjigjem brenda disa minutash. 56 00:02:10,240 --> 00:02:11,984 Unë nuk mund të përgjigjet brenda dy orë. 57 00:02:11,984 --> 00:02:14,400 Por unë mund të ju garantoj, nëse ju e-mail mua, nëse ju telefononi mua, 58 00:02:14,400 --> 00:02:17,404 tekst me mua, unë do të përgjigjet brenda 24 orëve. 59 00:02:17,404 --> 00:02:19,820 Shpesh, unë do të përgjigjem para që, për shkak se unë e kuptoj 60 00:02:19,820 --> 00:02:23,900 që të gjithë e mori disa probleme, dhe ju doni përgjigjet tuaja 61 00:02:23,900 --> 00:02:26,110 për t'u përgjigjur shumë shpejt. 62 00:02:26,110 --> 00:02:28,945 >> Megjithatë, në qoftë se ju e quani Me 30 minuta para 63 00:02:28,945 --> 00:02:31,570 kjo pjesë që është e enjte për shkak night-- të jetë si, Andi, më ndihmoni, 64 00:02:31,570 --> 00:02:35,380 Unë nuk kam started-- unë mund të jap ju që krah për të qarë. 65 00:02:35,380 --> 00:02:41,520 Por ajo mund të jetë koha për të menduar për si të mos bërë atë herën tjetër. 66 00:02:41,520 --> 00:02:44,040 NE RREGULL. 67 00:02:44,040 --> 00:02:44,944 Oops. 68 00:02:44,944 --> 00:02:45,850 Si mund të kthehem? 69 00:02:45,850 --> 00:02:48,140 Atje shkojmë. 70 00:02:48,140 --> 00:02:52,310 >> Pra, në këtë kurs, ne kemi një ton e mbështetjes për të gjithë. 71 00:02:52,310 --> 00:02:54,640 Përveç vetëm seksione këtu, të cilat ju 72 00:02:54,640 --> 00:02:57,000 çdo javë të merrni për të shpenzuar 90 minuta mrekullueshme me mua, 73 00:02:57,000 --> 00:02:58,330 ne gjithashtu kemi orarin e punës. 74 00:02:58,330 --> 00:03:01,021 Sa nga ju djema tashmë kanë qenë të orarit të punës për ndihmë? 75 00:03:01,021 --> 00:03:01,520 I madh. 76 00:03:01,520 --> 00:03:05,700 Kjo është me të vërtetë e mirë për të parë, sepse ne kemi një staf prej më shumë se 45 Tas dhe MK 77 00:03:05,700 --> 00:03:11,780 të trajnuar për këtë kurs që janë këtu për të ndihmuar ju djema me psets tuaj. 78 00:03:11,780 --> 00:03:14,580 >> Hënave ata janë mbajtur në Teal klasë në 17 Hill House këtu 79 00:03:14,580 --> 00:03:15,350 në Yale. 80 00:03:15,350 --> 00:03:17,349 Marteve dhe të enjteve, ata janë mbajtur në Komuneve. 81 00:03:17,349 --> 00:03:20,010 Ora 8:00 deri 11:00 pretty much çdo ditë të javës. 82 00:03:20,010 --> 00:03:21,620 Ejani në, të dalë. 83 00:03:21,620 --> 00:03:24,030 Çdo problem, nuk ka problem-- vetëm vijnë më në, 84 00:03:24,030 --> 00:03:26,650 dhe pastaj ne do të ju ndihmojë me këtë. 85 00:03:26,650 --> 00:03:31,640 >> Së dyti, përveç orarit të punës dhe seksione, ne gjithashtu kemi pantallona të shkurtra. 86 00:03:31,640 --> 00:03:35,930 Ka dikush parë ndonjëherë një çift të pantallona të shkurtra ose walkthroughs në video 87 00:03:35,930 --> 00:03:36,750 në faqen e internetit? 88 00:03:36,750 --> 00:03:37,250 NE RREGULL. 89 00:03:37,250 --> 00:03:39,510 Pra, ata janë me të vërtetë, të vërtetë të dobishme. 90 00:03:39,510 --> 00:03:42,470 Prodhimi ynë i bukur i Harvardit bashkohem atje në atë shkollë 91 00:03:42,470 --> 00:03:47,910 deri në veri, ata kanë filmuar dhe prodhuar këto video të pabesueshme WALKTHROUGH. 92 00:03:47,910 --> 00:03:52,290 >> Ata do të ju merr hap pas hapi përmes si të shkojë për zgjidhjen e një problemi. 93 00:03:52,290 --> 00:03:56,340 Shpesh, në qoftë se ju jeni të hutuar në lidhje me një koncept i thjeshtë, një koncept njëjës, 94 00:03:56,340 --> 00:03:59,780 të marrë një sy, sepse ne ndoshta kemi një të shkurtër mbi atë diku në faqen tonë të internetit. 95 00:03:59,780 --> 00:04:03,800 Dhe kjo është zakonisht një burim i madh për të shikoni për kur ju jeni në fillim 96 00:04:03,800 --> 00:04:06,510 humbur në se si të trajtojë një problem. 97 00:04:06,510 --> 00:04:09,750 >> Së treti, ne gjithashtu kemi study50 dhe reference50. 98 00:04:09,750 --> 00:04:15,650 Pra studim 50 mbi Faqja e internetit është vetëm një lidhje. 99 00:04:15,650 --> 00:04:21,500 Kjo është, unë mendoj, study.cs50.net ose diçka të tillë. 100 00:04:21,500 --> 00:04:22,860 Vetëm google atë. 101 00:04:22,860 --> 00:04:24,229 Ne kemi shumë të slides përgatitur. 102 00:04:24,229 --> 00:04:26,770 Ne kemi shumë të pantallona të shkurtra dhe gjëra walkthroughs-- gjithë hartuar 103 00:04:26,770 --> 00:04:31,070 shumë i mirë dhe i zoti për ju djema të gjithë të kërkoni nëpër, shoh ndonjë koncepte 104 00:04:31,070 --> 00:04:32,860 se ju jeni të hutuar në lidhje. 105 00:04:32,860 --> 00:04:35,920 Kjo ndoshta do të jetë i mbuluar atje në study50. 106 00:04:35,920 --> 00:04:37,640 >> Reference50-- ngjashme. 107 00:04:37,640 --> 00:04:41,510 Ne kemi një shumë të notave të ndryshme në dispozicion për dispozicionin tuaj. 108 00:04:41,510 --> 00:04:44,450 Dhe së fundi, ne kemi atë që është quajtur CS50 Diskutoni, 109 00:04:44,450 --> 00:04:48,082 një forum në të cilin, në qoftë se një natë më parë ju jeni duke bërë problemet tuaja, të themi, 110 00:04:48,082 --> 00:04:49,880 ju keni një pyetje. 111 00:04:49,880 --> 00:04:52,340 Identifikohu për të CS50 diskutuar. 112 00:04:52,340 --> 00:04:53,190 Postoni pyetjen tuaj. 113 00:04:53,190 --> 00:04:55,820 Dhe atëherë një nga hundreds-- ndoshta, thousands-- nga kolegët 114 00:04:55,820 --> 00:04:57,960 marrë këtë klasë online do të hyni në. 115 00:04:57,960 --> 00:05:01,182 Dhe ndoshta dikush mund të merrni përgjigjja juaj para një mund AT. 116 00:05:01,182 --> 00:05:03,390 Kjo është në thelb vetëm një Online forum se ne mund të gjithë 117 00:05:03,390 --> 00:05:04,556 përdorin për të diskutuar problemet tona. 118 00:05:04,556 --> 00:05:06,483 Kjo është e ftohtë. 119 00:05:06,483 --> 00:05:10,660 120 00:05:10,660 --> 00:05:11,550 >> NE RREGULL. 121 00:05:11,550 --> 00:05:13,220 Pra, problemi përcakton. 122 00:05:13,220 --> 00:05:17,840 Ne jemi gati të drejtë në trasha e problemit të vendosur dy. 123 00:05:17,840 --> 00:05:20,570 Një shumë prej nesh kanë tashmë luftuan përmes problemit të vendosur një të tillë. 124 00:05:20,570 --> 00:05:24,460 Ne tashmë e dimë se ndoshta duke pritur për natën e fundit për të bërë pset tuaj 125 00:05:24,460 --> 00:05:28,170 nuk është gjë e zgjuar për të bërë në CS50. 126 00:05:28,170 --> 00:05:32,380 >> Këshilla dhe këshilla në thelb për Suksesi i janë lexuar të gjithë spekulim. 127 00:05:32,380 --> 00:05:36,270 Sa prej jush tashmë kanë lexoni spekulim për pset 2? 128 00:05:36,270 --> 00:05:36,770 NE RREGULL. 129 00:05:36,770 --> 00:05:39,840 Kjo është një sasi të ngurta. 130 00:05:39,840 --> 00:05:43,210 Unë e di që ju djema kanë njohur ndoshta nga tani syze janë me të vërtetë e gjatë. 131 00:05:43,210 --> 00:05:45,700 Ata janë me të vërtetë, të vërtetë e gjatë. 132 00:05:45,700 --> 00:05:49,630 >> Është e vërtetë e vështirë për të lexuar çdo linjë e kësaj fjale me kujdes nga fjala. 133 00:05:49,630 --> 00:05:52,780 Ju dëshironi që të cek vetëm për të ku ajo ju tregon se për të bërë diçka. 134 00:05:52,780 --> 00:05:54,459 Unë mund t'ju garantoj, nuk e bëjmë atë. 135 00:05:54,459 --> 00:05:56,750 Nëse ju bëni këtë, ju jeni me siguri do të humbasë diku 136 00:05:56,750 --> 00:05:58,458 ku ai ju tregon si për të filluar një problem 137 00:05:58,458 --> 00:06:01,140 ose ajo ju tregon se çfarë duhet të emrit problemi juaj ose ajo ju tregon, 138 00:06:01,140 --> 00:06:03,720 kjo është ndoshta mënyra më e mirë të fillojnë të bëjnë problemin tuaj. 139 00:06:03,720 --> 00:06:05,050 Dhe pastaj ju do të jetë e humbur. 140 00:06:05,050 --> 00:06:08,219 >> Kur ju përpiqeni për të lexuar tuaj spekulim gjysmë të rrugës përmes, 141 00:06:08,219 --> 00:06:10,510 shumë i rëndësishëm information-- në se ju nuk jeni 142 00:06:10,510 --> 00:06:12,260 do të jetë në gjendje me të vërtetë qasje. 143 00:06:12,260 --> 00:06:13,219 Pra, lexoni tërë spekulim. 144 00:06:13,219 --> 00:06:15,468 Mundohuni të lexoni të gjithë spekulim para se të vijnë të nenit, 145 00:06:15,468 --> 00:06:17,360 sepse atëherë, kur ne flasim për pset, 146 00:06:17,360 --> 00:06:21,070 ne të gjithë mund të kemi një ide e çfarë po ndodh. 147 00:06:21,070 --> 00:06:25,169 >> Së dyti, ky është një koncept që unë do të doja të referencës 148 00:06:25,169 --> 00:06:26,710 shumë gjatë semestrit kursit. 149 00:06:26,710 --> 00:06:30,070 Por në thelb, të na takuar në gjysmë të rrugës, e drejtë? 150 00:06:30,070 --> 00:06:33,970 Mua, si AT tuaj dhe Jason si kurs menaxher dhe Scaz si profesor tuaj 151 00:06:33,970 --> 00:06:37,120 dhe Davidi si profesor tuaj dhe të gjithë të Tas tjera bukuroshe në këtë kurs, 152 00:06:37,120 --> 00:06:39,830 asistentë në këtë course-- ne do të bëjmë çmos 153 00:06:39,830 --> 00:06:42,965 për të siguruar që ju jeni të vendosur deri që të ketë sukses në këtë kurs. 154 00:06:42,965 --> 00:06:43,840 Ne do të mbajë seksion. 155 00:06:43,840 --> 00:06:44,870 Ne do të mbajë orarit të punës. 156 00:06:44,870 --> 00:06:47,087 Ne do të përgjigjem telefonit tuaj thirrje, të përgjigjem tuaj e-mail, 157 00:06:47,087 --> 00:06:49,670 bëjmë gjithçka që mundemi për të bërë i sigurt pyetjeve tuaja janë përgjigjur. 158 00:06:49,670 --> 00:06:51,460 >> Megjithatë, të na ndihmojë jashtë too. 159 00:06:51,460 --> 00:06:52,450 Të na takuar në gjysmë të rrugës. 160 00:06:52,450 --> 00:06:56,040 Nëse ju vijnë të orarit të punës nuk ka shkuar në seksion, jo 161 00:06:56,040 --> 00:07:02,060 duke parë leksionet, që nuk ka ide se çfarë po ndodh, të jetë si, më ndihmo. 162 00:07:02,060 --> 00:07:04,350 Unë do të jetë si, mirë, unë jam i keq. 163 00:07:04,350 --> 00:07:06,410 Kjo mund të jetë koha për të dhënë hua që krah për të qarë, 164 00:07:06,410 --> 00:07:08,959 sepse unë nuk jam i sigurt çfarë mund të bëj për të ndihmuar ju 165 00:07:08,959 --> 00:07:12,000 në qoftë se ju nuk do të përpiqet për të paktën ndihmë veten pak në fillim. 166 00:07:12,000 --> 00:07:12,910 Të na takuar në gjysmë të rrugës. 167 00:07:12,910 --> 00:07:15,020 Ju e dini, ju lutem të vijë përgatitur për t'iu përgjigjur dhe për të marrë 168 00:07:15,020 --> 00:07:16,353 i gatshëm për t'u angazhuar në material. 169 00:07:16,353 --> 00:07:19,342 Kjo i bën gjërat në mënyrë shumë më të lehtë për të gjithë të përfshirë. 170 00:07:19,342 --> 00:07:22,970 Po, kjo është shumë e shumë ajo. 171 00:07:22,970 --> 00:07:23,720 >> Nota. 172 00:07:23,720 --> 00:07:29,250 Pra, në planin mësimor, kjo është goxha e në thellësi në lidhje me se si ne klasën. 173 00:07:29,250 --> 00:07:32,440 Por në thelb, avari në kjo është 50% e klasës tuaj 174 00:07:32,440 --> 00:07:34,530 do të jenë psets, të cilat është e bukur, sepse kjo është 175 00:07:34,530 --> 00:07:37,400 ku ju jeni të shpenzimeve e gjerë shumica e kohës tuaj kurs për. 176 00:07:37,400 --> 00:07:39,854 Quizzes 40%, dhe tuaj Projekti përfundimtar do të jetë 10%. 177 00:07:39,854 --> 00:07:42,520 Nuk do të jetë dy kuize gjithë Kursi i semestrit. 178 00:07:42,520 --> 00:07:47,050 Unë mendoj se kohët dhe datat janë shënuara edhe në planin mësimor. 179 00:07:47,050 --> 00:07:49,210 >> Mënyra se ne do të të notimit psets tuaja 180 00:07:49,210 --> 00:07:53,930 është se ne kemi në thelb katër vlerat që ne të caktojë për çdo klasë. 181 00:07:53,930 --> 00:07:57,250 Ne kemi një vlerë të fushës, korrektësia, dizajn, dhe stil. 182 00:07:57,250 --> 00:08:01,530 Pra, siç e shihni, kjo është lloj i tonë Formula për llogaritjen psets. 183 00:08:01,530 --> 00:08:03,640 Tre ne japim më peshë për saktësinë, 184 00:08:03,640 --> 00:08:06,140 sepse padyshim trajner tuaj duhet të testimit për rastet 185 00:08:06,140 --> 00:08:08,480 se ne duam që ajo të provuar për. 186 00:08:08,480 --> 00:08:11,000 >> Ju djema të gjithë e kanë check50 në dispozicionin tuaj. 187 00:08:11,000 --> 00:08:13,730 Kjo është një funksion shumë i dobishëm se ju djema mund të gjithë 188 00:08:13,730 --> 00:08:17,560 ngarkoni kodin tuaj në serverat tanë, ku ne do të kontrollojë atë për ju. 189 00:08:17,560 --> 00:08:20,800 Dhe ju keni parë ato Fytyrat frowny, fytyrat smiley. 190 00:08:20,800 --> 00:08:22,119 Ata janë me të vërtetë, të vërtetë të dobishme. 191 00:08:22,119 --> 00:08:23,910 Ju lutem mos jetë Studenti se si mundohet 192 00:08:23,910 --> 00:08:26,230 për hardcode në të gjitha përgjigjet e tyre. 193 00:08:26,230 --> 00:08:30,050 Unë e kam parë patjetër një pset ku dikush pa të gjitha vlerat e check50 194 00:08:30,050 --> 00:08:33,429 dhe ata vetëm e vështirë koduar in-- nëse ky numër, të shtypura nga ky numër. 195 00:08:33,429 --> 00:08:35,080 Nëse ky numër, të shtypura nga atë numër. 196 00:08:35,080 --> 00:08:36,090 A nuk e bëjnë këtë. 197 00:08:36,090 --> 00:08:39,360 >> Edhe pse teknikisht check50 është e saktë, 198 00:08:39,360 --> 00:08:41,809 rrugën tuaj për zgjidhjen e Problemi nuk është e saktë. 199 00:08:41,809 --> 00:08:45,770 Pra, vetëm përdorni check50 me masë. 200 00:08:45,770 --> 00:08:48,497 Por gjithashtu të sigurohemi që ju të të kuptojnë se si është duke funksionuar, 201 00:08:48,497 --> 00:08:50,580 programi funksionon përveç check50, 202 00:08:50,580 --> 00:08:53,120 sepse ne nuk mund ta provoni çdo Rasti i mundshëm i check50. 203 00:08:53,120 --> 00:08:55,440 Ne do të jetë testimi i disa prej tyre. 204 00:08:55,440 --> 00:09:00,390 >> Design është në thelb, si projektuar mirë është kodi juaj? 205 00:09:00,390 --> 00:09:04,150 Nëse ju jeni kopje-pasting shumta rreshta të kodit shumë, shumë herë. 206 00:09:04,150 --> 00:09:06,960 Ndoshta ju nuk keni mjaft të dizajn më të mirë në kodin tuaj. 207 00:09:06,960 --> 00:09:09,470 Ndoshta është koha për të shtuar se lak. 208 00:09:09,470 --> 00:09:12,090 Në thelb, këtu është vetëm të gjitha në lidhje me duke u përpjekur për të bërë kodin tuaj, 209 00:09:12,090 --> 00:09:17,010 duke u përpjekur për të shkruar kodin tuaj si efikase të jetë e mundur në mënyrë që programi juaj shkon 210 00:09:17,010 --> 00:09:19,630 sa më shpejt të jetë e mundur. 211 00:09:19,630 --> 00:09:20,996 >> Së fundi, ne kemi stil. 212 00:09:20,996 --> 00:09:24,360 Pra stil është lloj i një arbitrar, afat subjektiv. 213 00:09:24,360 --> 00:09:27,470 Unë e di që ne kemi zyrtarisht një udhëzues stil 50 për CS50, 214 00:09:27,470 --> 00:09:30,050 ku ai do t'ju thotë: oh, ju duhet të ketë një hapësirë ​​këtu. 215 00:09:30,050 --> 00:09:32,220 Ju duhet lloj formati Kodi juaj në këtë mënyrë. 216 00:09:32,220 --> 00:09:34,070 Ju duhet të emërojë gjërat në këtë mënyrë. 217 00:09:34,070 --> 00:09:38,180 >> Unë nuk e kujdesit të vërtetë, në vetvete, si ju zgjidhni të stilit kodin tuaj, 218 00:09:38,180 --> 00:09:39,840 vetëm për aq kohë sa ju të qëndroni në përputhje. 219 00:09:39,840 --> 00:09:43,732 Për shembull, në qoftë se ju pëlqen të të lënë një hapësirë ​​pas katër juaj 220 00:09:43,732 --> 00:09:45,690 para katër lak tuaj, vetëm të bëjë që çdo herë. 221 00:09:45,690 --> 00:09:46,523 Mos lloj të bëjë atë. 222 00:09:46,523 --> 00:09:47,730 A nuk e bëjmë atë herë të tjera. 223 00:09:47,730 --> 00:09:51,046 Nëse ju pëlqen të mbani kaçurrel formatimin e teksteve hapësirë ​​një mënyrë të caktuar, 224 00:09:51,046 --> 00:09:52,170 vetëm gjithmonë të bëjë atë në këtë mënyrë. 225 00:09:52,170 --> 00:09:54,628 Mos lloj bëjmë atë diku këtu dhe diku jo atje. 226 00:09:54,628 --> 00:09:57,010 Kur ne jemi duke nota, kjo është me të vërtetë e vështirë 227 00:09:57,010 --> 00:09:59,420 në qoftë se unë nuk kam asnjë ide se si ju jeni formatimit kodin tuaj, 228 00:09:59,420 --> 00:10:02,064 gjërat janë lloji tjetër dhe në vendin e vet. 229 00:10:02,064 --> 00:10:04,980 Në qoftë se ju vetëm i mbajnë atë në përputhje, kjo është shumë më e lehtë për mua si më i madh 230 00:10:04,980 --> 00:10:06,310 të jetë në gjendje për të lexuar kodin tuaj. 231 00:10:06,310 --> 00:10:09,393 Është shumë më e lehtë për ju si student të jetë në gjendje për të parë përmes kodit tuaj 232 00:10:09,393 --> 00:10:11,720 dhe të shohim se çfarë është e gabuar me ajo çaj pse ka çështje. 233 00:10:11,720 --> 00:10:15,740 Stili është një nga gjërat më të lehta ju djema mund të bëni për të marrë rezultate të plota. 234 00:10:15,740 --> 00:10:18,770 Në thelb, në qoftë se ju vetëm të kujdeseni, në qoftë se ju paguani pesë minuta të vëmendjes 235 00:10:18,770 --> 00:10:22,760 në kodin tuaj çdo javë, ju duhet të jetë duke marrë pikë të plota stil. 236 00:10:22,760 --> 00:10:26,020 >> Së fundi, ne kemi atë që quhet shumëzues e fushës. 237 00:10:26,020 --> 00:10:28,890 Scope-- Unë e di se është një i madh fjalë, sidomos në këtë klasë. 238 00:10:28,890 --> 00:10:31,030 Por fushëveprimi, të gjitha që do të thotë është se ju jeni duke u përpjekur 239 00:10:31,030 --> 00:10:33,670 e psets për të mirë e aftësisë tuaj. 240 00:10:33,670 --> 00:10:37,180 Nëse ju të kthehet në tre jashtë nga katër problemeve tuaja 241 00:10:37,180 --> 00:10:39,460 dhe as nuk Përpjekja e fundit, ju jeni me siguri 242 00:10:39,460 --> 00:10:41,630 do të humbasin disa pikë në qëllimin. 243 00:10:41,630 --> 00:10:44,560 >> Edhe në qoftë se ju vetëm të filloni problemin, bëj çmos për të ecin nëpër atë. 244 00:10:44,560 --> 00:10:47,691 Edhe në qoftë se ajo nuk punon, kthejnë atë në, sepse kjo tregon dhe demonstron 245 00:10:47,691 --> 00:10:50,190 për ne që ju jeni duke u përpjekur, që ju u përpoq problemin vendosur 246 00:10:50,190 --> 00:10:51,430 për të mirë të aftësisë suaj. 247 00:10:51,430 --> 00:10:53,800 Dhe pastaj ne mund të ju jap Pikat e plotë për qëllimin. 248 00:10:53,800 --> 00:10:58,715 >> Shtrirja është gjithashtu shumë e rëndësishme për ne, kur flasim për më të ulët rënie rezultatin pset. 249 00:10:58,715 --> 00:11:02,010 Kështu gjatë e semestër, ju djema keni nëntë psets. 250 00:11:02,010 --> 00:11:05,340 Dhe ne fakt do të jetë në rënie rezultati më i ulët nga këto nëntë, 251 00:11:05,340 --> 00:11:07,670 por vetëm në qoftë se ju keni pikë të plota fushëveprimi. 252 00:11:07,670 --> 00:11:11,120 >> Pra, nëse ju kthejnë në një pset jo të plotë, për fat të keq, ne nuk mund të bjerë se një, 253 00:11:11,120 --> 00:11:13,540 sepse fushëveprimit tuaj pikë nuk janë përfunduar. 254 00:11:13,540 --> 00:11:16,570 Pra, edhe në qoftë se ju keni javën e tmerrshme ku ju jeni të vdekur dhe ju jeni të sëmurë 255 00:11:16,570 --> 00:11:20,040 ose qeni juaj vdes, cat juaj vdes, dhe ju jeni të mbingarkuar me detyra shtëpie, 256 00:11:20,040 --> 00:11:21,074 vetëm përpjekje e pset. 257 00:11:21,074 --> 00:11:22,490 Të bëjë atë për të mirë të aftësisë suaj. 258 00:11:22,490 --> 00:11:23,840 Nëse kjo nuk funksionon, kjo nuk ka rëndësi. 259 00:11:23,840 --> 00:11:24,506 Vetëm kthejnë atë në. 260 00:11:24,506 --> 00:11:26,590 Të paktën ne mund të japim ju pikë për përpjekje. 261 00:11:26,590 --> 00:11:28,510 >> Një për përpjekje në këtë klasë. 262 00:11:28,510 --> 00:11:30,170 Të paktën rënie të ulët të shënuar për përpjekje. 263 00:11:30,170 --> 00:11:32,354 Pra, vërtet. 264 00:11:32,354 --> 00:11:33,270 Kjo është shumë e shumë ajo. 265 00:11:33,270 --> 00:11:36,521 A ka dikush pyetje kaq tani si ne klasën në klasë? 266 00:11:36,521 --> 00:11:37,187 Ose ndonjë nga këto? 267 00:11:37,187 --> 00:11:41,220 Ndonjë nga këto kështu far-- seksione, orarit të punës? 268 00:11:41,220 --> 00:11:41,720 Ftohtë. 269 00:11:41,720 --> 00:11:46,720 270 00:11:46,720 --> 00:11:47,800 NE RREGULL. 271 00:11:47,800 --> 00:11:51,260 >> Pra, kjo është një temë që nuk ka një të vërtetë i pëlqen të flasë për. 272 00:11:51,260 --> 00:11:53,084 Unë vërtetë nuk e pëlqen të flasin për këtë. 273 00:11:53,084 --> 00:11:55,250 Ju djema të vërtetë nuk duan për të dëgjuar të flas për këtë. 274 00:11:55,250 --> 00:11:57,690 Por për fat të keq, ne të gjithë duhet të flasim për këtë. 275 00:11:57,690 --> 00:12:00,110 Davidi kaloi 20 minuta një leksion duke folur në lidhje me të. 276 00:12:00,110 --> 00:12:02,580 Dhe që është objekt e ndershmërisë akademike. 277 00:12:02,580 --> 00:12:08,110 >> Pra, ne të gjithë këtu kemi shkruar ndoshta një ese diku në karrierën tonë Yale. 278 00:12:08,110 --> 00:12:11,800 Ne kemi marrë ndoshta një bisedë ku kemi është thënë që të mos bëj plagjiaturë ese tonë, 279 00:12:11,800 --> 00:12:13,940 sepse se puna nuk është e jona. 280 00:12:13,940 --> 00:12:18,109 Në shkenca kompjuterike, ne kemi i njëjti lloj i konceptit. 281 00:12:18,109 --> 00:12:20,150 E gjithë puna që ju paraqisni, të gjithë kodin që ju shkruani 282 00:12:20,150 --> 00:12:21,900 duhet të jetë kodin që keni shkruar. 283 00:12:21,900 --> 00:12:24,280 Nuk duhet të jetë kod që e keni kopjuar nga diku tjetër. 284 00:12:24,280 --> 00:12:26,777 Nuk duhet të jetë kodin që ju keni googled dhe plopped në 285 00:12:26,777 --> 00:12:28,360 dhe ju vërtetë nuk e di nëse ajo punon. 286 00:12:28,360 --> 00:12:32,440 Ju lloj i kanë një ndjenjë të çfarë është bërë, por jo të vërtetë. 287 00:12:32,440 --> 00:12:36,562 Kur në dyshim, në thelb, kjo është vetëm të jetë i arsyeshëm. 288 00:12:36,562 --> 00:12:38,520 Në planin mësimor tonë, ne kemi një listë e tërë e gjërave 289 00:12:38,520 --> 00:12:40,560 ne e shohim të arsyeshme kundrejt jo i arsyeshëm. 290 00:12:40,560 --> 00:12:43,820 >> Për shembull, e arsyeshme është që ju dhe miku juaj 291 00:12:43,820 --> 00:12:47,360 diskutojnë çfarë është mënyra më e mirë për të shkuar për logjikisht zgjidhjen e një problemi. 292 00:12:47,360 --> 00:12:48,910 Kjo është mjaft e arsyeshme. 293 00:12:48,910 --> 00:12:53,244 Ajo që nuk do të ishte e arsyeshme është nëse ju djema marrë së bashku, shtypur kodin e njëjtë, 294 00:12:53,244 --> 00:12:54,410 dhe u kthye në të njëjtin kod. 295 00:12:54,410 --> 00:12:56,302 Kjo nuk është e arsyeshme. 296 00:12:56,302 --> 00:12:57,510 E njëjta gjë, lloj i një ese. 297 00:12:57,510 --> 00:12:59,290 Nëse ju doni për të diskutuar me shoku, hej, 298 00:12:59,290 --> 00:13:00,220 kjo është ajo që unë dua të shkruani në lidhje. 299 00:13:00,220 --> 00:13:02,500 Këto janë hapat që unë dua të marrë për të shkruar në lidhje me të, i madh. 300 00:13:02,500 --> 00:13:03,208 Kjo është e mrekullueshme. 301 00:13:03,208 --> 00:13:04,790 Ju lutemi të bashkëpunojnë me njëri-tjetrin. 302 00:13:04,790 --> 00:13:06,540 Në qoftë se ju djema të fillojë shkruar të njëjtën gjë, 303 00:13:06,540 --> 00:13:10,020 të kthehet në të njëjtën ese, që është më pak në rregull. 304 00:13:10,020 --> 00:13:13,200 Pra, kur në dyshim, thjesht nuk e bëjmë atë. 305 00:13:13,200 --> 00:13:16,940 >> Këtu, ne në CS50, ne kemi Scripts që kandidojë për të Automate të provuar 306 00:13:16,940 --> 00:13:21,740 jo vetëm korrektësinë e kodit tuaj, por edhe unike e kodit tuaj. 307 00:13:21,740 --> 00:13:25,920 Pra ju lutem mos na vënë në pozitë e të pasurit për të referuar rastin tuaj për EXCOMM. 308 00:13:25,920 --> 00:13:31,110 Ju lutemi të vetëm për të gjithë, le të vetëm e bëjnë këtë një përvojë e mrekullueshme. 309 00:13:31,110 --> 00:13:33,600 Gjithkush mëson më mirë, ne të gjithë jemi të lumtur, 310 00:13:33,600 --> 00:13:37,926 dhe ne jemi të vendosur të gjithë deri në të ketë sukses në këtë kurs. 311 00:13:37,926 --> 00:13:39,800 Diçka që është shumë e unik në lidhje me këtë klasë 312 00:13:39,800 --> 00:13:42,660 që unë mendoj se të gjithë duhet të vërtetë i kushtoj vëmendje për të është se ne kemi 313 00:13:42,660 --> 00:13:44,930 atë që quhet pendimi klauzolë në syllabus tonë. 314 00:13:44,930 --> 00:13:50,010 Pra, në thelb, brenda 72 orëve, në qoftë se ju besoj se ju keni bërë diçka 315 00:13:50,010 --> 00:13:53,240 ju nuk jeni me të vërtetë i sigurt ishte e përshtatshme, ju lutem të vijë tek ne. 316 00:13:53,240 --> 00:13:57,220 Ne ju premtojmë se brenda 72 orëve ne do të merret me çështjen, veten tonë 317 00:13:57,220 --> 00:13:59,820 pa iu referuar një më të lartë autoritet në administratën. 318 00:13:59,820 --> 00:14:03,100 >> Pra, nëse ju vijnë tek unë dhe të thonë, Andi, hej, unë jam me të vërtetë keq, 319 00:14:03,100 --> 00:14:07,620 por unë mendoj se ka një çift në rreshta tim Kodi mbrëmë që unë lloj i googled, 320 00:14:07,620 --> 00:14:10,120 mori off e qipi Del nga shtrati, kopjoni dhe të ngjit, 321 00:14:10,120 --> 00:14:13,680 dhe unë jam me të vërtetë, me të vërtetë keq për këtë, let me know. 322 00:14:13,680 --> 00:14:16,900 Ju lutem, mos e le të acarohet vetëm dhe vetëm shpresoj se kam kapur atë. 323 00:14:16,900 --> 00:14:17,784 Ne do të kapur atë. 324 00:14:17,784 --> 00:14:18,450 Vetëm të vijnë tek unë. 325 00:14:18,450 --> 00:14:20,520 Let me know brenda 72 orëve. 326 00:14:20,520 --> 00:14:22,240 Ne do të gjej një zgjidhje. 327 00:14:22,240 --> 00:14:26,679 Dhe ne premtojmë se ne nuk do t'i referohemi Autoritetet e universitetit në thelb. 328 00:14:26,679 --> 00:14:29,220 Pra, kjo është në interesin tuaj më të mirë të vetëm të jetë i sinqertë me të gjithë 329 00:14:29,220 --> 00:14:31,720 përfshirë në kursin. 330 00:14:31,720 --> 00:14:34,630 >> NE RREGULL. 331 00:14:34,630 --> 00:14:35,240 NE RREGULL. 332 00:14:35,240 --> 00:14:37,800 Deri tani, shpejt përpara Unë të lëvizur në, bën askujt 333 00:14:37,800 --> 00:14:42,670 kanë pyetje në lidhje me logjistikën se si kurset ne jemi duke shkuar për të drejtuar, 334 00:14:42,670 --> 00:14:45,982 si seksione janë duke shkuar për të kandiduar, asnjë nga kjo? 335 00:14:45,982 --> 00:14:46,711 NE RREGULL. 336 00:14:46,711 --> 00:14:47,210 Po. 337 00:14:47,210 --> 00:14:48,126 >> Audienca: [padëgjueshme]? 338 00:14:48,126 --> 00:14:50,414 339 00:14:50,414 --> 00:14:51,080 ANDI Peng: Po. 340 00:14:51,080 --> 00:14:54,850 Pra quizzes-- sa prej jush janë në seksionin e hënë / mërkurën? 341 00:14:54,850 --> 00:14:56,700 Sa prej jush janë në të martën / e enjte? 342 00:14:56,700 --> 00:14:58,550 OK, kështu që kjo është një ndarje të ngurta këtu. 343 00:14:58,550 --> 00:15:00,900 Pra, mënyra se si ne të drejtuar ajo në Yale është që ne 344 00:15:00,900 --> 00:15:04,040 do të ketë dy të veçantë quizzes-- një për çdo section-- se 345 00:15:04,040 --> 00:15:06,160 do të merret gjatë klasës. 346 00:15:06,160 --> 00:15:09,310 Unë mendoj se është tetor fund të tetorit, diçka të tillë, si një javë 347 00:15:09,310 --> 00:15:10,794 e quiz. 348 00:15:10,794 --> 00:15:11,960 Yeah, kështu që vetëm të vijnë në klasë. 349 00:15:11,960 --> 00:15:13,920 Në atë hënën ose të mërkurën, ju do të merrni quiz. 350 00:15:13,920 --> 00:15:16,336 Në atë martën ose të enjten, ju do të marrë një quiz tjetër. 351 00:15:16,336 --> 00:15:18,570 Por i njëjti material do të mbulohet. 352 00:15:18,570 --> 00:15:19,160 Po. 353 00:15:19,160 --> 00:15:20,660 Pyetje e mirë. 354 00:15:20,660 --> 00:15:21,160 Po. 355 00:15:21,160 --> 00:15:23,260 >> Audienca: Ku nuk kemi shkojnë për të kontrolluar nota tona? 356 00:15:23,260 --> 00:15:23,926 >> ANDI Peng: Po. 357 00:15:23,926 --> 00:15:28,420 Kështu që unë do të dërgojë nga një e-mail çfarëdo çdo javë 358 00:15:28,420 --> 00:15:31,460 kur kuize janë graded-- ose, keq, kur psets janë të vlerësohet. 359 00:15:31,460 --> 00:15:34,120 Psets janë kthyer zakonisht në mesditë ose të premten. 360 00:15:34,120 --> 00:15:37,540 Kështu që unë premtoj se unë do të përpiqen për të marrë ato përsëri tek ju 361 00:15:37,540 --> 00:15:40,000 nga mesditë të premten e ardhshme. 362 00:15:40,000 --> 00:15:44,950 >> Sa herë që unë klasën një pset, unë do të dërgoj jashtë një njoftim në librin e klasës 363 00:15:44,950 --> 00:15:47,070 që ju tregon rezultatin tuaj mund të shihet në internet. 364 00:15:47,070 --> 00:15:52,022 Në mënyrë të drejtë këtë javë, pasi unë përfundojë nota psets javës së kaluar, 365 00:15:52,022 --> 00:15:54,230 ju djema do të merrni një e-mail Njoftimi thënë ju, 366 00:15:54,230 --> 00:15:55,870 hej kjo është ajo ku ju shkoni për të parë notat tuaja. 367 00:15:55,870 --> 00:15:57,680 Dhe ju mund të shihni çdo Ndarja e notave tuaj. 368 00:15:57,680 --> 00:15:58,555 Ju mund të shihni komentet. 369 00:15:58,555 --> 00:16:00,360 Oh, gjë shpejtë gjithashtu. 370 00:16:00,360 --> 00:16:03,060 Seksionin e komenteve në të madhe Libri është vendi ku unë ndoshta do të 371 00:16:03,060 --> 00:16:05,300 shpenzojnë shumicën e kohës sime notave. 372 00:16:05,300 --> 00:16:07,094 Pra, një gjë që është të vërtetë e rëndësishme kur 373 00:16:07,094 --> 00:16:09,010 ju djema jeni duke shfletuar notat tuaja në psets tuaj 374 00:16:09,010 --> 00:16:11,400 nuk është vetëm në kërkim në rezultatin fizike 375 00:16:11,400 --> 00:16:14,630 por edhe të marrë kohë për të me të vërtetë lexuar komentet e mia. 376 00:16:14,630 --> 00:16:17,820 >> Shpesh kjo ju jep reagime se si ju jeni zgjidhjen e një problemi. 377 00:16:17,820 --> 00:16:20,480 Në qoftë se ju duhet të bëni diçka pak më mirë, 378 00:16:20,480 --> 00:16:24,080 kritika konstruktive zakonisht është më i mirë i dhënë në ato seksionin e komenteve. 379 00:16:24,080 --> 00:16:26,950 Pra ju lutem, ju lutem, unë jam duke shkuar të kalojnë kohë të shkruar komente. 380 00:16:26,950 --> 00:16:30,440 Ju lutem, unë me të vërtetë do të vlerësojmë se në qoftë se ju djema do të lexoni këto komente. 381 00:16:30,440 --> 00:16:31,170 NE RREGULL. 382 00:16:31,170 --> 00:16:34,150 Ftohtë. 383 00:16:34,150 --> 00:16:34,680 >> Në rregull. 384 00:16:34,680 --> 00:16:40,680 Pra, ne do të fillojmë të flasim dhe vetëm rishikimin shpejt 385 00:16:40,680 --> 00:16:45,040 një pjesë të materialit nga Javën zero vetëm kështu që ne jemi 386 00:16:45,040 --> 00:16:48,760 në faqen e duhur për duke filluar problemet e kësaj jave. 387 00:16:48,760 --> 00:16:52,600 Pra, lak, ndërsa është një nga tre llojet e sythe 388 00:16:52,600 --> 00:16:54,510 kemi diskutuar më herët në këtë klasë. 389 00:16:54,510 --> 00:16:57,060 >> Një lak, ndërsa në thelb është shkruar në sintaksë 390 00:16:57,060 --> 00:17:00,666 ku, ndërsa një gjendje të caktuar, bëni këtë në mënyrë të përsëritur, e drejtë? 391 00:17:00,666 --> 00:17:02,040 Mendoni se në këtë grafik këtu. 392 00:17:02,040 --> 00:17:04,780 Ju jeni do të fillojë në një pikë të caktuar në kodin tuaj. 393 00:17:04,780 --> 00:17:09,030 Ju do të jeni për të hyrë në gjendjen lak if-- Unë nuk e vet e dini, x është më pak se një. 394 00:17:09,030 --> 00:17:11,677 >> Nëse kjo është e vërtetë, ju do të jeni për të ekzekutuar trupin lak. 395 00:17:11,677 --> 00:17:14,010 Dhe ju jeni do të vazhdojmë të bëjmë që përsëri, përsëri, përsëri, 396 00:17:14,010 --> 00:17:17,900 mbi dhe over-- cila është arsyeja pse kjo është një loop-- deri sa gjendja juaj të bëhet 397 00:17:17,900 --> 00:17:19,079 i rremë. 398 00:17:19,079 --> 00:17:22,140 Pra, në këtë mënyrë, një lak, ndërsa është një nga mënyrat më të thjeshta 399 00:17:22,140 --> 00:17:25,619 për të shkruar çdo lloj kusht që ka nevojë për të përsëritur mbi dhe mbi dhe mbi. 400 00:17:25,619 --> 00:17:28,109 Vetëm të jenë të kujdesshëm kur ju jeni me shkrim çdo lloj lak 401 00:17:28,109 --> 00:17:32,140 se ju keni një kusht dalje si dhe si një update për çdo gjë që ajo 402 00:17:32,140 --> 00:17:36,714 është kështu që lak juaj nuk ka vetëm drejtuar mbi dhe mbi pafundësisht. 403 00:17:36,714 --> 00:17:38,630 Në çdo rast, ju do të jeni të dëshironi të bëni të sigurt 404 00:17:38,630 --> 00:17:42,670 që ju jeni duke ndryshuar disa aspekte të kodi juaj ose në fund të lak 405 00:17:42,670 --> 00:17:46,680 vetëm për t'u siguruar që ju keni një mënyrë i përparuar drejt gjendjes 406 00:17:46,680 --> 00:17:48,400 që ju duan të takohen në fund. 407 00:17:48,400 --> 00:17:50,239 A ka që e bëjnë kuptim për të gjithë? 408 00:17:50,239 --> 00:17:52,530 Ne thjesht nuk duan të jenë të kapur në këtë spirale ku 409 00:17:52,530 --> 00:17:55,710 ne do të shkojmë rreth e rreth dhe nuk ka asnjë mënyrë për të thyer lak. 410 00:17:55,710 --> 00:17:58,844 Dhe çdo lak në thelb ka një mënyrë për të bërë këtë. 411 00:17:58,844 --> 00:17:59,344 NE RREGULL. 412 00:17:59,344 --> 00:18:03,030 413 00:18:03,030 --> 00:18:06,060 >> Së dyti, shumë prej jush në psets tuaj Mario 414 00:18:06,060 --> 00:18:08,910 ndoshta kishte të punësuar ky lloj lak. 415 00:18:08,910 --> 00:18:11,802 Ajo është quajtur një të bëni ndërsa lak. 416 00:18:11,802 --> 00:18:14,510 Para së gjithash, mund dikush të më thoni çfarë është dallimi në mes një për ta bërë 417 00:18:14,510 --> 00:18:16,586 ndërsa lak dhe një lak, ndërsa është? 418 00:18:16,586 --> 00:18:17,086 Po. 419 00:18:17,086 --> 00:18:21,030 >> AUDIENCA: The bëni ndërsa loop shkon në fillim [e padëgjueshme]. 420 00:18:21,030 --> 00:18:22,120 >> ANDI Peng: Po, pikërisht. 421 00:18:22,120 --> 00:18:27,130 Pra, një për ta bërë, ndërsa loop gjithmonë bën çfarëdo është brenda detyrave, brenda kllapa 422 00:18:27,130 --> 00:18:30,520 atje dhe bën këtë kusht para se të kontrolluar për the-- vjen keq, 423 00:18:30,520 --> 00:18:32,940 e bën atë kod para kontrolluar për gjendjen. 424 00:18:32,940 --> 00:18:37,200 Dhe kjo është veçanërisht e rëndësishme për ne këtu në këtë klasë, sepse shumicën e kohës 425 00:18:37,200 --> 00:18:41,450 ne do të duan për të nxitur përdoruesi për disa lloj input. 426 00:18:41,450 --> 00:18:43,520 Dhe pastaj, në varësi të input ata na japin, 427 00:18:43,520 --> 00:18:46,150 atëherë ne mund të vlerësojmë, oh, të bëjë ne kemi nevojë për të nxitur ato përsëri? 428 00:18:46,150 --> 00:18:49,930 >> Pra në Mario, në qoftë se përdoruesi ju dha një lartësi negative, për shembull, 429 00:18:49,930 --> 00:18:52,990 ju jeni do të ftim parë dhe të bëjë çdo gjë që është brenda. 430 00:18:52,990 --> 00:18:54,820 Atëherë ju jeni duke shkuar për të kontrolluar kohë. 431 00:18:54,820 --> 00:18:57,570 Ju e dini, është negative 1, është se një numër pozitiv? 432 00:18:57,570 --> 00:19:00,680 Nëse nuk është, unë jam duke shkuar për të shkuar prapa dhe të përsëritur do dhe përsëritje 433 00:19:00,680 --> 00:19:03,950 dhe të përsëritur dhe të përsëritur derisa ata Së fundi ju jap një numër që ju pëlqen, 434 00:19:03,950 --> 00:19:07,002 që ne të gjithë mund të punësojë në kodin tonë. 435 00:19:07,002 --> 00:19:09,210 Është mjaft e rëndësishme për në thelb çdo input përdorues. 436 00:19:09,210 --> 00:19:11,760 Unë mund t'ju garantoj ndonjë kohë në një pset ku 437 00:19:11,760 --> 00:19:15,070 ne ju kërkojmë të dhëna çdo lloj i kodit, ne jemi 438 00:19:15,070 --> 00:19:17,540 ndoshta do të ju jap një test në të cilin ne jemi 439 00:19:17,540 --> 00:19:21,200 do të ju jap diçka të keqe se kjo është do të përpiqen për të thyer kodin tuaj. 440 00:19:21,200 --> 00:19:25,044 >> Nëse ne përpiqemi të ju pyes për të dhëna an numër i plotë, ne mund të ju jap vetëm një varg 441 00:19:25,044 --> 00:19:26,460 dhe të shohim se si do të trajtojë atë. 442 00:19:26,460 --> 00:19:30,610 Nëse ne ju kërkojmë të punësojë një moshë, ne mund të ju jap një numër negativ 443 00:19:30,610 --> 00:19:32,340 për të parë se si do të trajtojë atë. 444 00:19:32,340 --> 00:19:37,260 Vetëm sigurohuni që ju djema janë të testimit për Rastet në të cilat ju nuk merrni më të mirë 445 00:19:37,260 --> 00:19:38,590 input, le të them vetëm. 446 00:19:38,590 --> 00:19:40,510 Dhe një për ta bërë, ndërsa loop është shumë herë më e mirë 447 00:19:40,510 --> 00:19:45,260 mënyrë për të hartuar kodin tuaj kështu që ajo i plotëson atë qëllimin. 448 00:19:45,260 --> 00:19:45,760 NE RREGULL. 449 00:19:45,760 --> 00:19:48,930 450 00:19:48,930 --> 00:19:49,470 >> NE RREGULL. 451 00:19:49,470 --> 00:19:53,270 Pra, kjo është ndoshta më e lak kompleks nga tre 452 00:19:53,270 --> 00:19:54,990 që ne kemi shikuar deri më tani. 453 00:19:54,990 --> 00:19:56,689 Dhe kjo duket shumë e frikshme në fillim. 454 00:19:56,689 --> 00:19:59,730 Por unë ju garantoj, një herë ju djema merrni ul receptorin e telefonit se si të përdorin një për lak, 455 00:19:59,730 --> 00:20:03,320 kjo është një nga gjërat më të dobishme, shumica e mjete të dobishme në arsenalin tuaj 456 00:20:03,320 --> 00:20:05,300 për të lëvizur përpara në këtë klasë. 457 00:20:05,300 --> 00:20:09,920 >> Kështu për shembull, në Scratch, kemi pasur këtë bllok shumë të thjeshtë 458 00:20:09,920 --> 00:20:13,180 se vetëm tha përsëritur këtë sigurt frazat numër të caktuar të kohës. 459 00:20:13,180 --> 00:20:16,260 Nga rruga, SAJ-- kjo është Scaz Andi Jason. 460 00:20:16,260 --> 00:20:18,740 Ne shumë herë nënshkruajë email SAJ-it tonë. 461 00:20:18,740 --> 00:20:20,360 Nëse themi SAJ, mos të ngatërrohet. 462 00:20:20,360 --> 00:20:22,630 Kjo është vetëm ne. 463 00:20:22,630 --> 00:20:28,600 >> Pra në Scratch, ne ishim në gjendje të kemi një bllok që tha: përsëris unë dua SAJ-it! 464 00:20:28,600 --> 00:20:29,430 10 herë. 465 00:20:29,430 --> 00:20:30,130 Shumë e thjeshtë. 466 00:20:30,130 --> 00:20:32,302 Logjika prapa që është një shumë, shumë e thjeshtë, apo jo? 467 00:20:32,302 --> 00:20:35,260 Unë dua që së pari të kalojnë nëpër të parët kohë dhe të shohim se, për herë të dytë 468 00:20:35,260 --> 00:20:38,510 dhe të shohim atë kohë, të tretë, e kështu me radhë dhe kështu me radhë, deri sa ju goditi në 10. 469 00:20:38,510 --> 00:20:41,960 >> Dhe mënyra se si do të përfaqësojë atë në Kodi është vetëm me anë të një të thjeshtë për lak. 470 00:20:41,960 --> 00:20:45,440 Pra për të, ju jeni do të deklarojë ndryshueshme tuaj këtu, në këtë rast, 471 00:20:45,440 --> 00:20:46,349 me një int. 472 00:20:46,349 --> 00:20:47,390 Ne jemi duke shkuar për të përmendur atë unë. 473 00:20:47,390 --> 00:20:49,500 Ne jemi duke shkuar për të nisja atë në 0. 474 00:20:49,500 --> 00:20:52,490 Dhe edicioni ndalimi është do të jetë i është më pak se 10. 475 00:20:52,490 --> 00:20:54,622 Dhe update do të jetë i ++. 476 00:20:54,622 --> 00:20:57,750 >> Dhe brenda lak, ajo do për të ekzekutuar deri në fund atë 477 00:20:57,750 --> 00:21:01,490 godet fundin e condition-- në të cilën rast, ajo do të thyejnë lak. 478 00:21:01,490 --> 00:21:04,600 Nuk duhet të jetë gjëra që ju djema keni parë të gjitha llojet e para 479 00:21:04,600 --> 00:21:07,270 dhe kishte për të bërë për problemin tuaj të vendosur një të tillë. 480 00:21:07,270 --> 00:21:12,310 A ka dikush ndonjë pyetje lidhur për sythe të drejtë tani? 481 00:21:12,310 --> 00:21:12,930 NE RREGULL. 482 00:21:12,930 --> 00:21:13,430 I madh. 483 00:21:13,430 --> 00:21:17,520 484 00:21:17,520 --> 00:21:18,620 >> NE RREGULL. 485 00:21:18,620 --> 00:21:22,270 Pra, për ato prej jush që kanë lexoni spekulim pset për këtë javë 486 00:21:22,270 --> 00:21:27,690 e dini se ne do të duhet të punësojë diçka që quhet ASCII dhe tabela ASCII. 487 00:21:27,690 --> 00:21:32,380 Kështu Davidi në leksionin e kaloi në një kohë të shkurtër Si Kompjuter essentially-- gjithçka 488 00:21:32,380 --> 00:21:35,410 është i koduar në një kompjuteri në binar, në zero dhe ato. 489 00:21:35,410 --> 00:21:39,740 Dhe mënyra se kompjuterat janë në gjendje për të ruajtur vlera të ndryshme, përveç 490 00:21:39,740 --> 00:21:44,360 në zero dhe ato janë përmes hartës ato numra për të përfaqësuar shifra të tjera 491 00:21:44,360 --> 00:21:47,220 apo karaktere në thelb të tjera. 492 00:21:47,220 --> 00:21:49,810 >> Pra, në këtë rast, një ASCII table-- të gjitha ajo ka 493 00:21:49,810 --> 00:21:53,600 është karaktere hartë, apo gërma, në numra. 494 00:21:53,600 --> 00:21:57,385 Pra skedar kodi burim në tuaj computer-- ajo e sheh, 495 00:21:57,385 --> 00:22:00,010 hey, një bandë e zero dhe ato, zero dhe ato, zero dhe ato. 496 00:22:00,010 --> 00:22:02,350 Kjo është ajo që ruhet në kujtim aktuale e kompjuterit tuaj. 497 00:22:02,350 --> 00:22:04,750 >> Por, kur ne njerëzit duan të komunikuar me kompjuter, 498 00:22:04,750 --> 00:22:08,249 ne want-- themi, për shembull, në qoftë se unë dua uppercase A, 499 00:22:08,249 --> 00:22:10,540 Unë do të duhet disa mënyra e thënë kompjuterin, oh, 500 00:22:10,540 --> 00:22:16,300 kur unë lloji uppercase A, dua të them ky përfaqësim në binar. 501 00:22:16,300 --> 00:22:22,260 >> Dhe kështu mënyra që ne bëjmë që hodhi një gjë arbitrar quajtur një tryezë ASCII, 502 00:22:22,260 --> 00:22:25,020 ku ne, si njerëz, si programuesit, disa kohë më parë, 503 00:22:25,020 --> 00:22:28,660 ne kemi vendosur që në mënyrë arbitrare ne u do të caktojë këto numrin 504 00:22:28,660 --> 00:22:30,960 Vlerat e këtyre karaktereve. 505 00:22:30,960 --> 00:22:32,720 >> Kështu që ju djema mund google këtë online. 506 00:22:32,720 --> 00:22:37,120 Unë mendoj se ka një lidhje për atë në tuaj pset-- vetëm një tabelë hartë ASCII, ASCII 507 00:22:37,120 --> 00:22:37,720 tryezë. 508 00:22:37,720 --> 00:22:40,722 Ajo vetëm përkthehet binar Numrat në karaktere. 509 00:22:40,722 --> 00:22:42,930 Dhe kjo do të jetë shumë dobishme për të vendosur tuaj e problemeve 510 00:22:42,930 --> 00:22:45,470 sa herë që ju dëshironi të llogaritur asgjë ose nëse ju 511 00:22:45,470 --> 00:22:47,880 duan për të shfaqur të caktuara karaktere ose integers 512 00:22:47,880 --> 00:22:50,327 ose manipuluar karaktere të caktuara. 513 00:22:50,327 --> 00:22:52,160 Ajo do të jetë shumë e rëndësishme që ju të gjithë 514 00:22:52,160 --> 00:22:55,140 e di se si për të lundruar një tryezë ASCII. 515 00:22:55,140 --> 00:23:01,260 >> Kështu për shembull, uppercase A përfaqësohet nga numri 65. 516 00:23:01,260 --> 00:23:04,207 Dhe vogle një përfaqësohet nga 97. 517 00:23:04,207 --> 00:23:07,040 Pra, është e rëndësishme të dini se dallimi në mes të dy vlerave 518 00:23:07,040 --> 00:23:08,320 është 32. 519 00:23:08,320 --> 00:23:13,210 Shpesh, në qoftë se keni nevojë për të kthyer nga njëra-tjetrën, dallimi është 32. 520 00:23:13,210 --> 00:23:15,710 Dhe mos u shqetësoni nëse ju jeni lloj i hutuar për këtë në fillim. 521 00:23:15,710 --> 00:23:20,230 Ne do të shkojnë rreth asaj se si ne do punësojnë këtë në kodin aktual. 522 00:23:20,230 --> 00:23:24,700 523 00:23:24,700 --> 00:23:26,380 >> NE RREGULL. 524 00:23:26,380 --> 00:23:30,770 Pra, për ato prej jush me laptopë jashtë, të ndjehen të lirë për të tërhequr deri një tryezë ASCII, 525 00:23:30,770 --> 00:23:36,030 sepse këto ndoshta do të të kërkojë nga ju djema të referencës 526 00:23:36,030 --> 00:23:38,100 çfarë personazhet janë. 527 00:23:38,100 --> 00:23:38,640 NE RREGULL. 528 00:23:38,640 --> 00:23:42,840 >> Pra, duke e ditur se disa karaktere hartë disa numrave të caktuar, 529 00:23:42,840 --> 00:23:47,240 në qoftë se unë do të kandidojë vetëm i pari Linja e që code-- printf A, 530 00:23:47,240 --> 00:23:50,900 vogle një minus uppercase A. A ka dikush 531 00:23:50,900 --> 00:23:55,880 kanë me mend në atë që do të jetë shtypjen nga të ekranit të drejtë tani? 532 00:23:55,880 --> 00:23:58,190 >> Pra, para së gjithash, çfarë vogle një përfaqësojnë? 533 00:23:58,190 --> 00:24:00,990 Çfarë numri është se koduar në tabelën ASCII. 534 00:24:00,990 --> 00:24:01,490 Na vjen keq? 535 00:24:01,490 --> 00:24:02,630 >> Audienca: 97? 536 00:24:02,630 --> 00:24:03,630 >> ANDI Peng: 97, e madhe. 537 00:24:03,630 --> 00:24:05,077 Dhe çfarë është uppercase A? 538 00:24:05,077 --> 00:24:06,330 >> Audienca: 65. 539 00:24:06,330 --> 00:24:08,255 >> ANDI Peng: Pra, çfarë është 97 minus 65? 540 00:24:08,255 --> 00:24:09,227 >> Audienca: 32. 541 00:24:09,227 --> 00:24:09,810 ANDI Peng: OK. 542 00:24:09,810 --> 00:24:13,530 Pra, çfarë mendoni ju djema do të ndodh kur i dhëna se linjë e kodit 543 00:24:13,530 --> 00:24:14,670 në kompjuterin tim? 544 00:24:14,670 --> 00:24:17,981 545 00:24:17,981 --> 00:24:19,896 >> Audienca: [padëgjueshme]. 546 00:24:19,896 --> 00:24:21,020 ANDI Peng: Na vjen keq, flasin. 547 00:24:21,020 --> 00:24:22,520 Nuk shqetësohet. 548 00:24:22,520 --> 00:24:25,750 Kjo është një shumë e sigurt Mjedisi, minus kamera. 549 00:24:25,750 --> 00:24:27,550 Ne jemi të gjithë do to-- pa shqetësime. 550 00:24:27,550 --> 00:24:30,940 Vetëm ne jemi të gjithë duke shkuar për të pretendojë si kjo është vetëm na trishtues në këtë dhomë. 551 00:24:30,940 --> 00:24:31,480 Nuk shqetësohet. 552 00:24:31,480 --> 00:24:33,410 Nuk ka pyetje është shumë i trashë. 553 00:24:33,410 --> 00:24:35,300 Nuk ka përgjigje është një përgjigje budalla. 554 00:24:35,300 --> 00:24:38,260 Unë jam ndoshta do të bëjë gabime në rrjedhën e mësimit tim. 555 00:24:38,260 --> 00:24:40,740 Seriozisht, djema, vetëm zbuloj atë. 556 00:24:40,740 --> 00:24:43,092 Kini besim në veten tuaj, ju e dini se? 557 00:24:43,092 --> 00:24:43,800 Pra, çfarë ishte kjo? 558 00:24:43,800 --> 00:24:47,990 Kush tha se përgjigje e fundit? 559 00:24:47,990 --> 00:24:48,540 NE RREGULL. 560 00:24:48,540 --> 00:24:50,380 Bërtas se bukur dhe qartë. 561 00:24:50,380 --> 00:24:51,220 >> Audienca: 32? 562 00:24:51,220 --> 00:24:51,850 >> ANDI Peng: 32. 563 00:24:51,850 --> 00:24:54,141 OK, le të drejtuar këtë kod dhe të shohim nëse kjo është ajo që ndodh. 564 00:24:54,141 --> 00:25:00,260 565 00:25:00,260 --> 00:25:00,760 NE RREGULL. 566 00:25:00,760 --> 00:25:03,300 567 00:25:03,300 --> 00:25:06,360 Pra, si ju djema mund të lloj shih, simbol tipik unë e keni bërë 568 00:25:06,360 --> 00:25:12,250 ngritur këtu për mënyrën se si ne do të punësojë çdo lloj i programit në kompjuterin tonë. 569 00:25:12,250 --> 00:25:14,770 Ne kemi funksioni ynë kryesor brenda funksioni ynë kryesor. 570 00:25:14,770 --> 00:25:17,265 Unë jam vetëm do të kopjoni dhe ngjisni këtë linjë të kodit. 571 00:25:17,265 --> 00:25:21,082 572 00:25:21,082 --> 00:25:23,540 Gjithashtu të jenë të kujdesshëm kur ju djema janë kopjimi dhe pasting kodin. 573 00:25:23,540 --> 00:25:28,750 Operatorët Ndonjëherë caktuara mos paste mbi saktë. 574 00:25:28,750 --> 00:25:31,397 Në këtë rast, minus shenjë ishte në fakt një dash. 575 00:25:31,397 --> 00:25:32,980 Dhe kështu kompjuteri nuk e ka marr atë. 576 00:25:32,980 --> 00:25:35,870 Kështu që unë kam për të shkuar mbrapa dhe fizikisht Rivendos atë. 577 00:25:35,870 --> 00:25:37,846 Vetëm të jenë të kujdesshëm kur ju djema janë duke bërë atë. 578 00:25:37,846 --> 00:25:41,178 579 00:25:41,178 --> 00:25:42,660 >> NE RREGULL. 580 00:25:42,660 --> 00:25:43,980 Ne jemi duke shkuar për të drejtuar këtë këtu. 581 00:25:43,980 --> 00:25:45,670 Pra, ne jemi duke shkuar për cd në seksioni2 tonë. 582 00:25:45,670 --> 00:25:50,470 583 00:25:50,470 --> 00:25:52,030 Unë e kam quajtur këtë asciimath program. 584 00:25:52,030 --> 00:25:55,690 Pra mbani mend, kur ne të drejtuar ndonjë Programi, ne duam që së pari të përpiloni atë 585 00:25:55,690 --> 00:25:57,150 duke xhiruar atë nëpërmjet make tonë. 586 00:25:57,150 --> 00:26:00,030 Dhe pastaj ne duam të vërtetë të drejtuar programi duke bërë dot-plagë. 587 00:26:00,030 --> 00:26:01,280 Pra, ne jemi duke shkuar për ./asciimath. 588 00:26:01,280 --> 00:26:05,780 589 00:26:05,780 --> 00:26:06,590 >> Drejtë, atje ne do të shkojmë. 590 00:26:06,590 --> 00:26:07,410 Dhe ne shohim 32. 591 00:26:07,410 --> 00:26:07,930 Të lumtë. 592 00:26:07,930 --> 00:26:10,340 Ju meritojnë një pjesë të karamele. 593 00:26:10,340 --> 00:26:11,160 Karamele për ju. 594 00:26:11,160 --> 00:26:11,900 Më vjen keq. 595 00:26:11,900 --> 00:26:13,100 Në rregull. 596 00:26:13,100 --> 00:26:13,670 NE RREGULL. 597 00:26:13,670 --> 00:26:18,070 Pra, ne mund të kthehemi në shembullin tonë këtu. 598 00:26:18,070 --> 00:26:23,530 599 00:26:23,530 --> 00:26:24,345 Aah, nr. 600 00:26:24,345 --> 00:26:29,147 601 00:26:29,147 --> 00:26:31,090 Aah. 602 00:26:31,090 --> 00:26:32,490 NE RREGULL. 603 00:26:32,490 --> 00:26:34,610 Unë jam vetëm duke shkuar për ta mbajtur atë si kjo. 604 00:26:34,610 --> 00:26:48,520 605 00:26:48,520 --> 00:26:51,240 NE RREGULL. 606 00:26:51,240 --> 00:26:51,740 NE RREGULL. 607 00:26:51,740 --> 00:26:55,340 Pra, si ju djema mund të shihni, ne mund të bëjmë shumë gjëra shumë interesante, 608 00:26:55,340 --> 00:26:58,880 shumë gjëra shumë të ftohtë, një shumë e gjëra shumë të ndërlikuara që përfshijnë 609 00:26:58,880 --> 00:27:02,720 Karaktere ASCII dhe numra. 610 00:27:02,720 --> 00:27:05,890 Pasi që ju të merrni poshtë për të vijë pesë, kjo është një shumë të ndjekin së bashku. 611 00:27:05,890 --> 00:27:07,640 Ne nuk jemi duke shkuar për të shkuar nëpërmjet seksionit. 612 00:27:07,640 --> 00:27:10,720 Ndjehen të lirë për, nëse ju mund të, arsyetojnë atë në letër 613 00:27:10,720 --> 00:27:14,750 për herë të parë në çfarë duhet të ndodhë kur ju input një varg të tillë të vlerave. 614 00:27:14,750 --> 00:27:19,720 Për shembull, në këtë linjë e fundit, ne kemi z-- cila përfaqëson një number-- caktuar 615 00:27:19,720 --> 00:27:24,740 a-- cila gjithashtu paraqet një disa number-- plus 1 modulos 26 616 00:27:24,740 --> 00:27:26,750 plus vogle a. 617 00:27:26,750 --> 00:27:29,220 >> Në qoftë se ju djema mbani lexim përmes këtyre, ju 618 00:27:29,220 --> 00:27:34,009 mund të shohim një model të dalë në se si ne jemi duke manipuluar kodin. 619 00:27:34,009 --> 00:27:36,050 I highly, highly sugjeroj pasi të gjithë seksion ju 620 00:27:36,050 --> 00:27:38,160 djema të shkojnë përpara dhe të dhëna ato të gjitha në kompjuterin tuaj 621 00:27:38,160 --> 00:27:40,060 dhe të shohim se çfarë lloj Numrat janë të ardhur nga 622 00:27:40,060 --> 00:27:43,090 dhe arsyetimin përmes pse ato janë ndodh, sepse për psets tuaj 623 00:27:43,090 --> 00:27:45,060 ajo do të jetë me të vërtetë i rëndësishëm për ju për të kuptuar 624 00:27:45,060 --> 00:27:47,132 pse disa gjëra janë duke ndodhur. 625 00:27:47,132 --> 00:27:48,590 Të gjitha këto slides do të jetë online. 626 00:27:48,590 --> 00:27:51,510 Kështu që nuk ka shqetësime në lidhje me duke u përpjekur për fizikisht kopje shënime. 627 00:27:51,510 --> 00:27:52,510 Internet Gjithçka-së. 628 00:27:52,510 --> 00:27:54,050 Ky seksion vetë do të jetë online. 629 00:27:54,050 --> 00:27:57,500 Të gjithë kodi im burim që Unë jam running do të jetë online. 630 00:27:57,500 --> 00:27:58,180 Po. 631 00:27:58,180 --> 00:27:59,430 A ju ende keni një pyetje? 632 00:27:59,430 --> 00:28:00,587 Audienca: Çfarë është modulos? 633 00:28:00,587 --> 00:28:01,170 ANDI Peng: OK. 634 00:28:01,170 --> 00:28:05,620 Pra modulo është një operator që do të të jetë shumë e rëndësishme për pset djemtë tuaj s 635 00:28:05,620 --> 00:28:06,690 këtu. 636 00:28:06,690 --> 00:28:12,280 Pra, mënyra se operatorët në C dhe në punën e programimit 637 00:28:12,280 --> 00:28:16,360 është se ju keni atë që e quajti simbol ndarje dhe simbol modulus, 638 00:28:16,360 --> 00:28:18,350 e cila është vetëm si shenjë për qind. 639 00:28:18,350 --> 00:28:24,840 >> Pra, në C, kur ju bëni një numër të plotë ndarë nga një numër i plotë me një plagë, 640 00:28:24,840 --> 00:28:27,720 C ka një tendencë për të duan të prerë off të gjitha pikat dhjetore, 641 00:28:27,720 --> 00:28:30,290 për shkak se një numër i plotë dëshiron për të kthyer një numër të plotë. 642 00:28:30,290 --> 00:28:33,550 Kjo nuk do të duan të jenë një të dyfishtë me një bandë e numrave dhjetorë të gjithë pas tij. 643 00:28:33,550 --> 00:28:39,322 >> Pra, nëse unë bëj 3 ndarë nga 2, ajo do të prerë 0.5 dhe vetëm të ju jap 1. 644 00:28:39,322 --> 00:28:41,530 Pra, kjo është diçka për të të jetë shumë të kujdesshëm kur ju jeni 645 00:28:41,530 --> 00:28:45,294 duke bërë çdo lloj matematikës në programimin, është se numrat ju merrni 646 00:28:45,294 --> 00:28:47,210 nuk mund të jetë numrat se keni qenë të menduarit, 647 00:28:47,210 --> 00:28:50,190 cila është arsyeja pse arrestimi në tuaj pset fundit është aq e rëndësishme. 648 00:28:50,190 --> 00:28:51,980 >> Modulo ju jep pjesën e mbetur. 649 00:28:51,980 --> 00:28:56,200 Kështu për shembull, në qoftë se kam bërë 3 modulo 2-- kështu 3 për qind shenjë 2-- 650 00:28:56,200 --> 00:28:58,020 kjo do t'ju japë pjesën e mbetur të që. 651 00:28:58,020 --> 00:29:00,460 Pra, 3 ndarë nga 2 është 1.5. 652 00:29:00,460 --> 00:29:01,410 Është 1 Pjesa e 1. 653 00:29:01,410 --> 00:29:04,600 Kjo do të ju jap 1, e cila është pjesa tjetër e që. 654 00:29:04,600 --> 00:29:07,361 >> Pra, kur ju djema janë duke lëvizur përmes tryezë ASCII, 655 00:29:07,361 --> 00:29:09,735 modulo do të përfundojë si diçka që është shumë e rëndësishme, 656 00:29:09,735 --> 00:29:11,240 dhe ne do të diskutuar se më vonë. 657 00:29:11,240 --> 00:29:17,750 658 00:29:17,750 --> 00:29:19,040 >> NE RREGULL. 659 00:29:19,040 --> 00:29:27,300 Pra, diçka që është shumë, mjaft i ri dhe mjaft unike 660 00:29:27,300 --> 00:29:31,920 që ne kemi diskutuar këtë javë koncepti i asaj që një grup është. 661 00:29:31,920 --> 00:29:34,370 Pra array është i pari lloji i strukturës së të dhënave 662 00:29:34,370 --> 00:29:36,320 se ne jemi duke shkuar për hasni në këtë klasë. 663 00:29:36,320 --> 00:29:40,010 Të gjitha Struktura e të dhënave është është disa lloj arbitrare, 664 00:29:40,010 --> 00:29:43,370 fjalë për fjalë gjëra të tilla si struktura që ne si programuesit kanë krijuar, 665 00:29:43,370 --> 00:29:47,890 që ne kemi vënë në kodin tonë që mund të përmbajnë pjesë të tjera të kodit. 666 00:29:47,890 --> 00:29:51,090 >> Pra, në këtë kuptim, një array-- të mendojnë për atë si një fotografi e kabinetit, 667 00:29:51,090 --> 00:29:53,470 ku në qoftë se keni hapur ndryshëm raftet e kabinetit tuaj fotografi, 668 00:29:53,470 --> 00:29:55,630 ju mund të hyni gjëra të ndryshme. 669 00:29:55,630 --> 00:29:58,630 Në kujtim, një grup është vetëm duke bërë e njëjta gjë në kompjuterin tuaj. 670 00:29:58,630 --> 00:30:01,730 Ju mund të keni ne ndryshme blocks-- telefononi ata indices-- nga një grup. 671 00:30:01,730 --> 00:30:04,210 Është vetëm si një bllok, një raft i kujtesës 672 00:30:04,210 --> 00:30:07,580 që ne kemi krijuar brenda tuaj kompjuter që ju mund të dhëna 673 00:30:07,580 --> 00:30:10,270 disa gjëra në hapësira të ndryshme. 674 00:30:10,270 --> 00:30:18,000 >> Pra, me një grup, ju gjithmonë duhet të specify-- 675 00:30:18,000 --> 00:30:22,360 ju duhet të specifikoni deklaruar një array në format e mëposhtme. 676 00:30:22,360 --> 00:30:24,290 Ju jeni duke shkuar për të parë të specifikojë llojin e të dhënave 677 00:30:24,290 --> 00:30:25,831 që ju doni të krijoni të vektorit. 678 00:30:25,831 --> 00:30:28,870 Nëse unë dua një rrjet të integers, Unë do të vënë int drejtë atje. 679 00:30:28,870 --> 00:30:32,079 Nëse unë dua një grup të strings, Unë jam duke shkuar për të vënë vargjet atje, 680 00:30:32,079 --> 00:30:34,995 emri i grup tuaj, dhe pastaj ju jeni do të ketë kllapa katrore. 681 00:30:34,995 --> 00:30:39,580 Dhe brenda kllapave katrore, ju jeni do të ketë madhësinë e array tuaj. 682 00:30:39,580 --> 00:30:42,900 >> Diçka që është me të vërtetë e rëndësishme për të mbani në mend kur të krijimit të vargjeve është 683 00:30:42,900 --> 00:30:46,530 që, sapo ju të krijoni një array, se madhësia nuk mund të ndryshojë. 684 00:30:46,530 --> 00:30:50,180 Pra, nëse ju e dini se tani ju keni një rrjet të madhësisë 10, 685 00:30:50,180 --> 00:30:54,550 ju e dini se unë jam do të ketë 10 qeliza brenda ose 10 indekseve në kuadër të këtij grup, 686 00:30:54,550 --> 00:30:56,830 dhe ajo kurrë nuk do për të zgjeruar ose zvogëlohet 687 00:30:56,830 --> 00:30:59,850 pa marrë parasysh se çfarë, dhe se nuk ka aktualisht vetëm 10 blloqe të hapësirës 688 00:30:59,850 --> 00:31:04,490 ndarë në kujtesën tuaj që mund të ruajë deri në 10 gjëra të çdo gjë që ju keni vendosur. 689 00:31:04,490 --> 00:31:08,790 >> Pra, në këtë mënyrë, një tip të dhënat grup, struktura e të dhënave që është një grup 690 00:31:08,790 --> 00:31:13,392 është shumë ndryshe nga disa të tjerë që do të të mbuluar më vonë në këtë kurs. 691 00:31:13,392 --> 00:31:15,170 Po. 692 00:31:15,170 --> 00:31:20,080 Për shembull, në qoftë se ju të kërkuar për të krijojë një rrjet të madhësisë 3 që 693 00:31:20,080 --> 00:31:23,670 përfshira variabla e integer-- oh, sorry, i temperature-- 694 00:31:23,670 --> 00:31:25,640 dhe temperatura, i kurs, eshte nje numer i plote. 695 00:31:25,640 --> 00:31:28,710 >> Pra, ne do të krijojë int, që është lloj të dhënat e asaj që ne duam të ruajtur. 696 00:31:28,710 --> 00:31:32,680 Ne jemi duke shkuar për të thirrur këtë temperaturat për hir të Nomenklaturës së emërtimit 697 00:31:32,680 --> 00:31:34,200 diçka që ne të gjithë e kuptojmë. 698 00:31:34,200 --> 00:31:35,900 Dhe ne do të kemi kllapa katrore. 699 00:31:35,900 --> 00:31:37,200 Dhe ne duam tre numra. 700 00:31:37,200 --> 00:31:39,000 Pra, ne jemi duke shkuar për të vënë tre në brendësi të saj. 701 00:31:39,000 --> 00:31:41,041 >> Diçka që është me të vërtetë e rëndësishme që të mbani në mend 702 00:31:41,041 --> 00:31:43,530 është se vargjeve janë të indeksuar zero. 703 00:31:43,530 --> 00:31:46,410 E gjithë kjo do të thotë është se ju të fillojë me indeksin e 0, 704 00:31:46,410 --> 00:31:49,800 dhe ju drejtuar deri me Madhësia e vektorit minus 1. 705 00:31:49,800 --> 00:31:52,730 Kështu për shembull këtu, ne kanë një rrjet të madhësisë 3. 706 00:31:52,730 --> 00:31:54,680 Ajo do të jetë në gjendje të mbajë tre vlerat. 707 00:31:54,680 --> 00:31:57,450 Por numrat themselves-- që numrin, array, që indeksi, 708 00:31:57,450 --> 00:32:00,271 array, janë 0 me 2. 709 00:32:00,271 --> 00:32:03,520 Pra djema, të jetë e vërtetë, të vërtetë të kujdesshëm kur ju jeni duke kaluar problemet tuaja të caktuara 710 00:32:03,520 --> 00:32:06,500 dhe krijimin e çdo lloj grup, sepse një shumë e herë ajo është 711 00:32:06,500 --> 00:32:08,490 me të vërtetë, të vërtetë e lehtë për të harrojmë se. 712 00:32:08,490 --> 00:32:11,840 Unë në fakt nuk kam indeksin i 3, që aktualisht vetëm 713 00:32:11,840 --> 00:32:13,130 kanë indeksin e 2. 714 00:32:13,130 --> 00:32:16,046 Dhe në qoftë se ju përpiqeni të hyrë në indeksin e tretë, 715 00:32:16,046 --> 00:32:18,170 ajo do të jetë ajo që është quhet terminator null. 716 00:32:18,170 --> 00:32:19,990 Kjo nuk do të vërtetë të ekzistojnë në rrjet. 717 00:32:19,990 --> 00:32:21,781 Dhe kompjuteri është nuk do të pëlqen kjo. 718 00:32:21,781 --> 00:32:24,570 Pra, kini kujdes kur ju jeni duke hyrë në gjëra vetëm 719 00:32:24,570 --> 00:32:28,070 për të siguruar që ju të mbani mend se vargjeve janë zero-indeksuar. 720 00:32:28,070 --> 00:32:28,880 >> NE RREGULL. 721 00:32:28,880 --> 00:32:34,030 Pra, shembulli i parë është vetëm Një mënyrë për të krijuar një rrjet. 722 00:32:34,030 --> 00:32:36,790 Shembulli i dytë kam më poshtë është vetëm një mënyrë të veçantë 723 00:32:36,790 --> 00:32:40,210 i krijimit të asaj që është e njëjtë e të dhënave Struktura që ne kemi futur vetëm. 724 00:32:40,210 --> 00:32:44,347 Pra, në vend të fizikisht drejtimin përmes dhe vënien në temperaturë prej 0 725 00:32:44,347 --> 00:32:47,180 është e barabartë me çfarëdo, temperatura e 1 është e barabartë me çfarëdo, temperaturës 2 është e barabartë 726 00:32:47,180 --> 00:32:50,950 çfarëdo, unë mund të vërtetë vetëm drejtpërdrejt të krijuar të gjitha në një rresht 727 00:32:50,950 --> 00:32:53,010 në temperaturë kllapa katrore është e barabartë. 728 00:32:53,010 --> 00:32:56,536 >> Dhe vini re në këtë rast, ju nuk keni nevojë të specifikojë sa i madh array juaj është, 729 00:32:56,536 --> 00:32:59,160 sepse kompjuteri do të shkoni nëpër dhe të shihni se nuk ka 730 00:32:59,160 --> 00:33:01,570 tri elemente në këto formatimin e teksteve kaçurrel. 731 00:33:01,570 --> 00:33:04,000 Dhe kjo do të dinë, OK, Unë kam nevojë për një rrjet të madhësisë 3. 732 00:33:04,000 --> 00:33:07,440 Ju nuk do të duhet të input ajo mënyrën e mëposhtme. 733 00:33:07,440 --> 00:33:10,170 >> Dhe gjithashtu, vërtet, në këtë mënyrë. 734 00:33:10,170 --> 00:33:12,610 A ka dikush pyetje në lidhje me mënyrën se si ne të vargjeve 735 00:33:12,610 --> 00:33:17,391 ose se si struktura e një sërë punon? 736 00:33:17,391 --> 00:33:17,890 Po. 737 00:33:17,890 --> 00:33:18,806 >> Audienca: [padëgjueshme]? 738 00:33:18,806 --> 00:33:21,649 739 00:33:21,649 --> 00:33:22,690 ANDI Peng: Po, pikërisht. 740 00:33:22,690 --> 00:33:26,150 Pra, nëse ju do të deklarojë dhe nisja një grup metodën e mëposhtme, 741 00:33:26,150 --> 00:33:28,477 i cili është mënyrë të dytë, ju mund të lënë vetëm ato. 742 00:33:28,477 --> 00:33:30,310 Dhe kompjuteri automatikisht e di se ajo 743 00:33:30,310 --> 00:33:33,950 ka nevojë për të numëruar sa shumë elemente janë në ato formatimin e teksteve kaçurrel, të ndara 744 00:33:33,950 --> 00:33:34,930 me presje. 745 00:33:34,930 --> 00:33:37,517 >> Kështu që këtu ata e shohin 65, 87, 30. 746 00:33:37,517 --> 00:33:39,600 Pra, kompjuteri di, oh, ka tre integers. 747 00:33:39,600 --> 00:33:45,960 Unë e di se për të krijuar një emër array Temperatura me tre elementë në të. 748 00:33:45,960 --> 00:33:46,590 Pyetje e mirë. 749 00:33:46,590 --> 00:33:47,090 Po. 750 00:33:47,090 --> 00:33:51,590 >> Audienca: A nuk është e mundur për të krijuar një grup me lloje të ndryshme të të dhënave 751 00:33:51,590 --> 00:33:53,021 që mund të hyrë në të? 752 00:33:53,021 --> 00:33:56,746 Për shembull, me integers [e padëgjueshme]? 753 00:33:56,746 --> 00:33:59,120 ANDI Peng: Për qëllimet e kësaj klase, jo, tani për tani. 754 00:33:59,120 --> 00:34:03,070 Kur keni krijuar një të dhënave strukturuar si një rrjet, 755 00:34:03,070 --> 00:34:04,990 ju jeni duke thënë kompjuter, hej, kam nevojë për ty 756 00:34:04,990 --> 00:34:08,159 të ndajë këtë shumë kujtesës në hard drive time, 757 00:34:08,159 --> 00:34:10,690 me çdo qelizë qenit numër i caktuar i bit. 758 00:34:10,690 --> 00:34:13,429 >> Mos harroni kemi mësuar në javë zero që të dhënat e ndryshme 759 00:34:13,429 --> 00:34:15,300 Llojet e kanë madhësi të ndryshme? 760 00:34:15,300 --> 00:34:17,630 Kështu për shembull, një varg është një sasi e ndryshme 761 00:34:17,630 --> 00:34:20,719 i hapësirës se një char, e cila është një sasi të ndryshme të hapësirës 762 00:34:20,719 --> 00:34:21,830 nga një numër të plotë. 763 00:34:21,830 --> 00:34:25,534 Dhe kështu që nëse ju nuk specifikoni dhe ju përzierje dhe ndeshje çfarë lloje të variablave 764 00:34:25,534 --> 00:34:27,659 ju keni, kompjuteri-së do të jetë shumë i hutuar. 765 00:34:27,659 --> 00:34:29,950 Dhe kjo nuk do të di sa e kujtesës për të ju jap. 766 00:34:29,950 --> 00:34:32,480 Pra, për qëllime të drejtën tani, kompjuterat mund të vetëm 767 00:34:32,480 --> 00:34:36,120 njohin një lloj të një grup. 768 00:34:36,120 --> 00:34:37,940 Pyetje e mirë. 769 00:34:37,940 --> 00:34:38,440 NE RREGULL. 770 00:34:38,440 --> 00:34:45,179 771 00:34:45,179 --> 00:34:47,120 >> Pra Natyrisht, Pyetja e dytë ne kemi 772 00:34:47,120 --> 00:34:50,760 është, pra, tani që ne kemi krijuar një grup dhe ne kemi vënë të gjitha këto gjëra 773 00:34:50,760 --> 00:34:54,190 në grup, sa jemi ne do të jetë në gjendje për të hyrë në atë? 774 00:34:54,190 --> 00:34:59,710 Pra, struktura tipike që ne gjithmonë hyrë në një rrjet është e bukur ynë për lak. 775 00:34:59,710 --> 00:35:03,830 Unë premtoj ju djema se ne do të jetë duke parë një shumë të këtij shokët këtu. 776 00:35:03,830 --> 00:35:06,470 >> Në thelb, në çdo kohë që ju dëshironi të dhëna vlerat në një rrjet 777 00:35:06,470 --> 00:35:09,940 apo ju doni të hyni ato, Mënyra më e mirë për ta bërë këtë është një për lak, 778 00:35:09,940 --> 00:35:13,730 sepse në një për lak, ju e di se sa herë ju jeni 779 00:35:13,730 --> 00:35:17,290 do të duan për të drejtuar përmes rrjet, sepse ju keni një botim të ndaluar, e drejtë? 780 00:35:17,290 --> 00:35:19,680 Dhe çdo herë që të kandidojë përmes, ju mund të hyni 781 00:35:19,680 --> 00:35:21,310 një element tjetër i vektorit. 782 00:35:21,310 --> 00:35:26,920 >> Dhe gjithashtu, kjo është një arsye pse në mënyrë tipike ne fillim ynë për sythe në vlerën 0, 783 00:35:26,920 --> 00:35:30,080 sepse kur ju hyni vargjeve, ju mund të hyni në indeksin zero. 784 00:35:30,080 --> 00:35:32,070 Dhe kështu kjo paralele shumë të bukur. 785 00:35:32,070 --> 00:35:35,295 Ju djema mund të ketë dashur të shkruaj për int i barabartë me 1. 786 00:35:35,295 --> 00:35:37,330 i është më e vogël se ose e barabartë me 3. 787 00:35:37,330 --> 00:35:39,890 >> Por kjo nuk do të punojë mjaft të edhe këtu, sepse ju vetëm 788 00:35:39,890 --> 00:35:42,010 kanë elementë të 0, 1, dhe 2.. 789 00:35:42,010 --> 00:35:45,815 Dhe kështu që nëse ju do të filloni i juaj në elementin 1, 2 dhe 3, 790 00:35:45,815 --> 00:35:48,440 ju jeni do të përfundojë deri drejtimin jashtë kufijve të grup tuaj, 791 00:35:48,440 --> 00:35:50,440 dhe gjëra të këqija do të ndodhë. 792 00:35:50,440 --> 00:35:54,480 >> Kështu që unë shpresoj se ju djema të parë Segue e përse në klasat e mëparshme 793 00:35:54,480 --> 00:35:58,560 ne kemi qenë të mësuar ju djema si për të drejtuar dhe format një për lak mënyrën që ne ishim. 794 00:35:58,560 --> 00:36:01,900 Kjo është për shkak, tani ne kemi kaloi në vargjeve, 795 00:36:01,900 --> 00:36:06,760 ju mund të shihni se pse 0 jep në vetvete shumë të bukur për të hyrë. 796 00:36:06,760 --> 00:36:09,880 >> Pra, mënyra që ne bëjmë se është that-- unë jam vetëm shtypjen atë këtu për hir 797 00:36:09,880 --> 00:36:10,830 e shtypjes it out. 798 00:36:10,830 --> 00:36:13,750 Por unë kam placeholder time, presje. 799 00:36:13,750 --> 00:36:15,645 Dhe aksesimit aktual Pjesa po ndodh. 800 00:36:15,645 --> 00:36:17,520 Emri i vektorit u quajt temperatura. 801 00:36:17,520 --> 00:36:21,570 Pra, kjo është temperatura dhe i-th element i vektorit. 802 00:36:21,570 --> 00:36:24,400 >> Pra, si për lak shkon përmes, ajo do të fillojë në 0. 803 00:36:24,400 --> 00:36:27,640 Ajo do të shtypura nga Indeksi 0 e kësaj grup. 804 00:36:27,640 --> 00:36:29,599 Atëherë ajo do të shtypura jashtë të elementit të parë. 805 00:36:29,599 --> 00:36:31,431 Atëherë ajo do të shtypura nga një të dytë. 806 00:36:31,431 --> 00:36:32,880 Dhe pastaj ne jemi duke shkuar për të thyer. 807 00:36:32,880 --> 00:36:36,718 Është e të gjithë të qartë në se si kjo po ndodh? 808 00:36:36,718 --> 00:36:37,217 I madh. 809 00:36:37,217 --> 00:36:43,230 810 00:36:43,230 --> 00:36:44,100 >> Në rregull. 811 00:36:44,100 --> 00:36:47,270 Pra, këtu ne kemi një mënyrë për të duke thënë, në qoftë se ne nuk duam 812 00:36:47,270 --> 00:36:50,020 hard-kod in-- mua si programues. 813 00:36:50,020 --> 00:36:53,320 Unë nuk dua që në fakt fizikisht vënë në çdo element individual 814 00:36:53,320 --> 00:36:54,020 e këtë grup. 815 00:36:54,020 --> 00:36:56,500 Në qoftë se unë të kërkuar për vend kanë vlera të dhëna përdorues, 816 00:36:56,500 --> 00:36:58,100 çfarë është mënyra më e mirë për të bërë këtë? 817 00:36:58,100 --> 00:37:00,920 >> E pra, këtu unë kam krijuar ky funksion i bukur, 818 00:37:00,920 --> 00:37:03,560 në të cilën unë mund të deklarojë një rrjet. 819 00:37:03,560 --> 00:37:06,210 Pra int scores-- le vetëm të thonë se ne duam të bërë 820 00:37:06,210 --> 00:37:10,660 një grup që mbahet notat e të gjitha 18 e studentëve këtu në këtë seksion. 821 00:37:10,660 --> 00:37:12,670 Unë mendoj se ne kemi marrë një grimë më shumë se 18 fëmijë sot. 822 00:37:12,670 --> 00:37:16,460 Por, për hir të së shembull, le të vetëm të supozojmë kemi pasur 18. 823 00:37:16,460 --> 00:37:21,580 Unë do Name grup rezultatet me tipit int, sepse rezultatet, natyrisht, 824 00:37:21,580 --> 00:37:22,987 janë numra. 825 00:37:22,987 --> 00:37:24,820 Dhe unë jam duke shkuar të ketë 18 në kllapa katrore, 826 00:37:24,820 --> 00:37:29,900 sepse kjo është sa nxënës i duan të jenë në gjendje për të ruajtur rezultatet e. 827 00:37:29,900 --> 00:37:32,206 >> Dhe mënyrën se si unë do të popullojnë array është se unë do të 828 00:37:32,206 --> 00:37:35,572 drejtuar atë nëpërmjet një për lak, e Sigurisht, me 0 qenit indeksin tim 0. 829 00:37:35,572 --> 00:37:38,030 Dhe pastaj me 18 të qenit tim ndalimin edicion, sepse nuk ka 830 00:37:38,030 --> 00:37:39,690 18 elemente në grup. 831 00:37:39,690 --> 00:37:44,620 Dhe atëherë unë jam duke shkuar për të bërë printf, Enter të shënuar për student-- yada yada yada. 832 00:37:44,620 --> 00:37:51,171 >> A mund dikush të më thoni pse unë jam këtu shtypjen I plus 1 dhe jo unë? 833 00:37:51,171 --> 00:37:52,920 Kjo është lloj i një mashtrim pyetje, jo të vërtetë. 834 00:37:52,920 --> 00:37:56,020 Ajo nuk ka të vërtetë fizikisht ndikojnë në drejtimin e kodit. 835 00:37:56,020 --> 00:37:56,520 Po. 836 00:37:56,520 --> 00:37:57,909 >> Audienca: [padëgjueshme] 0? 837 00:37:57,909 --> 00:37:58,950 ANDI Peng: Po, pikërisht. 838 00:37:58,950 --> 00:38:02,620 Është pak e vështirë për të thënë, hej, ju jeni student 0 në këtë klasë. 839 00:38:02,620 --> 00:38:03,780 Kjo është pak i çuditshëm. 840 00:38:03,780 --> 00:38:08,340 Pra ne, si njerëz, nuk të vërtetë si të mendojnë se si kompjuterat mendojnë. 841 00:38:08,340 --> 00:38:10,930 Pra, edhe pse në kompjuter, është e ruajtjen e vlerave 842 00:38:10,930 --> 00:38:13,310 në indeksin 0-të, kur ne jemi njerëz, ne nuk të vërtetë 843 00:38:13,310 --> 00:38:15,520 si për t'iu referuar veten si zero. 844 00:38:15,520 --> 00:38:18,119 Pra, kur unë vetëm të shtypura atë, Unë jam duke shkuar për të shtypur dhe shtoni 845 00:38:18,119 --> 00:38:19,410 1 vetëm për hir të qartësisë. 846 00:38:19,410 --> 00:38:22,447 Kështu që, kur unë të shtypura, unë jam do të jetë gjendje për të shtypur studentët 1 deri 18. 847 00:38:22,447 --> 00:38:24,530 Ajo nuk ka të vërtetë të ndikojë drejtimin e kodit 848 00:38:24,530 --> 00:38:27,110 në asnjë mënyrë, mënyrën se si unë të shtypura. 849 00:38:27,110 --> 00:38:30,380 >> Por të jenë të kujdesshëm kur ju jeni në fakt qasjen array. 850 00:38:30,380 --> 00:38:32,780 Kur ju shihni rezultatet e I, vini re këtu unë jam në të vërtetë 851 00:38:32,780 --> 00:38:38,200 hyrë në indeksin 0TH dhe jo plus 0-- 1 ose 1 plus 1, 852 00:38:38,200 --> 00:38:45,530 Në këtë rast, indeksi kështu kjo është e vërtetë e qartë. 853 00:38:45,530 --> 00:38:48,870 Është e të gjithë lloj OK në si kjo po kalon nëpër 854 00:38:48,870 --> 00:38:51,470 dhe me çdo indeks unë jam vënë një vlerë në grup 855 00:38:51,470 --> 00:38:55,340 dhe duke krijuar një grup me 18 numra që përdoruesi do të dhëna? 856 00:38:55,340 --> 00:38:58,780 857 00:38:58,780 --> 00:38:59,821 NE RREGULL. 858 00:38:59,821 --> 00:39:00,321 Ftohtë. 859 00:39:00,321 --> 00:39:05,380 860 00:39:05,380 --> 00:39:07,400 >> NE RREGULL. 861 00:39:07,400 --> 00:39:12,220 Ne tani të shkojë në diçka që është shumë e relevante për këtë pjesë të caktuar si. 862 00:39:12,220 --> 00:39:15,020 Unë e di në leksion, David-- vjen keq, keni pasur një pyetje? 863 00:39:15,020 --> 00:39:16,840 >> Audienca: Mund ta zgjeruar atë? 864 00:39:16,840 --> 00:39:18,080 >> ANDI Peng: Yeah, kështu që unë u përpoq. 865 00:39:18,080 --> 00:39:18,788 Por unë nuk e di. 866 00:39:18,788 --> 00:39:21,437 Për disa arsye, kjo version i PowerPoint 867 00:39:21,437 --> 00:39:23,270 është me të vërtetë nuk punon mirë me ekran. 868 00:39:23,270 --> 00:39:25,260 Pra, ne jemi vetëm duke shkuar për ta mbajtur atë si kjo. 869 00:39:25,260 --> 00:39:27,280 Të gjitha këto do të jetë i ngarkuar në internet. 870 00:39:27,280 --> 00:39:28,218 Më vjen keq, djema. 871 00:39:28,218 --> 00:39:30,090 Po. 872 00:39:30,090 --> 00:39:30,980 NE RREGULL. 873 00:39:30,980 --> 00:39:35,530 >> Pra, ne mund të kemi vargjet. 874 00:39:35,530 --> 00:39:39,320 Pra, nëse ju djema në fakt notice-- I di Rob shkoi mbi këtë në atë leksion 875 00:39:39,320 --> 00:39:43,652 se ai did-- një varg në fakt është vetëm një grup të karaktereve, 876 00:39:43,652 --> 00:39:44,860 në qoftë se ju mendoni rreth saj, e drejtë? 877 00:39:44,860 --> 00:39:47,500 Një varg është një emër ose një fjali apo një fjalë, e drejtë? 878 00:39:47,500 --> 00:39:52,975 >> Nëse unë do të krijojë një varg të quajtur Andi-- vetëm emrin tim, A-N-D-I. 879 00:39:52,975 --> 00:39:55,460 Ju mendoni për se si vetëm një variabël. 880 00:39:55,460 --> 00:39:58,630 Por në fakt, është e thyer poshtë në vetëm një grup të karaktere. 881 00:39:58,630 --> 00:40:01,910 Pra, atë e mori një karakter të një ruhet në një vlerë array. 882 00:40:01,910 --> 00:40:05,420 Atë e mori një karakter të n ruajtur në indeksi i dytë dhe kështu me radhë e kështu me radhë. 883 00:40:05,420 --> 00:40:08,660 >> Pra, në një mënyrë të tillë, ne në fakt kanë këtë lloj 884 00:40:08,660 --> 00:40:10,970 i strukturës së të vendosur në vendos për vargjet tona. 885 00:40:10,970 --> 00:40:14,660 Kështu që këtu, në qoftë se unë ishin të dhëna me fjala "ha", - kështu fjala varg është e barabartë me 886 00:40:14,660 --> 00:40:15,540 merrni string. 887 00:40:15,540 --> 00:40:19,260 Nëse unë do të input fjala "ha", që është fizikisht mënyra se si kompjuteri im 888 00:40:19,260 --> 00:40:21,870 është ruajtjen atë varg në kujtesën time. 889 00:40:21,870 --> 00:40:27,140 >> Dhe në qoftë se unë të kërkuar për të drejtuar përmes se dhe të shtypura se out-- kështu që për ne i 890 00:40:27,140 --> 00:40:30,890 është e barabartë me zero, mbani mend, në leksion, ne diçka të mbuluar që quhet strlen, 891 00:40:30,890 --> 00:40:32,990 ose gjatësia e vargut. 892 00:40:32,990 --> 00:40:36,520 Sepse unë në fakt nuk e di se sa i madh array është 893 00:40:36,520 --> 00:40:38,210 i çfarëdo inputting-- e përdoruesit 894 00:40:38,210 --> 00:40:40,370 >> Për shembull, unë futur fjala "ha", dhe unë e di 895 00:40:40,370 --> 00:40:41,870 kjo është tre karaktere i gjatë, apo jo? 896 00:40:41,870 --> 00:40:44,700 Kështu që unë mund të vënë në një tre atje dhe çdo gjë do të jetë mirë. 897 00:40:44,700 --> 00:40:49,290 Por në qoftë se input tuaj diçka përdorues kjo është një numër i ndryshëm i vlerave, 898 00:40:49,290 --> 00:40:52,760 ju jeni do të mos jetë në gjendje për të vërtetë e di se kur programoni kodin tuaj. 899 00:40:52,760 --> 00:40:56,040 >> Pra, mënyra se si kemi trajtuar rastet e testimit si kjo është se ne kemi diçka 900 00:40:56,040 --> 00:41:00,070 quajtur strlen, e cila është vetëm një funksion që ju tregon se sa kohë një varg është. 901 00:41:00,070 --> 00:41:02,080 Pra strlen i fjalës. 902 00:41:02,080 --> 00:41:03,470 Fjala ime është të hani. 903 00:41:03,470 --> 00:41:05,990 n barabartë strlen e fjalës. 904 00:41:05,990 --> 00:41:08,930 Dikush mund të më thoni se çka Vlera në fakt është e drejtë atje? 905 00:41:08,930 --> 00:41:12,550 Çfarë do të n përfaqësimin e drejtë tani, në këtë shembull, në qoftë se unë kam ngrënë? 906 00:41:12,550 --> 00:41:13,530 >> Audienca: 3. 907 00:41:13,530 --> 00:41:14,520 >> ANDI Peng: 3, pikërisht. 908 00:41:14,520 --> 00:41:18,820 Pra, ne kemi për int i barabartë zero, n është e barabartë me 3, në thelb. 909 00:41:18,820 --> 00:41:22,355 Dhe unë do të kandidojë derisa kjo është më pak se 3i ++. 910 00:41:22,355 --> 00:41:24,980 Dhe ajo do të në thelb të shkuar përmes dhe të bëjë të njëjtën gjë. 911 00:41:24,980 --> 00:41:26,979 Ajo do të shtypura nga çdo vlerë dhe ju jap 912 00:41:26,979 --> 00:41:29,700 E-A-T. Kjo është vetëm një denoting mënyrë të ndryshme të shkruar atë. 913 00:41:29,700 --> 00:41:31,170 Kjo do të jetë shumë e dobishme. 914 00:41:31,170 --> 00:41:31,670 Po. 915 00:41:31,670 --> 00:41:35,174 Audienca: Çfarë është përfitimet e vendosjes N barabartë fjalë strlen brenda se 916 00:41:35,174 --> 00:41:36,894 për lak [e padëgjueshme]? 917 00:41:36,894 --> 00:41:37,560 ANDI Peng: Po. 918 00:41:37,560 --> 00:41:44,880 Pra, nëse unë ishim to-- them, për shembull, në qoftë se unë do të bëj atë dhe pastaj 919 00:41:44,880 --> 00:41:51,935 do-- oop-- që, në kodin tim, ai do të në fakt të jetë bërë si të njëjtën gjë. 920 00:41:51,935 --> 00:41:55,060 Megjithatë, mënyra që Davidi shpjegoi atë gjatë ligjëratës, në qoftë se ndonjë nga ju djema 921 00:41:55,060 --> 00:41:57,854 mbani mend, ishte se, si njerëzit, si programuesit, 922 00:41:57,854 --> 00:42:00,270 ne me të vërtetë të përpiqet të programit tonë Kodi mënyrë që kompjuteri ynë ka 923 00:42:00,270 --> 00:42:04,070 për të punuar sa më minimale të jetë e mundur, kështu që që kodi ynë është shumë efikase. 924 00:42:04,070 --> 00:42:06,850 >> Pra, nëse unë kam se atje, çfarë do të ndodhë përmes për lak tim 925 00:42:06,850 --> 00:42:10,790 është se unë do të deklaroj për herë të parë një ndryshore të quajtur unë do të jetë 0. 926 00:42:10,790 --> 00:42:13,350 Unë jam duke shkuar për të kontrolluar, oh, çfarë është strlen e fjalës? 927 00:42:13,350 --> 00:42:15,000 Oh, The strlen është 3. 928 00:42:15,000 --> 00:42:16,191 Kështu që është më pak se unë tre? 929 00:42:16,191 --> 00:42:16,690 Po kjo është. 930 00:42:16,690 --> 00:42:17,870 Unë jam duke shkuar për të kandiduar. 931 00:42:17,870 --> 00:42:21,130 >> Dhe pastaj herën e dytë mbrapa rreth lak, unë jam duke shkuar për të ardhura i. 932 00:42:21,130 --> 00:42:22,550 Unë do të jetë një të tillë. 933 00:42:22,550 --> 00:42:25,600 Dhe unë do të kontrollojë, oh, por ajo që është strlen i fjalës? 934 00:42:25,600 --> 00:42:26,839 Oh, kjo është tre. 935 00:42:26,839 --> 00:42:29,880 Dhe e bën atë të duket lloj i të kota, çdo herë që të drejtuar përmes lak, 936 00:42:29,880 --> 00:42:33,340 për të kontrolluar funksionin, edhe pse strlen të fjalës 937 00:42:33,340 --> 00:42:35,490 në fakt nuk ndryshon? 938 00:42:35,490 --> 00:42:38,590 >> Pra, kjo është fuqi shtesë për një kompjuter. 939 00:42:38,590 --> 00:42:42,180 Kur ju filloni duke folur për gjëra të se miliarda dhe miliarda 940 00:42:42,180 --> 00:42:44,431 dhe miliarda vendeve gjatë, imagjinoni kompjuterin tuaj 941 00:42:44,431 --> 00:42:47,430 pasur nevojë të shkojë fizikisht nëpër dhe shikoni të gjithë se çdo herë të vetme. 942 00:42:47,430 --> 00:42:53,170 Kjo është arsyeja pse, për të bërë vetëm për hir të efikasitetit, 943 00:42:53,170 --> 00:42:57,620 ne priren të vetëm të bëjë këtë, sepse në këtë mënyrë ne jemi vetëm 944 00:42:57,620 --> 00:42:59,850 duke e quajtur funksionin një herë në fillim, 945 00:42:59,850 --> 00:43:01,766 dhe se çdo herë ajo shkon përmes ajo do 946 00:43:01,766 --> 00:43:03,789 për të ruajtur vlerën e 3 atje, se ju nuk e bëni 947 00:43:03,789 --> 00:43:05,330 duhet të vazhdimisht të kontrolluar çdo kohë. 948 00:43:05,330 --> 00:43:05,743 Po. 949 00:43:05,743 --> 00:43:06,409 >> Audienca: Më vjen keq. 950 00:43:06,409 --> 00:43:09,070 Vetëm [e padëgjueshme]. 951 00:43:09,070 --> 00:43:13,985 Mund të bëni int n barabartë strlen dhe vënë se mbi pjesën e jashtme të për lak 952 00:43:13,985 --> 00:43:15,364 gjithashtu? 953 00:43:15,364 --> 00:43:16,030 ANDI Peng: Po. 954 00:43:16,030 --> 00:43:17,100 Ju mund ta bëjë këtë, absolutisht. 955 00:43:17,100 --> 00:43:19,970 Arsyeja që ne kemi atë në këtu është sepse mënyra e një për punë loop 956 00:43:19,970 --> 00:43:23,500 është se ajo që quhet një variabël lokale në kuptimin 957 00:43:23,500 --> 00:43:26,150 se çdo gjë që ju jeni krijuar brenda e për lak 958 00:43:26,150 --> 00:43:27,890 ekziston vetëm brenda për lak. 959 00:43:27,890 --> 00:43:31,530 >> Pra ndryshueshme unë vetëm ekziston në këto kllapa. 960 00:43:31,530 --> 00:43:35,260 Dhe këtu variablat e n edhe ekziston vetëm në ato kllapa. 961 00:43:35,260 --> 00:43:39,350 Pra, nëse ju do të përdorni strlen e Fjala herë të shumta poshtë, 962 00:43:39,350 --> 00:43:42,230 absolutisht mënyra më e mirë për të bërë këtë do të jetë për të deklaruar atë në krye 963 00:43:42,230 --> 00:43:43,563 kështu që ju nuk keni për të bërë atë një herë. 964 00:43:43,563 --> 00:43:45,420 Po. 965 00:43:45,420 --> 00:43:47,670 Audienca: Pse keni një Linja e re pas për qind 966 00:43:47,670 --> 00:43:51,300 duke parë qoftë se ju doni të vënë të gjithë letrat e ardhshme për të ndajë? 967 00:43:51,300 --> 00:43:54,140 >> ANDI Peng: Oh, kam kërkuar për të printoni ato të gjithë në çdo linjë. 968 00:43:54,140 --> 00:43:54,890 Kjo nuk ka rëndësi. 969 00:43:54,890 --> 00:43:55,890 Po, kjo është një e formatimit. 970 00:43:55,890 --> 00:43:57,181 Kjo është një pyetje e mirë, edhe pse. 971 00:43:57,181 --> 00:43:59,360 Po, nëse kam kërkuar për të shtypur të gjitha në vetëm një linjë, 972 00:43:59,360 --> 00:44:02,731 Unë nuk do të ketë në dash. 973 00:44:02,731 --> 00:44:03,230 NE RREGULL. 974 00:44:03,230 --> 00:44:06,880 Gjithkush mirë? 975 00:44:06,880 --> 00:44:07,500 NE RREGULL. 976 00:44:07,500 --> 00:44:08,000 Ftohtë. 977 00:44:08,000 --> 00:44:12,080 978 00:44:12,080 --> 00:44:14,750 >> Kështu që unë mendoj se unë kam folur mjaft. 979 00:44:14,750 --> 00:44:20,040 Radha ju djema s për të drejtuar përmes Kodi dhe më tregoni se çfarë është e gabuar këtu. 980 00:44:20,040 --> 00:44:21,560 Ku është bug? 981 00:44:21,560 --> 00:44:26,920 Kështu si ju mund të shihni, unë kam deklaruar një grup i ri i tipit string me emrin klasë. 982 00:44:26,920 --> 00:44:30,220 Dhe unë e kam futur Sam, Jess, dhe Kim në të. 983 00:44:30,220 --> 00:44:33,400 Dhe unë jam duke u përpjekur për të shtypur jashtë të gjitha elementet e vektorit. 984 00:44:33,400 --> 00:44:36,796 Dikush mund të më thoni pse kjo do të më jepni probleme? 985 00:44:36,796 --> 00:44:39,320 Unë do të ju jap djema 10 sekonda për të menduar për këtë. 986 00:44:39,320 --> 00:44:55,490 987 00:44:55,490 --> 00:44:56,619 >> NE RREGULL. 988 00:44:56,619 --> 00:44:57,118 Po? 989 00:44:57,118 --> 00:45:01,972 >> Audienca: A është qendra e majtë barabartë me 3, ose [Padëgjueshëm]? 990 00:45:01,972 --> 00:45:02,680 ANDI Peng: E ​​drejta. 991 00:45:02,680 --> 00:45:06,784 Pra, sa herë është kjo në të vërtetë duke shkuar për të drejtuar nëpër këtë lak? 992 00:45:06,784 --> 00:45:07,620 >> Audienca: Katër. 993 00:45:07,620 --> 00:45:08,070 >> ANDI Peng: Pikërisht. 994 00:45:08,070 --> 00:45:09,445 Ajo do të përmes katër herë. 995 00:45:09,445 --> 00:45:12,250 Ajo do të vazhdojë deri me 0, 1, 2 dhe 3, 996 00:45:12,250 --> 00:45:15,200 sepse element i tyre është i është më e vogël se ose e barabartë me 3. 997 00:45:15,200 --> 00:45:16,960 Kjo nuk do të ndalet, kur është 2. 998 00:45:16,960 --> 00:45:18,800 Ajo do të mbajë duke shkuar deri sa ajo godet 3. 999 00:45:18,800 --> 00:45:21,720 Dhe, siç e dimë, ka vetëm tri elemente në grup tonë aktuale. 1000 00:45:21,720 --> 00:45:27,260 >> Nëse ne përpiqemi për të hyrë e katërt element ose indeksi i 3, 1001 00:45:27,260 --> 00:45:30,357 ju jeni duke shkuar për të goditur diku në kujtim që nuk ekziston. 1002 00:45:30,357 --> 00:45:31,690 Ajo që quhet terminator null. 1003 00:45:31,690 --> 00:45:32,856 Asgjë nuk do të jetë atje. 1004 00:45:32,856 --> 00:45:35,324 Kompjuteri juaj nuk po shkon të jetë shumë i lumtur me ty. 1005 00:45:35,324 --> 00:45:36,170 Po. 1006 00:45:36,170 --> 00:45:38,430 A ka dikush pyetje se pse kjo po ndodhte? 1007 00:45:38,430 --> 00:45:39,679 Kjo është një zonë të përbashkët për të shmangur. 1008 00:45:39,679 --> 00:45:40,712 Po. 1009 00:45:40,712 --> 00:45:45,777 >> Audienca: jo A e parë rrëshqitje gjithashtu kanë një varg prej 2? 1010 00:45:45,777 --> 00:45:46,360 ANDI Peng: Jo. 1011 00:45:46,360 --> 00:45:49,610 Pra, në thelb, kur ju jeni duke bërë një grup, 1012 00:45:49,610 --> 00:45:51,540 kjo e drejtë kllapa atje, që number-- gjithë 1013 00:45:51,540 --> 00:45:53,480 është e thënë që ju është se si shumë elemente kam. 1014 00:45:53,480 --> 00:45:55,840 Kjo nuk është në fakt thënë më indekset e asgjë. 1015 00:45:55,840 --> 00:45:58,760 Pra, në këtë rast, unë e di unë dua për të shkruar me tre vende, 1016 00:45:58,760 --> 00:46:02,690 me tre vende fizike në të mbajë çdo gjë që unë dua të mbajnë. 1017 00:46:02,690 --> 00:46:04,510 Pra, kjo është arsyeja pse numri tre është atje. 1018 00:46:04,510 --> 00:46:06,560 Megjithatë, nëse kam kërkuar që në fakt të hyrë në të, 1019 00:46:06,560 --> 00:46:11,220 në qoftë se unë të kërkuar për të thënë, printf Numri kllapa klasë, atëherë 1020 00:46:11,220 --> 00:46:14,560 ju jeni do të vërtetë vënë indeksi fizike atje. 1021 00:46:14,560 --> 00:46:16,330 Po, pyetje e mirë. 1022 00:46:16,330 --> 00:46:20,065 >> Audienca: Pra, është fizik Indeksi i menduar të jetë [e padëgjueshme]? 1023 00:46:20,065 --> 00:46:20,940 ANDI Peng: Më vjen keq. 1024 00:46:20,940 --> 00:46:21,500 A mund të flasin pak? 1025 00:46:21,500 --> 00:46:24,208 >> Audienca: Pra, është indeksi fizik [Padëgjueshme] secila nga kutitë? 1026 00:46:24,208 --> 00:46:25,260 [Padëgjueshme]? 1027 00:46:25,260 --> 00:46:26,040 >> ANDI Peng: Po. 1028 00:46:26,040 --> 00:46:28,970 Kështu që unë jam duke shkuar për të shkuar mbrapa në të drejtë këtu. 1029 00:46:28,970 --> 00:46:31,120 Mendoni e drejtë këtu. 1030 00:46:31,120 --> 00:46:32,820 Ne kemi një grup të madhësisë 3. 1031 00:46:32,820 --> 00:46:35,540 Ka tre vende, si, placeholders fizike në këtu. 1032 00:46:35,540 --> 00:46:37,620 Por ata janë quajtur 0, 1, dhe 2. 1033 00:46:37,620 --> 00:46:40,700 Pra, nëse kam kërkuar për të hyrë në ato, mënyrë që unë të hyni ato 1034 00:46:40,700 --> 00:46:43,480 është printf e çdo gjë që kam kërkuar në këtu. 1035 00:46:43,480 --> 00:46:45,485 Ju do të keni për të shtypur nga emri i saj, 1036 00:46:45,485 --> 00:46:47,610 sepse atëherë kompjuter e di, oh, unë duhet të shohim 1037 00:46:47,610 --> 00:46:51,391 në këtë grup për indeksin 0TH. 1038 00:46:51,391 --> 00:46:51,890 Po. 1039 00:46:51,890 --> 00:46:53,306 Por madhësia e saj nuk ndryshon. 1040 00:46:53,306 --> 00:46:55,492 Madhësia është 3, pavarësisht si ju etiketë ata. 1041 00:46:55,492 --> 00:46:58,321 1042 00:46:58,321 --> 00:46:58,820 NE RREGULL. 1043 00:46:58,820 --> 00:47:01,387 Gjithkush mirë? 1044 00:47:01,387 --> 00:47:02,970 Audienca: Pra, çdo herë që unë [e padëgjueshme]? 1045 00:47:02,970 --> 00:47:06,357 1046 00:47:06,357 --> 00:47:06,940 ANDI Peng: OK. 1047 00:47:06,940 --> 00:47:13,270 Pra, në këtë rast, ne nuk të vërtetë merrni në të drejtë tani në kurs. 1048 00:47:13,270 --> 00:47:16,760 Por e di se një string-- si unë thënë më parë, një varg është në thelb 1049 00:47:16,760 --> 00:47:18,440 një grup të karaktereve. 1050 00:47:18,440 --> 00:47:21,430 Pra, nëse unë krijoj një rrjet e tela, unë lloj i 1051 00:47:21,430 --> 00:47:24,430 kanë një rrjet të vektorit e karaktereve, e drejtë? 1052 00:47:24,430 --> 00:47:27,720 >> Pra, në këtë rast, sepse unë kanë një rrjet të strings, 1053 00:47:27,720 --> 00:47:31,340 në qoftë se keni qenë për të dhëna një fjalë të vërtetë të gjatë, që ende merr vetëm një hapësirë, 1054 00:47:31,340 --> 00:47:33,230 sepse kjo është një string. 1055 00:47:33,230 --> 00:47:37,492 Por në qoftë se ju do të mendoni për personazhet e asaj array, 1056 00:47:37,492 --> 00:47:40,450 atëherë kjo është duke marrë një shumë më të Karaktere se asnjë prej fjalëve të tjera 1057 00:47:40,450 --> 00:47:41,372 janë. 1058 00:47:41,372 --> 00:47:42,830 Jo me të vërtetë e rëndësishme për të drejtën tani. 1059 00:47:42,830 --> 00:47:44,921 Por kjo është vetëm në përgjithësi se si ajo është duke punuar. 1060 00:47:44,921 --> 00:47:49,750 1061 00:47:49,750 --> 00:47:50,560 >> NE RREGULL. 1062 00:47:50,560 --> 00:47:55,840 Kështu që kjo është diçka që unë do të ju lejojnë të bëni shumë gjatë semestrit. 1063 00:47:55,840 --> 00:47:57,500 Unë kam nevojë për të pushuar zërin tim. 1064 00:47:57,500 --> 00:47:59,530 Ju djema duhet për të stimuluar veten. 1065 00:47:59,530 --> 00:48:02,300 Një shumë prej jush ndoshta duhet të fle tani. 1066 00:48:02,300 --> 00:48:05,960 Unë jam inputting probleme të rastit ku ne si një klasë ose 1067 00:48:05,960 --> 00:48:09,480 me një partner tjetër për ju janë duke shkuar të kalojnë disa minuta duke diskutuar 1068 00:48:09,480 --> 00:48:14,980 se si ne do të shkojë në lidhje me zgjidhjen ose duke krijuar një program të tillë si ky. 1069 00:48:14,980 --> 00:48:17,100 >> Deri tani, ne duam për të krijuar një program-- 1070 00:48:17,100 --> 00:48:19,560 ne jemi duke shkuar për të thirrur atë upper.c-- që të konvertuarit 1071 00:48:19,560 --> 00:48:24,787 një fjalë vogle me një sipërme të klasës uppercase string--, sorry. 1072 00:48:24,787 --> 00:48:26,370 Fjalë në vargjet, më vjen keq, është sinonim. 1073 00:48:26,370 --> 00:48:28,370 Unë jam duke shkuar për të ndryshuar ato do të thotë të njëjtën gjë. 1074 00:48:28,370 --> 00:48:32,270 1075 00:48:32,270 --> 00:48:33,499 >> Po. 1076 00:48:33,499 --> 00:48:34,540 Merrni disa minuta. 1077 00:48:34,540 --> 00:48:37,130 Ajo nuk duhet të jetë i shkruar në çdo gjuhë. 1078 00:48:37,130 --> 00:48:39,890 Vetëm në kod pseudokod ose logjikisht se si ne do edhe 1079 00:48:39,890 --> 00:48:42,083 shkojë për të bërë një problem të tillë. 1080 00:48:42,083 --> 00:48:42,583 Po. 1081 00:48:42,583 --> 00:48:49,881 1082 00:48:49,881 --> 00:48:52,780 >> [SIDE BISEDA] 1083 00:48:52,780 --> 00:49:18,680 1084 00:49:18,680 --> 00:49:22,130 >> Unë gjithashtu vënë re se ju djema can-- Unë lloj i shoh tashmë programin. 1085 00:49:22,130 --> 00:49:24,600 I guess mungesën time të Mënyra prezantues është një problem. 1086 00:49:24,600 --> 00:49:27,410 Por kjo është në rregull. 1087 00:49:27,410 --> 00:49:30,410 >> [SIDE BISEDA] 1088 00:49:30,410 --> 00:50:03,589 1089 00:50:03,589 --> 00:50:04,380 Po, të lutem, djema. 1090 00:50:04,380 --> 00:50:05,400 Ejani merrni karamele. 1091 00:50:05,400 --> 00:50:06,372 Ejani merrni karamele. 1092 00:50:06,372 --> 00:50:07,698 >> Audienca: Po! 1093 00:50:07,698 --> 00:50:09,958 >> [SIDE BISEDA] 1094 00:50:09,958 --> 00:50:16,101 1095 00:50:16,101 --> 00:50:18,100 ANDI Peng: Gjithashtu, vërtet, Unë do të fillojë duke hedhur karamele 1096 00:50:18,100 --> 00:50:20,280 në njerëzit që nuk t'iu përgjigjur pyetjeve. 1097 00:50:20,280 --> 00:50:22,260 Kështu që ju duhet të gjitha pyetjeve përgjigje. 1098 00:50:22,260 --> 00:50:24,895 Ose unë mendoj njerëzit që mos t'iu përgjigjur pyetjeve. 1099 00:50:24,895 --> 00:50:26,070 Po, mënyra të tjera përreth. 1100 00:50:26,070 --> 00:50:28,570 >> [SIDE BISEDA] 1101 00:50:28,570 --> 00:51:13,399 1102 00:51:13,399 --> 00:51:14,274 Audienca: [padëgjueshme] 1103 00:51:14,274 --> 00:51:17,300 1104 00:51:17,300 --> 00:51:18,340 >> ANDI Peng: Po. 1105 00:51:18,340 --> 00:51:19,340 Po. 1106 00:51:19,340 --> 00:51:22,840 >> [SIDE BISEDA] 1107 00:51:22,840 --> 00:51:40,700 1108 00:51:40,700 --> 00:51:41,590 >> Të gjithë të drejtë, djema. 1109 00:51:41,590 --> 00:51:44,731 Të marrë, si, 10 sekonda më shumë. 1110 00:51:44,731 --> 00:51:48,210 >> [SIDE BISEDA] 1111 00:51:48,210 --> 00:52:10,600 1112 00:52:10,600 --> 00:52:11,750 >> OK, djema. 1113 00:52:11,750 --> 00:52:14,920 Pra, para se të fillojmë duke u përpjekur për në fakt fizikisht shkruani kodin, 1114 00:52:14,920 --> 00:52:20,650 një zakon i mirë për të zhvilluar është se ne duam të llojit të parë të arsyes 1115 00:52:20,650 --> 00:52:22,737 se logjikisht se si ne do ta bëjmë atë. 1116 00:52:22,737 --> 00:52:24,570 Ju dëshironi të bëni të sigurtë, para teje fizikisht 1117 00:52:24,570 --> 00:52:27,210 filloni duke u përpjekur për kodin në Mario, që ju të bëni 1118 00:52:27,210 --> 00:52:28,870 sigurohuni që ju keni pseudokod tuaj. 1119 00:52:28,870 --> 00:52:31,235 Që është duke marrë ju me anë të çfarë ju duhet për të krijuar kështu 1120 00:52:31,235 --> 00:52:33,360 që, kur t'ju fizikisht shkruaj programin tuaj më vonë, 1121 00:52:33,360 --> 00:52:36,640 ju jeni më mirë në gjendje për të kapur gabimet në kodin tuaj dhe gjëra të tilla si se. 1122 00:52:36,640 --> 00:52:40,460 >> Pra, ne jemi duke shkuar për të fillojë vetëm by-- në gjuhën angleze, në pseudokod, 1123 00:52:40,460 --> 00:52:43,320 ka njeri të duan të japin më një shpjegim i përgjithshëm 1124 00:52:43,320 --> 00:52:46,250 se si ne do të shkojë për të bërë këtë? 1125 00:52:46,250 --> 00:52:48,102 Po. 1126 00:52:48,102 --> 00:52:49,664 >> Audienca: [padëgjueshme]. 1127 00:52:49,664 --> 00:52:50,830 ANDI Peng: Sigurisht, nuk shqetësohet. 1128 00:52:50,830 --> 00:52:57,233 Audienca: A mund të pyesni atë për të ose kërkoni dikush për të marrë varg 1-- Po, varg, 1129 00:52:57,233 --> 00:52:58,160 dhe pastaj-- 1130 00:52:58,160 --> 00:52:59,826 >> ANDI Peng: Po, kështu që kjo është një fillim i mirë. 1131 00:52:59,826 --> 00:53:01,972 Unë do të filloni të shkruani, më vjen keq, ndërsa ju flisni. 1132 00:53:01,972 --> 00:53:02,471 Kështu që-- 1133 00:53:02,471 --> 00:53:05,698 >> Audienca: --The vogle Numrat janë më të larta, e drejtë? 1134 00:53:05,698 --> 00:53:08,519 Apo shkronja Fjala kanë numër të lartë? 1135 00:53:08,519 --> 00:53:09,310 ANDI Peng: Pikërisht. 1136 00:53:09,310 --> 00:53:16,156 Audienca: Pra, atëherë ne zbresim 32 nga çfarëdo [e padëgjueshme]. 1137 00:53:16,156 --> 00:53:28,600 1138 00:53:28,600 --> 00:53:29,870 >> ANDI Peng: Great. 1139 00:53:29,870 --> 00:53:35,020 Pra, ne lloj e kanë një ndjenjë të përgjithshme se si të punojnë në lidhje me këtë problem. 1140 00:53:35,020 --> 00:53:40,060 Duke ditur që ne kemi mësuar lloj i mënyra fizike që vargjet 1141 00:53:40,060 --> 00:53:43,320 janë ruajtur në kujtesë, Çfarë bëni ju tashmë 1142 00:53:43,320 --> 00:53:45,920 e di që ju jeni duke shkuar për siguri duhet të shkruani në kodin tuaj 1143 00:53:45,920 --> 00:53:48,288 në mënyrë që të lëvizë me vargun? 1144 00:53:48,288 --> 00:53:49,259 >> Audienca: Për lak. 1145 00:53:49,259 --> 00:53:50,550 ANDI Peng: një për lak, pikërisht. 1146 00:53:50,550 --> 00:53:56,540 1147 00:53:56,540 --> 00:53:57,220 I madh. 1148 00:53:57,220 --> 00:54:00,539 Pra, ne kemi një lloj i përgjithshëm pseudokod shkruar 1149 00:54:00,539 --> 00:54:02,330 se lloj i po i jep ju shënime si ju 1150 00:54:02,330 --> 00:54:03,900 do të lëvizë në lidhje me zgjidhjen e problemit. 1151 00:54:03,900 --> 00:54:06,150 Tani që ju e keni këtë, ju mund referencë atë për më vonë 1152 00:54:06,150 --> 00:54:08,233 kur ju jeni duke u përpjekur për të në fakt shkruani kodin tuaj. 1153 00:54:08,233 --> 00:54:10,240 Pra, ne në fakt mund të shkoni këtu. 1154 00:54:10,240 --> 00:54:25,130 Dhe unë kam marrë një funksion të quajtur upper.c-- atje ajo is-- e vetëm një template bosh 1155 00:54:25,130 --> 00:54:28,510 tani që ju djema do të më ndihmoni të kuptoj se si për të shkruar 1156 00:54:28,510 --> 00:54:30,430 kjo linjë e nuk code-- linjë të kodit. 1157 00:54:30,430 --> 00:54:32,890 Ajo do të jetë linja të shumta të kodit. 1158 00:54:32,890 --> 00:54:35,710 >> Kur duke filluar nga çdo lloj e pset bosh, çfarë është 1159 00:54:35,710 --> 00:54:37,418 gjëja e parë që kam nevojë të mbani mend për të bërë? 1160 00:54:37,418 --> 00:54:39,290 >> Audienca: [padëgjueshme]. 1161 00:54:39,290 --> 00:54:41,000 >> ANDI Peng: Great Po. 1162 00:54:41,000 --> 00:54:41,500 Përfshijnë. 1163 00:54:41,500 --> 00:54:44,850 1164 00:54:44,850 --> 00:54:47,130 stdio.h. 1165 00:54:47,130 --> 00:54:49,640 Shpesh kjo është një nga më lehtë gabimet e njerëzve 1166 00:54:49,640 --> 00:54:51,598 do të bëjë kur ata janë shkrim, është se ata do të 1167 00:54:51,598 --> 00:54:54,180 harroni që të përfshijë një Biblioteka e rëndësishme që ata kanë nevojë. 1168 00:54:54,180 --> 00:54:57,689 Pra, nëse është e orarit të punës dhe ju jeni si, Unë nuk e di pse kodi im nuk punon. 1169 00:54:57,689 --> 00:54:59,230 Mund të më thoni pse kjo nuk është duke punuar? 1170 00:54:59,230 --> 00:55:00,730 Ne jemi duke shkuar për të thënë e keni #include? 1171 00:55:00,730 --> 00:55:02,520 Ju duhet të #include atë. 1172 00:55:02,520 --> 00:55:03,270 NE RREGULL. 1173 00:55:03,270 --> 00:55:07,230 >> Pra, ne kemi marrë standardin I / O këtu. 1174 00:55:07,230 --> 00:55:10,740 A është kjo e vetmja bibliotekë ne jemi duke shkuar për nevojë këtu? 1175 00:55:10,740 --> 00:55:12,681 Çfarë tjetër do të shkojmë të bëjmë? 1176 00:55:12,681 --> 00:55:13,180 Më vjen keq. 1177 00:55:13,180 --> 00:55:14,562 Dikush vetëm piskat atë? 1178 00:55:14,562 --> 00:55:15,666 >> Audienca: [padëgjueshme]. 1179 00:55:15,666 --> 00:55:16,666 ANDI Peng: Nuk ju shkoni. 1180 00:55:16,666 --> 00:55:20,320 1181 00:55:20,320 --> 00:55:21,440 NE RREGULL. 1182 00:55:21,440 --> 00:55:26,070 Dhe si mund të shkoj në lidhje me fillimin e çdo lloj e funksionit, çdo lloj funksioni kryesor 1183 00:55:26,070 --> 00:55:28,760 brenda programit tonë? 1184 00:55:28,760 --> 00:55:30,020 Int main. 1185 00:55:30,020 --> 00:55:34,531 1186 00:55:34,531 --> 00:55:35,030 NE RREGULL. 1187 00:55:35,030 --> 00:55:35,970 Çfarë kam vënë brenda këtu? 1188 00:55:35,970 --> 00:55:37,640 Cila është gjëja e parë që ju doni të bëni? 1189 00:55:37,640 --> 00:55:39,910 Në qoftë se ne duam që të merrni një string nga përdoruesit, 1190 00:55:39,910 --> 00:55:43,870 çfarë do të kemi për të bërë në këtë linjë të parë? 1191 00:55:43,870 --> 00:55:46,120 Na vjen keq, ju djema vetëm ndjehen të lirë për të folur dhe me zë të lartë. 1192 00:55:46,120 --> 00:55:47,123 Vetëm thirrura nga çfarëdo. 1193 00:55:47,123 --> 00:55:48,772 >> Audienca: Pyetni përdorues? 1194 00:55:48,772 --> 00:55:49,980 ANDI Peng: Si mund ta bëjmë këtë? 1195 00:55:49,980 --> 00:55:51,873 Ask-- jam duke shkuar për të tipit "të kërkojë nga shfrytëzuesi"? 1196 00:55:51,873 --> 00:55:52,600 >> Audienca: Printf. 1197 00:55:52,600 --> 00:55:54,341 >> ANDI Peng: OK. 1198 00:55:54,341 --> 00:55:54,840 Printf. 1199 00:55:54,840 --> 00:55:57,372 Çfarë unë dua të printf? 1200 00:55:57,372 --> 00:55:58,776 >> Audienca: Type në diçka. 1201 00:55:58,776 --> 00:56:02,760 1202 00:56:02,760 --> 00:56:03,840 >> ANDI Peng: Ashtu si kjo? 1203 00:56:03,840 --> 00:56:05,430 Guys, pretendon sikur unë jam një kompjuter. 1204 00:56:05,430 --> 00:56:08,475 Fizikisht më thoni çdo hap që unë duhet të shkruani në këtu? 1205 00:56:08,475 --> 00:56:09,600 Jam duke bërë diçka të gabuar? 1206 00:56:09,600 --> 00:56:10,743 A duhet të keni shtypur diçka? 1207 00:56:10,743 --> 00:56:11,690 >> Audienca: Ju duhet kuotat. 1208 00:56:11,690 --> 00:56:12,380 >> ANDI Peng: Unë kam nevojë për kuotat? 1209 00:56:12,380 --> 00:56:12,880 NE RREGULL. 1210 00:56:12,880 --> 00:56:15,520 1211 00:56:15,520 --> 00:56:16,297 NE RREGULL. 1212 00:56:16,297 --> 00:56:17,698 >> Audienca: Dhe pastaj linja e re. 1213 00:56:17,698 --> 00:56:21,434 1214 00:56:21,434 --> 00:56:22,465 Pikëpresje. 1215 00:56:22,465 --> 00:56:23,340 ANDI Peng: pikëpresje? 1216 00:56:23,340 --> 00:56:24,060 NE RREGULL. 1217 00:56:24,060 --> 00:56:24,560 Të mirë. 1218 00:56:24,560 --> 00:56:27,060 >> Audienca: Dhe ndoshta specifiko se ju dëshironi që ajo në Fjala? 1219 00:56:27,060 --> 00:56:30,120 1220 00:56:30,120 --> 00:56:31,415 >> ANDI Peng: Great. 1221 00:56:31,415 --> 00:56:33,540 Ju djema qesh me mua harruar për të vënë një pikëpresje. 1222 00:56:33,540 --> 00:56:36,350 Unë ju garantoj diku në rrjedhën e kësaj klase, 1223 00:56:36,350 --> 00:56:38,260 ju do të harroni të vënë a pikëpresje, dhe 1224 00:56:38,260 --> 00:56:41,116 do të ju merr tre orë të kuptoj se pse kodi juaj nuk është duke punuar. 1225 00:56:41,116 --> 00:56:42,240 Kjo ka ndodhur për të gjithë ne. 1226 00:56:42,240 --> 00:56:43,950 Kjo ndoshta do të ndodhë me ju. 1227 00:56:43,950 --> 00:56:46,352 Merrni në një zakon të mirë të përdorimit të pikpresje. 1228 00:56:46,352 --> 00:56:46,852 NE RREGULL. 1229 00:56:46,852 --> 00:56:49,010 >> Audienca: A doni për të bërë backslash në? 1230 00:56:49,010 --> 00:56:50,398 >> ANDI Peng: Sigurisht. 1231 00:56:50,398 --> 00:56:51,856 A doni të bëni backslash në? 1232 00:56:51,856 --> 00:56:53,020 >> Audienca: Po. 1233 00:56:53,020 --> 00:56:54,330 >> ANDI Peng: Great. 1234 00:56:54,330 --> 00:56:54,830 NE RREGULL. 1235 00:56:54,830 --> 00:56:57,872 Çfarë të bëj tjetër? 1236 00:56:57,872 --> 00:56:58,964 >> Audienca: Get string. 1237 00:56:58,964 --> 00:56:59,880 ANDI Peng: Get string. 1238 00:56:59,880 --> 00:57:03,080 1239 00:57:03,080 --> 00:57:03,830 Pra, çfarë mund të tipit? 1240 00:57:03,830 --> 00:57:04,233 Dikush? 1241 00:57:04,233 --> 00:57:05,040 >> Audienca: String s. 1242 00:57:05,040 --> 00:57:05,873 >> ANDI Peng: String s. 1243 00:57:05,873 --> 00:57:07,251 Audienca: getString. 1244 00:57:07,251 --> 00:57:09,000 ANDI Peng: Dikush, mund të më thoni ku 1245 00:57:09,000 --> 00:57:12,000 kjo getString funksion po vjen nga? 1246 00:57:12,000 --> 00:57:13,660 >> Audienca: string. 1247 00:57:13,660 --> 00:57:15,256 >> ANDI Peng: string? 1248 00:57:15,256 --> 00:57:16,715 Ju mendoni se është nga string? 1249 00:57:16,715 --> 00:57:17,830 >> Audienca: [padëgjueshme]. 1250 00:57:17,830 --> 00:57:18,830 >> ANDI Peng: Nuk ju shkoni. 1251 00:57:18,830 --> 00:57:21,280 Është nga CS50.h. 1252 00:57:21,280 --> 00:57:24,530 Nëse jeni të hutuar gjithmonë në ku një skedari bibliotekë është ose një header skedar është, 1253 00:57:24,530 --> 00:57:28,450 google fjalë për fjalë string, dhe unë do t'ju them 1254 00:57:28,450 --> 00:57:30,450 çfarë janë të gjitha funksionet që janë në string. 1255 00:57:30,450 --> 00:57:31,340 NE RREGULL. 1256 00:57:31,340 --> 00:57:35,210 >> Pra, tani që unë kam krijuar një varg dhe unë kam menjëhershëm të përdoruesit për të, 1257 00:57:35,210 --> 00:57:38,770 Unë e kam ruajtur atë në një variabël quajtur s, çfarë duhet të bëj tani? 1258 00:57:38,770 --> 00:57:40,652 >> Audienca: Kontrolloni nëse është në Fjala. 1259 00:57:40,652 --> 00:57:41,360 ANDI Peng: Na vjen keq? 1260 00:57:41,360 --> 00:57:42,545 Audienca: Kontrolloni nëse është në Fjala. 1261 00:57:42,545 --> 00:57:44,045 ANDI Peng: Në rregull, le të bëjë atë. 1262 00:57:44,045 --> 00:57:45,857 Si ta bëj këtë? 1263 00:57:45,857 --> 00:57:47,940 Në fakt, për qëllime i klasës të drejtë tani, 1264 00:57:47,940 --> 00:57:50,330 ne jemi vetëm duke shkuar për të supozojmë se çdo gjë 1265 00:57:50,330 --> 00:57:52,620 që ne input është tashmë në Fjala. 1266 00:57:52,620 --> 00:57:55,430 Nëse dëshironi të shikoni, ju do të vetëm të shtoni një deklaratë të kushtëzuar 1267 00:57:55,430 --> 00:57:59,640 që kontrollohen, që u zhvillua me anë të çdo element i vetëm grup 1268 00:57:59,640 --> 00:58:02,540 dhe kontrolluar nëse është në mes të vlerave të caktuara. 1269 00:58:02,540 --> 00:58:05,627 Unë harrojmë se çfarë numri i vlerave të vogle janë. 1270 00:58:05,627 --> 00:58:07,210 Ju mund të shikoni atë deri në tryezë ASCII. 1271 00:58:07,210 --> 00:58:08,800 Por, vërtet, kjo është një pikë të vërtetë të mirë. 1272 00:58:08,800 --> 00:58:11,758 Por tani për tani, ne jemi vetëm duke shkuar për të supozojmë se të gjitha vargjet ne input 1273 00:58:11,758 --> 00:58:13,130 janë në Fjala. 1274 00:58:13,130 --> 00:58:13,870 NE RREGULL. 1275 00:58:13,870 --> 00:58:18,069 >> Pra, si do të shkoj në lidhje me ky problem tjetër? 1276 00:58:18,069 --> 00:58:18,860 Audienca: Për lak. 1277 00:58:18,860 --> 00:58:19,340 ANDI Peng: Për lak? 1278 00:58:19,340 --> 00:58:19,839 NE RREGULL. 1279 00:58:19,839 --> 00:58:20,847 Më tregoni se çfarë të shkruani. 1280 00:58:20,847 --> 00:58:25,230 >> Audienca: Për int i barabartë me 0. 1281 00:58:25,230 --> 00:58:27,230 >> ANDI Peng: OK. 1282 00:58:27,230 --> 00:58:36,350 >> Audienca: Oh, në të vërtetë, atëherë ju të bëjë një presje dhe të bëjë n barabartë strlen. 1283 00:58:36,350 --> 00:58:38,940 >> ANDI Peng: Gjëja Pra rëndësishme që unë mendoj se ajo është vënë re këtu 1284 00:58:38,940 --> 00:58:42,936 është se ne nuk duhet të them int n për herë të dytë ne e bëmë këtë. 1285 00:58:42,936 --> 00:58:45,060 Vetëm e di se në një për lak kur ju jeni deklaruar, 1286 00:58:45,060 --> 00:58:47,934 ju në fakt nuk keni nevojë int e hera e dytë që ju të bëni një ndryshore. 1287 00:58:47,934 --> 00:58:51,202 Ju mund të thoni n strlen. 1288 00:58:51,202 --> 00:58:52,620 >> Audienca: E s. 1289 00:58:52,620 --> 00:58:53,510 >> ANDI Peng: s. 1290 00:58:53,510 --> 00:58:54,706 NE RREGULL. 1291 00:58:54,706 --> 00:58:58,370 >> Audienca: Pastaj një pikëpresje. 1292 00:58:58,370 --> 00:59:00,130 >> ANDI Peng: Sigurisht. 1293 00:59:00,130 --> 00:59:04,050 >> Audienca: Dhe pastaj [e padëgjueshme] n. 1294 00:59:04,050 --> 00:59:07,480 1295 00:59:07,480 --> 00:59:09,460 Pastaj i ++. 1296 00:59:09,460 --> 00:59:11,780 >> ANDI Peng: Great. 1297 00:59:11,780 --> 00:59:12,280 Në rregull. 1298 00:59:12,280 --> 00:59:14,690 Çfarë duam brenda këtë për lak tani? 1299 00:59:14,690 --> 00:59:17,820 Mos harroni, në qoftë se ne jemi duke shkuar për të drejtuar përmes një varg dhe të drejtuar përmes një rrjet, 1300 00:59:17,820 --> 00:59:19,287 ne duam të kontrolloni gjërat në të. 1301 00:59:19,287 --> 00:59:20,370 Çfarë do të shkojmë në nevojë? 1302 00:59:20,370 --> 00:59:23,070 1303 00:59:23,070 --> 00:59:26,900 Kjo është lloj i pjesës ndërlikuar tani. 1304 00:59:26,900 --> 00:59:27,960 Çdokush kanë një mend? 1305 00:59:27,960 --> 00:59:34,160 1306 00:59:34,160 --> 00:59:34,690 >> NE RREGULL. 1307 00:59:34,690 --> 00:59:37,830 Pra, së pari, si nuk kemi edhe qasje? 1308 00:59:37,830 --> 00:59:41,610 Si nuk kemi as kontroll të parë ose hyrë në një element në rrjet? 1309 00:59:41,610 --> 00:59:42,920 Si e bëjmë këtë? 1310 00:59:42,920 --> 00:59:47,120 Çfarë është simbol që ne përdorim për të bërë këtë? 1311 00:59:47,120 --> 00:59:50,920 Cili është emri i kësaj grup quajtur? 1312 00:59:50,920 --> 00:59:52,400 Ajo që quhet s, e drejtë? 1313 00:59:52,400 --> 00:59:54,850 >> Mbani mend, çdo varg është gjithmonë një koleksion. 1314 00:59:54,850 --> 00:59:58,210 Kllapa Pra s unë, e drejtë? 1315 00:59:58,210 --> 01:00:01,360 Sepse kjo është vlera e tanishme ose vlera e indeksit ne jemi të kontrolluar. 1316 01:00:01,360 --> 01:00:05,156 Dhe ne jemi duke shkuar për të vendosur se i barabartë to-- ne duam një vlerë të vogle, e drejtë? 1317 01:00:05,156 --> 01:00:07,530 Ne duam të kthehet që lower-- vjen keq, ne duam një uppercase. 1318 01:00:07,530 --> 01:00:10,014 Ne duam ta kthyer vogle Vlera në një uppercase. 1319 01:00:10,014 --> 01:00:11,805 Dhe kështu like-- unë jam i keq, si e ke emrin? 1320 01:00:11,805 --> 01:00:12,580 >> Audienca: Heidi. 1321 01:00:12,580 --> 01:00:12,940 >> ANDI Peng: Na vjen keq? 1322 01:00:12,940 --> 01:00:13,280 >> Audienca: Heidi. 1323 01:00:13,280 --> 01:00:13,988 >> ANDI Peng: Heidi. 1324 01:00:13,988 --> 01:00:15,850 Si Heidi tha Fillimisht, ne jemi me siguri 1325 01:00:15,850 --> 01:00:20,330 do të ketë nevojë the-- ne jemi ndoshta do të duhet të zbres 1326 01:00:20,330 --> 01:00:22,630 32 nga çfarëdo charc që është, e drejtë? 1327 01:00:22,630 --> 01:00:24,680 Sepse në një ASCII tavolinë, diferenca 1328 01:00:24,680 --> 01:00:27,790 në mes të një shkronja e vogël dhe një letër uppercase është 32. 1329 01:00:27,790 --> 01:00:31,290 Pra, kur ne jemi duke e bërë këtë, ne jemi me siguri do të duan të zbres 32, e drejtë? 1330 01:00:31,290 --> 01:00:33,910 >> Pra, ne jemi duke shkuar për të bërë S i. 1331 01:00:33,910 --> 01:00:37,590 1332 01:00:37,590 --> 01:00:41,200 E kupton se të gjithë e pse unë e bëri atë? 1333 01:00:41,200 --> 01:00:45,760 Sepse tani, në grup tonë, ne jemi të kontrolluar indeksi 0TH, e drejtë? 1334 01:00:45,760 --> 01:00:49,190 Dhe në indeksin 0TH e string, kjo është karakteri i parë. 1335 01:00:49,190 --> 01:00:51,820 Dhe se karakteri ne jemi duke shkuar për të supozojmë se është Fjala. 1336 01:00:51,820 --> 01:00:55,980 Në qoftë se ne duam të bërë atë uppercase, ne duhet të zbres 32 nga vlera e saj, 1337 01:00:55,980 --> 01:00:58,620 sepse në ASCII tonë tabela, kjo është se si ne të merrni atë 1338 01:00:58,620 --> 01:01:01,600 të ardhshëm përkatës Vlera që e bën të uppercase. 1339 01:01:01,600 --> 01:01:03,714 A të gjithë e kuptojnë se? 1340 01:01:03,714 --> 01:01:04,213 Po. 1341 01:01:04,213 --> 01:01:06,530 >> Audienca: Mund edhe ju e vogle një minus-- 1342 01:01:06,530 --> 01:01:08,080 >> ANDI Peng: Yeah, kështu që kjo është vërtetë me të vërtetë mirë. 1343 01:01:08,080 --> 01:01:10,455 Unë do të kthehem në atë Pyetja pas ne e bëjmë këtë. 1344 01:01:10,455 --> 01:01:11,060 Po. 1345 01:01:11,060 --> 01:01:13,940 Dhe pastaj në qoftë se unë dua të të shohim se çfarë po ndodh, 1346 01:01:13,940 --> 01:01:16,180 Unë jam ndoshta do të dëshironi të shtypura, e drejtë? 1347 01:01:16,180 --> 01:01:19,930 Dikush më tregoni se çfarë Unë dua të shtypura këtu. 1348 01:01:19,930 --> 01:01:29,160 >> Audienca: printf për qind c backslash [e padëgjueshme]. 1349 01:01:29,160 --> 01:01:33,570 Kjo është vlera e [padëgjueshme] s i. 1350 01:01:33,570 --> 01:01:34,614 >> ANDI Peng: s i, keq? 1351 01:01:34,614 --> 01:01:35,530 Audienca: [padëgjueshme]. 1352 01:01:35,530 --> 01:01:38,550 1353 01:01:38,550 --> 01:01:39,550 ANDI Peng: Unë nuk e di. 1354 01:01:39,550 --> 01:01:40,600 Çfarë mendoni ju? 1355 01:01:40,600 --> 01:01:44,016 >> Audienca: E pra, unë wouldn't-- I guess Unë nuk do të bring-- 1356 01:01:44,016 --> 01:01:46,944 Unë do të marrë atë jashtë brenda, sepse [e padëgjueshme]. 1357 01:01:46,944 --> 01:01:49,726 1358 01:01:49,726 --> 01:01:51,392 ANDI Peng: Oh, ju do të keni bërë këtë? 1359 01:01:51,392 --> 01:01:53,867 Audienca: Po. 1360 01:01:53,867 --> 01:01:56,700 ANDI Peng: Le të lërë atë mënyrë ajo është, dhe unë do të shpjegoj se pse më vonë. 1361 01:01:56,700 --> 01:01:58,533 Mos harroni, madje edhe kur ju kanë një mbajtës vend, 1362 01:01:58,533 --> 01:02:00,701 ju doni të vënë kllapa rreth tij. 1363 01:02:00,701 --> 01:02:01,200 Në rregull. 1364 01:02:01,200 --> 01:02:04,810 Pra kjo duhet të jetë një funksion të fortë këtu. 1365 01:02:04,810 --> 01:02:06,370 Le të drejtuar atë dhe të shohim nëse ajo harton. 1366 01:02:06,370 --> 01:02:08,750 Bëni sipërme. 1367 01:02:08,750 --> 01:02:09,250 Uh-oh. 1368 01:02:09,250 --> 01:02:12,030 1369 01:02:12,030 --> 01:02:13,340 Kjo nuk do të duken shumë e mirë. 1370 01:02:13,340 --> 01:02:14,507 Pse po ndodh kjo? 1371 01:02:14,507 --> 01:02:17,340 Ashtu si me çdo gabim, ju doni të shkoni mbrapa dhe të fillojnë me një të parë, 1372 01:02:17,340 --> 01:02:20,630 sepse zakonisht shkakton një gabim shumë gabimeve të tjera pas saj. 1373 01:02:20,630 --> 01:02:26,700 Këtu ne shohim upper.c: 18: 25, e cila tregon mua në këtë program të quajtur upper.c, 1374 01:02:26,700 --> 01:02:33,800 on line 18, gabim implicite deklaruar biblioteka e funksioneve strlen me llojin 1375 01:02:33,800 --> 01:02:36,330 blah unassigned--, unë nuk e di çfarë po ndodh pas kësaj. 1376 01:02:36,330 --> 01:02:39,990 >> Gjithë kjo është thënë me të drejtë tani është se diçka po ndodh në strlen. 1377 01:02:39,990 --> 01:02:43,520 Dhe kompjuteri e hutuar, sepse Është si, unë nuk e di se çfarë strlen është? 1378 01:02:43,520 --> 01:02:45,520 Çfarë bën që ndoshta t'ju them se ju jeni të humbur? 1379 01:02:45,520 --> 01:02:46,490 >> Audienca: Ju jeni të humbur [e padëgjueshme]. 1380 01:02:46,490 --> 01:02:47,630 >> ANDI Peng: Ju jeni të drejtë. 1381 01:02:47,630 --> 01:02:49,510 Pikërisht. 1382 01:02:49,510 --> 01:02:52,140 Pra, ky është vendi ku është rëndësishme për t'u siguruar 1383 01:02:52,140 --> 01:02:56,970 se çdo funksion ju përdorni në tuaj Kodi është që header saktë 1384 01:02:56,970 --> 01:02:59,660 paraqesë për bibliotekën, ose tjetër ju jeni do të merrni shumë gabime 1385 01:02:59,660 --> 01:03:01,150 dhe kodi juaj nuk po shkon të dinë se çfarë po ndodh. 1386 01:03:01,150 --> 01:03:03,050 Pra, ne jemi duke shkuar për të përfshirë string këtu. 1387 01:03:03,050 --> 01:03:06,270 >> Tani kur ne përpiqemi për të hartuar e sipërme. 1388 01:03:06,270 --> 01:03:08,410 Të hartojë saktë. 1389 01:03:08,410 --> 01:03:09,960 Le të drejtuar këtë program. 1390 01:03:09,960 --> 01:03:12,000 Pra shkruani diçka në shkronja jokapitale. 1391 01:03:12,000 --> 01:03:14,920 Çfarë mendoni ju djema doni të shkruani? 1392 01:03:14,920 --> 01:03:16,546 Thirrura nga diçka. 1393 01:03:16,546 --> 01:03:17,920 Të gjithë të drejtë, Charly vetëm ecte në. 1394 01:03:17,920 --> 01:03:18,990 Ne do të shkruani emrin Charly së. 1395 01:03:18,990 --> 01:03:21,670 1396 01:03:21,670 --> 01:03:22,840 >> Charly në Fjala. 1397 01:03:22,840 --> 01:03:27,742 Dhe shpresojmë se, me shpresë, kjo është do të bërtas jashtë dhe nxjerr nga goja 1398 01:03:27,742 --> 01:03:28,575 Charly në uppercase. 1399 01:03:28,575 --> 01:03:30,830 Yay! 1400 01:03:30,830 --> 01:03:33,430 e të gjithë të kuptojnë se si Unë shkova për të zgjidhur atë? 1401 01:03:33,430 --> 01:03:36,190 Mënyra se si unë mund të manipuluar duke përdorur integers 1402 01:03:36,190 --> 01:03:39,410 për të zgjidhur diçka që Unë dua të bëj në vargjet, 1403 01:03:39,410 --> 01:03:44,390 sepse personazhet dhe integers mund të referohet në të njëjtën mënyrë, sepse 1404 01:03:44,390 --> 01:03:45,540 e hartës ASCII. 1405 01:03:45,540 --> 01:03:52,890 >> Pra, që të kthehen në pikën tuaj, në qoftë se unë të kërkuar për të vënë këtu në vend të 32 1406 01:03:52,890 --> 01:03:58,959 uppercase Një minus vogle një ashtu si kjo, që do të punojë në mënyrë të barabartë, si dhe, 1407 01:03:58,959 --> 01:04:01,750 sepse kjo është thjesht vetëm Dallimi në mes të këtyre dy vlerave. 1408 01:04:01,750 --> 01:04:09,570 Nëse unë dua të bëj këtë Charly again--. 1409 01:04:09,570 --> 01:04:10,320 Oh no. 1410 01:04:10,320 --> 01:04:11,820 Unë mendoj se ne kemi shkuar rrugën e gabuar, vërtet? 1411 01:04:11,820 --> 01:04:13,260 >> Audienca: [padëgjueshme] vogle a. 1412 01:04:13,260 --> 01:04:14,260 >> ANDI Peng: Nuk ju shkoni. 1413 01:04:14,260 --> 01:04:22,380 1414 01:04:22,380 --> 01:04:22,880 Yep. 1415 01:04:22,880 --> 01:04:24,920 Dhe jashtë pështyn Charly. 1416 01:04:24,920 --> 01:04:28,020 Pra, kini kujdes kur ju jeni duke zbritur vlerat 1417 01:04:28,020 --> 01:04:30,400 për të kujtuar të cilat një është më i madh se tjetri. 1418 01:04:30,400 --> 01:04:35,220 Për shembull, këtu kam harruar se vogle një është në fakt 1419 01:04:35,220 --> 01:04:38,540 më i madh se uppercase A. Pra, kur unë u përpoq të zbres atyre mënyra të tjera 1420 01:04:38,540 --> 01:04:40,600 rreth, kam negative 32. 1421 01:04:40,600 --> 01:04:42,800 Dhe kompjuteri im ishte si, Unë nuk e di se çka është. 1422 01:04:42,800 --> 01:04:45,810 Është probabilitet vetëm disa të rastit vlerë e cila nuk është shumë e mirë. 1423 01:04:45,810 --> 01:04:48,760 Dhe prandaj sigurohuni që ju jeni zbritur në gjatësinë e saktë 1424 01:04:48,760 --> 01:04:52,831 për të gjetur karakterin që ju dëshironi. 1425 01:04:52,831 --> 01:04:53,330 NE RREGULL. 1426 01:04:53,330 --> 01:04:58,550 A është dikush i hutuar se si ne shkoi për të shkruar këtë funksion? 1427 01:04:58,550 --> 01:04:59,180 NE RREGULL. 1428 01:04:59,180 --> 01:05:04,830 Pra, në fakt, një funksion tashmë ekziston në bibliotekë të quajtur ctype.h. 1429 01:05:04,830 --> 01:05:06,417 Quajtur ctype.h i bibliotekës. 1430 01:05:06,417 --> 01:05:08,500 Ky funksion të vërtetë është shkruar tashmë për ju. 1431 01:05:08,500 --> 01:05:10,820 Ajo që quhet të sipërme. 1432 01:05:10,820 --> 01:05:13,027 >> Dhe kështu për qëllime të këtë pset, ju do të jeni 1433 01:05:13,027 --> 01:05:15,860 për të gjetur se ju me të vërtetë dëshironi të përdorni një shumë e funksioneve të përmbajtura 1434 01:05:15,860 --> 01:05:17,390 brenda bibliotekës ctype. 1435 01:05:17,390 --> 01:05:21,040 Të sipërme, të ulët, është e sipërme, është lower-- ato janë të gjitha funksionet 1436 01:05:21,040 --> 01:05:24,914 që ju do të jetë në gjendje të përdorin shumë, shumë shpejt në kodin tuaj që 1437 01:05:24,914 --> 01:05:26,080 bën pikërisht atë që kjo e bën. 1438 01:05:26,080 --> 01:05:28,941 Ne shkruam se si për të kthyer një varg të uppercase. 1439 01:05:28,941 --> 01:05:31,440 Por kjo është në të vërtetë kodi që dikush tjetër ka shkruar 1440 01:05:31,440 --> 01:05:33,800 dhe që ju mund të hyni nëpërmjet një funksion të ndryshëm. 1441 01:05:33,800 --> 01:05:34,300 Po? 1442 01:05:34,300 --> 01:05:39,570 >> Audienca: Pra, ju vetëm kopjoni një në atje dhe të bëjë atë për çdo letër të vetme? 1443 01:05:39,570 --> 01:05:42,070 >> ANDI Peng: Po, sepse unë nuk bëj kujdesen për vlerat e një. 1444 01:05:42,070 --> 01:05:44,540 Unë vetëm kujdes se ndryshimi mes tyre është 32, e drejtë? 1445 01:05:44,540 --> 01:05:48,210 Dallimi në mes Fjala b dhe uppercase B është gjithashtu 32. 1446 01:05:48,210 --> 01:05:50,860 Dhe dallimi në mes të C dhe uppercase C është gjithmonë 32. 1447 01:05:50,860 --> 01:05:53,235 >> Unë vetëm duhet të kujdesen për Diferenca midis të dyjave, 1448 01:05:53,235 --> 01:05:56,666 sepse të gjitha letrat ndjekin të njëjtin model, e drejtë? 1449 01:05:56,666 --> 01:05:58,540 Nëse unë kam dallimin midis një prej tyre, 1450 01:05:58,540 --> 01:06:01,050 Unë e di se çfarë është dallimi midis të gjithë prej tyre është. 1451 01:06:01,050 --> 01:06:01,740 Pyetje e mirë. 1452 01:06:01,740 --> 01:06:04,090 Po. 1453 01:06:04,090 --> 01:06:06,660 Gjithkush mirë? 1454 01:06:06,660 --> 01:06:09,080 NE RREGULL. 1455 01:06:09,080 --> 01:06:09,580 OOP. 1456 01:06:09,580 --> 01:06:14,380 1457 01:06:14,380 --> 01:06:15,270 >> NE RREGULL. 1458 01:06:15,270 --> 01:06:20,310 Pra, një tjetër koncept që është do të jetë shumë i dobishëm si ju 1459 01:06:20,310 --> 01:06:22,570 të vazhdojë të zhvillojë Kodi juaj është kjo ide 1460 01:06:22,570 --> 01:06:25,430 e krijimit të funksioneve ose abstraksion. 1461 01:06:25,430 --> 01:06:28,479 Deri tani, ne kemi marrë të gjithë algjebër. 1462 01:06:28,479 --> 01:06:31,770 Në algjebër, ju jeni mësuar se ka kjo gjë e mrekullueshme të quajtur një funksion 1463 01:06:31,770 --> 01:06:35,300 makine, ku në qoftë se ju input një lloj numri, 1464 01:06:35,300 --> 01:06:38,720 ajo shkon përmes këtij funksioni të mrekullueshme dhe jashtë pops një dalje tjetër, e drejtë? 1465 01:06:38,720 --> 01:06:42,220 Në kod, e njëjta gjë ndodh në çdo lloj funksioni. 1466 01:06:42,220 --> 01:06:48,230 >> Kështu që unë mund të fizikisht shkruani në trupin tim të kodit tim 1467 01:06:48,230 --> 01:06:52,357 një deklaratë kryesor që në fakt e bën çfarëdo trupi i kodit është duke bërë. 1468 01:06:52,357 --> 01:06:54,940 Por jashtë kësaj, unë gjithashtu mund të shkruaj funksione të ndryshme 1469 01:06:54,940 --> 01:06:56,320 që bëni shumë gjëra të ndryshme. 1470 01:06:56,320 --> 01:06:58,570 Për shembull, ne kemi tashmë filloi duke përdorur disa prej tyre. 1471 01:06:58,570 --> 01:07:00,610 Printf-- se është një funksion që dikush tjetër 1472 01:07:00,610 --> 01:07:02,870 tashmë ka shkruar se ne mund të telefononi në kodin tonë. 1473 01:07:02,870 --> 01:07:05,410 Për upper-- në këtë rast, upper-- është një tjetër funksion 1474 01:07:05,410 --> 01:07:07,330 ne kemi shkruar se ne mund të telefononi në kodin tonë. 1475 01:07:07,330 --> 01:07:09,520 Dhe kështu që unë mendoj pse ne kemi edhe funksione? 1476 01:07:09,520 --> 01:07:12,100 Pse nuk kemi vetëm pllum atë gjitha në të njëjtin drejtim të kodit? 1477 01:07:12,100 --> 01:07:13,730 Kjo e bën të lehtë për të gjithë. 1478 01:07:13,730 --> 01:07:19,200 >> E pra, arsyetimi pas se është, para së gjithash, organizatës. 1479 01:07:19,200 --> 01:07:21,880 Është me të vërtetë i bezdisshëm duke shkuar përmes kodit dikujt 1480 01:07:21,880 --> 01:07:25,110 dhe një funksion si printf. 1481 01:07:25,110 --> 01:07:28,570 Në qoftë se ju djema të vërtetë e dinin se çfarë Funksioni printf shkaktuar për të shkruar, 1482 01:07:28,570 --> 01:07:30,530 kjo është, si, 1000 rreshta të kodit. 1483 01:07:30,530 --> 01:07:32,357 >> Në qoftë se çdo herë kam kërkuar të printf diçka, 1484 01:07:32,357 --> 01:07:35,440 Unë kisha për të shkruar 1000 rreshta të kodit, që do të jetë me të vërtetë i bezdisshëm për të lexuar, 1485 01:07:35,440 --> 01:07:36,290 e drejtë? 1486 01:07:36,290 --> 01:07:38,860 Kjo është arsyeja pse ne kemi vetëm krijuar këtë funksion abstrakte 1487 01:07:38,860 --> 01:07:41,670 se ne kemi tashmë dikë tjetër ka shkruar diku tjetër. 1488 01:07:41,670 --> 01:07:44,920 Dhe çdo herë kemi nevojë të përdorin atë në Kodi ynë, ne vetëm duhet të them printf. 1489 01:07:44,920 --> 01:07:48,070 Dhe kjo është në gjendje të përdorni funksionin dikush tjetër ka shkruar në kodin tonë. 1490 01:07:48,070 --> 01:07:51,020 Kjo e bën më të lehtë organizativ për të lexuar kodin. 1491 01:07:51,020 --> 01:07:53,460 >> Së dyti, kjo është thjeshtëzimi. 1492 01:07:53,460 --> 01:07:56,750 Ajo thjeshton hapat që kemi për të marrë për të zgjidhur problemin tonë. 1493 01:07:56,750 --> 01:07:59,300 Printf, funksionon si printf, funksionon si të sipërme 1494 01:07:59,300 --> 01:08:03,560 janë të gjitha gjërat që na lejojnë të thjeshtojë kodin tonë poshtë kështu që është më e lehtë. 1495 01:08:03,560 --> 01:08:05,830 Dhe gjëja e fundit që është Ripërdorimi. 1496 01:08:05,830 --> 01:08:08,710 >> Pra, fakti që kemi një funksion i quajtur printf 1497 01:08:08,710 --> 01:08:11,990 që mund ta quajmë shumë të ndryshme herë dhe lejon atë të jetë reusable. 1498 01:08:11,990 --> 01:08:14,980 Nëse unë do të shkruaj printf, Unë vetëm shkruaj një herë. 1499 01:08:14,980 --> 01:08:16,439 Ajo ekziston vetëm në atë një vend. 1500 01:08:16,439 --> 01:08:19,890 Në qoftë se unë të kërkuar për të bërë atë përsëri, unë do të duhet të kopjoni dhe ngjisni gjithë që 1501 01:08:19,890 --> 01:08:21,760 në përputhje tim të dytë të kodit. 1502 01:08:21,760 --> 01:08:24,880 Kjo është arsyeja pse në qoftë se ne krijojmë një funksion që ekziston jashtë kryesore tonë, 1503 01:08:24,880 --> 01:08:26,880 ne vetëm mund të telefononi në ajo dhe ripërdorimin atë sa herë që 1504 01:08:26,880 --> 01:08:29,604 ne kemi nevojë në mënyrë që ajo është shumë më e lehtë për ne si programe për të shkruar. 1505 01:08:29,604 --> 01:08:32,220 1506 01:08:32,220 --> 01:08:35,549 >> Pra, mënyra që ne në fakt do të shkruaj një funksion është shumë e ngjashme, e drejtë? 1507 01:08:35,549 --> 01:08:37,590 Kjo është lloj i parë shembull në të cilën ne do të 1508 01:08:37,590 --> 01:08:42,830 shoh një reagim i funksionit në një stil ndryshme se zbrazëti int tonë kryesore. 1509 01:08:42,830 --> 01:08:46,779 Në këtë rast, në qoftë se unë të kërkuar për të shkruaj një funksion të quajtur q, e drejtë? 1510 01:08:46,779 --> 01:08:49,370 >> Dhe vlera int këtu është e gjitha thënë mua, 1511 01:08:49,370 --> 01:08:51,649 çfarë unë dua këtë funksionojë për t'u kthyer tek unë? 1512 01:08:51,649 --> 01:08:54,484 Nëse unë dua të kubike një numër të plotë, Unë do të duan të dhëna. 1513 01:08:54,484 --> 01:08:55,525 Këto janë parametrat. 1514 01:08:55,525 --> 01:08:58,490 Unë jam duke shkuar për inputet një vlerë të tipit int. 1515 01:08:58,490 --> 01:09:01,300 Dhe unë jam duke shkuar për të kthyer Një tjetër vlerë lloj int. 1516 01:09:01,300 --> 01:09:03,050 Dhe këtu, si ti mund të shohim, të gjitha unë jam duke bërë 1517 01:09:03,050 --> 01:09:07,300 është cubing çfarëdo input ime është si prodhim time dhe kthyer atë. 1518 01:09:07,300 --> 01:09:10,790 >> Pra, gjithë ky funksion nuk është merr një lloj numër të plotë. 1519 01:09:10,790 --> 01:09:14,979 Ai e shumëfishon atë në vetvete dy herë në mënyrë që ajo cubes ne fuqi. 1520 01:09:14,979 --> 01:09:17,729 Dhe pastaj ajo kthehet çfarëdo që prodhimi është. 1521 01:09:17,729 --> 01:09:20,540 Pra, në këtë rast, është dy linja Kodi që ne kishim për të shkruar shtesë. 1522 01:09:20,540 --> 01:09:22,880 Por nëse ne të kërkuar për të thirrur mbi këtë shumë herë, 1523 01:09:22,880 --> 01:09:26,210 kjo është një shumë më e lehtë për të tipit se një Linja e drejtë këtu që është në kubike se 1524 01:09:26,210 --> 01:09:28,830 duhet të kalojnë nëpër shumë herë. 1525 01:09:28,830 --> 01:09:34,180 >> Kështu që mënyra që në thelb ndonjë formatimit për çdo lloj funksioni 1526 01:09:34,180 --> 01:09:36,420 do të ekzistojë është si këtu. 1527 01:09:36,420 --> 01:09:38,659 Pra, ne kemi emrin funksionit. 1528 01:09:38,659 --> 01:09:39,950 Në këtë rast, ajo që quhet kubike. 1529 01:09:39,950 --> 01:09:42,033 Dhe ne atë emër kubike sepse është e lehtë për të kujtuar. 1530 01:09:42,033 --> 01:09:44,220 Ju mund të emrit atë katror dhe ajo në fakt mund të Cubed. 1531 01:09:44,220 --> 01:09:45,500 Nuk ka rëndësi. 1532 01:09:45,500 --> 01:09:48,020 Vetëm një emër që ju jeni caktimin funksionin tuaj. 1533 01:09:48,020 --> 01:09:51,660 >> Kjo e drejtë këtu, int, është lloj parametri që ju nevojitet. 1534 01:09:51,660 --> 01:09:54,149 Pra, çfarë e bën këtë funksion nevojitet në mënyrë që të veprojë? 1535 01:09:54,149 --> 01:09:55,990 E pra, ajo ka nevojë për një kontribut. 1536 01:09:55,990 --> 01:09:56,704 I quajtur atë input. 1537 01:09:56,704 --> 01:09:58,120 Ju mund atë emër çdo gjë që ju dëshironi. 1538 01:09:58,120 --> 01:10:00,500 Por kam nevojë për diçka të tipit int. 1539 01:10:00,500 --> 01:10:03,730 Ajo do të vërtetë të ekzekutuar çdo gjë që është brenda këtu, 1540 01:10:03,730 --> 01:10:04,990 trupi i funksionit. 1541 01:10:04,990 --> 01:10:07,847 Dhe pastaj lloji kthimi të drejtë këtu, kjo int-- 1542 01:10:07,847 --> 01:10:09,680 gjithë kjo është thënë mua është se ky funksion është 1543 01:10:09,680 --> 01:10:11,250 do të kthehen tek unë në int. 1544 01:10:11,250 --> 01:10:14,460 Kështu ajo do të marrë në një int, dhe ajo do të ju jap përsëri një int. 1545 01:10:14,460 --> 01:10:17,750 A e kuptojnë të gjithë si formatimin e këtij lloji funksionon? 1546 01:10:17,750 --> 01:10:18,250 Ftohtë. 1547 01:10:18,250 --> 01:10:24,690 1548 01:10:24,690 --> 01:10:25,740 >> NE RREGULL. 1549 01:10:25,740 --> 01:10:31,770 Pra, nuk do të jetë i shqetësuar nëse kjo duket një e drejtë pak abstrakt tani. 1550 01:10:31,770 --> 01:10:33,450 Kjo është diçka që ne do të flasim për. 1551 01:10:33,450 --> 01:10:36,310 Ne do të zhyten më thellë në më vonë në kurs. 1552 01:10:36,310 --> 01:10:41,170 Mënyra se çdo lloj i nivelit më të lartë abstragim e këtyre gjërave punës 1553 01:10:41,170 --> 01:10:43,530 është se, në të kujtesës, në kompjuterin tuaj, çdo gjë 1554 01:10:43,530 --> 01:10:47,660 është ruajtur në këtë lloj i rafte, të them. 1555 01:10:47,660 --> 01:10:49,070 >> Pra, deri atje në krye. 1556 01:10:49,070 --> 01:10:50,861 Unë nuk e di nëse ju djema mund të shihni se edhe. 1557 01:10:50,861 --> 01:10:52,590 Unë do të përpiqemi për të zmadhuar. 1558 01:10:52,590 --> 01:10:55,111 Këtu në krye, ne kanë tekstin fizike 1559 01:10:55,111 --> 01:10:57,860 nga ajo që kompjuteri është interpreting-- të gjitha zero dhe ato që 1560 01:10:57,860 --> 01:10:59,540 ekzistojnë brenda kompjuterin tonë. 1561 01:10:59,540 --> 01:11:03,390 Dhe pastaj ne kemi nisur të dhënave dhe të dhënat e uninitialized, 1562 01:11:03,390 --> 01:11:05,340 ajo që ne e quajmë variabla globale. 1563 01:11:05,340 --> 01:11:08,200 Kështu variablave që ekzistojnë në të gjitha programet 1564 01:11:08,200 --> 01:11:11,815 dhe të gjithë të tërë tuaj, në thelb, kodi. 1565 01:11:11,815 --> 01:11:13,940 Nuk shqetësohet nëse ju djema janë lloj i paqartë për këtë. 1566 01:11:13,940 --> 01:11:16,060 Kjo nuk ka rëndësi tani. 1567 01:11:16,060 --> 01:11:18,680 >> Dhe pastaj ne kemi se çfarë është quajtur një grumbull në një pirg. 1568 01:11:18,680 --> 01:11:21,140 Mendoni për një pirg fjalë për fjalë si vetëm si një pirg të gjërave, 1569 01:11:21,140 --> 01:11:23,098 një pirg të ndryshme gjëra duke u shtyrë në krye 1570 01:11:23,098 --> 01:11:27,870 e njëri-tjetrit që të ruajë të ndryshme të Variablat dhe sintaksa brenda kodin tuaj. 1571 01:11:27,870 --> 01:11:31,460 Dhe pastaj këtu në fund fare, ne kemi variablat e mjedisit 1572 01:11:31,460 --> 01:11:35,480 të asaj që ju jeni ekzekutimin brenda vetëm linjë juaj pak e kodit. 1573 01:11:35,480 --> 01:11:40,510 >> Dhe ne jemi vetëm duke shkuar për të zmadhuar në në pjesën aktuale rafte. 1574 01:11:40,510 --> 01:11:43,880 Kështu që këtu, në qoftë se ne ishim për ta zmadhuar në në vetëm këtë zonë të rafte, 1575 01:11:43,880 --> 01:11:45,140 kjo është ajo që duket si. 1576 01:11:45,140 --> 01:11:48,590 Dhe kjo është në fakt shumë e rëndësishme kur ju djema flasim për funksionet, 1577 01:11:48,590 --> 01:11:52,330 sepse njoftim se kujtesës e kompjuterit tuaj 1578 01:11:52,330 --> 01:11:55,600 po ruajtjen variablat dhe funksionet 1579 01:11:55,600 --> 01:11:58,790 dhe parametrat e dy tuaj Funksioni dhe variablave tuaja kryesore 1580 01:11:58,790 --> 01:12:00,190 në vende të ndryshme. 1581 01:12:00,190 --> 01:12:03,390 >> Deri tani, kryesor është funksioni aktual 1582 01:12:03,390 --> 01:12:04,780 që ju jeni duke ekzekutuar në një kod. 1583 01:12:04,780 --> 01:12:08,050 Ju keni parametrat e tij ruhen këtu dhe variablave të saj lokale ruhen këtu. 1584 01:12:08,050 --> 01:12:12,270 Variabël lokale thjesht do të thotë çdo variabël se ekzistojnë vetëm brenda këtij funksioni. 1585 01:12:12,270 --> 01:12:15,610 Dhe në krye të saj, ju e keni këtë Funksioni i veçantë i quajtur kubike. 1586 01:12:15,610 --> 01:12:18,240 Ju keni kjo është parametrat si dhe ato vendasit. 1587 01:12:18,240 --> 01:12:21,540 >> Dhe arsyeja që ju mund të të shihni këtu është se çfarë 1588 01:12:21,540 --> 01:12:25,030 ndodh kur kubike merr në një vlera nga funksioni juaj kryesor 1589 01:12:25,030 --> 01:12:27,640 është se në fakt ajo është kopjimit se mbi. 1590 01:12:27,640 --> 01:12:31,470 Pra, nëse kam kërkuar për të kubike 2 dhe 8 të kthehet, se 2 1591 01:12:31,470 --> 01:12:33,730 është futur në fakt si një parametër dhe kjo është 1592 01:12:33,730 --> 01:12:37,690 kopjuar mbi kështu që ju të keni atë ekzistuese në dy vende të ndryshme në kujtesë. 1593 01:12:37,690 --> 01:12:40,520 Dhe ju duhet të jenë shumë të kujdesshëm në kujtuar që një nga ata 1594 01:12:40,520 --> 01:12:42,520 ju jeni në të vërtetë duke manipuluar. 1595 01:12:42,520 --> 01:12:47,170 Dhe një shembull i asaj që ndodhi që do të jetë shumë, shumë e keqe 1596 01:12:47,170 --> 01:12:48,050 ekziston e drejtë këtu. 1597 01:12:48,050 --> 01:12:50,760 1598 01:12:50,760 --> 01:12:58,650 >> Në mënyrë të drejtë këtu, unë kam marrë, në teori, një program të drejtë këtu, një funksion kryesor 1599 01:12:58,650 --> 01:13:02,180 që unë jam deklaruar një int x është e barabartë me 1. 1600 01:13:02,180 --> 01:13:04,505 Unë jam deklaruar një tjetër y int barabartë 2. 1601 01:13:04,505 --> 01:13:06,380 Dhe atëherë unë jam drejtimin e tij përmes këtij funksioni 1602 01:13:06,380 --> 01:13:09,647 quajtur shkëmbim, ku unë të supozojmë se kjo është shkëmbejnë dy vlera. 1603 01:13:09,647 --> 01:13:11,480 Dhe atëherë unë jam duke shkuar për shtypura e tyre, e drejtë? 1604 01:13:11,480 --> 01:13:13,220 Kjo është ajo që unë dua ky program për të bërë. 1605 01:13:13,220 --> 01:13:15,180 >> Pra, le të zbresë dhe të marrë një sy. 1606 01:13:15,180 --> 01:13:18,200 Pra, nëse unë në fakt shkruaj një tjetër funksion, si ju mund të shihni, 1607 01:13:18,200 --> 01:13:19,750 ne kemi funksioni ynë kryesor këtu. 1608 01:13:19,750 --> 01:13:22,860 Dhe pastaj ne kemi tonë Funksioni i dytë këtu. 1609 01:13:22,860 --> 01:13:24,520 Shkëmbim pavlefshme. 1610 01:13:24,520 --> 01:13:27,090 Void thjesht do të thotë se kjo është nuk do të kthehen asgjë. 1611 01:13:27,090 --> 01:13:28,930 Emri funksion është quajtur shkëmbim, dhe kjo është 1612 01:13:28,930 --> 01:13:33,730 duke shkuar për të dy variablave konsum, int a dhe int b, nga tuaj [padëgjueshme] funksion. 1613 01:13:33,730 --> 01:13:39,010 >> Pra, në thelb këtu, ne jemi kalimin x dhe y në këtë funksion. 1614 01:13:39,010 --> 01:13:40,760 Dhe në qoftë se ne ishim të krijuar this-- kështu që ne duam 1615 01:13:40,760 --> 01:13:42,420 për të krijuar një vlerë të përkohshme, e drejtë? 1616 01:13:42,420 --> 01:13:43,930 Ne jemi duke shkuar për të caktojë që për një. 1617 01:13:43,930 --> 01:13:45,388 Dhe pastaj një do të tani të barabartë b. 1618 01:13:45,388 --> 01:13:47,660 Dhe b do të jetë përsëri ku vlera e temp ishte, 1619 01:13:47,660 --> 01:13:51,070 i cili është një, sepse kur ju doni të bie në ujdi gjëra, 1620 01:13:51,070 --> 01:13:52,320 ju nuk mund të ashtu si bie në ujdi tyre. 1621 01:13:52,320 --> 01:13:54,360 >> Ju duhet të mbani një jashtë këtu në mënyrë që të kujton 1622 01:13:54,360 --> 01:13:56,485 se çka është, për shkak se një herë ju bie në ujdi një, ju harroj 1623 01:13:56,485 --> 01:13:58,200 çfarë se vlera origjinale ishte, e drejtë? 1624 01:13:58,200 --> 01:14:00,990 Pra, në teori, ky program duhet të punojnë, e drejtë? 1625 01:14:00,990 --> 01:14:03,630 Në qoftë se unë të kërkuar për të bie në ujdi dy, ata duhet të bie në ujdi. 1626 01:14:03,630 --> 01:14:05,490 Pra, le të drejtuar atë dhe të shohim nëse ajo punon. 1627 01:14:05,490 --> 01:14:11,130 1628 01:14:11,130 --> 01:14:16,940 >> Pra, si ju djema mund të shihni, x dikur ishte 1 dhe y ishte një herë 2. 1629 01:14:16,940 --> 01:14:21,475 Dhe në qoftë se unë të shtypura it out, x është ende 1 dhe y eshte 2. 1630 01:14:21,475 --> 01:14:25,970 Hmm, ky program nuk duket të jetë duke punuar në mënyrën që unë dua atë për të punuar. 1631 01:14:25,970 --> 01:14:29,950 A ka dikush të duan të marrin një e shtënë në guessing pse kjo po ndodhte? 1632 01:14:29,950 --> 01:14:34,430 Ajo ka të bëjë me mënyrën se se gjëra të ndryshme janë 1633 01:14:34,430 --> 01:14:38,172 të ruhet në vende të ndryshme në kujtesë. 1634 01:14:38,172 --> 01:14:39,377 >> NE RREGULL. 1635 01:14:39,377 --> 01:14:41,960 Pra, ju djema nuk keni për t'u shqetësuar shumë për këtë të drejtë tani. 1636 01:14:41,960 --> 01:14:46,610 Por e di se kubike e lokale Variablat ishin një dhe b, 1637 01:14:46,610 --> 01:14:49,230 sepse këtu në funksion tonë, ne kemi deklaruar a dhe b 1638 01:14:49,230 --> 01:14:53,570 si variablat që ekzistojnë brenda kubike, se funksioni. 1639 01:14:53,570 --> 01:14:59,490 Por si ju mund të shihni, parametrat që ajo është duke marrë në po ruhen këtu. 1640 01:14:59,490 --> 01:15:01,370 Por ne nuk ishin në të vërtetë kthyer asgjë. 1641 01:15:01,370 --> 01:15:03,120 Ne nuk ishin në fakt ndryshon x dhe y. 1642 01:15:03,120 --> 01:15:04,440 Ne ishim vetëm duke ndryshuar a dhe b. 1643 01:15:04,440 --> 01:15:08,340 >> Ne kishim kopjuar X dhe Y në diçka që quhet a dhe b. 1644 01:15:08,340 --> 01:15:11,092 Por ne fakt nuk manipuluar x dhe y vetë. 1645 01:15:11,092 --> 01:15:12,800 A ju djema duke parë se si kjo po ndodh? 1646 01:15:12,800 --> 01:15:16,140 Është se ne kemi kopjuar thjesht atë mbi, por ne nuk kemi mbajtur në fakt 1647 01:15:16,140 --> 01:15:18,030 gjurmët e ku ata ishin në kujtesën. 1648 01:15:18,030 --> 01:15:20,127 >> Dhe kështu që tani kompjuter është në kërkim, oh, unë kam 1649 01:15:20,127 --> 01:15:21,960 të drejtuar këtë gjë me anë të ky funksion i bukur. 1650 01:15:21,960 --> 01:15:23,690 Por x dhe y jane ende x dhe y. 1651 01:15:23,690 --> 01:15:26,240 Asgjë nuk ka ndodhur me ata për shkak të faktit 1652 01:15:26,240 --> 01:15:28,340 që këtyre parametrave dhe ndryshoret lokale 1653 01:15:28,340 --> 01:15:30,150 janë ruajtur në një tjetër vend në kujtesë. 1654 01:15:30,150 --> 01:15:32,030 Dhe kjo është një nivel më të lartë koncept që ne do të 1655 01:15:32,030 --> 01:15:34,300 të fillojnë të shohim më vonë në kurs. 1656 01:15:34,300 --> 01:15:36,950 Por vetëm e di se kjo është një problem që mund të ndodhë 1657 01:15:36,950 --> 01:15:41,400 dhe se ne do të kuptoj se mënyra se si të merren me këtë më vonë në kurs. 1658 01:15:41,400 --> 01:15:41,900 NE RREGULL. 1659 01:15:41,900 --> 01:15:47,750 1660 01:15:47,750 --> 01:15:48,250 Në rregull. 1661 01:15:48,250 --> 01:15:51,780 Pra, koncepti i fundit ne jemi vërtetë do të mbulojë 1662 01:15:51,780 --> 01:15:53,880 që do të jenë të dobishme për pset këtë javë 1663 01:15:53,880 --> 01:15:56,060 janë ato që quhen argumente command line. 1664 01:15:56,060 --> 01:16:00,820 Pra, Rob në leksionin e tij shkuan përmes lloj shkurtimisht se si këto punë. 1665 01:16:00,820 --> 01:16:02,770 Në thelb e di se kur ju jeni me shkrim 1666 01:16:02,770 --> 01:16:06,280 si një funksion kryesor, kur ne shkroi funksionet e para në të kaluarën, 1667 01:16:06,280 --> 01:16:07,804 kemi pasur pavlefshme int main. 1668 01:16:07,804 --> 01:16:10,470 Dhe arsyeja kishim pavlefshme atje ishte për shkak se programet tona nuk ka 1669 01:16:10,470 --> 01:16:12,520 duhet të vlerave të dhëna për të drejtuar, e drejtë? 1670 01:16:12,520 --> 01:16:16,020 Kur unë u zhvillua Mario, unë nuk kam nevojë për që në fakt vetëm lloji në diçka 1671 01:16:16,020 --> 01:16:16,970 kur unë u zhvillua Mario. 1672 01:16:16,970 --> 01:16:20,170 Unë përdoruesit mund të sjellë më vonë. 1673 01:16:20,170 --> 01:16:22,450 Por kjo nuk do të jetë gjithmonë rasti. 1674 01:16:22,450 --> 01:16:24,980 >> Për shembull, në këtë Problemi jave vendos, 1675 01:16:24,980 --> 01:16:28,365 ju jeni do të të kërkohet që, në Përveç drejtimin programin tuaj, 1676 01:16:28,365 --> 01:16:30,990 ju jeni do të duan për të dhëna disa gjëra në drejt si ju 1677 01:16:30,990 --> 01:16:32,050 të drejtuar programin tuaj. 1678 01:16:32,050 --> 01:16:34,720 Pra, mënyra që ne bëjmë që quhet një argument command line, e cila 1679 01:16:34,720 --> 01:16:37,280 është si një argument ju mund të dhëna drejtpërdrejt 1680 01:16:37,280 --> 01:16:39,260 si ju jeni duke u përpjekur për të drejtuar programin tuaj. 1681 01:16:39,260 --> 01:16:44,680 >> Pra, simbol për këtë, kjo është goxha e ndërlikuar-looking, 1682 01:16:44,680 --> 01:16:47,320 por kjo nuk është e vërtetë se vështirë. Pra int main-- 1683 01:16:47,320 --> 01:16:48,910 kjo është vetëm funksioni juaj kryesor. 1684 01:16:48,910 --> 01:16:52,110 Në argc presje kllapa string argv. 1685 01:16:52,110 --> 01:16:56,040 Pra, të gjitha që është thënë është se kjo int argc-- gjithçka që është thënë ju 1686 01:16:56,040 --> 01:17:00,560 është se ato janë numri i Argumentet kompjuteri duhet të presin. 1687 01:17:00,560 --> 01:17:03,130 >> Pra, një gjë që është me të vërtetë e rëndësishme për të mbajtur gjurmët e 1688 01:17:03,130 --> 01:17:07,080 është emri fizik i programit tuaj llogaritet si një nga ato argumente. 1689 01:17:07,080 --> 01:17:11,080 Pra, nëse kam kërkuar që të ketë programin tim drejtuar plus një linjë shtesë command 1690 01:17:11,080 --> 01:17:13,310 Argumenti, unë jam në të vërtetë do të ketë dy. 1691 01:17:13,310 --> 01:17:15,080 Argc është në të vërtetë do të jetë dy. 1692 01:17:15,080 --> 01:17:18,010 Dhe pastaj string argv bracket-- gjithçka që është bërë, 1693 01:17:18,010 --> 01:17:20,410 ajo është duke i dhënë mua një sërë vargjet që është 1694 01:17:20,410 --> 01:17:24,870 do të vetëm të shfaqur dhe ruajtur atë të gjitha këto argumente command line janë. 1695 01:17:24,870 --> 01:17:34,090 >> Kështu për shembull, nëse kam kërkuar që të ketë këtë Programi, ./copy infile outfile, e drejtë? 1696 01:17:34,090 --> 01:17:37,330 Kjo është vetëm një komandë tipike Linux. 1697 01:17:37,330 --> 01:17:38,830 Çfarë në të vërtetë është argc? 1698 01:17:38,830 --> 01:17:41,320 Sa argumente command line a ka të vërtetë në këtë? 1699 01:17:41,320 --> 01:17:45,130 E gjithë kjo nuk është të bëjë një kopje të një infile e emrit të një skedar 1700 01:17:45,130 --> 01:17:47,070 dhe ajo kopje atë në një tjetër fotografi, e drejtë? 1701 01:17:47,070 --> 01:17:48,700 Kjo është e gjithë kjo është bërë. 1702 01:17:48,700 --> 01:17:53,080 Siç mund ta shikoni, unë jam duke bërë atë në një rresht të vërtetë pa pasur nevojë të programit. 1703 01:17:53,080 --> 01:17:55,380 >> Çfarë është argc ynë në këtë rast? 1704 01:17:55,380 --> 01:17:58,968 Sa shumë argumente kemi? 1705 01:17:58,968 --> 01:17:59,634 Audienca: Tre? 1706 01:17:59,634 --> 01:18:01,200 ANDI Peng: Kemi tre, saktësisht. 1707 01:18:01,200 --> 01:18:05,030 Pra, kjo është shumë intuitiv për thjesht mendoj se kjo është vetëm 1708 01:18:05,030 --> 01:18:06,290 infile dhe outfile. 1709 01:18:06,290 --> 01:18:10,190 Por e di se emri fizik i programi ju jeni duke akuza si një. 1710 01:18:10,190 --> 01:18:13,220 Pra, në këtë rast, argc është në fakt tre. 1711 01:18:13,220 --> 01:18:15,860 Si në lidhje me, çfarë është argv 0? 1712 01:18:15,860 --> 01:18:18,180 Mos harroni, të gjithë të argumente command line 1713 01:18:18,180 --> 01:18:20,500 janë ruajtur në një grup të strings. 1714 01:18:20,500 --> 01:18:24,140 Pra, nëse unë të përpiqet për të hyrë në atë, çfarë do argv kllapa 0 jepni? 1715 01:18:24,140 --> 01:18:25,364 >> Audienca: [padëgjueshme]. 1716 01:18:25,364 --> 01:18:26,155 ANDI Peng: Pikërisht. 1717 01:18:26,155 --> 01:18:28,550 Ajo do të më jepni dot çaj kopje, sepse kjo është 1718 01:18:28,550 --> 01:18:31,070 element 0, The Elementi i parë i vektorit tim. 1719 01:18:31,070 --> 01:18:33,236 Po në lidhje me argv 1? 1720 01:18:33,236 --> 01:18:33,945 >> Audienca: Infile. 1721 01:18:33,945 --> 01:18:35,070 ANDI Peng: Infile, pikërisht. 1722 01:18:35,070 --> 01:18:36,272 Po në lidhje me argv 2? 1723 01:18:36,272 --> 01:18:37,022 Audienca: Outfile. 1724 01:18:37,022 --> 01:18:38,190 ANDI Peng: Outfile. 1725 01:18:38,190 --> 01:18:39,290 Kjo është pak i ndërlikuar tani. 1726 01:18:39,290 --> 01:18:42,630 Çfarë mendoni ju djema mendoni argv 3 do të jetë i dhënë mua 1727 01:18:42,630 --> 01:18:45,522 në qoftë se unë u përpoq për të shtypur atë jashtë? 1728 01:18:45,522 --> 01:18:48,260 >> Audienca: [padëgjueshme]? 1729 01:18:48,260 --> 01:18:50,164 >> ANDI Peng: A ju keni një dorë lart? 1730 01:18:50,164 --> 01:18:50,663 Po. 1731 01:18:50,663 --> 01:18:51,550 >> Audienca: Një alternativë. 1732 01:18:51,550 --> 01:18:52,341 >> ANDI Peng: Pikërisht. 1733 01:18:52,341 --> 01:18:55,440 Pra, mos harroni në leksion që ne kanë në fund të një diçkaje garë 1734 01:18:55,440 --> 01:18:56,640 quhet terminator null? 1735 01:18:56,640 --> 01:18:58,890 Ne do të merrni në këtë edhe më tej në klasë. 1736 01:18:58,890 --> 01:19:02,472 Por e di se në simbol, mënyra kompjuterin tuaj 1737 01:19:02,472 --> 01:19:04,430 e di se kjo është fundi e array është se ajo 1738 01:19:04,430 --> 01:19:07,310 vë diçka që quhet një null terminator ose një dash zero. 1739 01:19:07,310 --> 01:19:12,047 >> Pra, nëse ju përpiqeni për të hyrë në argv 3, ju jeni duke shkuar për të goditur këtë dash 0. 1740 01:19:12,047 --> 01:19:13,630 Kjo është edhe më e një pyetje mashtrim. 1741 01:19:13,630 --> 01:19:17,020 Po në lidhje me argv 4? 1742 01:19:17,020 --> 01:19:20,920 Pra, kjo është terminator kaluar null, e kaluara kufijve të array tonë. 1743 01:19:20,920 --> 01:19:24,380 Çfarë mendoni ju se do të ndodh kur ne përpiqemi të bëjmë atë? 1744 01:19:24,380 --> 01:19:25,842 >> Audienca: [padëgjueshme]? 1745 01:19:25,842 --> 01:19:26,550 ANDI Peng: Na vjen keq? 1746 01:19:26,550 --> 01:19:28,025 Thonë se një pak më fort? 1747 01:19:28,025 --> 01:19:29,086 >> Audienca: [padëgjueshme]. 1748 01:19:29,086 --> 01:19:29,710 ANDI Peng: Po. 1749 01:19:29,710 --> 01:19:32,420 Ky është emri i Zona e ju do të më shumë gjasa të marrë. 1750 01:19:32,420 --> 01:19:36,610 Por e di se argv 4-- që ju lejon për të hyrë 1751 01:19:36,610 --> 01:19:38,610 vende në kompjuterit tuaj kujtesës që ju të vërtetë 1752 01:19:38,610 --> 01:19:41,650 nuk duhet të jetë i prekur, sepse tani ju e dini se çfarë është argv. 1753 01:19:41,650 --> 01:19:46,220 Ju e dini se kjo është një grup i madhësisë 3 se ka kopje dot, infile dhe outfile. 1754 01:19:46,220 --> 01:19:50,200 >> Nëse ju provoni të shkoni aq larg përtej kësaj se ju jeni e kaluara terminator null, 1755 01:19:50,200 --> 01:19:53,050 kompjuteri juaj ka të ngjarë diçka të ruajtura në argv 4. 1756 01:19:53,050 --> 01:19:55,790 Dhe ju me të vërtetë nuk duhet të jetë lejuar qasje në argv 4, 1757 01:19:55,790 --> 01:19:58,130 sepse ju keni një fotografi kabineti dhe ju jeni vetëm 1758 01:19:58,130 --> 01:19:59,790 lejuar qasje në këto tre rafte. 1759 01:19:59,790 --> 01:20:02,870 Por nëse ju përpiqeni të arritur mënyrë përtej raft e ku janë të lejuara, 1760 01:20:02,870 --> 01:20:04,930 ju jeni do të fillojë messing me gjëra të tjera në kujtesën e kompjuterit tuaj. 1761 01:20:04,930 --> 01:20:06,690 Kjo do të jetë me të vërtetë, me të vërtetë keq. 1762 01:20:06,690 --> 01:20:07,440 Pra, vetëm e di se. 1763 01:20:07,440 --> 01:20:10,370 Jenë shumë të kujdesshëm që ju mos vetëm rastësisht të fillojë 1764 01:20:10,370 --> 01:20:14,772 qasjen elemente në një grup që nuk kanë qenë në atë që ju kërkuar për të krijuar. 1765 01:20:14,772 --> 01:20:17,114 Yep. 1766 01:20:17,114 --> 01:20:18,430 >> NE RREGULL. 1767 01:20:18,430 --> 01:20:26,360 Pra, ne jemi duke shkuar për të bërë një tjetër shembull terminal këtu. 1768 01:20:26,360 --> 01:20:27,300 NE RREGULL. 1769 01:20:27,300 --> 01:20:29,900 Pra, Rob shpejt në leksion ditë të tjera shkuan 1770 01:20:29,900 --> 01:20:35,040 nëpër këtë shembull, ku ai kishte int main int argv argc string 1771 01:20:35,040 --> 01:20:39,090 kllapa, e cila është thënë mua se unë jam do të ketë argumente command line. 1772 01:20:39,090 --> 01:20:41,860 >> Ai ka, nëse argc barabartë barabartë 2-- kujtohet, 1773 01:20:41,860 --> 01:20:45,070 është e barabartë me të barabartë do të thotë krahasim. 1774 01:20:45,070 --> 01:20:47,980 Në qoftë se kjo është e barabartë me 2, atëherë unë jam i do të shtypura hello, 1775 01:20:47,980 --> 01:20:51,190 çfarëdo e parë element i vektorit është. 1776 01:20:51,190 --> 01:20:54,100 Print tjetër, Hello World. 1777 01:20:54,100 --> 01:20:56,300 Çfarë është kjo do të ndodhë në thelb? 1778 01:20:56,300 --> 01:21:00,570 A mund dikush të shpjegojë vetëm në Shqip çfarë ky program është duke bërë? 1779 01:21:00,570 --> 01:21:01,272 Po. 1780 01:21:01,272 --> 01:21:08,160 >> Audienca: Nëse dikush shtypur në një komandë dhe tha emrin e tyre të parë dhe të fundit, 1781 01:21:08,160 --> 01:21:12,096 ajo nuk do të vetëm të shtypur së pari një dhe të thotë: hello, 1782 01:21:12,096 --> 01:21:14,090 çfarëdo emri juaj i parë është. 1783 01:21:14,090 --> 01:21:15,410 >> ANDI Peng: OK, le ta drejtuar atë. 1784 01:21:15,410 --> 01:21:22,470 Kështu për shembull, në qoftë se unë do të bëj kjo skedë bëjnë përshëndetje to-- përshëndetje 1785 01:21:22,470 --> 01:21:24,500 to-- çfarë ju doni mua për të dhëna? 1786 01:21:24,500 --> 01:21:25,900 >> Audienca: Emri dhe mbiemri. 1787 01:21:25,900 --> 01:21:27,280 >> ANDI Peng: Emri dhe mbiemri? 1788 01:21:27,280 --> 01:21:28,180 Hapësirat? 1789 01:21:28,180 --> 01:21:29,690 >> Audienca: Po. 1790 01:21:29,690 --> 01:21:33,490 >> ANDI Peng: A mund të tregoni dikush mua tani, çfarë është argc? 1791 01:21:33,490 --> 01:21:35,630 Vetëm e drejtë atje? 1792 01:21:35,630 --> 01:21:36,290 Oops, sorry. 1793 01:21:36,290 --> 01:21:37,920 Më lejoni të kthehem. 1794 01:21:37,920 --> 01:21:40,740 Sa argumente command line are-- ju djema nuk mund të vërtetë shoh. 1795 01:21:40,740 --> 01:21:43,760 Por unë do të përpiqemi për të zmadhuar. 1796 01:21:43,760 --> 01:21:44,290 Unë jam duke u përpjekur. 1797 01:21:44,290 --> 01:21:45,414 Po, ka tre, apo jo? 1798 01:21:45,414 --> 01:21:48,750 Është dot Slash hello, është Andi, dhe kjo është Peng. 1799 01:21:48,750 --> 01:21:51,870 >> Pra, çfarë ju djema mendoj se kjo Programi do të jetë shtypjen jashtë? 1800 01:21:51,870 --> 01:21:55,550 1801 01:21:55,550 --> 01:21:56,060 Oh. 1802 01:21:56,060 --> 01:21:57,120 Oh me falni. 1803 01:21:57,120 --> 01:21:57,810 Emri i gabuar. 1804 01:21:57,810 --> 01:22:03,630 1805 01:22:03,630 --> 01:22:06,130 Është shtypje jashtë, Hello World. 1806 01:22:06,130 --> 01:22:09,603 A ka dikush duan për të shpjeguar pse kjo po ndodh? 1807 01:22:09,603 --> 01:22:10,103 Po? 1808 01:22:10,103 --> 01:22:11,019 >> Audienca: [padëgjueshme]. 1809 01:22:11,019 --> 01:22:14,439 1810 01:22:14,439 --> 01:22:15,230 ANDI Peng: Pikërisht. 1811 01:22:15,230 --> 01:22:19,940 Kështu që këtu, janë të kushtëzuara është, në qoftë se argc barabartë është e barabartë me 2. 1812 01:22:19,940 --> 01:22:23,650 Pra, vetëm në rast se ka dy argumente command line. 1813 01:22:23,650 --> 01:22:25,850 Atëherë unë jam duke shkuar për të shtypur, Përshëndetje, çfarëdo qoftë ajo. 1814 01:22:25,850 --> 01:22:28,210 Por tjetër, unë jam duke shkuar për shtypura vetëm, përshëndetje botën. 1815 01:22:28,210 --> 01:22:30,040 Pra, nuk dua dikush për të më jepni një shembull 1816 01:22:30,040 --> 01:22:35,050 se si unë do të jetë në gjendje që në fakt të marrë atë për të shtypur vlerën e argv 1? 1817 01:22:35,050 --> 01:22:38,600 >> Çfarë do të më duhet për të dhëna këtu? 1818 01:22:38,600 --> 01:22:39,840 Vetëm një gjë, e drejtë? 1819 01:22:39,840 --> 01:22:42,900 Sepse dot përshëndetje për tashmë akuza si argument i parë. 1820 01:22:42,900 --> 01:22:43,930 Kam vetëm një më shumë. 1821 01:22:43,930 --> 01:22:46,470 Pra dot përshëndetje qoftë se unë vetëm bëj Andi. 1822 01:22:46,470 --> 01:22:47,270 Përshëndetje, Andi. 1823 01:22:47,270 --> 01:22:49,186 A e kuptojnë të gjithë pse kjo po ndodh? 1824 01:22:49,186 --> 01:22:49,602 Po. 1825 01:22:49,602 --> 01:22:52,500 >> Audienca: Pra, hapësira mes line-- komanda është ajo [e padëgjueshme]? 1826 01:22:52,500 --> 01:22:56,247 1827 01:22:56,247 --> 01:22:56,830 ANDI Peng: Jo. 1828 01:22:56,830 --> 01:23:03,810 Pra, hapësirë ​​në një linjë komande Argumenti, x, për të të treguar kompjuterin tuaj 1829 01:23:03,810 --> 01:23:06,820 se ky është fillimi i një varg të ri. 1830 01:23:06,820 --> 01:23:11,130 Pra, string argv here-- Ajo ruan të gjitha urdhërimet e tua argumenteve të linjës 1831 01:23:11,130 --> 01:23:13,110 në vargjet. 1832 01:23:13,110 --> 01:23:17,420 Dhe kështu hapësira në command line argument-- gjithçka që bën është po ju them, 1833 01:23:17,420 --> 01:23:21,030 kjo është në fund të një varg dhe kjo është koha për të lëvizur në një tjetër. 1834 01:23:21,030 --> 01:23:21,990 >> Po. 1835 01:23:21,990 --> 01:23:23,530 Kjo është shumë e rëndësishme për pset tuaj, sepse ju jeni 1836 01:23:23,530 --> 01:23:24,613 do të jetë testimi këto. 1837 01:23:24,613 --> 01:23:29,300 Pra, ka njeri të ketë ndonjë pyetje për këtë? 1838 01:23:29,300 --> 01:23:30,016 OK, i ftohtë. 1839 01:23:30,016 --> 01:23:30,515 Po? 1840 01:23:30,515 --> 01:23:35,008 >> Audienca: Pra, arsyeja që ju do të vënë Calc integer argumenti vend 1841 01:23:35,008 --> 01:23:40,059 e [e padëgjueshme] do të jetë kur të doni të shkruani informata shtesë 1842 01:23:40,059 --> 01:23:41,030 [Padëgjueshme]? 1843 01:23:41,030 --> 01:23:42,090 >> ANDI Peng: Po, pikërisht. 1844 01:23:42,090 --> 01:23:45,370 Disa programe do të kërkojë nga ju të dhëna një argument command line 1845 01:23:45,370 --> 01:23:47,732 që ai kalon në dhe që përdor kjo. 1846 01:23:47,732 --> 01:23:49,035 Po. 1847 01:23:49,035 --> 01:23:50,410 Audienca: Pra, çfarë nëse [e padëgjueshme]? 1848 01:23:50,410 --> 01:23:55,440 1849 01:23:55,440 --> 01:23:58,870 >> ANDI Peng: E ​​pra, çfarë kam për të ndryshuar më pas në programin tim? 1850 01:23:58,870 --> 01:23:59,870 >> Audienca: Vetëm 3. 1851 01:23:59,870 --> 01:24:12,460 1852 01:24:12,460 --> 01:24:15,020 >> ANDI Peng: Pse është se ndodh, mendoni ju? 1853 01:24:15,020 --> 01:24:18,940 >> Audienca: Sepse [e padëgjueshme]. 1854 01:24:18,940 --> 01:24:22,370 >> Audienca: Ju do të duhet të ndryshojë atë në 2 [e padëgjueshme]. 1855 01:24:22,370 --> 01:24:23,484 >> Audienca: 1 dhe 2. 1856 01:24:23,484 --> 01:24:24,650 ANDI Peng: 1 dhe 2, saktësisht. 1857 01:24:24,650 --> 01:24:29,150 Pra, në këtë rast, ju do të ndoshta duan të kenë dy printf statements-- 1858 01:24:29,150 --> 01:24:32,601 ai që shtypur argv 1 dhe ai që shtypura argv 2. 1859 01:24:32,601 --> 01:24:33,100 Këtu. 1860 01:24:33,100 --> 01:24:34,516 Unë në fakt mund të bëj që të shpejtë të vërtetë. 1861 01:24:34,516 --> 01:24:46,720 1862 01:24:46,720 --> 01:24:47,320 Nuk ju shkoni. 1863 01:24:47,320 --> 01:24:48,287 Oh. 1864 01:24:48,287 --> 01:24:49,370 Jo fare atë që keni kërkuar. 1865 01:24:49,370 --> 01:24:52,590 Por në qoftë se ju djema bela rreth me formatimit, ajo do të dalë. 1866 01:24:52,590 --> 01:24:54,981 Po. 1867 01:24:54,981 --> 01:24:55,480 Ftohtë. 1868 01:24:55,480 --> 01:24:57,670 Unë e di se ne jemi pak më të shkurtër në kohë. 1869 01:24:57,670 --> 01:25:02,469 Por unë jam vetëm duke shkuar për të shpejt të kalojnë një minuta çift kalon nëpër helpful-- 1870 01:25:02,469 --> 01:25:03,760 Audienca: Ju keni dy minuta. 1871 01:25:03,760 --> 01:25:05,010 ANDI Peng: Unë kam dy minuta? 1872 01:25:05,010 --> 01:25:06,340 Faleminderit. 1873 01:25:06,340 --> 01:25:09,180 Disa këshilla të shpejtë pset. 1874 01:25:09,180 --> 01:25:13,100 Pra, për këtë pset, unë rekomandoj, siç thashë, të gjithë për të lexuar spekulim. 1875 01:25:13,100 --> 01:25:16,804 Ju do të jetë me shkrim tre një programs-- quajtur initials.c, një i quajtur caesar.c, 1876 01:25:16,804 --> 01:25:17,720 një i quajtur vigenere.c. 1877 01:25:17,720 --> 01:25:20,465 1878 01:25:20,465 --> 01:25:22,340 Disa këshilla të rëndësishme që ju djema të vërtetë duan 1879 01:25:22,340 --> 01:25:25,040 për të mbajtur në mind-- kështu ka ky funksion 1880 01:25:25,040 --> 01:25:27,770 quajtur atoi-- si unë doja të them, një Trois. 1881 01:25:27,770 --> 01:25:29,520 E paqartë nëse kjo është në fakt se si ju thonë atë. 1882 01:25:29,520 --> 01:25:32,510 Por e gjithë kjo është bërë, është e inputting. 1883 01:25:32,510 --> 01:25:34,320 Ai konverton një varg në një int. 1884 01:25:34,320 --> 01:25:37,490 Pra, një përfaqëson ASCII tek i integer. 1885 01:25:37,490 --> 01:25:40,310 Kjo është vetëm konvertimin ASCII Vlerat për Integer vlerat. 1886 01:25:40,310 --> 01:25:44,510 Pra mbani mend argv, array se dyqane të gjitha urdhërimet e tua vijë argumente të 1887 01:25:44,510 --> 01:25:46,300 ajo ruan të gjithë si strings. 1888 01:25:46,300 --> 01:25:50,010 Dhe kështu që nëse doni të jenë në gjendje të kanë një prej tyre të bëhet një numër i plotë, 1889 01:25:50,010 --> 01:25:52,750 ju jeni do të ketë për të përdorur këtë vlerë këtu. 1890 01:25:52,750 --> 01:25:56,690 >> Modulo, siç kemi mbuluar më herët në klasë sot, 1891 01:25:56,690 --> 01:25:59,550 ju lejon që të ketë Pjesa tjetër e çdo gjë që ju keni. 1892 01:25:59,550 --> 01:26:03,620 Pra, nëse kemi vërtetë, të vërtetë numër të madh në Cezarit, 1893 01:26:03,620 --> 01:26:06,117 çfarë nëse ne kemi fund e një varg të Vigenere? 1894 01:26:06,117 --> 01:26:08,450 Si po ju do të jetë në gjendje për të marrë atë për të përfunduar rreth? 1895 01:26:08,450 --> 01:26:11,330 Nëse unë goditi z dhe unë dua ajo që të kthehen në një, 1896 01:26:11,330 --> 01:26:13,650 si jam unë do të merrni që të përfundojë rreth? 1897 01:26:13,650 --> 01:26:15,960 Ndoshta doni të përdorni modulo në atje diku. 1898 01:26:15,960 --> 01:26:19,190 >> Së dyti, shfletoni rreth bibliotekën tuaj. ctype.h. 1899 01:26:19,190 --> 01:26:20,680 Kjo është një bibliotekë të re ne kemi. 1900 01:26:20,680 --> 01:26:25,270 Ju do të gjeni një shumë të vërtetë, të vërtetë isupper dobishme functions--, islower, 1901 01:26:25,270 --> 01:26:27,681 toupper, tolower, isalpha, e të tjera. 1902 01:26:27,681 --> 01:26:30,680 Të gjitha funksionet që do të jenë shumë të dobishme kur ju jeni duke u përpjekur të kuptoj se, 1903 01:26:30,680 --> 01:26:33,780 është ky karakter një shkronja të vogla? 1904 01:26:33,780 --> 01:26:35,730 Si mund ta kthyer këtë string në një shkronja kapitale? 1905 01:26:35,730 --> 01:26:38,146 Të gjitha këto gjëra do të jetë shumë, shumë e dobishme për pset tuaj. 1906 01:26:38,146 --> 01:26:42,720 1907 01:26:42,720 --> 01:26:45,500 NE RREGULL. 1908 01:26:45,500 --> 01:26:49,644 >> Orari i punës janë sonte ora 8:00 deri 11:00 në klasë Teal nesër 1909 01:26:49,644 --> 01:26:51,310 si dhe të mërkurën dhe të enjten natën. 1910 01:26:51,310 --> 01:26:53,280 Orari i punës janë në Komuneve. 1911 01:26:53,280 --> 01:26:56,180 Shumë ju sugjeroj djema të gjithë të filloni menjëherë, 1912 01:26:56,180 --> 01:27:00,490 për shkak se ju nuk doni të jetë se fëmijë i cili të enjten natën ka probleme 1913 01:27:00,490 --> 01:27:03,870 dorëzimin pset tuaj dhe është si, unë nuk e di se çfarë të bëni. 1914 01:27:03,870 --> 01:27:05,870 Unë fillova, kam mbaruar, kam dorëzuar. 1915 01:27:05,870 --> 01:27:09,737 Mundohuni të jepni vetes disa dhoma, sepse në probleme kodi gjithmonë ndodhin. 1916 01:27:09,737 --> 01:27:11,570 Ju dëshironi të bëni të sigurtë që ju të jepni vetes 1917 01:27:11,570 --> 01:27:14,810 shumë kohë të jetë në gjendje për të përfunduar psets. 1918 01:27:14,810 --> 01:27:15,310 Ftohtë. 1919 01:27:15,310 --> 01:27:16,720 Unë do të rri këtu rrotull. 1920 01:27:16,720 --> 01:27:18,226 >> Audienca: A është kjo në internet tashmë? 1921 01:27:18,226 --> 01:27:20,850 ANDI Peng: Unë nuk e di nëse kjo është në internet tashmë, por ajo do të jetë. 1922 01:27:20,850 --> 01:27:23,500 Unë do të rri këtu rrotull nëse dikush ka ndonjë pyetje tashmë. 1923 01:27:23,500 --> 01:27:25,390 Faleminderit për të ardhur. 1924 01:27:25,390 --> 01:27:27,105