1 00:00:00,000 --> 00:00:11,736 2 00:00:11,736 --> 00:00:16,626 >> [VIDEO rishikim] 3 00:00:16,626 --> 00:00:19,410 >> Triumfi -Një i matematik dhe aftësi mekanike 4 00:00:19,410 --> 00:00:23,270 është ky i ri automatik i madh Llogaritësi në Universitetin e Harvardit. 5 00:00:23,270 --> 00:00:27,140 Problemet e ndërlikuar në matematikë vënë me makinë në formë të koduar 6 00:00:27,140 --> 00:00:31,710 në kasetë zgjidhen me saktësi në një minutë pjesë të kohës e kërkuar 7 00:00:31,710 --> 00:00:32,819 për llogaritjen e njeriut. 8 00:00:32,819 --> 00:00:44,280 9 00:00:44,280 --> 00:00:48,220 Projektuar për të përshpejtuar të gjitha format e hulumtimet matematikore dhe shkencore, 10 00:00:48,220 --> 00:00:53,840 truri gjigant mekanike do të punojnë për Shtetet e Bashkuara të marinës deri në fund të luftës. 11 00:00:53,840 --> 00:01:03,620 12 00:01:03,620 --> 00:01:06,570 >> [END rishikim] 13 00:01:06,570 --> 00:01:08,590 >> DAVID J. Malan: Kjo është CS50. 14 00:01:08,590 --> 00:01:10,590 E kaluara ishte një magjike vend, por në qoftë se ju keni ndonjëherë 15 00:01:10,590 --> 00:01:13,366 veten se çfarë kjo pajisje është në Harvard Shkenca Center, 16 00:01:13,366 --> 00:01:16,150 ajo është me të vërtetë pjesë e Harvard Mark I, dhe kjo është 17 00:01:16,150 --> 00:01:18,710 në shfaqje atje tani për vitet e fundit shumë. 18 00:01:18,710 --> 00:01:20,590 Dhe çfarë ju do të shihni ngulitur në grup problemit 19 00:01:20,590 --> 00:01:24,416 një është një vështrim prapa skenave në atë që bëri që pajisja, dhe bën, 20 00:01:24,416 --> 00:01:27,540 nga Profesor Harry Lewis, i cili është në departamenti shkenca kompjuterike këtu. 21 00:01:27,540 --> 00:01:29,440 Pra, më shumë se në vetëm pak. 22 00:01:29,440 --> 00:01:33,990 >> Por sot ne fillojmë të tranzicionit nga java e fundit të kësaj, 23 00:01:33,990 --> 00:01:37,290 dhe ne do të sjellë përmendim i një fotografi këtu 24 00:01:37,290 --> 00:01:38,630 kjo është në fakt mjaft i njohur. 25 00:01:38,630 --> 00:01:42,270 Does anyone know çfarë kjo këtu është në ekran? 26 00:01:42,270 --> 00:01:43,880 Të paktën sipas mitit. 27 00:01:43,880 --> 00:01:44,837 Po. 28 00:01:44,837 --> 00:01:45,920 Audienca: Virusi i parë. 29 00:01:45,920 --> 00:01:49,570 DAVID J. Malan: Pra, ajo ishte me sa duket bug i parë i vërtetë në një kompjuter. 30 00:01:49,570 --> 00:01:52,490 Tani në realitet bug fjala, për një gabim në një program, 31 00:01:52,490 --> 00:01:55,250 ka qenë me ne për disa kohë në botën fizike, 32 00:01:55,250 --> 00:01:58,190 dhe kjo është një nga të parë herë të dokumentuara ku dikush në fakt 33 00:01:58,190 --> 00:02:02,280 këputur një molë madhe nga Mark Kompjuter II, e vënë atë në binder, 34 00:02:02,280 --> 00:02:05,006 dhe pastaj regjistruar atë si bug e parë të njohur 35 00:02:05,006 --> 00:02:06,630 që kanë qenë në fakt gjetur fizikisht. 36 00:02:06,630 --> 00:02:10,104 Pra, në këtë mënyrë u futur që në dije e sotme. 37 00:02:10,104 --> 00:02:12,020 Çdo gjë nga e fundit javë është në dispozicion online. 38 00:02:12,020 --> 00:02:14,840 Në burime të veçanta që ju mund të jo domosdoshmërisht vini re, sidomos 39 00:02:14,840 --> 00:02:15,881 nëse vijnë këtu në person. 40 00:02:15,881 --> 00:02:20,230 Pra, një nga miqtë e mësimdhënies çdo Vitin e bën një grup kanonik të shënimeve, 41 00:02:20,230 --> 00:02:22,010 kështu që ju nuk duhet të mbani kokën poshtë, duke u përpjekur 42 00:02:22,010 --> 00:02:24,410 që shkruajshe ndonjë gjë më kjo mund të ndodhë këtu në klasë. 43 00:02:24,410 --> 00:02:25,940 Pra, të kuptojnë se ata ashtu-quajtur [? Scribd?] Shënime 44 00:02:25,940 --> 00:02:29,350 janë online, sigurisht slides dhe kodi burim që ne i përdorim në klasë. 45 00:02:29,350 --> 00:02:31,436 Ne bëjmë transkriptet tekst të plotë në dispozicion si edhe. 46 00:02:31,436 --> 00:02:34,310 Pra, nëse ju kujtohet turbull disa afat, dhe dëshironi të shikoni atë deri pak 47 00:02:34,310 --> 00:02:37,280 më lehtë, të kuptojnë se të gjithë e që është në internet kërkueshme. 48 00:02:37,280 --> 00:02:38,930 Si dhe walkthroughs si. 49 00:02:38,930 --> 00:02:42,710 Në të vërtetë, sot ne fillojmë të shikojmë në një nivel më të ulët gjuhë programimi, 50 00:02:42,710 --> 00:02:45,290 së shpejti do të jetë i njohur për ne si C, dhe kjo është shumë e lehtë 51 00:02:45,290 --> 00:02:48,820 për lloj të marrë humbur pas vetëm disa momente kohë, dhe pastaj lloj çudi 52 00:02:48,820 --> 00:02:52,370 se si ne fakt mori për disa më shumë shembull komplekse nga më të thjeshtat. 53 00:02:52,370 --> 00:02:54,975 Dhe kështu të kuptojë që ne do qershi marr gjatë klasës disa 54 00:02:54,975 --> 00:02:57,850 nga shembujt përfaqësuese, por të kuptojë se shumë më shumë është edhe 55 00:02:57,850 --> 00:03:01,140 në dispozicion online kështu që ju mund të punoni nëpërmjet saj në ritmin tuaj, 56 00:03:01,140 --> 00:03:02,950 megjithatë ju jeni më të rehatshme. 57 00:03:02,950 --> 00:03:05,200 >> Por, ne e kemi lënë jashtë me Programet që ishin vetëm kjo. 58 00:03:05,200 --> 00:03:09,690 Kështu që unë klikoni flamurin e gjelbër, dhe çfarë e bën këtë program të bëjë? 59 00:03:09,690 --> 00:03:10,710 Thotë: hello, bota. 60 00:03:10,710 --> 00:03:13,180 Kjo e bën cat them përshëndetje në botën e tij të vogël 61 00:03:13,180 --> 00:03:15,990 në anën e sipërm të majtë e ndërfaqes së përdoruesit Gërvishtëse së. 62 00:03:15,990 --> 00:03:18,810 Por, kemi filluar për të futur disa Terminologjia javën e kaluar. 63 00:03:18,810 --> 00:03:23,614 Dhe kështu, gjëra të tilla si kjo që quhet çfarë? 64 00:03:23,614 --> 00:03:25,280 Çfarë mund të jetë term i përgjithshëm për këtë? 65 00:03:25,280 --> 00:03:26,266 Po. 66 00:03:26,266 --> 00:03:28,210 Nje metode ose nje njoftim. 67 00:03:28,210 --> 00:03:29,280 Sigurisht, kjo është një veprim. 68 00:03:29,280 --> 00:03:30,140 Bëni këtë. 69 00:03:30,140 --> 00:03:32,400 Dhe ende nuk kishte forma të tjera për të zeroja, 70 00:03:32,400 --> 00:03:35,360 përveç këtyre të ashtu-quajtur Deklarata, ata ishin gjithashtu 71 00:03:35,360 --> 00:03:38,221 gjëra të tilla si kjo, të cilën ne e quajtur çfarë? 72 00:03:38,221 --> 00:03:38,720 Po. 73 00:03:38,720 --> 00:03:39,634 Pra, një lak. 74 00:03:39,634 --> 00:03:42,050 Dhe në këtë rast, kjo gjë përsërit, natyrisht, 10 herë. 75 00:03:42,050 --> 00:03:43,040 Ka një bllok përgjithmonë. 76 00:03:43,040 --> 00:03:44,164 Ka disa të tjerë. 77 00:03:44,164 --> 00:03:48,309 Dhe sot ne jemi duke shkuar për të parë se si të përkthyer kjo në një botë më moderne, 78 00:03:48,309 --> 00:03:50,850 në qoftë se ju do, edhe pse kjo është do të paraqiten në shikim të parë 79 00:03:50,850 --> 00:03:52,024 të jetë shumë më misterioze. 80 00:03:52,024 --> 00:03:53,190 Por ata ishin me të vërtetë sythe. 81 00:03:53,190 --> 00:03:56,182 Dhe pastaj ne kemi gjëra të tilla si kjo, e cila kishte këtë formë, 82 00:03:56,182 --> 00:03:57,515 dhe në thelb pyetje. 83 00:03:57,515 --> 00:03:58,890 Dhe ne të referuara këto si çfarë? 84 00:03:58,890 --> 00:03:59,762 >> Audienca: shprehje Boolean. 85 00:03:59,762 --> 00:04:00,320 >> DAVID J. Malan: Po. 86 00:04:00,320 --> 00:04:01,340 Shprehje Boolean. 87 00:04:01,340 --> 00:04:04,502 Diçka që është ose e vërtetë ose false, po ose jo, një ose zero, 88 00:04:04,502 --> 00:04:05,960 megjithatë ju dëshironi për të parë botën. 89 00:04:05,960 --> 00:04:08,335 Por ne i quajtur ato Boolean shprehje, dhe ne plug ato 90 00:04:08,335 --> 00:04:09,900 në kushte, ose degët. 91 00:04:09,900 --> 00:04:12,170 Dhe në botën e Zeroja, gjithçka bukur 92 00:04:12,170 --> 00:04:15,460 ngërthen në aspektin e formës së saj, nëse kjo ka kuptim logjik për ta bërë këtë, 93 00:04:15,460 --> 00:04:18,490 por ju nuk keni për të ndaluar në vetëm bërë një gjë të kushtëzuar, 94 00:04:18,490 --> 00:04:20,450 ju mund të ketë një proverbiale pirun në rrugë 95 00:04:20,450 --> 00:04:24,040 dhe të bëjë as këtë apo atë nëse gjendja është e vërtetë apo jo. 96 00:04:24,040 --> 00:04:26,040 Dhe pastaj, si ju do të shihni, në qoftë se ju nuk e keni tashmë, 97 00:04:26,040 --> 00:04:27,480 Ju edhe mund të folesë këto blloqe. 98 00:04:27,480 --> 00:04:32,110 Pra Scratch rritet për të mbushur forma që ju mund të dëshironi të futur në të, 99 00:04:32,110 --> 00:04:35,330 kështu që ju mund të vërtetë të shprehin më ndonjë logjikë që ju mund të dëshironi të bëni. 100 00:04:35,330 --> 00:04:38,220 >> Tani disa fjalë të shpalljes për të dy këtu dhe New Haven. 101 00:04:38,220 --> 00:04:39,370 Pra tërthor fillon sot. 102 00:04:39,370 --> 00:04:42,120 URL për këtë është në Sigurisht e Faqja e internetit, për ata të panjohur. 103 00:04:42,120 --> 00:04:43,970 Seksionet do të jetë një mundësi për të marrë së bashku 104 00:04:43,970 --> 00:04:46,553 në një mjedis shumë më intime se [? Sanders?] E lejon, 105 00:04:46,553 --> 00:04:50,347 me 10 deri në 20 shokët e klasës me një mësim shokët në këngë të ndryshme, 106 00:04:50,347 --> 00:04:51,930 dhe ritme të ndryshme, nëse kështu zgjedhin. 107 00:04:51,930 --> 00:04:54,080 Në të vërtetë ofron kurs seksione të ndryshme 108 00:04:54,080 --> 00:04:57,340 për ata më pak të rehatshme, më shumë të rehatshme, dhe diku në mes, 109 00:04:57,340 --> 00:04:59,860 dhe roli i gishtit këtu, është nuk ka asnjë përkufizim formal, 110 00:04:59,860 --> 00:05:04,600 por në qoftë se ju jeni më pak të rehatshme, ju lloj i dini atë. 111 00:05:04,600 --> 00:05:07,470 Ju jeni pak Intrepid rreth Ideja e shkelën këmbë, ndoshta, prapa 112 00:05:07,470 --> 00:05:10,130 në klasë, ose duke treguar deri në një midis seksion. 113 00:05:10,130 --> 00:05:12,770 Nëse ju keni qenë të programimit që ju ishin gjashtë vjeç, më të rehatshme, 114 00:05:12,770 --> 00:05:13,400 ndoshta për ju. 115 00:05:13,400 --> 00:05:16,150 Dhe në qoftë se kjo është lloj i një hedh-up, kjo është pikërisht ajo që në mes 116 00:05:16,150 --> 00:05:17,190 është menduar të jetë. 117 00:05:17,190 --> 00:05:18,410 >> Tani, në ndërkohë, për një klasë të kësaj madhësie, 118 00:05:18,410 --> 00:05:21,326 ai na merr shumë kohë për të seksionit të gjithë, kështu që ne kemi ashtu-quajtur, 119 00:05:21,326 --> 00:05:24,030 seksione super, që vjen kjo fundjavë dhe fillim të javës së ardhshme, 120 00:05:24,030 --> 00:05:26,570 kështu që të marrë një sy në faqen e internetit të kursit për ata që janë sigurisht të gjerë, 121 00:05:26,570 --> 00:05:28,610 dhe gjithashtu filmuar për ata të cilët nuk mund të bëjnë ato. 122 00:05:28,610 --> 00:05:33,470 Dhe seksione vetë do të fillojë në javën e tre të CS50 indeksit zero. 123 00:05:33,470 --> 00:05:35,880 Problemi vendosur 0 është tashmë në faqen e internetit të kursit. 124 00:05:35,880 --> 00:05:40,010 Dhe të kuptojë se ju keni nëntë ditë vonesë këtë semestër. 125 00:05:40,010 --> 00:05:43,240 Pra, kjo është një përmirësim prej fundit vit, kur kemi pasur pesë ditë me vonesë. 126 00:05:43,240 --> 00:05:46,210 >> Pra, nëse ju jeni të pyesin, ne kemi nëntë grupe me probleme. 127 00:05:46,210 --> 00:05:53,200 Ju keni nëntë ditë me vonesë, secila prej të cilave ju mund të kaloni vetëm një të tillë në javë me radhë. 128 00:05:53,200 --> 00:05:56,089 Që efektivisht bën të gjitha problemi vendos shkak premte, 129 00:05:56,089 --> 00:05:58,630 por qëllimi është për të vënë pak bit e presionit psikologjik 130 00:05:58,630 --> 00:06:01,100 për ju të përpiqen për të marrë gjërat në të enjten 131 00:06:01,100 --> 00:06:03,960 sepse si ju së shpejti do të zbuloni, për mirë apo për keq, shumica 132 00:06:03,960 --> 00:06:07,820 çdo gjë në botë software përfundon duke marrë shumë më tepër se ju parashikojnë. 133 00:06:07,820 --> 00:06:10,620 Kështu që e konsiderojnë atë një lloj e mundësi për të ndihmuar 134 00:06:10,620 --> 00:06:13,880 veten për të synuar të enjten, por marrin ngushëllim në se, po, 135 00:06:13,880 --> 00:06:14,950 çdo gjë është për shkak e premte. 136 00:06:14,950 --> 00:06:17,590 Dhe nëse ju t'ia paraqesë ato në E enjte, kjo është e mrekullueshme. 137 00:06:17,590 --> 00:06:21,020 Nuk ka asnjë pikë bonus ose shtesë kredi për përmbushjen e këtij afati. 138 00:06:21,020 --> 00:06:23,250 Është menduar të jetë vetëm një shtrat. 139 00:06:23,250 --> 00:06:25,810 >> Dhe orarit të punës, të dyja këtu dhe në New Haven, 140 00:06:25,810 --> 00:06:28,840 në person, në qoftë se ju dëshironi të të takohet me ndonjë nga kurset tona 141 00:06:28,840 --> 00:06:31,060 mësimdhënies Fellows dhe CAS për ndihmë. 142 00:06:31,060 --> 00:06:31,640 >> Dakord. 143 00:06:31,640 --> 00:06:33,110 Deri tani, le ta bëjë këtë më reale. 144 00:06:33,110 --> 00:06:35,470 Dhe për një moment ajo do të fillojë për të marrë një pak më të errët, por shumë 145 00:06:35,470 --> 00:06:37,310 shpejt të premten dhe javën e ardhshme ne do të jetë 146 00:06:37,310 --> 00:06:41,230 në gjendje të bëjë shumë më shumë se ne mund të deri më tani në Scratch. 147 00:06:41,230 --> 00:06:44,350 Pra, ne kemi prezantuar kod fundit javë, megjithëse pictoral. 148 00:06:44,350 --> 00:06:45,620 Ajo ishte copa mister. 149 00:06:45,620 --> 00:06:48,800 Dhe ne formalizuar se është diçka që quhet kod burim, 150 00:06:48,800 --> 00:06:50,330 por do të dukej si? 151 00:06:50,330 --> 00:06:52,550 E pra, ajo dukej pak diçka si kjo. 152 00:06:52,550 --> 00:06:55,410 Dhe, në fakt, vetëm për të lloj të vë në lojë ku mund të shkojmë me këtë. 153 00:06:55,410 --> 00:06:57,800 Unë jam duke shkuar për të shkuar përpara dhe hapur një dritare këtu, 154 00:06:57,800 --> 00:06:59,810 dhe unë jam vetëm duke shkuar për të zgjedhur New File. 155 00:06:59,810 --> 00:07:03,200 Dhe unë jam duke shkuar për të shpëtuar këtë fotografi si diçka si përshëndetje dot c. 156 00:07:03,200 --> 00:07:05,700 Më shumë në atë zgjedhjen e fjalë në një moment të vetëm. 157 00:07:05,700 --> 00:07:08,630 Dhe kjo është se si dikush mund të shkoni në lidhje me të shkruarit e një programi. 158 00:07:08,630 --> 00:07:13,990 Përfshini I standarde / dot O h, int main i pavlefshëm, dhe pastaj të hapur mbajtëse kaçurrel, i afërt 159 00:07:13,990 --> 00:07:19,430 mbajtëse kaçurrel, printf përshëndetje presje botë, backslash n, pikëpresje, Save, bërë. 160 00:07:19,430 --> 00:07:19,930 OK. 161 00:07:19,930 --> 00:07:21,670 Unë kam shkruar ime e parë program, por ajo do 162 00:07:21,670 --> 00:07:23,878 të jenë tepër të underwhelmed sepse kur unë në fakt 163 00:07:23,878 --> 00:07:27,352 të drejtuar këtë program, natyrisht, duke shkruar herën e parë të bëjë hello, 164 00:07:27,352 --> 00:07:30,310 dhe pastaj dot çaj hello, dhe ne do të kalojnë nëpër këtë në më shumë hollësi 165 00:07:30,310 --> 00:07:31,730 në një moment, kjo është e gjitha ajo ka. 166 00:07:31,730 --> 00:07:33,270 A nuk pop hapur ndonjë dritare. 167 00:07:33,270 --> 00:07:35,070 Ajo nuk ka të bëjë asgjë veçanërisht dashuroj. 168 00:07:35,070 --> 00:07:38,830 Gjithë kjo nuk është ajo që kam thënë atë për të bëjnë, por si nuk kemi marrë në atë? 169 00:07:38,830 --> 00:07:40,560 Dhe si nuk kemi të ndërtuar mbi atë? 170 00:07:40,560 --> 00:07:43,430 E pra, le të prezantoj disa koncepte të ndryshme këtu. 171 00:07:43,430 --> 00:07:47,170 >> Pra, një, ne jemi gati për të filluar duke përdorur një program të quajtur një përpilues. 172 00:07:47,170 --> 00:07:51,470 Një përpilues ekziston për Mac OS, Windows, Linux, çdo numër i sistemeve operative, 173 00:07:51,470 --> 00:07:54,540 dhe ne së shpejti do të prezantoj të mjedis që ne do të jetë duke përdorur, 174 00:07:54,540 --> 00:07:57,410 por një përpilues është vetëm një gjeneral afat për një copë software 175 00:07:57,410 --> 00:08:01,940 që merr kodin burim dhe prodhon kod objekt prej saj. 176 00:08:01,940 --> 00:08:03,940 Me fjalë të tjera, në qoftë se ju kanë si input burim tuaj 177 00:08:03,940 --> 00:08:08,250 Kodi, diçka si ajo që unë sapo shtypur, ajo në fund të fundit prodhon kod objekt. 178 00:08:08,250 --> 00:08:11,780 Dhe kodi objekti është me të vërtetë vetëm një mënyrë e sofistikuar për të thënë ajo nxjerr 179 00:08:11,780 --> 00:08:12,926 zero-së dhe dikujt. 180 00:08:12,926 --> 00:08:14,800 Me fjalë të tjera, burim Kodi, edhe pse kjo është 181 00:08:14,800 --> 00:08:17,240 do të shikojmë një misterioze të vogël, dhe më pak miqësore 182 00:08:17,240 --> 00:08:19,590 se Scratch në shikim të parë, kjo është të paktën diçka 183 00:08:19,590 --> 00:08:21,120 që ne njerëzit mund të kuptojnë. 184 00:08:21,120 --> 00:08:24,360 Ai lloj i duket dhe tingëllon si Anglisht edhe pse kjo është shumë e ngjeshur. 185 00:08:24,360 --> 00:08:28,040 Ndërsa programimin në zero-së dhe dikujt, si paraardhësit tanë kishin për të bërë, 186 00:08:28,040 --> 00:08:30,920 disa vite më parë, nuk ishte një Sfida veçanërisht fun. 187 00:08:30,920 --> 00:08:33,710 E megjithatë, kjo është ajo që kompjuter ende kupton. 188 00:08:33,710 --> 00:08:37,010 Pra përpilues na merr nga kod burim të kundërshtojë kod. 189 00:08:37,010 --> 00:08:39,860 Është si duke hapur një skedë me të përpilues, dhe kur ju ruani atë, 190 00:08:39,860 --> 00:08:41,419 ju merrni ato zero dhe ato. 191 00:08:41,419 --> 00:08:43,419 Pra, ne do të shohim se si për të bërë që në një moment të vetëm. 192 00:08:43,419 --> 00:08:47,400 >> Por tani le të përpiqemi për të siguruar një urë në mes të javës së kaluar dhe kjo, 193 00:08:47,400 --> 00:08:50,660 në mënyrë që ashtu si ne të merrni varur deri mbi gjëra të tilla si kllapa gjarpërushe, 194 00:08:50,660 --> 00:08:54,100 dhe pikpresje, dhe kllapa, dhe të gjitha këto intelektualisht interesante 195 00:08:54,100 --> 00:08:57,620 aspekte të programimit, që shumë kuptohet udhëtim njerëzit ngritën herët, 196 00:08:57,620 --> 00:09:00,930 kuptojnë se të gjitha idetë sot, janë të njëjta si fundit. 197 00:09:00,930 --> 00:09:03,975 Pra të fundit, ne pamë këtë shembull këtu, program Hello World. 198 00:09:03,975 --> 00:09:07,500 E pra, duke filluar nga sot, në qoftë se ne duam për të zbatuar të njëjtin program, 199 00:09:07,500 --> 00:09:10,800 ajo do të shikojmë një pak diçka si kjo. 200 00:09:10,800 --> 00:09:14,040 Dhe ne do të shpjegojë para se të gjatë çfarë int, dhe kryesor, dhe i pavlefshëm, dhe të gjithë që 201 00:09:14,040 --> 00:09:18,770 është, por të paktën unë shoh këtu tashmë të njohur Hello World. 202 00:09:18,770 --> 00:09:20,860 >> Ndërkohë, gjëra të tilla si funksion, Say Hello, 203 00:09:20,860 --> 00:09:23,570 është shumë thjesht do të jetë një deklaratë shumë e thjeshtë si kjo. 204 00:09:23,570 --> 00:09:26,930 Printf përshëndetje botë, me disa citon, me një backslash, 205 00:09:26,930 --> 00:09:29,780 me një pikëpresje, por më shumë se për të ardhur. 206 00:09:29,780 --> 00:09:34,066 Unazore, ndërkohë, kjo është një lak që, natyrisht, thotë përshëndetje botën përgjithmonë, 207 00:09:34,066 --> 00:09:36,690 dhe kjo do të shikoni një pak weirder se në të fundit, 208 00:09:36,690 --> 00:09:39,530 por në qoftë se unë them diçka si, ndërsa e vërtetë, unë 209 00:09:39,530 --> 00:09:44,050 pastaj mund të shtypura jashtë botë Hello përsëri dhe përsëri dhe përsëri dhe përsëri. 210 00:09:44,050 --> 00:09:46,660 Dhe pastaj si ju mund të lloj të fillojnë të konkludoj këtu, 211 00:09:46,660 --> 00:09:49,070 kjo konventë e përdorimit formatimin e teksteve kaçurrel është lloj 212 00:09:49,070 --> 00:09:52,050 e si përqafuar Linja e prerë e kodit atje. 213 00:09:52,050 --> 00:09:55,840 Linja printf i kodit shumë si copë e verdhë mister lart. 214 00:09:55,840 --> 00:09:58,740 Pra, ne nuk jemi duke shkuar për të thënë përgjithmonë, ne jemi duke shkuar për të thënë, ndërsa e vërtetë, 215 00:09:58,740 --> 00:10:01,020 por ne do të shohim se pse kjo është në vetëm pak. 216 00:10:01,020 --> 00:10:04,210 >> Ndërkohë, në qoftë se ne kemi një lak si kjo, ku ju përsëris diçka të fundme 217 00:10:04,210 --> 00:10:07,730 herë numri, edhe ky është do të marrë pak duke u përdorur 218 00:10:07,730 --> 00:10:12,820 për të, por ajo do të thonë se për int I merr zero, unë më pak se 10, i ++, 219 00:10:12,820 --> 00:10:14,056 dhe pastaj printf përsëri. 220 00:10:14,056 --> 00:10:15,430 Por nuk do të jetë modele. 221 00:10:15,430 --> 00:10:18,434 Dhe për ata prej jush të njohur me AP Shkencave Kompjuterike, ose Java, 222 00:10:18,434 --> 00:10:21,100 ose ndonjë numër të gjuhëve të tjera, pothuajse të gjitha këto ndërton 223 00:10:21,100 --> 00:10:23,820 deri më tani duhet të duken më së shumti e njohur. 224 00:10:23,820 --> 00:10:24,680 >> Pra ndryshueshme. 225 00:10:24,680 --> 00:10:29,270 Kështu që këtu është një fragment i thjeshtë Scratch se vendos një ndryshore të quajtur në kundërshtim me zero, 226 00:10:29,270 --> 00:10:33,150 dhe pastaj përgjithmonë thotë se kundër, dhe atëherë ajo ndryshon counter nga një. 227 00:10:33,150 --> 00:10:37,030 Pra, ajo fillon me zero, dhe pastaj një, dy, tre. 228 00:10:37,030 --> 00:10:42,560 E pra, si mund të vendosë se në kjo gjuhë e re në mënyrë të ngjashme një të vogël? 229 00:10:42,560 --> 00:10:45,460 Int counter barabartë zero, ndërsa e vërtetë, e cila 230 00:10:45,460 --> 00:10:48,100 është se të njëjtën ide nga më parë për të bërë diçka përgjithmonë, 231 00:10:48,100 --> 00:10:49,530 dhe unë jam vetëm do të printf. 232 00:10:49,530 --> 00:10:53,310 Dhe tani ajo është duke marrë pak e çuditshme, për qind unë, por më shumë se për të ardhur, 233 00:10:53,310 --> 00:10:55,140 por këto ide janë të njëjtë. 234 00:10:55,140 --> 00:10:58,820 Ne vetëm tani duhet të përmbahet Sintaksa që kompjuteri është 235 00:10:58,820 --> 00:11:00,010 do të kërkojë prej nesh. 236 00:11:00,010 --> 00:11:04,620 >> Shprehje Boolean, diçka si sx më pak se y, x ose më pak se y, 237 00:11:04,620 --> 00:11:06,354 dhe y pak se Z. 238 00:11:06,354 --> 00:11:09,270 Ajo do të shikojmë një diçka të vogël si kjo, me kllapa vetëm 239 00:11:09,270 --> 00:11:13,020 si në matematikë për masë të mirë për të vetëm të sigurojë që rendi i operacioneve 240 00:11:13,020 --> 00:11:14,750 është si ne synojmë. 241 00:11:14,750 --> 00:11:15,600 Dhe tani, kushtet. 242 00:11:15,600 --> 00:11:21,220 Pra, nëse x pak se y, thonë se x është më pak sesa y, përndryshe nëse x është më e madhe se y, 243 00:11:21,220 --> 00:11:26,020 të thënë x është më e madhe se y, ndryshe logjike, x duhet të jenë të barabartë me y. 244 00:11:26,020 --> 00:11:28,710 Kështu që ju mund të zbatojë diçka si kjo në Scratch, 245 00:11:28,710 --> 00:11:31,230 ose ju mund të zbatojë ajo në këtë sintaksë. 246 00:11:31,230 --> 00:11:35,090 Dhe përsëri, formatimin e teksteve kaçurrel janë lloj i duke na dhënë të njëjtën formë si mister 247 00:11:35,090 --> 00:11:40,750 copë, por sintaksa, tani, është ndoshta duke filluar për të ndjekur disa modele. 248 00:11:40,750 --> 00:11:42,910 >> Pra, çfarë e bën këtë na jep këtu? 249 00:11:42,910 --> 00:11:45,260 Pra, ne jemi kthyer pastaj në programin tonë kryesore. 250 00:11:45,260 --> 00:11:47,930 Le të në fakt, tani, bëjë diçka me të. 251 00:11:47,930 --> 00:11:50,660 Pra, në këtë e parë Linja ne shohim mprehtë përfshijnë, 252 00:11:50,660 --> 00:11:53,160 I standarde / O, dot h, dhe pastaj disa kënd i çuditshëm 253 00:11:53,160 --> 00:11:57,330 kllapa poshtë se. int main i pavlefshëm, dhe pastaj printf botë përshëndetje. 254 00:11:57,330 --> 00:11:58,200 Pra, vetëm të marrë një hap. 255 00:11:58,200 --> 00:12:02,440 Dikush që kurrë nuk ka programuar më parë, të paktën shpjegojnë një nga këto rreshta. 256 00:12:02,440 --> 00:12:04,490 Përdorimi ndoshta disa prej zhargonin e javës së kaluar. 257 00:12:04,490 --> 00:12:06,942 Çfarë është printf, për shembull? 258 00:12:06,942 --> 00:12:07,442 Po. 259 00:12:07,442 --> 00:12:08,410 >> Audienca: [padëgjueshme] 260 00:12:08,410 --> 00:12:08,610 >> DAVID J. Malan: Po. 261 00:12:08,610 --> 00:12:11,380 Kjo është një funksion, ose një deklaratë, nga terminologjia e javës së kaluar. 262 00:12:11,380 --> 00:12:13,470 Dhe kjo është një veprim që është duke bërë diçka. 263 00:12:13,470 --> 00:12:15,855 Tani ky funksion, ose këtë deklaratë, nuk 264 00:12:15,855 --> 00:12:17,550 ajo duket për të marrë një lloj të dhëna? 265 00:12:17,550 --> 00:12:20,080 266 00:12:20,080 --> 00:12:24,380 Dhe në atë kuptim e bën atë duket për të marrë të dhëna, nëse është kështu? 267 00:12:24,380 --> 00:12:26,180 Input, çfarë dua të them me këtë? 268 00:12:26,180 --> 00:12:26,720 Po. 269 00:12:26,720 --> 00:12:27,595 >> Audienca: [padëgjueshme] 270 00:12:27,595 --> 00:12:30,565 271 00:12:30,565 --> 00:12:31,440 DAVID J. Malan: Po. 272 00:12:31,440 --> 00:12:34,890 Pra Scratch nga disa pjesë mister ku ju mund parametrize atë. 273 00:12:34,890 --> 00:12:37,980 Ju mund të tregoni përsëritje bllokojnë sa herë të përsëritur, 274 00:12:37,980 --> 00:12:40,320 kështu që ishte një kontribut i llojet, dhe ashtu si Scratch 275 00:12:40,320 --> 00:12:43,060 kishte një placeholder të vogël të bardhë për numrin që ju do të shkruani në, 276 00:12:43,060 --> 00:12:45,810 kështu që nuk kemi përdorur në këtë kllapa botërore text 277 00:12:45,810 --> 00:12:49,910 për të na dhënë atë formë rrethore në të cilën ne mund të plug dhëna tonë. 278 00:12:49,910 --> 00:12:53,180 Në fund të fundit, dhjetëra vjet më parë kur kjo gjuhë, e quajtur C, 279 00:12:53,180 --> 00:12:55,950 u shpik askush parashikuar kjo është një prej nesh, 280 00:12:55,950 --> 00:12:59,420 këto disa vite më vonë, ne do të duan një funksion që thotë përshëndetje. 281 00:12:59,420 --> 00:12:59,920 E drejtë? 282 00:12:59,920 --> 00:13:02,880 Ajo do të jetë mirë në qoftë se ka pasur një copë mister, apo një fjalë kyçe, 283 00:13:02,880 --> 00:13:05,502 që është quajtur hello, që fjalë për fjalë vetëm thotë përshëndetje. 284 00:13:05,502 --> 00:13:06,460 Por ne nuk kemi nevojë që. 285 00:13:06,460 --> 00:13:09,320 Ne mund të kemi diçka shumë më të ulët nivel, si një të shtypura të përgjithshme 286 00:13:09,320 --> 00:13:12,760 komandë, që merr të dhëna, dhe printime çfarëdo që duam. 287 00:13:12,760 --> 00:13:14,960 Pra, vini re tani model që do të fillojnë të dalin. 288 00:13:14,960 --> 00:13:19,310 Paren Open, paren afër është me sa duket përqafimit të dhëna, 289 00:13:19,310 --> 00:13:21,770 dhe pastaj unë shoh dyfish citon në të dyja anët. 290 00:13:21,770 --> 00:13:25,110 Nuk ka ende backslash pazakontë n, por shpresojmë se tani ju 291 00:13:25,110 --> 00:13:29,900 mund të fillojnë për të kujtoj të paktën që printf është duke marrë në një formë të dhëna. 292 00:13:29,900 --> 00:13:31,850 Jo si përdorues miqësore si Zeroja, por kjo është vetëm 293 00:13:31,850 --> 00:13:34,920 si të paturit e mbyllën në disa vlera atje. 294 00:13:34,920 --> 00:13:38,306 >> Në rregull, tani le të vërtetë të bëjë diçka me këtë. 295 00:13:38,306 --> 00:13:40,930 Kështu që disa prej jush mund të dini nga duke pasur shopped klasës para, 296 00:13:40,930 --> 00:13:42,638 bisedoi me shokët, që për shumë vite 297 00:13:42,638 --> 00:13:44,590 kemi përdorur diçka të quajtur pajisja CS50. 298 00:13:44,590 --> 00:13:49,160 Kjo ishte një term që përshkruan një teknologji quajtur makinë virtuale, e cila 299 00:13:49,160 --> 00:13:51,870 është një copë software që tuaj Paraardhësit do shkarko off 300 00:13:51,870 --> 00:13:53,360 Faqja e internetit Kursi për të lira. 301 00:13:53,360 --> 00:13:56,550 Ata gjithashtu do të shkarkoni një pjesë e lirë e software quajtur një hypervisor, 302 00:13:56,550 --> 00:14:00,590 diçka që quhet si VMware, ose VirtualBox, ose ndonjë numër 303 00:14:00,590 --> 00:14:04,450 e mjete të tjera, dhe në Mac ose PC e tyre ose çfarëdo kompjuteri që kishin vitin e kaluar 304 00:14:04,450 --> 00:14:06,620 dhe në vitet e kaluara, ata do të klikoni dy herë një ikonë 305 00:14:06,620 --> 00:14:08,860 për të drejtuar këtë softuer quajtur hypervisor. 306 00:14:08,860 --> 00:14:12,220 Dhe pastaj brenda atij programi ata do të hapë pajisjen CS50. 307 00:14:12,220 --> 00:14:14,710 Dhe efekti ishte që nëse një paraardhësi i juaji 308 00:14:14,710 --> 00:14:17,780 ishte duke ecur Mac OS ose Windows, ai ose ajo 309 00:14:17,780 --> 00:14:22,910 më pas kishte një dritare të re në e tyre ekran duke mjedisin CS50-së. 310 00:14:22,910 --> 00:14:27,370 Pra, një makinë virtuale ju lejon të drejtuar një sistemit operativ brenda tjetrit, 311 00:14:27,370 --> 00:14:28,785 dhe kjo është pikërisht ajo që ne e bëmë. 312 00:14:28,785 --> 00:14:31,410 Në pjesën më të rrjedhën ne përdorin një sistem operativ të quajtur 313 00:14:31,410 --> 00:14:34,070 Linux, konkretisht Ubuntu Linux, dhe kjo 314 00:14:34,070 --> 00:14:37,590 është një mënyrë shumë e mirë në vitet e fundit të duke u siguruar që të gjithë në kursin 315 00:14:37,590 --> 00:14:38,840 vetëm kishin të njëjtin mjedis. 316 00:14:38,840 --> 00:14:41,339 Dhe ju mund të përdorni çdo lloj kompjuter që ju në të vërtetë dëshironi. 317 00:14:41,339 --> 00:14:43,930 Në mesin e dobësi, edhe pse, po të ishte si dy gigabajt 318 00:14:43,930 --> 00:14:45,480 për ta shkarkuar këtë gjë. 319 00:14:45,480 --> 00:14:50,310 Ajo nuk ka domosdoshmërisht të punojë super edhe në njerëzit Kompjuter që të cilëve ndoshta vetëm 320 00:14:50,310 --> 00:14:54,570 kishte një koncert apo më shumë RAM, apo jo shumë gigahertz të shpejtësisë CPU, 321 00:14:54,570 --> 00:14:56,750 dhe kështu që këtë vit, për këtë dhe arsye të tjera, 322 00:14:56,750 --> 00:14:59,140 kemi qenë në tranzicion në këtë mjedis. 323 00:14:59,140 --> 00:15:03,730 I ashtuquajturi IDE CS50, e cila është bazuar në softuer me kod të hapur, 324 00:15:03,730 --> 00:15:07,380 dhe një platformë të mbështetur që një kompani e quajtur Cloud9 325 00:15:07,380 --> 00:15:11,110 mbështet në Evropë, që na lejon të kemi në thelb 326 00:15:11,110 --> 00:15:15,770 se mjedisi saktë njëjtë si në vitet e fundit, por në të ashtuquajturin re. 327 00:15:15,770 --> 00:15:17,532 >> Pra, çfarë është cloud? 328 00:15:17,532 --> 00:15:20,480 Ju keni klikuar ndoshta ikonë e saj në Mac apo PC. 329 00:15:20,480 --> 00:15:22,210 Çfarë është cloud? 330 00:15:22,210 --> 00:15:22,709 Po? 331 00:15:22,709 --> 00:15:25,880 332 00:15:25,880 --> 00:15:26,780 Një louder pak. 333 00:15:26,780 --> 00:15:30,510 334 00:15:30,510 --> 00:15:31,010 Po. 335 00:15:31,010 --> 00:15:33,770 Kjo është vetëm një bandë e kompjuterëve gjetkë që të dhënat dyqan dhe të kandidojë 336 00:15:33,770 --> 00:15:34,880 software dhe si. 337 00:15:34,880 --> 00:15:39,390 Pra, kjo është me të vërtetë vetëm për të fjalës de jure i përshkruar [? rentabile?] 338 00:15:39,390 --> 00:15:40,930 kompjutera që jetojnë në vende të tjera. 339 00:15:40,930 --> 00:15:42,810 Se ju, vetë, jo domosdoshmërisht vet. 340 00:15:42,810 --> 00:15:45,256 Pra, kur të dhënat tuaja, ose juaj programe, janë në një re, 341 00:15:45,256 --> 00:15:47,630 kjo thjesht do të thotë se është në dikë kompjutera tjetër gjetiu, 342 00:15:47,630 --> 00:15:50,510 dhe jo, ka shumë të ngjarë, në tuaj laptop fizik apo desktop. 343 00:15:50,510 --> 00:15:52,990 Dhe kështu kjo është ajo që CS50 IDE tani është. 344 00:15:52,990 --> 00:15:55,670 >> Tani e tutje ju do të shkoni në një të caktuar URL që do të prezantoj 345 00:15:55,670 --> 00:16:00,090 për të, në problemin e caktuar 1, më vonë këtë javë, që do të më pas, pas logging in, 346 00:16:00,090 --> 00:16:01,480 ju jap këtë mjedis. 347 00:16:01,480 --> 00:16:03,896 Dhe shumë si Scratch kishte një disa panele të ndryshme të përfshira, 348 00:16:03,896 --> 00:16:06,030 kështu që ka IDE CS50 kanë pikërisht këtë. 349 00:16:06,030 --> 00:16:09,480 Në anën e sipërm të majtë këtu, ju jeni do të shohim një shfletues njohur file. 350 00:16:09,480 --> 00:16:11,930 Pra, ndonjë fotografi që ju vënë në këtë mjedis 351 00:16:11,930 --> 00:16:13,346 janë vetëm do të jetë e shënuar atje. 352 00:16:13,346 --> 00:16:14,350 Dosjet dhe dosjet. 353 00:16:14,350 --> 00:16:16,790 Në krye të drejtë këtu, ju jeni duke shkuar për të parë një vend 354 00:16:16,790 --> 00:16:18,420 ku ju në fakt mund të shkruani kodin tuaj. 355 00:16:18,420 --> 00:16:21,860 Fillimisht në C, më vonë në Termi në PHP dhe JavaScript, 356 00:16:21,860 --> 00:16:24,739 dhe, ndoshta për finale projekte, Ruby ose Java ose Python 357 00:16:24,739 --> 00:16:27,280 ose ndonjë numër të gjuhëve janë mbështetur në këtë mjedis. 358 00:16:27,280 --> 00:16:30,130 Kjo nuk është e lidhur fare për CS50 specifike. 359 00:16:30,130 --> 00:16:33,390 >> Dhe pastaj në këndin e poshtëm këtu, sidomos për ata më të rehatshme, 360 00:16:33,390 --> 00:16:35,590 ju keni diçka quajtur një dritare terminali. 361 00:16:35,590 --> 00:16:38,770 Dhe kjo dritare terminali lejon ju për të ekzekutuar ndonjë komandë që ju 362 00:16:38,770 --> 00:16:40,860 duan në këtë mjedis cloud. 363 00:16:40,860 --> 00:16:42,860 Kjo ju lejon të instaloni ndonjë softuer shtesë 364 00:16:42,860 --> 00:16:46,810 që ju doni sepse ju keni ashtuquajtura rrënjë, ose administratori privilegjet. 365 00:16:46,810 --> 00:16:49,930 Pra, me fjalë të tjera, edhe pse kjo është pritur në fund të fundit në një re, 366 00:16:49,930 --> 00:16:52,400 dhe edhe pse ne kemi thjeshtuar atë në një farë mase 367 00:16:52,400 --> 00:16:57,110 By default, fjalë për fjalë duke futur, në sajë të Dan Armendariz, dhe Dino, 368 00:16:57,110 --> 00:17:01,070 dhe Dan Bradley në ekipin CS50 e gjatë kaluar shumë muaj, një më pak të rehatshme 369 00:17:01,070 --> 00:17:05,140 Mënyra që fsheh një shumë e distractions fillimisht konfuze. 370 00:17:05,140 --> 00:17:10,119 Çdo gjë ekziston në përfaqësojnë një sistem tipik kompjuterik 371 00:17:10,119 --> 00:17:12,319 që ju mund të përdorni në botën reale. 372 00:17:12,319 --> 00:17:15,640 >> Pra, çfarë e bën këtë të gjithë do të thotë, dhe çfarë mund të bëjë në fakt me të? 373 00:17:15,640 --> 00:17:19,124 Le të vërtetë të marrë një vështrim në një program. 374 00:17:19,124 --> 00:17:21,290 Kështu që unë jam duke shkuar për të hapur Mjedisi aktual këtu, 375 00:17:21,290 --> 00:17:23,894 e cila është vetëm Chrome ynë shfletues, e cila mund të jetë Firefox, 376 00:17:23,894 --> 00:17:26,640 mund të jetë Internet Explorer, ose ndonjë shfletues tjetër si. 377 00:17:26,640 --> 00:17:28,400 Është e shfaq e plotë këtu për momentin. 378 00:17:28,400 --> 00:17:31,580 Dhe unë dëshiroj që në fakt vë në lojë pavarësisht se çfarë ky program ishte. 379 00:17:31,580 --> 00:17:36,170 Pra, le të marrin një vështrim, nga zooming në dorë krye, në atë që kam bërë, dhe si kam marrë këtu. 380 00:17:36,170 --> 00:17:38,315 Kështu që këtu është ato e saktë të njëjtën gjë e kodit. 381 00:17:38,315 --> 00:17:40,440 Pra, kjo është deklarata, siç u përmend më herët. 382 00:17:40,440 --> 00:17:42,580 Funksioni që thotë përshëndetje. 383 00:17:42,580 --> 00:17:45,870 Formatimin e teksteve kaçurrel, në Linja katër dhe gjashtë linjës, 384 00:17:45,870 --> 00:17:49,290 me sa duket lloj i zarf që vija që të lidhen 385 00:17:49,290 --> 00:17:50,890 me thelbin e programit tim. 386 00:17:50,890 --> 00:17:54,890 Pra me të vërtetë, kjo fjalen kryesore, kjo është deri atje në vijën tre, 387 00:17:54,890 --> 00:17:59,450 ju mund të mendoni se si ekuivalenti e që kur flamuri gjelbër klikuar, 388 00:17:59,450 --> 00:18:01,080 bllokuar në Scratch. 389 00:18:01,080 --> 00:18:05,280 Pra, kjo është e gjitha ne kemi këtu, është kur flamuri gjelbër klikuar, të shtypura, ose të themi, 390 00:18:05,280 --> 00:18:06,700 Hello World. 391 00:18:06,700 --> 00:18:11,210 >> Por le të marrin me mend, tani, në çfarë së pari këtë linjë, më misterioze, është. 392 00:18:11,210 --> 00:18:15,100 Sharp përfshijnë, i hapur angled parantezë, unë standarde / O dot h, 393 00:18:15,100 --> 00:18:17,320 mbyllur kllapa kënddrejtë. 394 00:18:17,320 --> 00:18:19,850 Ç'farë është se ndoshta duke bërë, veçanërisht në qoftë se ju keni programuar 395 00:18:19,850 --> 00:18:21,390 para se në ndonjë gjuhë tjetër. 396 00:18:21,390 --> 00:18:21,890 Po? 397 00:18:21,890 --> 00:18:22,765 >> Audienca: [padëgjueshme] 398 00:18:22,765 --> 00:18:25,095 399 00:18:25,095 --> 00:18:25,970 DAVID J. Malan: Po. 400 00:18:25,970 --> 00:18:26,470 Pikërisht. 401 00:18:26,470 --> 00:18:29,455 Pra, kjo është duke i dhënë juve akses në një bibliotekë, kështu që të flasin, e funksioneve. 402 00:18:29,455 --> 00:18:31,830 Dhe një bibliotekë e funksioneve është funksionet që dikush tjetër 403 00:18:31,830 --> 00:18:34,406 shkroi, ose kohët e fundit apo kohë më parë, kështu që ju 404 00:18:34,406 --> 00:18:35,780 nuk duhet të reinvent timon. 405 00:18:35,780 --> 00:18:39,020 Për shembull, ne nuk e bëjmë duhet të dinë se, në vitin 2015, 406 00:18:39,020 --> 00:18:42,280 se si të shkruani kodin që i vë një karakter në ekran e mia. 407 00:18:42,280 --> 00:18:44,820 Dikush tjetër e ka realizuar artistikisht se me funksionin printf 408 00:18:44,820 --> 00:18:47,280 kështu që unë mund të lloj të abstrakt larg nga ajo, apo shtresa 409 00:18:47,280 --> 00:18:49,350 në krye të tij ose të saj Kodi, dhe tani vetëm të marrë 410 00:18:49,350 --> 00:18:52,760 për të dhënë se çdo program unë shkruaj mund të shtypura diçka në ekran. 411 00:18:52,760 --> 00:18:58,150 Pra, kjo linja e parë atje në një hap përfshin të ashtuquajturin fotografi header 412 00:18:58,150 --> 00:18:59,980 për bibliotekën standarde. 413 00:18:59,980 --> 00:19:02,630 Pra shikoni, gjuhën në që ne jemi tani duke punuar 414 00:19:02,630 --> 00:19:05,010 kishte një bibliotekë standarde me shumë funksione. 415 00:19:05,010 --> 00:19:07,240 Printf është një prej tyre, dhe që vija e parë e kodit 416 00:19:07,240 --> 00:19:10,040 do të thotë më jep akses në ato funksione, kështu që unë 417 00:19:10,040 --> 00:19:12,300 nuk duhet të reinvent timon atë. 418 00:19:12,300 --> 00:19:15,940 >> Tani le të shkojmë në dritaren e poshtme dhe të bëjë pikërisht atë që kam bërë më parë. 419 00:19:15,940 --> 00:19:18,520 Një moment më parë, kur isha whizzing përmes kodit, 420 00:19:18,520 --> 00:19:24,540 shtypni atë për herë të parë, Unë shumë shpejt shtypur, të bëjë përshëndetje. 421 00:19:24,540 --> 00:19:28,250 Çfarë ishte se mbi të gjitha do të ju me mend? 422 00:19:28,250 --> 00:19:29,150 Çfarë po bëj? 423 00:19:29,150 --> 00:19:29,649 Po? 424 00:19:29,649 --> 00:19:31,810 425 00:19:31,810 --> 00:19:32,310 S'ka gjë 426 00:19:32,310 --> 00:19:32,970 Është në rregull. 427 00:19:32,970 --> 00:19:33,492 Po. 428 00:19:33,492 --> 00:19:34,450 Audienca: Hartimi atë. 429 00:19:34,450 --> 00:19:34,700 DAVID J. Malan: Po. 430 00:19:34,700 --> 00:19:35,770 Ajo ishte vetëm hartimin atë. 431 00:19:35,770 --> 00:19:36,270 E drejtë? 432 00:19:36,270 --> 00:19:39,280 Edhe në qoftë se kjo është plotësisht e panjohur për ju, kjo është goxha e anglisht si. 433 00:19:39,280 --> 00:19:41,155 Sigurisht nuk është zero dhe ato, kështu që unë ende 434 00:19:41,155 --> 00:19:44,220 duhet për të drejtuar atë nëpërmjet se e ashtuquajtura program, një përpilues, që po ndodh 435 00:19:44,220 --> 00:19:46,060 për të marrë atë si input dhe për të prodhuar prodhimit. 436 00:19:46,060 --> 00:19:48,270 Dhe të paktën, tani për tani, në ky mjedis Linux, 437 00:19:48,270 --> 00:19:51,030 por kjo nuk është parakusht, kjo është vetëm ku ne do të fillojmë, 438 00:19:51,030 --> 00:19:53,960 ju zakonisht ndërveprojnë me sistemet kompjuterike si kjo 439 00:19:53,960 --> 00:19:55,770 nga një të ashtuquajtur command line. 440 00:19:55,770 --> 00:19:57,790 Pra, me një keq shpejtë dhe tastierë tuaj, 441 00:19:57,790 --> 00:20:01,630 dhe jo aq shumë miun tuaj, dhe jo aq shumë dritaret dhe ikonat dhe menutë, 442 00:20:01,630 --> 00:20:02,980 në vend çdo gjë është tekstuale. 443 00:20:02,980 --> 00:20:06,180 Dhe, edhe pse kjo ndihet, në fillim shikim, ndoshta, si një hap prapa, 444 00:20:06,180 --> 00:20:08,437 kjo është në fakt një shumë më të mënyrë të fuqishme dhe ekspresive 445 00:20:08,437 --> 00:20:10,270 për të kontrolluar një kompjuter sidomos si ju, 446 00:20:10,270 --> 00:20:12,950 veten, të bëhet më shumë të rehatshme nga pak. 447 00:20:12,950 --> 00:20:16,790 Ajo do të ju lejojnë të bëni një shumë më shumë gjëra se sa vetëm atë Microsoft 448 00:20:16,790 --> 00:20:20,390 ose Apple ju lejon të bëni me sistemi i tyre grafike operativ. 449 00:20:20,390 --> 00:20:23,270 >> Kështu që kur unë hit Enter, tani, asgjë nuk ndodh në këtë kohë 450 00:20:23,270 --> 00:20:25,960 sepse me sa duket përshëndetje program është deri në datën. 451 00:20:25,960 --> 00:20:28,250 Dhe çfarë ishte urdhërimi Unë u zhvillua pas kësaj? 452 00:20:28,250 --> 00:20:32,370 Dot çaj HELLO, dhe përshëndetje botën. 453 00:20:32,370 --> 00:20:34,350 Tani le të marrin një hap të mbështetur për vetëm një moment. 454 00:20:34,350 --> 00:20:39,510 Ajo rezulton se bëjnë përshëndetje është vetëm një mënyrë të thjeshtuar të hartimin e një programi. 455 00:20:39,510 --> 00:20:41,670 Le të vetëm të prezantoj një pjesë e zhargon, 456 00:20:41,670 --> 00:20:43,470 por më pas të shkojë larg nga ai, pasi ajo nuk është e 457 00:20:43,470 --> 00:20:46,640 të gjitha që interesante për qëllime të sotme. 458 00:20:46,640 --> 00:20:51,000 Përpiluesit ne jemi duke shkuar për të filluar përdorimin e quhet tingëllimë, për gjuhën C. 459 00:20:51,000 --> 00:20:54,280 Dhe kjo është një program që është drejtuar vetëm si ne e bëmë në rreshtin e komandave atje. 460 00:20:54,280 --> 00:20:56,580 Dhe kështu që në qoftë se unë dua të të hartojë një program që unë 461 00:20:56,580 --> 00:21:00,790 kanë shkruar në një file të quajtur përshëndetje dot c, Unë fjalë për fjalë vetëm lloji Hello tingëllimë c 462 00:21:00,790 --> 00:21:02,100 të hyjë. 463 00:21:02,100 --> 00:21:04,880 >> Funny gjë është, për arsye historike, 464 00:21:04,880 --> 00:21:07,750 në qoftë se unë nuk do të specifikojë emri i programit 465 00:21:07,750 --> 00:21:11,690 që unë dua të prodhimit, në qoftë se unë nuk e bëj specifikoni një emër file për ato zero 466 00:21:11,690 --> 00:21:14,990 dhe ato, një shumë e çuditshme vjet konventë është adoptuar më parë 467 00:21:14,990 --> 00:21:17,390 ku ajo ndjehet lloj i një përgjigje e mirë në atë kohë, 468 00:21:17,390 --> 00:21:21,650 dhe le të vetëm në mënyrë arbitrare e quajnë programi i parë ne përpilojë një njollë jashtë. 469 00:21:21,650 --> 00:21:22,900 Një vjen për herë të parë në alfabetin. 470 00:21:22,900 --> 00:21:23,920 Jashtë, kjo është prodhimi. 471 00:21:23,920 --> 00:21:26,210 Pra, ne do të thërrasë programin by default një pikë jashtë. 472 00:21:26,210 --> 00:21:29,550 Dhe kjo është në rregull, sepse në qoftë se unë dua të të drejtuar programin në këtë tekst bazë 473 00:21:29,550 --> 00:21:33,590 mjedis, Unë vetëm lloji dot çaj një pikë jashtë hyjë. 474 00:21:33,590 --> 00:21:35,250 Dhe kjo do të kandidojë tamam si më parë. 475 00:21:35,250 --> 00:21:36,880 Pra, le të shohim se e vërtetë shpejt. 476 00:21:36,880 --> 00:21:40,370 >> Pra, nëse unë kthehem në tim kod burim në CS50 IDE, 477 00:21:40,370 --> 00:21:47,860 dhe unë në vend të bërë këtë, tingëllimë përshëndetje ahur c hyjë, njoftimi asgjë nuk duket të ndodhë, 478 00:21:47,860 --> 00:21:49,790 por pothuajse gjithmonë në ky mjedis Linux, 479 00:21:49,790 --> 00:21:53,310 kur asgjë e keqe nuk duket të ndodhë, që do të thotë diçka e mirë ka ndodhur në fakt. 480 00:21:53,310 --> 00:21:56,270 Nëse ju nuk e shihni një gabim Mesazhi, gjithçka është ndoshta mirë. 481 00:21:56,270 --> 00:22:01,930 Dhe me të vërtetë, në qoftë se unë tani bëj dot çaj një pikë të jashtë hyjë, unë kam drejtuar njëjtin programin tim. 482 00:22:01,930 --> 00:22:04,610 Unë ende kam programin Hello nga më herët sepse në të vërtetë, kjo është 483 00:22:04,610 --> 00:22:07,430 do të jetë aq shumë nicer vetëm tipit të bëjë në vend të kujtuar 484 00:22:07,430 --> 00:22:10,240 këto yshtje e komandat, por le të shohim se si ne 485 00:22:10,240 --> 00:22:12,890 mund të përmirësuar me këtë, megjithatë. 486 00:22:12,890 --> 00:22:15,340 >> Pra, kjo është komanda të përpilojë kodin. 487 00:22:15,340 --> 00:22:19,100 Kjo është komanda për të drejtuar Kodi me përpilimin pas kësaj. 488 00:22:19,100 --> 00:22:20,546 Si mund të specifikoni një emër file? 489 00:22:20,546 --> 00:22:22,670 E pra, le të vetëm të prezantoj një më shumë pjesë e zhargon. 490 00:22:22,670 --> 00:22:24,461 Kur ju jeni në këtë Mjedisi teksti bazë, 491 00:22:24,461 --> 00:22:27,400 ju jeni do të duan të specifikojë gjëra quajtur argumente command line. 492 00:22:27,400 --> 00:22:31,380 E cila është vetëm një mënyrë e sofistikuar për të thënë: fjalë të tjera në ftim që 493 00:22:31,380 --> 00:22:33,860 shkulje sjelljen e çfarëdo Programi ju xhironi. 494 00:22:33,860 --> 00:22:37,320 Pra, në mënyrë të veçantë programi unë jam drejtimin, duke shtypur emrin tingëllimë, 495 00:22:37,320 --> 00:22:38,504 është programi i quajtur tingëllimë. 496 00:22:38,504 --> 00:22:40,920 Pra, kjo është ose shkolla e vjetër ekuivalent i klikuar dy herë 497 00:22:40,920 --> 00:22:42,860 në Microsoft Word ose ikonë e disa programit. 498 00:22:42,860 --> 00:22:46,360 Unë jam në vend të vetëm shtypni emrin e saj, por në këtë version të komandës, 499 00:22:46,360 --> 00:22:51,334 Unë atëherë kam dash o hapësirë përshëndetje hapësirë ​​përshëndetje dot c. 500 00:22:51,334 --> 00:22:53,500 Pra, edhe në qoftë se ju kurrë nuk kam luajtur në këtë botë para, 501 00:22:53,500 --> 00:22:58,160 vetëm të marrë me mend se çfarë ka dash o përshëndetje bëj? 502 00:22:58,160 --> 00:23:00,620 Ose çfarë do të them tingëllimë për të bërë? 503 00:23:00,620 --> 00:23:01,386 Po. 504 00:23:01,386 --> 00:23:02,455 >> Audienca: [padëgjueshme] 505 00:23:02,455 --> 00:23:03,330 DAVID J. Malan: Po. 506 00:23:03,330 --> 00:23:08,614 Ajo thjesht vendos prodhimin e file të jetë përshëndetje në vend të sillier një dot jashtë. 507 00:23:08,614 --> 00:23:09,780 Dhe, me të vërtetë, le të provoni këtë. 508 00:23:09,780 --> 00:23:14,250 Pra, nëse unë tani bëj, për herë të parë le ta bëjmë këtë, r M përshëndetje. 509 00:23:14,250 --> 00:23:15,590 Kjo është hequr. 510 00:23:15,590 --> 00:23:18,450 Dhe kjo do të thotë Hiq skedar i rregullt hello, i cili 511 00:23:18,450 --> 00:23:22,210 është e panevojshme misterioz, por ajo vetëm do të thotë nuk ju duan të fshini fotografi, 512 00:23:22,210 --> 00:23:23,230 dhe unë lloji Y për Po. 513 00:23:23,230 --> 00:23:27,340 Dhe njoftim, në qoftë se ju po glancing në krye u largua, ai u zhduk prej deri atje. 514 00:23:27,340 --> 00:23:32,180 Më lejoni tani të bëjë dash o tingëllimë, dhe Unë jam duke shkuar për të shkuar përpara dhe të bëjë hello, 515 00:23:32,180 --> 00:23:34,890 në të gjitha shkronja kapitale, përshëndetje dot c. 516 00:23:34,890 --> 00:23:37,775 Tani, në qoftë se unë bëj dot plagë Përshëndetje, çfarë do të presim? 517 00:23:37,775 --> 00:23:41,240 518 00:23:41,240 --> 00:23:42,430 >> Ndoshta është rasti të ndjeshme. 519 00:23:42,430 --> 00:23:43,070 Ndoshta kjo nuk është. 520 00:23:43,070 --> 00:23:44,030 Le të shohim. 521 00:23:44,030 --> 00:23:45,230 Asnjë skedar të tilla apo directory. 522 00:23:45,230 --> 00:23:47,438 Dhe ne mund të lloj të mashtrojnë nga vetëm duke kërkuar në krye të majtë. 523 00:23:47,438 --> 00:23:49,630 Çfarë nuk kam qartë shpëtuar programin si? 524 00:23:49,630 --> 00:23:51,070 Të gjitha kapele përshëndetje. 525 00:23:51,070 --> 00:23:53,020 Pra me të vërtetë, kjo është duke shkuar për të bërë një ndryshim. 526 00:23:53,020 --> 00:23:54,540 Deri tani përshëndetje bota është kthyer. 527 00:23:54,540 --> 00:23:56,969 Tani kjo është e gjitha mirë dhe të mirë, dhe të gjithë shumë mendje-numbing, 528 00:23:56,969 --> 00:23:59,760 në lloj të merrni bogged poshtë në këto detaje, por të kuptuarit e tyre 529 00:23:59,760 --> 00:24:00,500 është e mirë. 530 00:24:00,500 --> 00:24:02,675 >> Shtypja nga këto gjithnjë yshtje gjata 531 00:24:02,675 --> 00:24:05,980 nuk do të jetë veçanërisht fun, kështu që njerëzit në botë 532 00:24:05,980 --> 00:24:08,260 shpikur një program tjetër, disa vite më parë, e quajtur 533 00:24:08,260 --> 00:24:12,190 bëjnë, se mjaft thjesht ju lejon të tipit make, 534 00:24:12,190 --> 00:24:14,530 Emri i programit ju doni të bëni, dhe të bëjë 535 00:24:14,530 --> 00:24:18,580 është i zgjuar në se ajo do të duket në dosje aktual, aka directory, 536 00:24:18,580 --> 00:24:21,440 dhe në qoftë se ju keni një fotografi quajtur përshëndetje dot c, 537 00:24:21,440 --> 00:24:25,800 se është dosja ajo do të përpilojë për ju në një program të quajtur përshëndetje. 538 00:24:25,800 --> 00:24:29,950 Kështu që kjo është një mënyrë shumë më të thjeshtë të duke bërë komandat më të fshehta 539 00:24:29,950 --> 00:24:30,800 që ne e bëmë më herët. 540 00:24:30,800 --> 00:24:34,080 Dhe e kemi para-konfiguruar CS50 IDE të dini 541 00:24:34,080 --> 00:24:38,560 se ajo duhet të bëjë o dash dhe një numër të flamuj të tjerë, apo argumentet command line, 542 00:24:38,560 --> 00:24:40,670 se ne do të shohim para se të gjatë. 543 00:24:40,670 --> 00:24:43,700 >> Por tani le të bëjë në fakt diçka më interesante. 544 00:24:43,700 --> 00:24:46,950 Vetëm shtypni jashtë botë Hello gjithë koha nuk është e gjitha që bindëse. 545 00:24:46,950 --> 00:24:52,280 Pra më lejoni të shkoj përpara dhe të ndryshojë ky program dhe të thonë, përshëndetje David. 546 00:24:52,280 --> 00:24:54,120 Tani unë jam duke shkuar për të shkuar poshtë këtu. 547 00:24:54,120 --> 00:24:57,360 Unë jam duke shkuar për të shkuar përpara dhe të bëjë të bëjë përshëndetje. 548 00:24:57,360 --> 00:25:00,652 Dhe përsëri tani ju jeni duke parë bëjnë po tregon ju më të gjatë 549 00:25:00,652 --> 00:25:03,360 sekuenca e komandave që është bërë sepse kemi para-konfiguruar 550 00:25:03,360 --> 00:25:05,200 atë në këtë mënyrë, por ne nuk duhet të shqetësohen për tani 551 00:25:05,200 --> 00:25:10,735 çfarë është bërë tjetër se ajo është hartimin dot çaj Hello, hello world. 552 00:25:10,735 --> 00:25:14,969 553 00:25:14,969 --> 00:25:15,510 Çfarë është e gabuar? 554 00:25:15,510 --> 00:25:16,177 Po. 555 00:25:16,177 --> 00:25:17,370 >> Audienca: [padëgjueshme] 556 00:25:17,370 --> 00:25:18,203 >> DAVID J. Malan: Po. 557 00:25:18,203 --> 00:25:19,600 Pra, gabim noobie. 558 00:25:19,600 --> 00:25:22,394 Unë këtë njoftim është super delikate, por yll këtu, në tab, 559 00:25:22,394 --> 00:25:25,060 thjesht do të thotë që ju nuk e keni ruajtur atë, dhe shfletues dhe programe të tjera 560 00:25:25,060 --> 00:25:25,930 bëj këtë ndonjëherë. 561 00:25:25,930 --> 00:25:27,939 Pra, s kontrollin ose komandën s duhet të ruani atë. 562 00:25:27,939 --> 00:25:29,730 Tani më lejoni të shkoj përpara dhe ri-drejtuar programin. 563 00:25:29,730 --> 00:25:33,360 564 00:25:33,360 --> 00:25:34,260 Recompiled. 565 00:25:34,260 --> 00:25:36,050 E drejtë, kështu që është një proces shumë-hap. 566 00:25:36,050 --> 00:25:39,400 Asnjëra prej të cilave është veçanërisht e ndërlikuar, por çdo herë që ne të ndryshojë skedarin, 567 00:25:39,400 --> 00:25:43,450 ne kemi nevojë për të ndryshuar rezultuar zero dhe ato, dhe dot plagë përshëndetje. 568 00:25:43,450 --> 00:25:43,950 Wow. 569 00:25:43,950 --> 00:25:46,450 Pra, kjo është shumë e underwhelming që ne vetëm të shtypura jashtë këtë. 570 00:25:46,450 --> 00:25:48,360 Le të bëjë gjëra pak më dinamike, tani. 571 00:25:48,360 --> 00:25:52,280 >> E pra kjo rezulton, se si Zeroja, C mbështet variablave. 572 00:25:52,280 --> 00:25:54,790 Dhe kjo rezulton në qoftë se ju doni të ketë një ndryshore që ruan, 573 00:25:54,790 --> 00:25:57,300 jo një numër si ne zakonisht bëri me Scratch, 574 00:25:57,300 --> 00:26:01,300 por si një fjalë, ose një frazë, ose një emër, ju 575 00:26:01,300 --> 00:26:04,837 mund të specifikoni një ndryshore të jetë e tipit string. 576 00:26:04,837 --> 00:26:06,670 Pra, ne do të shohim më shumë prej këto në një moment të vetëm, 577 00:26:06,670 --> 00:26:09,090 por kjo rezulton se C, dhe një shumë prej gjuhëve si ai, 578 00:26:09,090 --> 00:26:11,240 kemi lloje shumë të veçanta të variablave. 579 00:26:11,240 --> 00:26:13,810 Kjo nuk është vetëm si algjebër, ku ju merrni një x, një y, dhe z 580 00:26:13,810 --> 00:26:16,940 dhe ata janë vetëm gjithmonë numra, në një gjuhë programimi 581 00:26:16,940 --> 00:26:20,030 ju mund të ruajë numrat, ju mund të ruajë karaktere individuale, 582 00:26:20,030 --> 00:26:24,619 ju mund të ruani tërë fjalët, ju mund të të ruajtur imazhe tërë, e tërë fotografi të shëndoshë, 583 00:26:24,619 --> 00:26:25,160 dhe si. 584 00:26:25,160 --> 00:26:28,362 Pra, ne duhet të specifikojë se çfarë lloji i variablit tonë është. 585 00:26:28,362 --> 00:26:31,570 Dhe nga konventa unë jam duke shkuar për të thirrur tim s ndryshueshme vetëm për shkak se ajo është e ngjeshur, 586 00:26:31,570 --> 00:26:33,510 dhe s qëndron për vargun. 587 00:26:33,510 --> 00:26:36,400 >> Dhe atëherë unë jam duke shkuar për të ruajtur brenda kësaj variable, 588 00:26:36,400 --> 00:26:39,570 ashtu si me Scratch kur unë përdorin bllok caktuar, 589 00:26:39,570 --> 00:26:41,950 Unë jam duke shkuar për të përdorur Operatori detyrë në C, 590 00:26:41,950 --> 00:26:45,290 e cila bukur mjaft është i barabartë nënshkruajë, por shenja të barabartë e bën këtë. 591 00:26:45,290 --> 00:26:53,220 Ajo lëviz diçka nga e drejta në anën e majtë të shprehjes. 592 00:26:53,220 --> 00:26:57,170 Pra, atë që kam bërë, të jetë i qartë në Linja pesë, po unë kam shpallur një ndryshore. 593 00:26:57,170 --> 00:27:01,284 Unë e kam thënë kompjuterin, më jep mua kujtesës për një ndryshore, e quajti atë s, 594 00:27:01,284 --> 00:27:03,950 dhe e di paraprakisht se unë jam duke shkuar të vënë një varg në të. 595 00:27:03,950 --> 00:27:05,950 Dhe një varg është vetëm një sekuenca e karaktereve. 596 00:27:05,950 --> 00:27:09,190 Kjo është një fjalë, ose një frazë, ose paragrafi, por kjo është një sekuencë e karaktereve. 597 00:27:09,190 --> 00:27:10,610 Kjo nuk është numra. 598 00:27:10,610 --> 00:27:13,800 Çfarë string jam unë do të jetë duke vënë në atë variabël? 599 00:27:13,800 --> 00:27:16,185 E pra, me sa duket të japin kuotën mbyll thonjëzat, "Hana". 600 00:27:16,185 --> 00:27:17,810 Tani vini re modelin që është në zhvillim. 601 00:27:17,810 --> 00:27:19,260 Ka një shprehje e majtë. 602 00:27:19,260 --> 00:27:21,810 Ka një shprehje djathtë, të ndara me shenjë të barabartë. 603 00:27:21,810 --> 00:27:24,390 Dhe vetëm të marrë me mend, në qoftë se të panjohura megjithatë, 604 00:27:24,390 --> 00:27:27,430 me atë që po bën pikëpresje. 605 00:27:27,430 --> 00:27:28,865 Çfarë është ajo me sa duket bën për ne? 606 00:27:28,865 --> 00:27:29,365 Po? 607 00:27:29,365 --> 00:27:29,840 >> Audienca: [padëgjueshme] 608 00:27:29,840 --> 00:27:29,980 >> DAVID J. Malan: Po. 609 00:27:29,980 --> 00:27:31,170 Është vetëm ndërprerjen e linjës. 610 00:27:31,170 --> 00:27:31,669 E drejtë? 611 00:27:31,669 --> 00:27:34,260 Kompjuterët duan të jenë të hapur tha, fjalë për fjalë, çfarë të bëni. 612 00:27:34,260 --> 00:27:36,343 Ashtu si gjalpë badiava dhe shembull sanduiç pelte, 613 00:27:36,343 --> 00:27:39,360 në qoftë se ju nuk e specifikoni pikërisht atë që keni ndërmend, 614 00:27:39,360 --> 00:27:42,190 ajo mund të lihet për gjykim apo gabimi. 615 00:27:42,190 --> 00:27:44,890 Pikëpresje do të thotë, kjo është ajo për këtë komandë. 616 00:27:44,890 --> 00:27:48,310 Është qenë super të saktë, dhe kjo është një gjë shumë e lehtë për të lënë jashtë. 617 00:27:48,310 --> 00:27:52,240 Kështu që tani ky program nuk duket të të sillen ndryshe gjersa I 618 00:27:52,240 --> 00:27:53,500 bërë atë më dinamike. 619 00:27:53,500 --> 00:27:57,107 Pra, në vend se vështirë mund të mi emri, më lejoni të vënë një vlerë placeholder. 620 00:27:57,107 --> 00:28:00,190 Dhe kjo rezulton se, dhe unë e di këtë nga që ka lexuar dokumentacionin, 621 00:28:00,190 --> 00:28:04,080 dhe përdorur funksionin për vite, që printf është projektuar të jetë dinamike. 622 00:28:04,080 --> 00:28:07,510 Ju nuk keni për të ditur paraprakisht çfarë fjalë ju doni të vënë në të. 623 00:28:07,510 --> 00:28:11,290 Ju në vend të kësaj mund të ketë një placeholder, si për qind s, e cila 624 00:28:11,290 --> 00:28:15,500 do të them të kompjuter, vendos një varg këtu. 625 00:28:15,500 --> 00:28:17,740 >> Cili varg duam të vënë atje? 626 00:28:17,740 --> 00:28:22,430 Will rezulton se midis këtyre kllapa, të cilat Mos harroni, caktoj kufijtë 627 00:28:22,430 --> 00:28:28,020 të dhëna në një funksion, në qoftë se ju keni nda me presje listë të gjërave këtu, 628 00:28:28,020 --> 00:28:31,790 ne fakt kalojë në shumëfish inputeve te një funksion. 629 00:28:31,790 --> 00:28:33,901 Pra, ashtu si disa Scratch blloqe, ju nuk mund të 630 00:28:33,901 --> 00:28:36,150 kanë luajtur me ta për projektet tuaja ende apo në të gjitha, 631 00:28:36,150 --> 00:28:38,250 disa blloqe Scratch kanë dy inpute. 632 00:28:38,250 --> 00:28:41,220 Dy kuti të bardha ju mund të shkruani numra ose fjalë në. 633 00:28:41,220 --> 00:28:45,210 Pra, për të nuk kanë funksione të tilla si C printf që mund të marrin dy inpute. 634 00:28:45,210 --> 00:28:48,050 Dhe përsëri, kjo presje i ndan ato. 635 00:28:48,050 --> 00:28:51,070 Pra në gjuhën angleze, përsëri edhe në qoftë se ju kurrë nuk kam programuar më parë, 636 00:28:51,070 --> 00:28:55,320 nga kjo logjikë printf është një funksion, merr dy inpute, njëra prej të cilave 637 00:28:55,320 --> 00:28:58,810 është një placeholder, çfarë do të shpresojnë printf do të bëjë me këtë të dhëna? 638 00:28:58,810 --> 00:29:01,470 639 00:29:01,470 --> 00:29:03,220 Ajo do të thonë hello Ana, me shpresë. 640 00:29:03,220 --> 00:29:05,274 Pra, për të bërë këtë ne kemi nevojë për të shpëtuar atë. 641 00:29:05,274 --> 00:29:06,190 Unë jam duke shkuar për të zoom jashtë. 642 00:29:06,190 --> 00:29:10,701 Unë jam duke shkuar për të shkuar mbrapa poshtë këtu dhe të thonë, të bëjë përshëndetje të hyjë. 643 00:29:10,701 --> 00:29:11,200 Oh. 644 00:29:11,200 --> 00:29:14,830 Diçka është e gabuar, dhe në fakt kjo është mjaft e madhe. 645 00:29:14,830 --> 00:29:18,400 Unë kam gjashtë rreshta të kodit dhe si 12 linjave të gabimeve. 646 00:29:18,400 --> 00:29:22,120 Pra, shikojmë përpara për këtë. 647 00:29:22,120 --> 00:29:24,260 Pra, çfarë po ndodh këtu? 648 00:29:24,260 --> 00:29:27,370 Pra, më të mirë rregull e pranoj këtu, sidomos kur ju jeni duke filluar nga jashtë, 649 00:29:27,370 --> 00:29:29,370 A nuk merrni hutuar nga gjëra në fund. 650 00:29:29,370 --> 00:29:31,220 Në fakt, unë shumë me qëllim përshkohet vetëm deri 651 00:29:31,220 --> 00:29:33,930 sepse shumë shpesh, një kompjuter është jo të gjithë që të ndritshme e një pajisje. 652 00:29:33,930 --> 00:29:35,054 Ajo do të merrni hutuar. 653 00:29:35,054 --> 00:29:37,220 Nëse ajo e sheh një gjë që ajo nuk e kupton, 654 00:29:37,220 --> 00:29:40,030 ajo mund gabim tjetër rreshta të kodit si të pasakta, 655 00:29:40,030 --> 00:29:41,649 edhe pse ata janë të përkryer gjobë. 656 00:29:41,649 --> 00:29:43,940 Kështu që ju gjithmonë dëshironi të punoni Top poshtë përmes gabimeve. 657 00:29:43,940 --> 00:29:47,850 Dhe pa dyshim kjo është super errët në këtë moment. 658 00:29:47,850 --> 00:29:50,830 >> Gabim, përdorimin e pashpallur string identifikues. 659 00:29:50,830 --> 00:29:52,130 A e kam të thotë standarde në? 660 00:29:52,130 --> 00:29:53,720 Jo, unë do të thotë string. 661 00:29:53,720 --> 00:29:55,830 Dhe kjo është vënë në, ndoshta kjo është një typo. 662 00:29:55,830 --> 00:30:00,570 Lloj si, spell-checking në një mënyrë shumë geeky, por arsyeja këtu, 663 00:30:00,570 --> 00:30:02,840 dhe ju do të dini këtë vetëm me praktikë, është 664 00:30:02,840 --> 00:30:06,390 se ajo rezulton se string nuk ekziston në C. Në fakt, C 665 00:30:06,390 --> 00:30:08,820 është një gjuhë të veçantë të vjetër, dhe kjo është nivel shumë i ulët, 666 00:30:08,820 --> 00:30:11,361 dhe kjo nuk ka shumë karakteristika që ju mund të keni rritur 667 00:30:11,361 --> 00:30:14,620 me nëse ju keni, në fakt, të programuar në Java, si disa prej jush kanë, 668 00:30:14,620 --> 00:30:16,980 por ju mund të mësoni atë gjëra të reja. 669 00:30:16,980 --> 00:30:20,900 Dhe me të vërtetë, ne kemi bërë këtë CS50, edhe pse deri në fund të semestrit, 670 00:30:20,900 --> 00:30:23,512 të gjitha këto rrotave të trajnimit do të janë marrë jashtë, 671 00:30:23,512 --> 00:30:25,220 atë që ne bëjmë në këto parë disa javë 672 00:30:25,220 --> 00:30:29,830 fillimisht është ne gjithashtu kemi ju përfshijnë CS50 dot h. 673 00:30:29,830 --> 00:30:31,230 E cila është një skedar header. 674 00:30:31,230 --> 00:30:32,440 Më shumë se në të ardhmen. 675 00:30:32,440 --> 00:30:36,430 >> Kjo është një fotografi që përmban funksione të që kemi shkruar për ju. 676 00:30:36,430 --> 00:30:39,180 Dhe në mesin e këtyre funksioneve është funksionet për marrjen e të dhëna 677 00:30:39,180 --> 00:30:43,520 nga ana e përdoruesit, si vargjet, dhe numra, dhe numrat reale, dhe më shumë. 678 00:30:43,520 --> 00:30:45,550 Por ajo ka edhe një shkurtesat pak. 679 00:30:45,550 --> 00:30:48,200 Ajo përcakton një Boolean si një lloj të të dhënave. 680 00:30:48,200 --> 00:30:50,340 C nuk ka vërtetë apo e rreme. 681 00:30:50,340 --> 00:30:53,880 Por ne mund t'i jepte nocionin e vërtetë apo e rreme me anë të kësaj biblioteke. 682 00:30:53,880 --> 00:30:57,670 Dhe ajo gjithashtu nuk ka një varg ndërtuar në deri sa ne të përfshijë këtë linjë. 683 00:30:57,670 --> 00:31:01,090 Pra, kjo linjë e kodit tregon përpiluesit, hej, tingëllimë, shikoni 684 00:31:01,090 --> 00:31:03,570 në këtë skedë për një tërësi bandë e kodit që CS50 685 00:31:03,570 --> 00:31:06,330 ka shkruar që dikush duke përdorur këtë fotografi 686 00:31:06,330 --> 00:31:09,330 mund të marrë për të mirëqenë Karakteristika ata kanë shtuar. 687 00:31:09,330 --> 00:31:11,220 >> Kështu që tani më lejoni të shkoj përpara dhe të qartë në ekran, 688 00:31:11,220 --> 00:31:14,178 dhe në qoftë se kurioz unë jam vetëm duke thënë kontroll l çdo herë për të pastruar në ekran, 689 00:31:14,178 --> 00:31:15,500 ose ju mund të shtypni qartë. 690 00:31:15,500 --> 00:31:19,220 Unë jam vetëm duke shkuar për të shkuar përpara dhe tani lloj bëjnë hello, dhe gjithçka është mirë. 691 00:31:19,220 --> 00:31:22,550 Ende një prodhim misterioze, por kjo nuk është një mesazh i gabuar. 692 00:31:22,550 --> 00:31:28,300 Tani në qoftë se unë bëj dot çaj hello, dhe si një mënjanë, dot Slash është i panjohur për shumicën. 693 00:31:28,300 --> 00:31:30,430 Kjo thjesht do të thotë, dot mjete dosjen aktuale. 694 00:31:30,430 --> 00:31:33,120 Pra, nëse ju keni përdorur ndonjëherë DOS, ose Linux, apo Unix 695 00:31:33,120 --> 00:31:35,410 ju mund të keni bërë diçka si cd dot dot, ku 696 00:31:35,410 --> 00:31:39,220 Dot Dot thotë të shkojnë prapa në herë, ose shkoni prapa, ose më lart 697 00:31:39,220 --> 00:31:40,370 në directory tuaj. 698 00:31:40,370 --> 00:31:43,090 Dot thjesht do të thotë të shikojmë në dosjen aktuale. 699 00:31:43,090 --> 00:31:45,670 Unë dua përshëndetje, e cila është e drejtë këtu. 700 00:31:45,670 --> 00:31:47,750 Dhe me të vërtetë, tani ai thotë përshëndetje Hannah. 701 00:31:47,750 --> 00:31:51,120 Dhe në qoftë se kam ndryshuar atë përsëri për Maria, përpiluar 702 00:31:51,120 --> 00:31:55,650 ajo do të bëjë hello, dot plagë përshëndetje, programi mban në ndryshim. 703 00:31:55,650 --> 00:31:58,060 >> Por kjo është ende një program goxha budalla. 704 00:31:58,060 --> 00:32:00,972 Nëse unë dua për të transportuar këtë program, apo të japë atë për një mik, 705 00:32:00,972 --> 00:32:03,430 ose të japë atë për Maria apo Hannah për këtë çështje, kjo është në rregull. 706 00:32:03,430 --> 00:32:07,300 Unë mund ta rregulloje atë për të dy prej tyre, por ajo kurrë nuk do të jenë të dinamike. 707 00:32:07,300 --> 00:32:10,870 Ata nuk mund të ndryshojë atë pasi ajo është hartuar poshtë në ato zero dhe ato. 708 00:32:10,870 --> 00:32:12,350 Pra, ajo që ne e bëmë diçka më të zgjuar? 709 00:32:12,350 --> 00:32:17,100 Çfarë nëse, në vend të hard-coding në programin e emrit këtij personi, 710 00:32:17,100 --> 00:32:20,890 Çfarë ndodh nëse ne vetëm të marrë string në kërkesë? 711 00:32:20,890 --> 00:32:22,430 >> Pra, me fjalë të tjera, më lejoni të bëj këtë. 712 00:32:22,430 --> 00:32:24,030 Unë jam duke shkuar për të përpiluar këtë program. 713 00:32:24,030 --> 00:32:25,710 Dhe më lejoni të zoom në në fund tani. 714 00:32:25,710 --> 00:32:29,920 Bëni përshëndetje dot plagë përshëndetje. 715 00:32:29,920 --> 00:32:31,710 Tani asgjë nuk po ndodh. 716 00:32:31,710 --> 00:32:35,860 Mund të marrim një vullnetar të shpejtë për të bërë diçka të ndodhë? 717 00:32:35,860 --> 00:32:36,360 Eja up. 718 00:32:36,360 --> 00:32:37,020 Si e keni emrin? 719 00:32:37,020 --> 00:32:37,445 >> PANCHO: Pancho. 720 00:32:37,445 --> 00:32:38,361 >> DAVID J. Malan: Pacho? 721 00:32:38,361 --> 00:32:39,609 Eja up. 722 00:32:39,609 --> 00:32:42,150 Pasi ju merrni deri këtu, kjo është do të jetë shumë underwhelming, 723 00:32:42,150 --> 00:32:44,060 por kjo është më interesante se mua shtypur atë. 724 00:32:44,060 --> 00:32:49,007 Nëse ju doni të shkoni përpara dhe lloji juaj emri, kam bërë këtë program vetëm për ty. 725 00:32:49,007 --> 00:32:49,840 Vetëm shkruani emrin tuaj. 726 00:32:49,840 --> 00:32:52,380 727 00:32:52,380 --> 00:32:53,900 Enter. 728 00:32:53,900 --> 00:32:54,489 Wonderful. 729 00:32:54,489 --> 00:32:55,780 Të gjithë të drejtë, ju faleminderit shumë. 730 00:32:55,780 --> 00:32:56,708 >> PANCHO: Faleminderit shumë. 731 00:32:56,708 --> 00:32:57,636 >> DAVID J. Malan: OK. 732 00:32:57,636 --> 00:32:59,028 >> [Duartrokitje] 733 00:32:59,028 --> 00:33:00,884 734 00:33:00,884 --> 00:33:01,840 >> Kjo ishte shumë i sjellshëm. 735 00:33:01,840 --> 00:33:03,145 Këtu ju Go. 736 00:33:03,145 --> 00:33:03,770 Çfarë bëjmë ne? 737 00:33:03,770 --> 00:33:05,930 Pra, ne më në fund, të paktën, bëri ky program dinamik. 738 00:33:05,930 --> 00:33:08,400 Tani është ende sigurisht nga të projektimit underwhelming, 739 00:33:08,400 --> 00:33:11,480 por ne fund kemi aftësinë tani për të shkruar kodin më parë, shumë 740 00:33:11,480 --> 00:33:13,770 si autorët e printf, dhe pastaj dinamike 741 00:33:13,770 --> 00:33:17,550 të përshtatur të bazuar në të dhëna që janë dorëzuar, ose nga programues, 742 00:33:17,550 --> 00:33:20,610 ose nga njeriu i cili është në fakt bashkëveprojmë me programin. 743 00:33:20,610 --> 00:33:22,990 Pra, le të vërtetë të përpiqet tani për të bërë një konstruktet disa të tjera 744 00:33:22,990 --> 00:33:26,625 dhe të shohim nëse ne nuk mund të bëjë programet vetë më të sofistikuara. 745 00:33:26,625 --> 00:33:29,250 Pra, le të shkojnë përpara dhe në vend të shkrim këtë një nga zeroja, 746 00:33:29,250 --> 00:33:31,540 Unë jam duke shkuar për të shkuar në e sotme kod burim, dhe e gjithë kjo 747 00:33:31,540 --> 00:33:34,290 është në dispozicion në Sigurisht e faqen e internetit, dhe ju mund të drag and drop atë 748 00:33:34,290 --> 00:33:36,590 në mjedisin tuaj vijnë të premten një herë problemin 749 00:33:36,590 --> 00:33:38,506 set 1 ju jep udhëzime, ose ju mund të 750 00:33:38,506 --> 00:33:41,200 bëjë atë në rreshtin e komandave si mirë, por më shumë për të ardhur në p vendosur 1. 751 00:33:41,200 --> 00:33:44,940 >> Le të shohim se çfarë është në këtë program quajtur këtu, adder dot c. 752 00:33:44,940 --> 00:33:47,970 Tani unë e kam komentuar tashmë ajo, por çfarë ka të re? 753 00:33:47,970 --> 00:33:51,230 Në shikim të parë, çfarë linjë i kodit është absolutisht e re? 754 00:33:51,230 --> 00:33:53,930 755 00:33:53,930 --> 00:33:56,780 Ndoshta jo krejtësisht panjohura tani. 756 00:33:56,780 --> 00:33:58,417 >> Audienca: [padëgjueshme] 757 00:33:58,417 --> 00:34:00,250 DAVID J. Malan: Yeah, kështu int x është e barabartë me të n. 758 00:34:00,250 --> 00:34:03,760 Ne kurrë nuk kemi parë ndonjë të këtij para, por int është ndoshta 759 00:34:03,760 --> 00:34:08,179 simbol për çfarë lloj të ndryshueshme, [? nga?] një numër të plotë. 760 00:34:08,179 --> 00:34:09,040 Pra, int për numër të plotë. 761 00:34:09,040 --> 00:34:11,420 Kjo është vetëm duke qenë më ngjeshur. x është vetëm arbitrare. 762 00:34:11,420 --> 00:34:13,920 x dhe y dhe z janë akoma shumë e arsyeshme për numrat, 763 00:34:13,920 --> 00:34:16,790 por në përgjithësi ne do të përdorim fjalë dikur Programet tona të merrni më komplekse. 764 00:34:16,790 --> 00:34:18,940 Get int, natyrisht, shumë si string get, 765 00:34:18,940 --> 00:34:21,629 është ndoshta do të merrni një int nga përdoruesit, 766 00:34:21,629 --> 00:34:23,670 dhe pastaj ne jemi duke shkuar në bëjë të njëjtën gjë me y. 767 00:34:23,670 --> 00:34:27,610 Dhe me sa duket, edhe pse kjo linjë e fundit, 24, duket më komplekse, 768 00:34:27,610 --> 00:34:32,679 ajo do të thotë shumën e këtij dhe kjo është kjo gjë tjetër. 769 00:34:32,679 --> 00:34:35,840 >> Dhe për qind njoftim i ndoshta tregon se çfarë? 770 00:34:35,840 --> 00:34:38,190 Çfarë roli ka qind Unë me sa duket shërbejnë? 771 00:34:38,190 --> 00:34:40,739 772 00:34:40,739 --> 00:34:41,719 Kjo është vetëm placeholders. 773 00:34:41,719 --> 00:34:42,219 E drejtë? 774 00:34:42,219 --> 00:34:45,149 Përqindja s ishte për varg, për qind i është për numër të plotë. 775 00:34:45,149 --> 00:34:47,690 Nuk do të jetë për qind f për lundrues vlerë pikë, e cila 776 00:34:47,690 --> 00:34:49,273 është vetëm një numër me një pikë dhjetore. 777 00:34:49,273 --> 00:34:50,590 Me fjalë të tjera, një numër i vërtetë. 778 00:34:50,590 --> 00:34:55,270 Pra, le të vërtetë të hartojnë këtë program të vërtetë të shpejtë dhe të bëjnë kuçedër. 779 00:34:55,270 --> 00:34:57,962 Uh. 780 00:34:57,962 --> 00:34:58,670 Mundësi e mirë. 781 00:34:58,670 --> 00:35:02,970 Pra vini re këtu, gjithë këtë kohë përdoruesit e mia emër për këtë llogari është jharvard. 782 00:35:02,970 --> 00:35:06,620 Unë jam në CS50 IDE, aka IDE50. 783 00:35:06,620 --> 00:35:11,030 Dhe tani në ngjyrë blu këtu, është një përmendje, por nga mjedisi, e ku jam unë. 784 00:35:11,030 --> 00:35:16,050 Dhe në fakt, në qoftë se unë zoom deri në krye këtu, vini re se unë kam një IDE50 785 00:35:16,050 --> 00:35:19,490 dhe unë shoh këtë fjalë, në qoftë se ju lloj i kthejnë kokën në anën, workspace. 786 00:35:19,490 --> 00:35:23,890 Në një fjalë, fakti se Unë jam duke parë Workspace Tilde slash 787 00:35:23,890 --> 00:35:26,910 do të thotë se në këtë tekst Mjedisi i bazuar komandë, 788 00:35:26,910 --> 00:35:32,300 Unë jam në tekst ekuivalentin e ky grafik dosje këtu. 789 00:35:32,300 --> 00:35:35,730 Kështu që, kur unë bëj dot plagë adder, është thënë se nuk di të frenojë 790 00:35:35,730 --> 00:35:37,372 për të bërë synuar kuçedër ndalesë. 791 00:35:37,372 --> 00:35:39,830 Unë nuk e di se çka do të thotë, por kjo është e keqe për disa arsye. 792 00:35:39,830 --> 00:35:43,310 Asnjë file apo directory e tillë është edhe më i qartë. 793 00:35:43,310 --> 00:35:45,670 Ku është ajo atëherë? 794 00:35:45,670 --> 00:35:47,820 Bazuar në ku unë klikuar për të hapur dosjen herët. 795 00:35:47,820 --> 00:35:49,442 Ku mund të jetë ai? 796 00:35:49,442 --> 00:35:52,050 >> Kjo është ndoshta në burim një w, për të mërkurën, 797 00:35:52,050 --> 00:35:53,960 dhe unë mund të shoh atë, me të vërtetë, në qoftë se unë të hapur se deri. 798 00:35:53,960 --> 00:35:57,220 Nuk është nepërkë dot c, por në ky mjedis tekst me bazë, 799 00:35:57,220 --> 00:35:59,380 përsëri, unë duhet të jetë super i qartë. 800 00:35:59,380 --> 00:36:03,950 Nëse unë dua të ndryshojë directories në burim një e mërkurë, unë duhet të shkruani, 801 00:36:03,950 --> 00:36:07,210 Hapësira cd një burim E mërkurë hyjnë dhe tani 802 00:36:07,210 --> 00:36:09,810 Ndryshimet e mia shpejtë për më jepni një sinjal vizuale që 803 00:36:09,810 --> 00:36:12,330 Unë jam, me të vërtetë, në vende të tjera në mjedisin tim, 804 00:36:12,330 --> 00:36:15,710 por tani unë mund të bëni adder, me sa duket për të punuar, 805 00:36:15,710 --> 00:36:18,190 dot çaj nëpërkë, më jepni një numër të plotë. 806 00:36:18,190 --> 00:36:19,080 Një. 807 00:36:19,080 --> 00:36:20,070 Dy. 808 00:36:20,070 --> 00:36:21,630 Shuma e një dhe dy është tre. 809 00:36:21,630 --> 00:36:24,140 Por në qoftë se unë nuk do të bashkëpunojnë, le të shohim se çfarë të merrni int bën. 810 00:36:24,140 --> 00:36:25,200 Më jepni një numër të plotë. 811 00:36:25,200 --> 00:36:26,590 Jo. 812 00:36:26,590 --> 00:36:27,350 Rigjykuar. 813 00:36:27,350 --> 00:36:29,060 OK. 814 00:36:29,060 --> 00:36:30,520 Gjobë. 815 00:36:30,520 --> 00:36:32,130 50. 816 00:36:32,130 --> 00:36:32,680 50. 817 00:36:32,680 --> 00:36:33,010 Dakord. 818 00:36:33,010 --> 00:36:34,055 Pra, ajo më në fund bashkëpunon. 819 00:36:34,055 --> 00:36:36,430 Dhe kjo është një nga më të funksionalitetin që këto funksione 820 00:36:36,430 --> 00:36:37,760 mund të ketë ndërtuar në për ju. 821 00:36:37,760 --> 00:36:43,330 >> Pra, brenda zbatimit i merrni int, çfarë programimit 822 00:36:43,330 --> 00:36:47,990 ndërtuar nga java e fundit është ndoshta në atje për të detyruar këtë sjellje të revizionit, 823 00:36:47,990 --> 00:36:49,962 rigjykuar, rigjykuar? 824 00:36:49,962 --> 00:36:51,670 Po, nuk ka ndoshta një lloj lak. 825 00:36:51,670 --> 00:36:54,160 Ajo do të duken sintaksore ndryshe nga blloqet e para së, 826 00:36:54,160 --> 00:36:55,880 por kjo është me të vërtetë çfarë është brenda file. 827 00:36:55,880 --> 00:36:58,505 Dhe në një kohë disa javë ne do të në fakt duken në bibliotekë CS50 828 00:36:58,505 --> 00:37:02,000 si për atë që është brenda, por ka një lak imponuar pikërisht këtë. 829 00:37:02,000 --> 00:37:04,840 >> Le të luajë një budalla pak lojë këtu me këtë skedë. 830 00:37:04,840 --> 00:37:06,550 Gjendja zero dot c. 831 00:37:06,550 --> 00:37:08,960 Ne jemi vetëm duke shkuar për të në përgjithësi fillojë numërimi në zero. 832 00:37:08,960 --> 00:37:11,220 Dhe unë mbaj Scroll kaluarën disa gjëra në krye. 833 00:37:11,220 --> 00:37:15,390 Në blu këtu, demarkuar me të gjitha e këtyre yjeve dhe godet, 834 00:37:15,390 --> 00:37:17,310 ata prej jush që programit para, çfarë është ajo? 835 00:37:17,310 --> 00:37:18,690 Pse nuk kemi mbajtur skipping mbi të? 836 00:37:18,690 --> 00:37:19,110 Çfarë? 837 00:37:19,110 --> 00:37:19,490 >> Audienca: Kjo është një koment. 838 00:37:19,490 --> 00:37:19,800 >> DAVID J. Malan: Po. 839 00:37:19,800 --> 00:37:20,633 Është vetëm një koment. 840 00:37:20,633 --> 00:37:24,160 Kjo është një koment për njerëzit për të lexuar, që në rastin tonë, 841 00:37:24,160 --> 00:37:27,120 na tregon se çfarë emrin e file është, i cili shkroi atë, dhe atë që bën, 842 00:37:27,120 --> 00:37:28,610 kështu që ju nuk keni për të lexuar përmes kodit 843 00:37:28,610 --> 00:37:30,110 të dini se çfarë kjo skedë është mbi të gjitha. 844 00:37:30,110 --> 00:37:33,110 Është vetëm një përshkrim, por funksionalisht është e parëndësishme. 845 00:37:33,110 --> 00:37:35,930 Dhe unë mund edhe të fshini atë nga Dosja ime dhe nuk ka asnjë ndikim. 846 00:37:35,930 --> 00:37:38,740 Linjat lëng janë këto së pari dy këtu, tani. 847 00:37:38,740 --> 00:37:41,405 pavlefshëm int kryesor është ekuivalente e kur tona flamurin e gjelbër klikuar, 848 00:37:41,405 --> 00:37:44,030 kështu që ne jemi duke shkuar për të lënë që të jetë për sot, dhe ne do të kthehen, 849 00:37:44,030 --> 00:37:46,940 përfundimisht, si për atë int dhe i pavlefshëm janë, por tani, 850 00:37:46,940 --> 00:37:49,500 vini re atë që unë kam bërë edhe këtu, ju gjithashtu mund të, 851 00:37:49,500 --> 00:37:51,736 në qoftë se ju keni një në përputhje komentoni, nëse keni 852 00:37:51,736 --> 00:37:54,670 një mendim ju dëshironi të ndani për një linjë të veçantë të kodit, 853 00:37:54,670 --> 00:37:58,910 konventë në C është për të bërë plagë çaj, dhe pastaj disa fjalë ngjeshur, 854 00:37:58,910 --> 00:38:01,500 jo një fjali të plotë, përgjithësisht jo një paragraf, 855 00:38:01,500 --> 00:38:05,310 që vetëm shpjegon për ju, ose juaj TF, ose lexuesit apo kolegët e tjerë, 856 00:38:05,310 --> 00:38:06,990 Çfarë është duke bërë kodin tuaj. 857 00:38:06,990 --> 00:38:10,150 Pra, në vend se duhet të shikoni në këtë dhe të konkludoj nga linjat 858 00:38:10,150 --> 00:38:12,550 nëntë dhe 10, çfarë është kjo duke bërë, në përputhje tetë 859 00:38:12,550 --> 00:38:14,945 Unë vetëm të japë një koment për kërkojë nga shfrytëzuesi për një numër të plotë, 860 00:38:14,945 --> 00:38:17,820 atëherë unë nuk duhet të mendoj shumë e vështirë për çfarë linjat e nëntë dhe 10 janë. 861 00:38:17,820 --> 00:38:19,720 Unë vetëm e di se kjo është ajo kolektivisht ata po bëjnë. 862 00:38:19,720 --> 00:38:20,460 >> Si? 863 00:38:20,460 --> 00:38:22,060 E pra, këtu është të shpejtë. 864 00:38:22,060 --> 00:38:23,610 Ja marrjen e int. 865 00:38:23,610 --> 00:38:25,984 Dhe në bazë të mëparshme sjellje, ajo duket si get int 866 00:38:25,984 --> 00:38:29,080 është mjaft i zgjuar për të siguruar që njerëzore bashkëpunon dhe i jep atë 867 00:38:29,080 --> 00:38:30,090 nje numer i plote. 868 00:38:30,090 --> 00:38:32,270 Por tani ne e shohim këtë. 869 00:38:32,270 --> 00:38:33,740 Dhe kjo është e ngjashme me Scratch. 870 00:38:33,740 --> 00:38:36,140 Unë jam duke pretenduar se unë jam analizuar kontributin e përdoruesit, 871 00:38:36,140 --> 00:38:39,050 por disi të pasaktë. 872 00:38:39,050 --> 00:38:43,200 Dhe kjo me sa duket në C është se si ne shprehim një rast tjetër, një degë, 873 00:38:43,200 --> 00:38:46,320 një pirun në rrugë, por unë thonë disi të pasaktë. 874 00:38:46,320 --> 00:38:50,470 Çfarë është bug në këtë program? 875 00:38:50,470 --> 00:38:51,610 Rreth mbështetur më tej? 876 00:38:51,610 --> 00:38:52,223 Po. 877 00:38:52,223 --> 00:38:53,150 >> Audienca: [padëgjueshme] zero. 878 00:38:53,150 --> 00:38:54,025 >> DAVID J. Malan: Po. 879 00:38:54,025 --> 00:38:57,630 Pra, nëse unë lloji në zero, le të konsiderojmë pikërisht se rasti rasti, apo qoshe, 880 00:38:57,630 --> 00:38:58,450 nëse ju do. 881 00:38:58,450 --> 00:39:02,790 Pra, nëse unë lloji në zero, të cilat i blloqe do të duket të rrëmbyer atë? 882 00:39:02,790 --> 00:39:04,660 If apo tjetër? 883 00:39:04,660 --> 00:39:07,340 Tjetër, dhe kjo do të thotë, ju kap një numër negativ. 884 00:39:07,340 --> 00:39:10,476 Dhe me të vërtetë, zero nuk është menduar të jetë pozitiv ose negativ, 885 00:39:10,476 --> 00:39:11,850 dhe kështu që do të jetë gabimisht. 886 00:39:11,850 --> 00:39:12,930 Kjo do të jetë një bug. 887 00:39:12,930 --> 00:39:14,580 Pra, si mund ta fix this? 888 00:39:14,580 --> 00:39:16,360 Dikush që nuk ka programuar më parë? 889 00:39:16,360 --> 00:39:16,570 A ju want-- 890 00:39:16,570 --> 00:39:17,480 >> Audienca: [padëgjueshme] 891 00:39:17,480 --> 00:39:17,990 >> DAVID J. Malan: retracting? 892 00:39:17,990 --> 00:39:18,570 >> Audienca: [padëgjueshme] 893 00:39:18,570 --> 00:39:18,930 >> DAVID J. Malan: Oh, ju keni? 894 00:39:18,930 --> 00:39:20,350 Dikush që nuk ka programuar më parë. 895 00:39:20,350 --> 00:39:21,750 Dëshironi të provoni dorën tuaj në kjo, në këmisha e kuqe? 896 00:39:21,750 --> 00:39:22,600 Eja up. 897 00:39:22,600 --> 00:39:25,320 Oh yeah, eja lart, në qoftë se ju nuk do mend. 898 00:39:25,320 --> 00:39:27,586 Pra, kurrë nuk ka programuar para, çfarë është emri juaj? 899 00:39:27,586 --> 00:39:28,210 Lauren: Lauren. 900 00:39:28,210 --> 00:39:29,626 DAVID J. Malan: Lauren, të gjithë të drejtë. 901 00:39:29,626 --> 00:39:31,150 Pra, të rregulluar këtë bug për ne. 902 00:39:31,150 --> 00:39:35,070 Ju nuk keni parë C, me sa duket, dhe ndoshta asnjë gjuhë tjetër. 903 00:39:35,070 --> 00:39:38,380 Pra, të rregulluar këtë program për ne. 904 00:39:38,380 --> 00:39:39,100 Nice to meet ya. 905 00:39:39,100 --> 00:39:39,615 Nuk ka presion. 906 00:39:39,615 --> 00:39:40,156 Lauren: Po. 907 00:39:40,156 --> 00:39:43,350 908 00:39:43,350 --> 00:39:46,270 >> DAVID J. Malan: Por, përsëri, në qoftë se kjo rrezikoj shkon sipas planit, 909 00:39:46,270 --> 00:39:48,350 takeaway këtu do të të jetë, vetëm një herë, për të filluar 910 00:39:48,350 --> 00:39:51,080 në njoftim modelet dhe konkludoj nga sintaksë ekzistuese 911 00:39:51,080 --> 00:39:55,420 si tjetër ju mund të shprehë veten, nuk ka pun me qëllim, në mënyrë që 912 00:39:55,420 --> 00:39:58,410 për të kapur disa skenar shtesë. 913 00:39:58,410 --> 00:39:59,603 Pra, ne jemi duke thënë tjetër në qoftë se. 914 00:39:59,603 --> 00:40:04,040 915 00:40:04,040 --> 00:40:05,230 printf, mirë. 916 00:40:05,230 --> 00:40:09,120 Dhe vini re me CS50 IDE, dhe IDE frankly-- 917 00:40:09,120 --> 00:40:11,110 qëndron për Integruar Zhvillimi Mjedisit. 918 00:40:11,110 --> 00:40:14,110 Kjo është vetëm një mënyrë e sofistikuar për të thënë një program që ju ndihmon të programit. 919 00:40:14,110 --> 00:40:16,779 Ai e bën përdorues miqësore gjëra të tilla si kur ju shkruani një kllapa, 920 00:40:16,779 --> 00:40:18,320 ajo automatikisht ju jep të tjera. 921 00:40:18,320 --> 00:40:20,760 Supozimi është se ju jeni përfundimisht do të duan të tipit që, 922 00:40:20,760 --> 00:40:22,400 dhe ajo gjithashtu e bën atë me citate. 923 00:40:22,400 --> 00:40:24,190 >> Kështu që unë doja linjë 23. 924 00:40:24,190 --> 00:40:26,400 99% e rrugës atje. 925 00:40:26,400 --> 00:40:29,920 Dikush duan të bie në me një tip? 926 00:40:29,920 --> 00:40:31,420 Kam dëgjuar pikëpresje nga publiku. 927 00:40:31,420 --> 00:40:32,080 Të mirë. 928 00:40:32,080 --> 00:40:33,260 Kështu që kompleton atë. 929 00:40:33,260 --> 00:40:37,930 Dhe tani, unë vetëm duhet pak tmerr me linjë 21. 930 00:40:37,930 --> 00:40:41,370 Si duam të shprehim kjo? 931 00:40:41,370 --> 00:40:43,370 Çfarë pyetje duam për të kërkuar, mendoni ju? 932 00:40:43,370 --> 00:40:46,870 933 00:40:46,870 --> 00:40:50,330 Pra, më parë ne ngremë pyetjen: nëse n është më i madh se zero, e bëjnë këtë. 934 00:40:50,330 --> 00:40:51,870 Tjetër, të bëjë atë. 935 00:40:51,870 --> 00:40:54,317 Pra, ne duhet të zgjidhni një pyetje të pyesni këtu. 936 00:40:54,317 --> 00:40:55,192 Audienca: [padëgjueshme] 937 00:40:55,192 --> 00:40:56,530 DAVID J. Malan: Mirë. 938 00:40:56,530 --> 00:40:58,290 Pra, nëse n është e barabartë me zero. 939 00:40:58,290 --> 00:41:01,140 940 00:41:01,140 --> 00:41:02,100 Shkëlqyer. 941 00:41:02,100 --> 00:41:03,080 Pra, le të ndalemi këtu. 942 00:41:03,080 --> 00:41:04,850 Thank you so much për braving këtë. 943 00:41:04,850 --> 00:41:10,890 Më lejoni t'ju jap një pak të merituar top stresi, ndoshta aty. 944 00:41:10,890 --> 00:41:11,900 Pra, ne jemi pothuajse atje. 945 00:41:11,900 --> 00:41:14,790 Në fakt, Lauren, në qoftë se ju nuk e bëni Mendja, më lejoni të bëj një shkulje këtu, 946 00:41:14,790 --> 00:41:17,850 vetëm që të jenë në përputhje edhe me ajo që pamë në Scratch, çfarë 947 00:41:17,850 --> 00:41:21,080 nuk dua të bëj me linjat 21 dhe 24, vetëm bazuar përsëri 948 00:41:21,080 --> 00:41:23,290 se si ne e bëmë këtë në Scratch, ndoshta? 949 00:41:23,290 --> 00:41:24,230 >> Audienca: Leviz atë. 950 00:41:24,230 --> 00:41:25,605 >> DAVID J. Malan: Yeah, lëvizin atë lart. 951 00:41:25,605 --> 00:41:30,260 Pra, kushti tjetër, i treti, apo katërt, apo të pestë, apo degë përfundimtar, 952 00:41:30,260 --> 00:41:34,100 duhet me të vërtetë të vijnë më pas, dhe kjo është vetëm nga konventa, 953 00:41:34,100 --> 00:41:36,047 vetëm për shkak se në qoftë se ju do. 954 00:41:36,047 --> 00:41:37,380 Kështu që unë kam nevojë për të bërë këtë shkulje. 955 00:41:37,380 --> 00:41:39,660 Dhe unë duhet të vënë My mbajtëse kaçurrel përsëri këtu. 956 00:41:39,660 --> 00:41:42,700 Dhe tani, ky program do të përpilojë. 957 00:41:42,700 --> 00:41:46,140 Ne jemi kaq afër, por ka një bug shumë, shumë delikate. 958 00:41:46,140 --> 00:41:47,200 Le të shohim se çfarë ndodh. 959 00:41:47,200 --> 00:41:49,660 >> Së pari, më lejoni të shkoj përpara dhe të zoom jashtë. 960 00:41:49,660 --> 00:41:53,405 Unë jam duke shkuar për të shkuar përpara dhe shkruani bëjnë kusht zero. 961 00:41:53,405 --> 00:41:55,070 Oh, kam gënjyer. 962 00:41:55,070 --> 00:41:58,760 Tani është përpilues në fakt goxha i zgjuar. 963 00:41:58,760 --> 00:42:00,950 Dhe unë nuk e kuptojnë të vërtetë është mesazh gabimi. 964 00:42:00,950 --> 00:42:04,310 Duke përdorur rezultatin e një detyre si kusht pa kllapa, 965 00:42:04,310 --> 00:42:05,740 është me sa duket e keqe. 966 00:42:05,740 --> 00:42:07,100 Por çfarë do të thotë? 967 00:42:07,100 --> 00:42:10,860 >> E pra përsëri, duke kërkuar për modele në kodin që kemi parë më parë, 968 00:42:10,860 --> 00:42:16,640 ajo që është linja e 17 të vërtetë duke bërë, edhe pse Lauren destinuara pak 969 00:42:16,640 --> 00:42:18,790 ndryshe? 970 00:42:18,790 --> 00:42:19,290 Po. 971 00:42:19,290 --> 00:42:21,565 >> Audienca: [padëgjueshme] 972 00:42:21,565 --> 00:42:22,440 DAVID J. Malan: Po. 973 00:42:22,440 --> 00:42:26,610 Pra mos harroni shenjën e barazimit, me sa duket siç e kemi përdorur atë më parë, nuk është e barabartë. 974 00:42:26,610 --> 00:42:29,240 Detyrë e saj, nga e djathta në të majtë. 975 00:42:29,240 --> 00:42:33,810 Pra, të vijë 17 në këtë moment është një kusht, dhe kjo është 976 00:42:33,810 --> 00:42:37,890 ekzekutimin kodin brenda kllapave, por kur se kodi ekzekuton, 977 00:42:37,890 --> 00:42:42,140 çfarë po ndodh me vlerën e zero? 978 00:42:42,140 --> 00:42:45,250 Çfarë po ndodh me vlerën e n? 979 00:42:45,250 --> 00:42:46,810 Bëhet zero. 980 00:42:46,810 --> 00:42:50,520 Pra, nëse n po bëhet zero, dhe përsëri, si në javën e kaluar, 981 00:42:50,520 --> 00:42:54,690 ne përgjithësi themi se zero është i rremë dhe njëra është e vërtetë, 982 00:42:54,690 --> 00:42:57,410 ose po është një dhe nuk është zero. 983 00:42:57,410 --> 00:42:59,590 Aq e vërtetë dhe të rreme, një dhe 0. 984 00:42:59,590 --> 00:43:06,090 Nëse n si i linjës 17 ka qenë duke pasur parasysh vlerën 0, është zero e vërtetë? 985 00:43:06,090 --> 00:43:06,590 Jo. 986 00:43:06,590 --> 00:43:08,280 Nga përkufizimi, zero është e rreme. 987 00:43:08,280 --> 00:43:10,860 Kjo është konventa ne jemi do të kapem për të lëvizur përpara. 988 00:43:10,860 --> 00:43:17,320 Pra, do linjat 18, 19, dhe 20 zbatohen kurrë tani, logjikisht? 989 00:43:17,320 --> 00:43:18,320 Ato nuk mund. 990 00:43:18,320 --> 00:43:21,640 Pra, ne ngremë pyetjen por jo mjaft saktësisht, 991 00:43:21,640 --> 00:43:25,620 dhe ju nuk do të dinë këtë nëse ju keni parë atë, zgjidhje në C 992 00:43:25,620 --> 00:43:29,610 është kur ju doni të shprehin barazia, ju thoni barabartë barabartë. 993 00:43:29,610 --> 00:43:33,140 Pra shenjë të barabartë është përdorur tashmë me detyrë, nga e djathta në të majtë. 994 00:43:33,140 --> 00:43:35,110 Është e barabartë me të barabartë do të thotë është e barabartë. 995 00:43:35,110 --> 00:43:37,950 Dhe në qoftë se jeni të vërtetë dëshironi mendjen tuaj të jetë vendosur, në JavaScript dhe PHP, 996 00:43:37,950 --> 00:43:40,490 ka është e barabartë me të barabartë të barabartë, të cilat do të thotë diçka tjetër krejt, 997 00:43:40,490 --> 00:43:41,990 por ne do të merrni për të që para se të gjatë. 998 00:43:41,990 --> 00:43:45,760 >> Pra, kjo është një fix thjeshtë, por të kuptojë super të lehtë për të bërë këtë gabim, 999 00:43:45,760 --> 00:43:48,700 dhe pastaj pyes veten dhe lufta për minuta, nëse jo një orë, 1000 00:43:48,700 --> 00:43:51,490 pse është kodi im nuk ekzekutimin si kam ndërmend? 1001 00:43:51,490 --> 00:43:54,140 Kjo është për shkak se ju nuk e tregoni kjo pikërisht atë që ju thotë. 1002 00:43:54,140 --> 00:43:56,450 Kështu që ishte pothuajse të përsosur, dhe ajo ishte e madhe 1003 00:43:56,450 --> 00:44:00,760 që ne stumbled nëpër këto dy Vogël gjëra sepse tani në qoftë se ne të rregulluar ato, 1004 00:44:00,760 --> 00:44:06,240 dhe unë do të bëjë kusht zero dot çaj kusht zero, 1005 00:44:06,240 --> 00:44:07,490 Unë do të doja një numër të plotë, ju lutem. 1006 00:44:07,490 --> 00:44:08,090 Le të shohim. 1007 00:44:08,090 --> 00:44:09,160 Jo. 1008 00:44:09,160 --> 00:44:10,740 Ajo do të detyrojë mua për të bërë atë. 1009 00:44:10,740 --> 00:44:11,990 Pra, 42. 1010 00:44:11,990 --> 00:44:13,590 I kap një numër pozitiv. 1011 00:44:13,590 --> 00:44:16,470 Deri tani si mund të provojë ky program i saktë? 1012 00:44:16,470 --> 00:44:19,990 Nëse ju jeni një matematikan, ju nuk mund të me të vërtetë të provuar kjo nga gjykimi dhe gabim, 1013 00:44:19,990 --> 00:44:20,490 e drejtë? 1014 00:44:20,490 --> 00:44:23,180 Ju nuk mund vetëm dëshmi nga shembull, por të paktën 1015 00:44:23,180 --> 00:44:25,494 si një programues ne nuk jemi do të përpiqen për të provuar për tani 1016 00:44:25,494 --> 00:44:27,660 se kjo është në fakt i saktë, por unë duhet ndoshta 1017 00:44:27,660 --> 00:44:29,470 testuar disa raste përfaqësuese. 1018 00:44:29,470 --> 00:44:31,070 >> Unë kam testuar 42. 1019 00:44:31,070 --> 00:44:33,030 Unë mund të provuar 43. 1020 00:44:33,030 --> 00:44:34,910 Unë mund të provuar 44. 1021 00:44:34,910 --> 00:44:35,640 Testi 45. 1022 00:44:35,640 --> 00:44:36,140 E drejtë? 1023 00:44:36,140 --> 00:44:37,860 Por unë mund të bëjë këtë një kohë vërtet të gjatë. 1024 00:44:37,860 --> 00:44:39,925 Çfarë do të jetë disa më shumë raste interesante për të provoni? 1025 00:44:39,925 --> 00:44:41,050 Audienca: [padëgjueshme] zero. 1026 00:44:41,050 --> 00:44:41,740 DAVID J. Malan: Pra, zero. 1027 00:44:41,740 --> 00:44:42,297 Sigurisht. 1028 00:44:42,297 --> 00:44:44,880 Dhe të mirë, ne kemi marrë atë në këtë kohë, në sajë të kodit të ri lauren. 1029 00:44:44,880 --> 00:44:46,213 Çfarë është një tjetër rast i mirë për të provoni? 1030 00:44:46,213 --> 00:44:47,320 Audienca: një Negativ. 1031 00:44:47,320 --> 00:44:50,070 >> DAVID J. Malan: një Negativ, dhe ndoshta diçka pak më të mëdha, 1032 00:44:50,070 --> 00:44:52,617 kështu që ndoshta negative 42, por në përgjithësi, kur 1033 00:44:52,617 --> 00:44:54,450 testimi programet tuaja duke shkuar përpara, ju jeni 1034 00:44:54,450 --> 00:44:56,325 do të doni të mendoni për veten, si ajo që 1035 00:44:56,325 --> 00:44:58,050 janë rastet themelore ndryshme. 1036 00:44:58,050 --> 00:45:01,720 Dhe unë guxoj të them një rast negativ, një rast pozitiv, dhe një rast zero 1037 00:45:01,720 --> 00:45:03,365 shumë e shumë raunde këto jashtë. 1038 00:45:03,365 --> 00:45:04,990 Le të shikojmë në një variant të kësaj pse. 1039 00:45:04,990 --> 00:45:06,930 Kushtet e një. 1040 00:45:06,930 --> 00:45:11,224 Kjo është një zgjidhje e drejtë këtu, kështu që ju do të shihni dy dhe në internet, 1041 00:45:11,224 --> 00:45:13,390 në qoftë se ju ecni nëpër walkthroughs, do të në përgjithësi 1042 00:45:13,390 --> 00:45:18,090 ardhura këto hap pas hapi deri sa ne marrë saktësisht qasjen e duhur. 1043 00:45:18,090 --> 00:45:20,070 Po në qoftë se ne të kërkuar për të pyetur dy pyetje në të njëjtën kohë? 1044 00:45:20,070 --> 00:45:22,200 >> Më lejoni të hapur këtë vend. 1045 00:45:22,200 --> 00:45:26,740 Jo-switch, për arsye ne do të shohim një tjetër kohë. 1046 00:45:26,740 --> 00:45:29,610 Çfarë ka të re sintaksore këtu? 1047 00:45:29,610 --> 00:45:32,760 Unë jam duke luajtur një lojë ku kompjuteri është thënë 1048 00:45:32,760 --> 00:45:35,550 mua, jepni një numër të plotë ndërmjet një dhe 10, 1049 00:45:35,550 --> 00:45:37,180 dhe atëherë unë jam duke gjykuar kontributin e përdoruesit. 1050 00:45:37,180 --> 00:45:39,180 Në anglisht, në bazë të kodin ju shihni këtu 1051 00:45:39,180 --> 00:45:41,530 në ngjyrë blu, çfarë është ky program duke bërë? 1052 00:45:41,530 --> 00:45:44,256 1053 00:45:44,256 --> 00:45:46,380 Audienca: [padëgjueshme] kap një numër i madh apo i vogël. 1054 00:45:46,380 --> 00:45:46,484 DAVID J. Malan: Po. 1055 00:45:46,484 --> 00:45:49,450 Kjo është vetëm gjykimin nëse I kap një të madh, apo të mesme, 1056 00:45:49,450 --> 00:45:53,900 ose numër i vogël i bazuar në një shumë përkufizim arbitrar e vogla, të mesme, 1057 00:45:53,900 --> 00:45:58,510 dhe të mëdha këtu, por njoftim Sintaksa që është e re është kjo. 1058 00:45:58,510 --> 00:46:02,340 Nuk ka më pak se ose e barabartë me int nënshkruajë ose më e madhe se ose e barabartë me nënshkruajë, 1059 00:46:02,340 --> 00:46:05,430 ku njëri është mbi tjetrën, që ju mund të shprehin në si Microsoft Word. 1060 00:46:05,430 --> 00:46:08,180 Pra, në një gjuhë programimi ju në mënyrë tipike vetëm të bëjë dy karaktere, 1061 00:46:08,180 --> 00:46:09,450 njëri pas tjetrit. 1062 00:46:09,450 --> 00:46:12,695 Dhe çfarë e bën këtë me siguri përfaqësojnë, simbol të ampersand. 1063 00:46:12,695 --> 00:46:13,570 Audienca: [padëgjueshme] 1064 00:46:13,570 --> 00:46:13,680 DAVID J. Malan: Po. 1065 00:46:13,680 --> 00:46:16,910 Kjo thjesht do të thotë dhe për shkak të rezulton se autorët e C 1066 00:46:16,910 --> 00:46:19,120 përdorur një simbol të vetëm, që ju mund të mendoni 1067 00:46:19,120 --> 00:46:22,430 do të jetë e përkryer për nocionin e dhe, është përdorur tashmë, 1068 00:46:22,430 --> 00:46:27,300 simbol kështu simbol fakt kap rastin ne fakt duan. 1069 00:46:27,300 --> 00:46:30,610 >> Pra, tani le të pengohen të gjithë dy gjëra. 1070 00:46:30,610 --> 00:46:32,640 Më lejoni të shkoj përpara dhe të hapur një të tillë. 1071 00:46:32,640 --> 00:46:36,590 Diçka që është pak shqetësuese. 1072 00:46:36,590 --> 00:46:37,970 Pasaktësitë dot c. 1073 00:46:37,970 --> 00:46:40,260 Më lejoni të prezantoj dy gjëra këtu. 1074 00:46:40,260 --> 00:46:44,720 Një, njoftim se ne mund të bëjmë math, si vetëm si më parë kur 1075 00:46:44,720 --> 00:46:47,797 ne e bëmë plus nga dy numra, x dhe y. 1076 00:46:47,797 --> 00:46:49,380 Çfarë është ky program me sa duket duke bërë? 1077 00:46:49,380 --> 00:46:52,140 Unë nuk kam komentuar atë ende, dhe unë e kam futur për qind f, 1078 00:46:52,140 --> 00:46:55,720 por unë shpejt thënë më parë f qind do të thotë pika pluskuese 1079 00:46:55,720 --> 00:46:56,970 vlera, e cila është një numër reale. 1080 00:46:56,970 --> 00:46:59,520 Diçka me një decimal të pikë, e cila nuk është një numër të plotë. 1081 00:46:59,520 --> 00:47:02,270 Çfarë mendoni ky program është duke u përpjekur për të treguar mua në ekran? 1082 00:47:02,270 --> 00:47:05,060 1083 00:47:05,060 --> 00:47:06,050 Po? 1084 00:47:06,050 --> 00:47:07,550 Audienca: Rezultati i një mbi 10. 1085 00:47:07,550 --> 00:47:07,780 DAVID J. Malan: Po. 1086 00:47:07,780 --> 00:47:09,680 Çfarë është rezultat i një të ndarë me 10. 1087 00:47:09,680 --> 00:47:12,721 E drejtë, sepse të gjithë ju kanë ndoshta rritur duke e ditur se njëri mbi 10 1088 00:47:12,721 --> 00:47:14,502 është ajo? 1089 00:47:14,502 --> 00:47:16,220 Po, kjo është vetëm 1/10 apo 0.1. 1090 00:47:16,220 --> 00:47:16,720 E drejtë? 1091 00:47:16,720 --> 00:47:19,010 Pra, le të shohim se çfarë kjo në fakt është. 1092 00:47:19,010 --> 00:47:21,010 Pra më lejoni të shkoj përpara dhe për të shpëtuar këtë. 1093 00:47:21,010 --> 00:47:21,970 Më lejoni të shkoj këtu poshtë. 1094 00:47:21,970 --> 00:47:26,360 Bëni pasaktësi dot plagë pasaktësi, dhe njoftim, gjithashtu, 1095 00:47:26,360 --> 00:47:29,380 në një mjedis Linux, ju nuk e bëni duhet të shkruani jashtë pasaktësi dhe të marrin 1096 00:47:29,380 --> 00:47:30,010 gjatë gjithë ditës. 1097 00:47:30,010 --> 00:47:32,910 Ajo në përgjithësi, në qoftë se ju goditi Tab, ajo do të përfundojë mendimin tuaj për ju, 1098 00:47:32,910 --> 00:47:36,660 bazuar në fjalët që janë në dispozicion në dosjen aktuale. 1099 00:47:36,660 --> 00:47:37,160 OK. 1100 00:47:37,160 --> 00:47:37,970 Pra, keni qenë të drejtë. 1101 00:47:37,970 --> 00:47:41,239 Një ndarë nga 10 është, në fakt, 0.1. 1102 00:47:41,239 --> 00:47:42,280 Por unë jam pak kurioz. 1103 00:47:42,280 --> 00:47:44,196 Dhe kjo rezulton printf mbështet disa karakteristika 1104 00:47:44,196 --> 00:47:48,700 ku ju mund të specifikoni më shumë se numri parazgjedhur i pikave dhjetore. 1105 00:47:48,700 --> 00:47:52,140 Pra, nëse unë dua të shoh 10 decimal pikë unë mund të bëni për qind, 1106 00:47:52,140 --> 00:47:55,510 për simbolin placeholder, dot 10 për, më jep 10 pikë dhjetore, 1107 00:47:55,510 --> 00:47:58,140 dhe pastaj ende pikë lundrues vlera, dhe, si një mënjanë, 1108 00:47:58,140 --> 00:48:01,550 çfarë është kjo backslash n me sa duket do të vazhdojmë të përdorim? 1109 00:48:01,550 --> 00:48:03,450 Ajo rezulton se kjo është një Simbol për një linjë të re. 1110 00:48:03,450 --> 00:48:05,970 Kjo është mënyrë shumë e qartë për të thënë në kompjuter, 1111 00:48:05,970 --> 00:48:08,759 lëvizur kursorin për të ardhshëm Linja pasi ju jeni bërë. 1112 00:48:08,759 --> 00:48:10,800 Dhe ne do të shohim se çfarë ndodh kur ne nuk e bëjmë atë. 1113 00:48:10,800 --> 00:48:12,430 >> Më lejoni të bëj përpiluar pasaktësi. 1114 00:48:12,430 --> 00:48:15,320 1115 00:48:15,320 --> 00:48:18,356 Tani dot çaj pasaktësi. 1116 00:48:18,356 --> 00:48:18,930 OK. 1117 00:48:18,930 --> 00:48:19,780 Ende e drejtë. 1118 00:48:19,780 --> 00:48:21,512 Një ndarë nga 10. 1119 00:48:21,512 --> 00:48:23,220 Tani unë jam duke marrë një pak kurioz, pse. 1120 00:48:23,220 --> 00:48:27,599 Çka nëse unë shoh 20 decimal vë në dukje, të përpiluar, përsëritje, 1121 00:48:27,599 --> 00:48:29,390 dhe si një mënjanë për shpejtësi, ju gjithashtu mund të përdorni 1122 00:48:29,390 --> 00:48:31,800 up tuaj dhe poshtë shigjeta për të lëvizni nëpër historinë tuaj, 1123 00:48:31,800 --> 00:48:35,476 kështu që ju nuk keni për të mbajtur retyping këto komanda, të hyjë. 1124 00:48:35,476 --> 00:48:36,910 Huh. 1125 00:48:36,910 --> 00:48:39,220 Unë nuk e kam mësuar që në klasën e shkollës. 1126 00:48:39,220 --> 00:48:43,260 Të gjithë të drejtë, kështu që le të më shih si 29 vende jashtë. 1127 00:48:43,260 --> 00:48:44,300 Ndoshta kjo është vetëm një pikë për shans. 1128 00:48:44,300 --> 00:48:46,907 Ndoshta kompjuteri im është duke vepruar pazakontë. 1129 00:48:46,907 --> 00:48:47,990 Kjo nuk është një gjë, e drejtë? 1130 00:48:47,990 --> 00:48:50,300 Është bërë diçka deterministically. 1131 00:48:50,300 --> 00:48:53,410 Pra, të bëjë pasaktësi. 1132 00:48:53,410 --> 00:48:54,890 OK, kjo është messed up. 1133 00:48:54,890 --> 00:48:57,620 Pra, çfarë po ndodh? 1134 00:48:57,620 --> 00:49:00,160 >> Pra, me sa duket tuaj Mësuesi ka qenë i shtrirë 1135 00:49:00,160 --> 00:49:03,900 për ju të gjithë këtë kohë për arsye që ne do të shohim para se të gjatë. 1136 00:49:03,900 --> 00:49:05,569 Por le të përfundojë me një program tjetër. 1137 00:49:05,569 --> 00:49:07,860 Kjo është një programe pak dikush ka shkruar disa vite më parë, 1138 00:49:07,860 --> 00:49:08,990 dhe kjo është në fakt pjesë e një konkursi. 1139 00:49:08,990 --> 00:49:11,198 Askush në fakt shkruan kodin si kjo, dhe në qoftë se ju bëni, 1140 00:49:11,198 --> 00:49:12,880 kjo është stilistikisht një problem. 1141 00:49:12,880 --> 00:49:14,660 Por njerëzit e bëjnë këtë për të drejtat e bragging. 1142 00:49:14,660 --> 00:49:17,260 Për të shkruar më konfuze kërkim program që 1143 00:49:17,260 --> 00:49:19,110 megjithatë ka diçka interesante. 1144 00:49:19,110 --> 00:49:23,930 Dhe vini re mendova që ne do të lënë në sot, para se Colton na luan këtu, 1145 00:49:23,930 --> 00:49:27,840 është për të drejtuar këtë program, i cili, edhe në vetëm duke përdorur 1146 00:49:27,840 --> 00:49:31,450 C në këtë bazuar text- Mjedisi, na jep këtë. 1147 00:49:31,450 --> 00:49:32,264 Dammit. 1148 00:49:32,264 --> 00:49:34,930 >> [Qeshura] 1149 00:49:34,930 --> 00:49:36,800 >> Stand by. 1150 00:49:36,800 --> 00:49:39,340 [Padëgjueshme] c dash l m. 1151 00:49:39,340 --> 00:49:42,885 Ju jeni duke shkuar për të parë magjike yshtje se ne do të shohim para se të gjatë. 1152 00:49:42,885 --> 00:49:45,780 [Padëgjueshme] Të gjithë të drejtë. 1153 00:49:45,780 --> 00:49:51,592 Dhe tani ju mund edhe bëjë gjëra të tilla si kjo. 1154 00:49:51,592 --> 00:49:52,340 Kjo ishte. 1155 00:49:52,340 --> 00:49:56,410 Për CS50 ne, do të shihni të premten. 1156 00:49:56,410 --> 00:49:58,910 >> [Muzika] 1157 00:49:58,910 --> 00:52:38,390 1158 00:52:38,390 --> 00:52:41,440 >> [Duartrokitje] 1159 00:52:41,440 --> 00:52:42,812