1 00:00:00,000 --> 00:00:10,980 >> [MUZIKO Ludante] 2 00:00:10,980 --> 00:00:13,260 >> -Alright! 3 00:00:13,260 --> 00:00:16,400 >> -tio Estas CS50. 4 00:00:16,400 --> 00:00:18,220 >> -tio Estas CS50. 5 00:00:18,220 --> 00:00:19,324 >> -tio Estas CS50. 6 00:00:19,324 --> 00:00:20,615 [MUZIKO - Iggy Azalea, "Fancy"] 7 00:00:20,615 --> 00:00:29,925 8 00:00:29,925 --> 00:00:33,570 >> -My Preferataj memoro de CS50 estis kiam mi iris al Puzzle Tago. 9 00:00:33,570 --> 00:00:35,797 >> -Probably Nur la tempo pasigis laborante sur problemo aroj 10 00:00:35,797 --> 00:00:38,630 kun miaj geamikoj kaj personoj, kiuj Wold fine fariĝis mia blockmates. 11 00:00:38,630 --> 00:00:40,421 >> -My Bona memoro de CS50 estas Hackathon. 12 00:00:40,421 --> 00:00:41,630 -la CS50 Hackathon. 13 00:00:41,630 --> 00:00:42,130 >> -Hackathon. 14 00:00:42,130 --> 00:00:42,800 >> -Hackathon. 15 00:00:42,800 --> 00:00:43,300 -Hackathon. 16 00:00:43,300 --> 00:00:43,883 -la Hackathon 17 00:00:43,883 --> 00:00:45,027 -Rob Bowden. 18 00:00:45,027 --> 00:00:46,110 Nur ĉion pri li. 19 00:00:46,110 --> 00:00:47,401 >> [MUZIKO - Iggy Azalea, "Fancy"] 20 00:00:47,401 --> 00:00:56,790 21 00:00:56,790 --> 00:01:02,512 >> -My Preferataj memoro, kiam mi estis en scenejo kaj mi ludis la prestiĝan rolon 22 00:01:02,512 --> 00:01:04,220 de nodo [? en la Ligita?] [? Listo. ?] 23 00:01:04,220 --> 00:01:08,470 >> -When Ĉiuj liberigxis Dropbox spaco kaj David estis kiel, rigardu sub viaj seĝoj. 24 00:01:08,470 --> 00:01:10,520 Gxi estis kiel, spaco por ĉiuj! 25 00:01:10,520 --> 00:01:11,811 >> [MUZIKO - Iggy Azalea, "Fancy"] 26 00:01:11,811 --> 00:01:20,940 27 00:01:20,940 --> 00:01:22,830 >> -My Konsiloj por ajna envenantajn studento farus 28 00:01:22,830 --> 00:01:26,170 esti vere laboras en P-aroj kun amikoj. 29 00:01:26,170 --> 00:01:27,960 >> -Office Horoj estas tre vian amikon. 30 00:01:27,960 --> 00:01:30,870 >> -Make La plejparto de via sperto kaj renkonti tiom da homoj kiel vi povas. 31 00:01:30,870 --> 00:01:32,390 >> -Don't Timu peti helpon. 32 00:01:32,390 --> 00:01:33,890 -Start La P-aroj frue semajnon. 33 00:01:33,890 --> 00:01:36,723 -Mi Opinias la plej granda afero por utiligi ĉiujn rimedojn 34 00:01:36,723 --> 00:01:37,950 ke CS50 havas. 35 00:01:37,950 --> 00:01:39,960 >> -Go Al oficejo horoj frue semajnon. 36 00:01:39,960 --> 00:01:41,430 >> -Definitely Spekti la cortometrajes. 37 00:01:41,430 --> 00:01:42,989 >> -Don't Prokrasti vian P-aroj. 38 00:01:42,989 --> 00:01:45,780 -Make Certe vi trovos grandan grupon de personoj por labori sur P-aroj. 39 00:01:45,780 --> 00:01:48,530 Vi povas havi multan amuzan kaj plenumi laboron kune. 40 00:01:48,530 --> 00:01:50,370 >> -Don't Timu puŝi vin. 41 00:01:50,370 --> 00:01:52,080 Iru al la hacker eldono kelkfoje. 42 00:01:52,080 --> 00:01:55,410 >> -Write Tion sur papero antaŭ vi iam tuŝi via komputilo. 43 00:01:55,410 --> 00:01:58,380 >> -CS50 Estas vere granda je havigante manieroj akiri helpon. 44 00:01:58,380 --> 00:02:01,134 >> -My Unu peco de konsilo estas dormo. 45 00:02:01,134 --> 00:02:02,050 Ĉu iu diris ke? 46 00:02:02,050 --> 00:02:04,100 Dormo, asekuro. 47 00:02:04,100 --> 00:02:08,919 Ĝi estas facila por ne fari, sed Vi devas fari ĝin, mi pensas. 48 00:02:08,919 --> 00:02:12,982 >> -Mi Dirus vere esti mense preparita ĉar vi tuj gxin amas. 49 00:02:12,982 --> 00:02:14,273 [MUZIKO - Iggy Azalea, "Fancy"] 50 00:02:14,273 --> 00:02:17,750 51 00:02:17,750 --> 00:02:18,940 >> -tio Estas CS50. 52 00:02:18,940 --> 00:02:22,090 53 00:02:22,090 --> 00:02:23,066 >> -tio Estas CS50. 54 00:02:23,066 --> 00:02:26,400 55 00:02:26,400 --> 00:02:26,989 >> -tio Estas CS50. 56 00:02:26,989 --> 00:02:28,280 [MUZIKO - Iggy Azalea, "Fancy"] 57 00:02:28,280 --> 00:02:31,290 58 00:02:31,290 --> 00:02:31,964 >> -tio Estas CS50. 59 00:02:31,964 --> 00:02:36,020 60 00:02:36,020 --> 00:02:42,270 >> [Aplaŭdo] 61 00:02:42,270 --> 00:02:46,040 >> DAVID J. Malan: Do tiu estas CS50 kaj tio estas la fino de Semajno 0. 62 00:02:46,040 --> 00:02:48,770 Kaj tio estis nur kelkaj de CS50 bastono kiu 63 00:02:48,770 --> 00:02:51,100 atendi vin ne nur en sekcioj kaj oficejo horoj, sed, 64 00:02:51,100 --> 00:02:54,390 Ankaŭ, ĉi venanta semajnfinon en CS50 Puzzle Tago. 65 00:02:54,390 --> 00:02:56,410 Kiu, denove, estas ne ĉion pri programado. 66 00:02:56,410 --> 00:02:59,710 Efektive, ĝi estas atendita ke vi ne devos plani ion, 67 00:02:59,710 --> 00:03:03,780 sed prefere solvi problemojn uzante intelektojn kaj amikoj apud vi. 68 00:03:03,780 --> 00:03:06,400 >> Ni estos kune iuj de niaj amikoj ĉe Facebook-- 69 00:03:06,400 --> 00:03:08,980 se vi registras here-- kiuj Dum la pasintaj kelkaj jaroj, 70 00:03:08,980 --> 00:03:11,450 havas efektive estis skribante tiujn defiojn kun ni. 71 00:03:11,450 --> 00:03:14,822 Kaj tiel, ili estos la finfine kurante Puzzle Tago. 72 00:03:14,822 --> 00:03:17,530 Kaj tiel, vi estos defiita kun precize la specoj de aferoj 73 00:03:17,530 --> 00:03:20,520 kaj problemoj kiuj onin je Facebook ŝatas pensi. 74 00:03:20,520 --> 00:03:21,860 Do kiu estas morgaŭ. 75 00:03:21,860 --> 00:03:25,980 Enregistri cs50.harvard.edu/register. 76 00:03:25,980 --> 00:03:28,120 >> Nun unu vorton pri paro de bastono en aparta. 77 00:03:28,120 --> 00:03:30,090 Ĉi tie estas Ansel Duff, kiu estas fakte unu 78 00:03:30,090 --> 00:03:33,860 de la co-aŭtoroj el tiuj duuma ampoloj, kiun ni vidis en merkredo, 79 00:03:33,860 --> 00:03:36,710 krom CS50 propra Dan Bradley. 80 00:03:36,710 --> 00:03:40,094 Ansel Duff estis ankaŭ malnova freshman konsilita de miaj 3 jaroj 81 00:03:40,094 --> 00:03:41,760 kaj li efektive eĉ konstruis ĉi pupitro. 82 00:03:41,760 --> 00:03:45,330 Li foriris en fari inĝenierio sciencoj kaj pli. 83 00:03:45,330 --> 00:03:49,279 Nun lia portreto tie estas reale Ansel 3 jaroj ĉe la CS50 Hackathon 84 00:03:49,279 --> 00:03:51,820 kiam li prunteprenis el niaj globoj, enŝovis ĝin al lia portebla, 85 00:03:51,820 --> 00:03:55,240 kaj, por la proksima 12 iuj neparaj horoj, enfokusigita en sia fina projekto, 86 00:03:55,240 --> 00:03:59,150 prenante rompas nur malfermi sakoj de dolĉaĵoj en la Hackathon. 87 00:03:59,150 --> 00:04:02,210 >> Sed li iris pli lastatempe al elspezi pasinta somero kun ni, 88 00:04:02,210 --> 00:04:05,270 ekde CS50 por lia bastono, Nun studentoj ĉi semestro, 89 00:04:05,270 --> 00:04:06,770 havas sian propran 3D printilo. 90 00:04:06,770 --> 00:04:10,180 Kaj en malmultaj vortoj 3D presiloj estas artefakto kiu aspektas tute kiel tiu. 91 00:04:10,180 --> 00:04:15,700 Vi plenigos ĝin per mola bobeno kiu fandiĝis de la aparato 92 00:04:15,700 --> 00:04:18,940 kaj vi konstruas retejojn laŭvorte el nenio. 93 00:04:18,940 --> 00:04:22,660 Multe kiel inkjet printilo, vi komencas kracxi el iom dots de plasto 94 00:04:22,660 --> 00:04:24,990 kiu formas kune formas tutajn objektojn. 95 00:04:24,990 --> 00:04:28,430 Kaj tiel Ansel ekzemple fruaj tiu somero, havas iPhone 5 96 00:04:28,430 --> 00:04:30,722 kaj decidis ke li vere volis por apogi ĝin sur sia skribotablo. 97 00:04:30,722 --> 00:04:32,638 Sed li ne volis eliru kaj aĉeti ion 98 00:04:32,638 --> 00:04:36,030 el la Apple vendejo aŭ simile, do li sidiĝis kaj komencis desegni ion. 99 00:04:36,030 --> 00:04:38,280 Li prenis kelkajn mezurojn kiel al kiom dika 100 00:04:38,280 --> 00:04:41,270 kaj kiom larĝa lia iPhone estis, Li tiris tiu bildo ĉi tie, 101 00:04:41,270 --> 00:04:43,870 Li decidis, ke li volis havi 75 grado dekliniĝo 102 00:04:43,870 --> 00:04:46,150 kiel ĝi fiksrigardis li sur sia skribtablo tie. 103 00:04:46,150 --> 00:04:50,440 Li tiam turnis sin, uzante programaro, en 3D CAD Modelo 104 00:04:50,440 --> 00:04:52,400 kiu aspektis iom iu kiel ĉi tio. 105 00:04:52,400 --> 00:04:55,940 Kaj tiam li plue, fine, por fakte krei ĝin. 106 00:04:55,940 --> 00:05:00,250 Do fakte, se iu el vi tien, eble en vico ke mi povas ĵeti al, havi 107 00:05:00,250 --> 00:05:06,780 an-- tie ni havas homojn kun la iPhone 5, kaj tie ni havas du pli. 108 00:05:06,780 --> 00:05:10,650 109 00:05:10,650 --> 00:05:17,037 >> Nun, ne resti malantaŭen, CS50 propra Cheng Gong ankaŭ agordi tiun someron 110 00:05:17,037 --> 00:05:19,870 konstrui sufiĉe da aĵoj kaj, fakte, pro kialoj kiuj estas ankoraŭ 111 00:05:19,870 --> 00:05:23,970 certe, estis malrapide presi armeon de elefantoj 112 00:05:23,970 --> 00:05:27,250 kun elparolanta brakoj kaj trunkoj. 113 00:05:27,250 --> 00:05:32,515 Paro de kiuj estas efektive ĉi tie se Iu devus nun like-- elefanto. 114 00:05:32,515 --> 00:05:35,650 115 00:05:35,650 --> 00:05:40,522 Bone,. sed kion Cheng ankaŭ faris cxar ni estas li tre afable starigis ĉambron 116 00:05:40,522 --> 00:05:42,230 ĉar tio elefanto, kredu ĝin aŭ ne, 117 00:05:42,230 --> 00:05:44,690 prenas iujn du kaj duono horoj por presi. 118 00:05:44,690 --> 00:05:47,840 Eĉ la iPhone piedestalon prenis horo kaj duono por presi. 119 00:05:47,840 --> 00:05:51,490 Kaj kio Cheng antaŭeniris kaj faris Estis starigita belan ĉambron en fronto 120 00:05:51,490 --> 00:05:55,580 de tiu 3D printilo, filmados por horo kaj duono kiel Ansel dezajno presita. 121 00:05:55,580 --> 00:05:58,090 Ni tegis iu sexy muziko por ĝin sekve 122 00:05:58,090 --> 00:06:00,570 doni al vi tiun rigardi ĉe kiom 3D presi verkojn. 123 00:06:00,570 --> 00:06:02,494 Kaj eĉ se tio fakte en plasto, 124 00:06:02,494 --> 00:06:05,160 rimarkas ke se tiu estas areo de intereso al vi akademie, 125 00:06:05,160 --> 00:06:07,120 ekzistas homoj, inter ilin Jennifer Lewis tie 126 00:06:07,120 --> 00:06:09,036 ĉe la Lernejo de Engineering, kiu estas reale 127 00:06:09,036 --> 00:06:10,920 laborante en 3D presi plasto celoj. 128 00:06:10,920 --> 00:06:14,150 Sed eĉ, ĉiam pli, biologiaj materialoj solvi 129 00:06:14,150 --> 00:06:16,530 fiziologiaj problemoj por homoj. 130 00:06:16,530 --> 00:06:19,944 Sed ĉi tie estas iom ion de CS50. 131 00:06:19,944 --> 00:06:31,625 >> [LOUD Mekanika bruoj] 132 00:06:31,625 --> 00:06:34,250 DAVID J. Malan: Ĝi ne sonas nenio simila en realeco, 133 00:06:34,250 --> 00:06:37,240 sed estas multe pli malvarmaj por rigardi ĝin en tiu rapideco, kaj kun tiu sono. 134 00:06:37,240 --> 00:06:40,000 >> Nun, merkrede, kiom ni unue tien? 135 00:06:40,000 --> 00:06:43,345 Ni komencis paroli pri komputila scienco kaj ni demandis kio estis. 136 00:06:43,345 --> 00:06:46,470 Kaj temas pri multaj aferoj, kaj ekzistas tiom da malsamaj direktoj 137 00:06:46,470 --> 00:06:48,477 kiun vi povas estri post paso kiel CS50. 138 00:06:48,477 --> 00:06:50,810 Fakte, se vi prenis unu de tiuj neoficialaj gvidiloj 139 00:06:50,810 --> 00:06:54,080 por CS ekstere, la libreto kiu ni provizis, ĉu vi 140 00:06:54,080 --> 00:06:57,150 pensas prenas nur CS50, aŭ eble faras malĉefa, 141 00:06:57,150 --> 00:06:59,557 aŭ eble eĉ koncentrante en CS, ĉu klaki tra tiu. 142 00:06:59,557 --> 00:07:01,390 Kaj vi vidos diagramo al la fino kiu 143 00:07:01,390 --> 00:07:04,950 montras la multaj malsamaj direktoj en CS ke vi povas foriri en. 144 00:07:04,950 --> 00:07:09,030 >> Sed por hodiaŭ, ni enfokusigi, denove, sur vere unu el la fundamentaj opinioj, 145 00:07:09,030 --> 00:07:11,500 eble, kie vi enigoj al problemoj, 146 00:07:11,500 --> 00:07:13,430 vi havas elirojn el problemojn, kaj vi devas 147 00:07:13,430 --> 00:07:17,420 algoritmoj kun kiu krei tiuj eliroj el tiuj enigoj. 148 00:07:17,420 --> 00:07:20,330 Kaj unu tia ekzemplo, estis de Kompreneble, ĉi tiu telefono libro ĉi tie. 149 00:07:20,330 --> 00:07:24,180 Kaj ni uzas kiel ekzemplo iri tra algoritmo kiu estis ĝentila. 150 00:07:24,180 --> 00:07:26,490 Kaj tiam alia estis ĝentila, sed iom pli rapida. 151 00:07:26,490 --> 00:07:29,448 Kaj tiam alia kiu estis iom pli drama, sed fundamente 152 00:07:29,448 --> 00:07:30,000 rapida. 153 00:07:30,000 --> 00:07:32,720 >> Ĝuste, ĉi tiu telefono libro ni asertis havis ĉirkaŭ 1.000 paĝoj. 154 00:07:32,720 --> 00:07:36,200 Kaj kiom da fojoj mi ja havas ŝiri la telefono libro en duono 155 00:07:36,200 --> 00:07:39,930 trovi iun kiel Mike Smith, maksimume, en 1000 paĝa libro? 156 00:07:39,930 --> 00:07:41,040 Do, la 10 donu aŭ preni. 157 00:07:41,040 --> 00:07:45,050 Kaj iam mi disŝiris tiun aferon en duono, aŭ simple, pli maturely, 158 00:07:45,050 --> 00:07:48,490 dividita en duono, estas nur 10 paĝoj el 1000. 159 00:07:48,490 --> 00:07:51,470 Kaj se vi extrapolar, iom unrealistically por telefono libro, 160 00:07:51,470 --> 00:07:56,540 sed se ĉi tiu telefono libro havis iun 4 miliardo paĝojn en ĝi, do tute 161 00:07:56,540 --> 00:07:59,680 _unwieldy_ fizike, kiom fojoj vi dividi 4 miliardoj 162 00:07:59,680 --> 00:08:01,460 paĝo telefono libro en duono? 163 00:08:01,460 --> 00:08:03,035 Do estas fakte 32, donu aŭ preni. 164 00:08:03,035 --> 00:08:07,090 Kaj tial 32 fojojn nur el de 4 miliardoj paĝojn, povas 165 00:08:07,090 --> 00:08:08,700 Vi trovos iun kiel Mike Smith. 166 00:08:08,700 --> 00:08:09,740 Kaj tio estas efikeco. 167 00:08:09,740 --> 00:08:12,130 Tio estas bona algoritmo, daresay. 168 00:08:12,130 --> 00:08:14,480 >> Sed tiam ni translokiĝis de tiu provi formaligi ĝin. 169 00:08:14,480 --> 00:08:16,100 Kaj mi proponis ĉi _pseudocode_ kodon. 170 00:08:16,100 --> 00:08:17,800 _pseudocode_ Kodo estas nenio formala. 171 00:08:17,800 --> 00:08:18,880 Ĝi ne estas io vi enmemorigi. 172 00:08:18,880 --> 00:08:21,588 Estas nur io, kion vi esprimi sufiĉe intuicie uzas la anglan, 173 00:08:21,588 --> 00:08:24,990 aŭ ajna lingvo vere, ke transdonas viajn ideojn koncize. 174 00:08:24,990 --> 00:08:26,990 Sed kio estas ŝlosila pri _pseudocode_ kodo estas ke vi 175 00:08:26,990 --> 00:08:30,331 provu antaŭvidi ĉiujn eblaj kazoj ke povus okazi. 176 00:08:30,331 --> 00:08:33,080 Kaj efektive, en tiu _pseudocode_ kodo esas vere tri kazoj 177 00:08:33,080 --> 00:08:34,700 ĉiu tempo mi dividis la telefono libro. 178 00:08:34,700 --> 00:08:36,006 Mike povus esti al la maldekstra. 179 00:08:36,006 --> 00:08:37,130 Mike povus esti dekstre. 180 00:08:37,130 --> 00:08:39,240 Aŭ ĝi povus pravi en la paĝo mi plu. 181 00:08:39,240 --> 00:08:42,110 Aŭ kvara angulo kazo, por tiel diri. 182 00:08:42,110 --> 00:08:46,470 A malbona scenejo povus esti unu which-- kio okazas? 183 00:08:46,470 --> 00:08:48,860 Mike nur ne en la telefono libro ajn. 184 00:08:48,860 --> 00:08:52,720 >> Kaj kiam programoj crash-- kiam Mac kaj PC programaro ke vi infanoj kuras 185 00:08:52,720 --> 00:08:56,400 sur via komputiloj iam pendas aŭ lasas neatendite, 186 00:08:56,400 --> 00:08:59,770 kiu ĝenerale signifas ke iu programisto, iuj homaj kiel vi baldaŭ, 187 00:08:59,770 --> 00:09:01,650 nur ŝraŭbita supren kaj faris iun eraron. 188 00:09:01,650 --> 00:09:05,207 Eble ne anticipis ke eble tie Estas neniu Mike Smith en la telefono libro. 189 00:09:05,207 --> 00:09:08,040 Kaj se vi ne fakte skribi kodo manipuli situacioj kiel tiu, 190 00:09:08,040 --> 00:09:09,890 Ĝenerale neantaŭvidebla aĵoj povas okazi. 191 00:09:09,890 --> 00:09:10,960 Via maŝino povas frostigi. 192 00:09:10,960 --> 00:09:11,730 Ĝi povas restartas. 193 00:09:11,730 --> 00:09:12,889 La programo povas forlasi. 194 00:09:12,889 --> 00:09:14,722 Kaj ĉiuj tiuj stultecoj ke vi 195 00:09:14,722 --> 00:09:18,030 renkontis en via reala vivo simple uzante komputilojn, 196 00:09:18,030 --> 00:09:20,710 Mi ĉiufoje esti simple klarigita for de tiu intuicio 197 00:09:20,710 --> 00:09:24,920 kaj tiu kompreno de kio estas efektive okazas sub la kapuĉo. 198 00:09:24,920 --> 00:09:27,329 >> Nun ni provu rigardu je pli ĝeneralan problemon. 199 00:09:27,329 --> 00:09:29,120 Anstataŭ preni asistencia en loko kiel 200 00:09:29,120 --> 00:09:32,230 tiu, kiun estus sufiĉe malrapida fari unu, du, tri, kvar. 201 00:09:32,230 --> 00:09:34,070 Aŭ eble du, kvar, ses, ok. 202 00:09:34,070 --> 00:09:36,080 Ni enfokusigos, anstataŭ, je kiel ni povus formaligi 203 00:09:36,080 --> 00:09:39,400 La algoritmo de la procezo per kiun ni povus preni asistencia. 204 00:09:39,400 --> 00:09:42,290 Kaj laŭ la vojo, ni komencu por apliki iujn nomenklaturo 205 00:09:42,290 --> 00:09:47,130 ke ni uzos hodiaŭ kiam ni efektive komenci plani en lingvo. 206 00:09:47,130 --> 00:09:50,910 Do mi donos al vi nun, kvar minutoj de video ke ni kunmetis kun niaj geamikoj 207 00:09:50,910 --> 00:09:52,820 de TED, la organizo. 208 00:09:52,820 --> 00:09:56,380 Per kiu ni havigis skripton kaj ili alportis siajn animadores por portado 209 00:09:56,380 --> 00:10:00,970 kaj fakte kreis 2D kuraĝigo kion algoritmo estas. 210 00:10:00,970 --> 00:10:02,776 Se ni povus malhelan la lumojn. 211 00:10:02,776 --> 00:10:06,664 >> [MUZIKO Ludante] 212 00:10:06,664 --> 00:10:17,890 213 00:10:17,890 --> 00:10:19,140 Rakontanto: Kio estas algoritmo? 214 00:10:19,140 --> 00:10:21,620 En komputiko, algoritmo estas aro 215 00:10:21,620 --> 00:10:24,840 de instrukcioj solvo iu problemo paŝo-per-paŝo. 216 00:10:24,840 --> 00:10:27,310 Tipe, algoritmoj estas ekzekutitaj de komputiloj, 217 00:10:27,310 --> 00:10:29,365 sed ni homoj havas algoritmojn tiel. 218 00:10:29,365 --> 00:10:31,240 Ekzemple, kiel farus vi ĉirkaŭiras rakonti 219 00:10:31,240 --> 00:10:32,990 la nombro de personoj en ĉambro? 220 00:10:32,990 --> 00:10:36,840 Nu, se vi estas kiel mi, vi povus probable notas al ĉiu persono unuope 221 00:10:36,840 --> 00:10:38,370 kaj kalkulu el nulo. 222 00:10:38,370 --> 00:10:41,200 Unu, du, tri, kvar, kaj tiel plu. 223 00:10:41,200 --> 00:10:42,410 Nu, tio estas algoritmo. 224 00:10:42,410 --> 00:10:45,820 Fakte, ni provu esprimi ĝin mordis pli formale en _pseudocode_ kodon. 225 00:10:45,820 --> 00:10:48,940 Angla-simila sintakso ke similas programlingvo. 226 00:10:48,940 --> 00:10:50,880 >> Estu n egalas 0. 227 00:10:50,880 --> 00:10:55,210 Por ĉiu persono en ĉambro, starigis n egalas al n plus 1. 228 00:10:55,210 --> 00:10:56,790 Kiel interpreti la _pseudocode_? 229 00:10:56,790 --> 00:10:59,490 Nu linio deklaras, tiel diri, ŝanĝiĝema 230 00:10:59,490 --> 00:11:02,880 nomata n kaj inicializa lia valoro al 0 Ĉi simple 231 00:11:02,880 --> 00:11:05,080 signifas, ke la komencante de nia algoritmo, 232 00:11:05,080 --> 00:11:07,910 la afero, per kiu ni estas kalkula havas valoron de 0. 233 00:11:07,910 --> 00:11:10,860 Post ĉiu, antaŭ ol ni komencas rakonti ni ne havas ion ankoraŭ. 234 00:11:10,860 --> 00:11:13,580 Nomante tiun variablon n estas nur konvencio. 235 00:11:13,580 --> 00:11:15,130 Mi povus esti nomis ĝin plej nenion. 236 00:11:15,130 --> 00:11:17,460 Nun vicigi du demarks la komencon de ciklo, 237 00:11:17,460 --> 00:11:20,550 sekvencon de ŝtupoj kiuj volas ripeti iun nombron da fojoj. 238 00:11:20,550 --> 00:11:24,130 Do en nia ekzemplo, la paŝo ni preno kalkulas homoj en la ĉambro. 239 00:11:24,130 --> 00:11:26,260 Sub linio du estas linio tri kiu priskribas 240 00:11:26,260 --> 00:11:28,400 ĝuste kiel ni iros sur rakonti. 241 00:11:28,400 --> 00:11:31,720 La deŝovon implicas ke estas linio tri kiu ripetos. 242 00:11:31,720 --> 00:11:35,190 Do kun la _pseudocode_ kodo parolo estas ke post startanta je 0 243 00:11:35,190 --> 00:11:38,940 por ĉiu persono en la ĉambro ni pliigos n per 1 244 00:11:38,940 --> 00:11:41,310 Nun estas ĉi tiu algoritmo korekta? 245 00:11:41,310 --> 00:11:42,820 Nu ni bang ĝin iom. 246 00:11:42,820 --> 00:11:45,520 >> Ĉu ĝi funkcias se ekzistas du homoj en la ĉambro? 247 00:11:45,520 --> 00:11:46,420 Ni vidu. 248 00:11:46,420 --> 00:11:48,500 En linio unu ni pravalorizi n al 0. 249 00:11:48,500 --> 00:11:51,910 Por ĉiu el tiuj du personoj, ni tiam pliigo n per 1. 250 00:11:51,910 --> 00:11:55,570 Do en la unua vojaĝo tra la buklo, ni ĝisdatigas n de 0 al 1. 251 00:11:55,570 --> 00:11:59,320 Sur la dua vojaĝo tra tiu sama buklo, ni ĝisdatigas n de 1 al 2. 252 00:11:59,320 --> 00:12:02,850 Kaj tiel, per ĉi tiu algoritmo estas Fine, n estas 2, kio 253 00:12:02,850 --> 00:12:04,950 ja kongruas la nombro homoj en la ĉambro. 254 00:12:04,950 --> 00:12:06,040 Ĝis nun tiel bona. 255 00:12:06,040 --> 00:12:07,870 >> Kiom proksimume angulo kazo kvankam? 256 00:12:07,870 --> 00:12:11,090 Supozu ke estas 0 homoj en la room-- krom mi, kiu estas 257 00:12:11,090 --> 00:12:12,420 faras rakontante. 258 00:12:12,420 --> 00:12:15,380 En linio, ni denove pravalorizi n al 0. 259 00:12:15,380 --> 00:12:17,810 Tiu tempon tamen, linio tri ne ekzekuti ajn 260 00:12:17,810 --> 00:12:19,610 ĉar ne ekzistas persono en la ĉambron. 261 00:12:19,610 --> 00:12:23,540 Kaj tial n restas 0, kiu ja kongruas la nombro de homoj en la ĉambro. 262 00:12:23,540 --> 00:12:24,670 Sufiĉe simpla, ĉu ne? 263 00:12:24,670 --> 00:12:27,880 Sed rakonti homoj unuope estas sufiĉe senutila, tro, ne? 264 00:12:27,880 --> 00:12:29,160 Certe ni povas fari pli bone. 265 00:12:29,160 --> 00:12:33,440 Kial ne rakontas du personoj samtempe, anstataux rakonti unu, du, tri, 266 00:12:33,440 --> 00:12:36,470 kvar, kvin, ses, sep, ok, kaj tiel plu. 267 00:12:36,470 --> 00:12:39,106 Kial ne rakontas du, kvar, ses, ok, kaj tiel plu? 268 00:12:39,106 --> 00:12:40,670 Ĝi eĉ sonas rapida. 269 00:12:40,670 --> 00:12:41,940 Kaj ĝi certe estas. 270 00:12:41,940 --> 00:12:44,490 >> Ni esprimas ĉi optimumigo en _pseudocode_ kodon. 271 00:12:44,490 --> 00:12:46,040 Estu n egalas 0. 272 00:12:46,040 --> 00:12:50,760 Por ĉiu paro de homoj en ĉambro, n egalas al n plus 2. 273 00:12:50,760 --> 00:12:52,360 Sufiĉe simpla ŝanĝo, dekstra? 274 00:12:52,360 --> 00:12:56,560 Anstataŭ kalkuli homoj unuope, ni anstataŭ kalkuli ilin du samtempe. 275 00:12:56,560 --> 00:12:59,240 Tiu algoritmo estas, tiel, duoble rapida kiel la lasta. 276 00:12:59,240 --> 00:13:00,530 Sed estas korekta? 277 00:13:00,530 --> 00:13:01,160 Ni vidu. 278 00:13:01,160 --> 00:13:03,580 Ĉu ĝi funkcias se ekzistas du homoj en la ĉambro? 279 00:13:03,580 --> 00:13:05,800 En linio, ni pravalorizi n al 0. 280 00:13:05,800 --> 00:13:09,160 Por tiu paro de personoj, ni tiam pliigo n per 2. 281 00:13:09,160 --> 00:13:11,910 Kaj tiel per tiu algoritmo estas Fine n estas 2, kio 282 00:13:11,910 --> 00:13:13,910 ja kongruas la nombro homoj en la ĉambro. 283 00:13:13,910 --> 00:13:16,610 >> Supozi proksima ke ekzistas nulo homoj en la ĉambro. 284 00:13:16,610 --> 00:13:19,080 En linio unu ni pravalorizi n al 0. 285 00:13:19,080 --> 00:13:21,260 Kiel antaŭe, linio tri ne ekzekuti ĝin ĉiuj 286 00:13:21,260 --> 00:13:25,270 ĉar ekzistas nenia paroj de homoj en la ĉambron, kaj tial n restas 0. 287 00:13:25,270 --> 00:13:27,840 Kiu ja kongruas nombro da homoj en la ĉambro. 288 00:13:27,840 --> 00:13:30,520 Sed kio se estas tri homoj en la ĉambro? 289 00:13:30,520 --> 00:13:32,380 Kiel funkcias tiu algoritmo vojagxo? 290 00:13:32,380 --> 00:13:35,710 Vidu, en linio unu, ni pravalorizi n al 0. 291 00:13:35,710 --> 00:13:39,140 Pro paro de tiuj personoj, ni tiam pliigo n per 2. 292 00:13:39,140 --> 00:13:40,050 Sed tiam kio? 293 00:13:40,050 --> 00:13:42,340 Ne estas alia plena paro de personoj en la ĉambron, 294 00:13:42,340 --> 00:13:44,430 tiel linio du ne plu validas. 295 00:13:44,430 --> 00:13:48,790 Kaj tiel per tiu algoritmo fino, n estas ankoraŭ 2, kio ne estas ĝusta. 296 00:13:48,790 --> 00:13:52,070 Ĝuste ĉi tiu algoritmo estas diris al esti kalesxo ĉar ĝi havas eraron. 297 00:13:52,070 --> 00:13:54,070 >> Ni kompensajn kun iuj nova _pseudocode_ kodon. 298 00:13:54,070 --> 00:13:56,110 Estu n egalas 0. 299 00:13:56,110 --> 00:14:00,790 Por ĉiu paro de homoj en ĉambro, metis N egalas al n plus 2. 300 00:14:00,790 --> 00:14:05,410 Se unu persono restas unpaired, aro N egalas al n plus 1. 301 00:14:05,410 --> 00:14:09,340 Por solvi ĉi tiu aparta problemo, ni enkondukita en linio kvar kondiĉo, 302 00:14:09,340 --> 00:14:12,120 alie konata kiel branĉo, kiu nur ekzekutas 303 00:14:12,120 --> 00:14:14,890 se ekzistas unu persono ni ne povis dueto kun alia. 304 00:14:14,890 --> 00:14:17,140 Kaj nun, ĉu ekzistas unu, aŭ tri, 305 00:14:17,140 --> 00:14:21,550 aŭ ajna nepara nombro da personoj en la ĉambron, tiu algoritmo nun rakonti ilin. 306 00:14:21,550 --> 00:14:22,810 Ni povas fari eĉ pli bone? 307 00:14:22,810 --> 00:14:25,890 Nu, ni povus rakonti en tri, aŭ kvarpiede, aŭ eĉ Fives kaj dekestroj 308 00:14:25,890 --> 00:14:29,390 sed preter tio, tuj akiri iom malfacila por noti. 309 00:14:29,390 --> 00:14:32,900 >> Je la fino de la tago, ĉu ekzekutitaj de komputiloj aŭ homoj, 310 00:14:32,900 --> 00:14:34,870 algoritmoj estas nur aro de instrukcioj 311 00:14:34,870 --> 00:14:36,560 kun kiu solvi problemojn. 312 00:14:36,560 --> 00:14:38,360 Tio estis nur tri. 313 00:14:38,360 --> 00:14:41,860 Kio problemo farus vin solvi per algoritmo? 314 00:14:41,860 --> 00:14:44,261 >> DAVID J. Malan: Do intence, tre simplan programon, 315 00:14:44,261 --> 00:14:46,260 tre simplan algoritmon, por atingi ion 316 00:14:46,260 --> 00:14:48,280 Tre simpla, rakontante la nombro da homoj en la ĉambro. 317 00:14:48,280 --> 00:14:50,370 >> Sed ni turmentus aparte iuj de la reprezentanto 318 00:14:50,370 --> 00:14:52,870 prezentas tie estas reale tuj estos utila eĉ kiam 319 00:14:52,870 --> 00:14:54,880 realiganta la plej komplekso de programaro. 320 00:14:54,880 --> 00:14:58,060 Do ekzemple, en ĉi tiu unua linio, ni havas, kion ni nomas la variablo, 321 00:14:58,060 --> 00:15:01,040 kaj de algebro, vi estas ĝenerale konata per x kaj y 322 00:15:01,040 --> 00:15:02,930 kaj z foje, kaj tiel plu. 323 00:15:02,930 --> 00:15:05,770 Sed en programado, variabloj ankoraŭ, al la fino de la tago, 324 00:15:05,770 --> 00:15:06,680 tre simila al tiu. 325 00:15:06,680 --> 00:15:09,910 Sed estas eble pli simple pensi de variablo kiel simple ujo. 326 00:15:09,910 --> 00:15:13,520 Kaj, fakte, estas iu nombro da bitoj implementado iel en via malmola disko 327 00:15:13,520 --> 00:15:16,410 aŭ en via komputilo la memoro, sed pli por ke en la estonteco. 328 00:15:16,410 --> 00:15:17,670 Estas nur ujo. 329 00:15:17,670 --> 00:15:20,310 Kaj se vi diros ion kiel lasu n egalas 0, 330 00:15:20,310 --> 00:15:24,310 nu tio estas kiel nomi ĉi vitro bovlon tie n, nur arbitran nomon 331 00:15:24,310 --> 00:15:26,230 kaj metante nenio en ĝi komence. 332 00:15:26,230 --> 00:15:28,940 Do la valoron de ĉi tiu bovlo nun estas nulo. 333 00:15:28,940 --> 00:15:31,380 Kaj kompreneble, se vi perceptas en posta linio, 334 00:15:31,380 --> 00:15:35,070 por vere pliigo kelkaj linio kodo, kiel en ĉi tiu tria linio tie, 335 00:15:35,070 --> 00:15:39,857 per 1, tio estas kiel diri kio estas la aktuala valoro de n, ĝi estas 0, plus 1, 336 00:15:39,857 --> 00:15:41,690 meti ion kiel ping pong pilko en ĉi tie. 337 00:15:41,690 --> 00:15:45,140 Nun la valoron de ĉi tiu variablo estas sufiĉe simple 1. 338 00:15:45,140 --> 00:15:50,064 Kaj vi povus tre rapide extrapolar, sed nun ĝi estas 2, nun estas 3, kaj tiel plu. 339 00:15:50,064 --> 00:15:51,230 Do jen ĉio variablo estas. 340 00:15:51,230 --> 00:15:53,740 Ĝi estas peco de stokado por fakte stoki iujn datumojn. 341 00:15:53,740 --> 00:15:55,050 Ĉar nun estas ping pong pilko. 342 00:15:55,050 --> 00:15:55,883 Tie estas multaj. 343 00:15:55,883 --> 00:15:58,910 Sed eblus vortoj en vortaro, kiel la Literumilo 344 00:15:58,910 --> 00:16:02,300 Mi aludis al merkrede por unu el pasintjara problemo aroj. 345 00:16:02,300 --> 00:16:05,640 >> Nun alia klavo ideon, ke simile estas sufiĉe intuitiva mi postulus, 346 00:16:05,640 --> 00:16:06,690 estas tiu de buklo. 347 00:16:06,690 --> 00:16:08,930 Kaj la buklo en la procezo de rakonti ĉiuj 348 00:16:08,930 --> 00:16:12,540 Estas, kompreneble, farante la samajn aferon denove kaj again-- ĉu unu 349 00:16:12,540 --> 00:16:14,140 samtempe aŭ du samtempe. 350 00:16:14,140 --> 00:16:17,690 Kaj oni povas esprimi tion en la angla, aŭ _pseudocode_ kodo, en ajna nombro de manieroj, 351 00:16:17,690 --> 00:16:21,560 sed uzante tiu prepozicio "por" Estas tre komuna maniero fari tion. 352 00:16:21,560 --> 00:16:24,460 Por ĉiu persono en la ĉambron, faru tion. 353 00:16:24,460 --> 00:16:25,350 Denove kaj denove. 354 00:16:25,350 --> 00:16:27,700 Kaj la fakto ke ĝi estas dentadas, linio tri, 355 00:16:27,700 --> 00:16:29,840 simple signifas ke kion vi supozis fari 356 00:16:29,840 --> 00:16:33,490 estas la aĵoj estas marĝeno sub la linio du mem. 357 00:16:33,490 --> 00:16:35,590 Nur homa konvencio, sed komuna 358 00:16:35,590 --> 00:16:39,010 kiel ni vidos en reala altaj nivelo programlingvoj. 359 00:16:39,010 --> 00:16:41,870 >> Nun iom pli interesa estas kiam vi akiras en angulo kazo. 360 00:16:41,870 --> 00:16:43,970 Ekzemple, angulo kazo estis kiam 361 00:16:43,970 --> 00:16:48,060 estis tri personoj, aŭ kvin aux sep, aŭ ajna nepara nombro da personoj en la ĉambron, 362 00:16:48,060 --> 00:16:51,630 ĉar fari tion duope bremsoj eventuale pro via tuj 363 00:16:51,630 --> 00:16:54,265 perdi iun, ĉu ĉe la komenco aŭ la fino 364 00:16:54,265 --> 00:16:55,390 dependanta sur kiel vi agu. 365 00:16:55,390 --> 00:16:59,800 Kaj tiel, mi havas ĉi branĉo, aŭ kondiĉo, se unu persono restas, 366 00:16:59,800 --> 00:17:04,490 tiam antaŭeniri kaj manipuli kiuj unu soleca persono kiu ne alvenis 367 00:17:04,490 --> 00:17:05,690 parigita kun iu alia. 368 00:17:05,690 --> 00:17:09,030 Do jen kion nomus kondiĉo, aŭ branĉo. 369 00:17:09,030 --> 00:17:11,500 >> Nun _pseudocode_ kodo pli ĝenerale povas esti 370 00:17:11,500 --> 00:17:13,730 skribita solvi ajnan numeron de problemoj. 371 00:17:13,730 --> 00:17:16,490 Kaj kion mi pensis ke ni do tie estas preni momenton 372 00:17:16,490 --> 00:17:20,089 inviti ni diros CS50 La posedi Rob Bowden sur scenejo 373 00:17:20,089 --> 00:17:25,040 esti kune du volontulojn, kiuj havas neniun ideon kio atendas. 374 00:17:25,040 --> 00:17:26,890 Mano malsupreniris tiel frue kiel mi diris tion. 375 00:17:26,890 --> 00:17:28,700 Kion pri vi en la fini tie, venu supren. 376 00:17:28,700 --> 00:17:33,040 Kaj kio pri el fora for, kiom pri vojo en la dorso. 377 00:17:33,040 --> 00:17:35,200 Reen vico, venu kun via manojn supren. 378 00:17:35,200 --> 00:17:36,475 Alright, kaj kio estas via nomo? 379 00:17:36,475 --> 00:17:36,960 >> ANITA: Anita. 380 00:17:36,960 --> 00:17:37,655 >> DAVID J. Malan: Anita. 381 00:17:37,655 --> 00:17:38,613 Konsentite, agrable renkonti vin. 382 00:17:38,613 --> 00:17:41,010 Lasu min prezenti vin al Rob Bowden. 383 00:17:41,010 --> 00:17:42,890 Tiu estas Anita. 384 00:17:42,890 --> 00:17:44,033 Kaj kio estas via nomo? 385 00:17:44,033 --> 00:17:44,800 >> Kiersten: Kiersten 386 00:17:44,800 --> 00:17:46,020 >> DAVID J. Malan: Kiersten. 387 00:17:46,020 --> 00:17:49,790 Kiersten, venu supren kaj renkonti Rob Bowden kaj Anita. 388 00:17:49,790 --> 00:17:51,036 Agrable renkonti vin. 389 00:17:51,036 --> 00:17:52,160 Kiersten: Nice to meet you. 390 00:17:52,160 --> 00:17:53,368 DAVID J. Malan: Bone, Rob. 391 00:17:53,368 --> 00:17:54,650 ROB Bowden: Nice to meet you. 392 00:17:54,650 --> 00:17:55,566 DAVID J. Malan: Anita. 393 00:17:55,566 --> 00:17:56,520 Kiersten: Hi Anita. 394 00:17:56,520 --> 00:17:58,686 DAVID J. Malan: Kaj via plurcent samklasanoj. 395 00:17:58,686 --> 00:18:02,490 Do, nun lasu min antaŭeniri kaj tiri ĝis nur simpla programo tie 396 00:18:02,490 --> 00:18:05,690 sur Mac OS ke ellasos min fakte jot kelkaj notoj suben. 397 00:18:05,690 --> 00:18:09,570 Kaj se vi infanoj volos ĉiu preni pozicion je unu el tiuj lernejoj tie, 398 00:18:09,570 --> 00:18:16,360 lasu min antaŭeniri kaj startas listo de _pseudocode_ kodo, se vi volas. 399 00:18:16,360 --> 00:18:19,970 Kaj kion mi volas fari ĉi tie, fine estas tipo por vi 400 00:18:19,970 --> 00:18:22,470 iujn instrukciojn, ke nia aŭdienco membroj estas fakte 401 00:18:22,470 --> 00:18:23,569 tuj recitos por ni. 402 00:18:23,569 --> 00:18:25,860 Lasu min kaj nur ŝanĝi ĉi tion al nombrita listo 403 00:18:25,860 --> 00:18:27,720 parigi kion ni faris tie supre. 404 00:18:27,720 --> 00:18:30,990 Kaj kion mi faros per vian helpon, estas skribi programon 405 00:18:30,990 --> 00:18:34,620 en _pseudocode_, kun kiu tiuj infanoj iras 406 00:18:34,620 --> 00:18:38,150 implementar arakido butero kaj ĵeleo sandviĉo. 407 00:18:38,150 --> 00:18:40,880 Do estas eble apropos al montri ion iuj el vi 408 00:18:40,880 --> 00:18:44,560 eble vidis en interreto por nur mallonga ĝena momento. 409 00:18:44,560 --> 00:18:47,650 >> [MUZIKO BUCKEWHEAT Boys "Peanut Butter  Jelly TEMPO "] 410 00:18:47,650 --> 00:19:08,119 411 00:19:08,119 --> 00:19:08,910 DAVID J. Malan: Bone. 412 00:19:08,910 --> 00:19:10,050 Tio sufiĉas por tio. 413 00:19:10,050 --> 00:19:12,690 Do ĉi tie dume, mi havas paro de Google Pokaloj kiu 414 00:19:12,690 --> 00:19:16,500 ni metos en CS50 propra Rob Bowden vidi la mondon tra la okuloj. 415 00:19:16,500 --> 00:19:19,140 Kaj ni faros nian eblon en post produktado por fakte teksas 416 00:19:19,140 --> 00:19:23,100 la metraje de kio Rob vidanto nun, en ĉi tiu reala prelego 417 00:19:23,100 --> 00:19:26,420 video kun niaj du volontuloj apud li. 418 00:19:26,420 --> 00:19:28,480 Do kion mi faros estas, mi estos la tajpisto. 419 00:19:28,480 --> 00:19:31,849 Ni havas la celon tie de efektive skribi programon 420 00:19:31,849 --> 00:19:34,640 kun kiu fari, en definitiva, mani buteron kaj ĵeleo sandviĉo, 421 00:19:34,640 --> 00:19:37,680 sed tiuj tri estas tuj kondutos kvazaux ili estas komputiloj. 422 00:19:37,680 --> 00:19:40,638 Kaj komputiloj, fine de la tago, Estas vere bela muta mekanismoj. 423 00:19:40,638 --> 00:19:44,432 Ili estas super rapida, sed ili povas nur do, laŭvorte, kion ili diris. 424 00:19:44,432 --> 00:19:46,890 Vi ne povas simple diri fari arakido butero kaj ĵeleo sandviĉo. 425 00:19:46,890 --> 00:19:48,640 Vi devas plani ilin fari tion. 426 00:19:48,640 --> 00:19:51,420 Vi devas rakonti ilin kun precizeco kion fari, 427 00:19:51,420 --> 00:19:54,400 malpli aĵoj iras horore kaj, espereble, gracia malbone. 428 00:19:54,400 --> 00:19:57,460 >> Do kun kiu diris, ni bezonas unu alvoko el la spektantaro 429 00:19:57,460 --> 00:19:59,440 cxar kion oni tretas unu estos, se la celo tie 430 00:19:59,440 --> 00:20:01,356 estas fari arakido butero kaj ĵeleo sandviĉo. 431 00:20:01,356 --> 00:20:01,910 Jes? 432 00:20:01,910 --> 00:20:03,647 >> Publiko: [inaudible] la saketo pano. 433 00:20:03,647 --> 00:20:05,230 DAVID J. Malan: Malfermu la sakon de pano. 434 00:20:05,230 --> 00:20:08,360 Do se la tri concursantes farus plaĉas al procedi fari tion laŭvorte. 435 00:20:08,360 --> 00:20:12,394 Malfermu la sakon de pano. 436 00:20:12,394 --> 00:20:15,810 >> [Spektantaro ridis] 437 00:20:15,810 --> 00:20:20,717 438 00:20:20,717 --> 00:20:22,300 DAVID J. Malan: Do ni laboros sur tiu. 439 00:20:22,300 --> 00:20:23,180 Bone. 440 00:20:23,180 --> 00:20:25,400 Do paŝo du, how-- ni prenu tiu plia. 441 00:20:25,400 --> 00:20:26,480 Jes, en la fronto. 442 00:20:26,480 --> 00:20:27,240 >> Publiko: [inaudible] la panon. 443 00:20:27,240 --> 00:20:27,735 >> DAVID J. Malan: Kio estas tio? 444 00:20:27,735 --> 00:20:28,836 >> Publiko: Forigi la panon. 445 00:20:28,836 --> 00:20:30,210 DAVID J. Malan: Forigi la panon. 446 00:20:30,210 --> 00:20:31,190 Simile konciza. 447 00:20:31,190 --> 00:20:33,667 Dankon. 448 00:20:33,667 --> 00:20:43,777 >> [Aplaŭdo] 449 00:20:43,777 --> 00:20:44,860 DAVID J. Malan: Estas tio? 450 00:20:44,860 --> 00:20:48,830 OK, do tretas du tuj esti forigi la panon. 451 00:20:48,830 --> 00:20:51,790 Alright, iu volas skribi al ni plu frazo? 452 00:20:51,790 --> 00:20:52,640 Iu alia? 453 00:20:52,640 --> 00:20:53,920 Iom pli [inaudible]. 454 00:20:53,920 --> 00:20:54,810 Ne, nenio nun. 455 00:20:54,810 --> 00:20:56,094 Jes? 456 00:20:56,094 --> 00:20:58,900 >> Publiko: Loko du tranĉaĵoj apud la alia. 457 00:20:58,900 --> 00:21:03,575 >> DAVID J. Malan: Loko du tranĉaĵoj apud la alia. 458 00:21:03,575 --> 00:21:06,420 >> [Spektantaro ridis] 459 00:21:06,420 --> 00:21:09,590 >> DAVID J. Malan: Loko du tranĉaĵoj apud la alia. 460 00:21:09,590 --> 00:21:11,334 Paŝi kvar. 461 00:21:11,334 --> 00:21:12,816 Jes? 462 00:21:12,816 --> 00:21:14,792 >> Publiko: Prenu vian manon kaj starigis ŝin leĝere 463 00:21:14,792 --> 00:21:17,756 sur supro de arakido butero kovrilon. 464 00:21:17,756 --> 00:21:19,710 >> [Spektantaro ridis] 465 00:21:19,710 --> 00:21:21,710 Publiko: [inaudible] apud la arakido butero. 466 00:21:21,710 --> 00:21:21,870 DAVID J. Malan: Kio? 467 00:21:21,870 --> 00:21:22,520 Diru tion denove. 468 00:21:22,520 --> 00:21:26,308 >> Publiko: desatornillar la kovrilon kaj metis ĝi milde apud la arakido butero. 469 00:21:26,308 --> 00:21:31,490 >> DAVID J. Malan: Alsxovu milde apud la arakido butero. 470 00:21:31,490 --> 00:21:37,770 471 00:21:37,770 --> 00:21:40,090 OK, progreso. 472 00:21:40,090 --> 00:21:41,080 Paŝo kvin. 473 00:21:41,080 --> 00:21:42,380 Bonega. 474 00:21:42,380 --> 00:21:43,261 Jes? 475 00:21:43,261 --> 00:21:44,163 >> Repreni trancxilon. 476 00:21:44,163 --> 00:21:46,380 477 00:21:46,380 --> 00:21:47,630 DAVID J. Malan: Prenu tranĉilon. 478 00:21:47,630 --> 00:21:52,320 479 00:21:52,320 --> 00:21:53,631 OK, paŝo ses. 480 00:21:53,631 --> 00:21:54,130 Yeah? 481 00:21:54,130 --> 00:21:56,237 >> Publiko: Hold tranĉilon per la tenilo. 482 00:21:56,237 --> 00:21:57,945 DAVID J. Malan: Hold tranĉilon per la tenilo. 483 00:21:57,945 --> 00:22:00,710 484 00:22:00,710 --> 00:22:03,230 Tenu tranĉilon per la tenilo. 485 00:22:03,230 --> 00:22:04,880 Paŝi sep. 486 00:22:04,880 --> 00:22:05,692 Jes? 487 00:22:05,692 --> 00:22:10,030 >> Publiko: [inaudible] tranĉilon en arakido butero kaj iom el [inaudible]. 488 00:22:10,030 --> 00:22:13,070 >> DAVID J. Malan: Metu tranĉilo in-- mi aŭdis "meti tranĉilon en mani buteron 489 00:22:13,070 --> 00:22:19,500 prenu kiel iom el ebla. " 490 00:22:19,500 --> 00:22:22,480 Parenteze, forigi la papero unue. 491 00:22:22,480 --> 00:22:29,320 492 00:22:29,320 --> 00:22:31,890 Bone, treti naŭ. 493 00:22:31,890 --> 00:22:34,910 Paŝi naŭ. 494 00:22:34,910 --> 00:22:35,624 Paŝi naŭ. 495 00:22:35,624 --> 00:22:37,290 Ni ne vere faris sandviĉon ankoraŭ. 496 00:22:37,290 --> 00:22:37,790 Jes? 497 00:22:37,790 --> 00:22:41,570 Publiko: Uzante tranĉilon en mani buteron apliki arakido butero sur diris pano. 498 00:22:41,570 --> 00:22:47,440 >> DAVID J. Malan: Uzante tranĉilon en arakido butero, apliki arakido butero sur 499 00:22:47,440 --> 00:22:48,736 diris pano. 500 00:22:48,736 --> 00:22:56,030 >> [Spektantaro ridis] 501 00:22:56,030 --> 00:22:59,480 DAVID J. Malan: Bone ŝtupo 10. 502 00:22:59,480 --> 00:23:01,762 Ŝtupo 10. 503 00:23:01,762 --> 00:23:02,750 Jes? 504 00:23:02,750 --> 00:23:05,220 >> Publiko: Gusto arakido butero certigi kvalito. 505 00:23:05,220 --> 00:23:15,960 >> [Spektantaro ridis] 506 00:23:15,960 --> 00:23:16,960 DAVID J. Malan: Paŝo 11. 507 00:23:16,960 --> 00:23:19,500 508 00:23:19,500 --> 00:23:21,340 Ŝtupo 11. 509 00:23:21,340 --> 00:23:22,101 Ŝtupo 11. 510 00:23:22,101 --> 00:23:22,600 Venu. 511 00:23:22,600 --> 00:23:23,099 Yeah? 512 00:23:23,099 --> 00:23:24,208 Ĝuste tie. 513 00:23:24,208 --> 00:23:25,840 >> Publiko: Zorge repreni ĵeleo. 514 00:23:25,840 --> 00:23:28,220 >> DAVID J. Malan: Zorge repreni ĵeleo. 515 00:23:28,220 --> 00:23:29,970 OK, kaj poste alia mano estis supre. 516 00:23:29,970 --> 00:23:32,812 517 00:23:32,812 --> 00:23:33,520 Ĝuste malantaŭ vi. 518 00:23:33,520 --> 00:23:35,761 Jes, en blua. 519 00:23:35,761 --> 00:23:40,671 >> Publiko: Bone, forigi kovrilo de [inaudible], jes, 520 00:23:40,671 --> 00:23:42,635 forigi kovrilo de la ĵeleo. 521 00:23:42,635 --> 00:23:43,617 >> [Spektantaro ridis] 522 00:23:43,617 --> 00:23:44,742 >> DAVID J. Malan: De ĵeleo. 523 00:23:44,742 --> 00:23:45,581 Ha ha. 524 00:23:45,581 --> 00:23:48,967 >> [Spektantaro ridis] 525 00:23:48,967 --> 00:23:49,800 DAVID J. Malan: Kaj? 526 00:23:49,800 --> 00:23:52,490 Publiko: Kaj apenaŭ balai ajna [inaudible]. 527 00:23:52,490 --> 00:23:59,536 [Spektantaro ridis] 528 00:23:59,536 --> 00:24:04,456 Publiko: Kompreneble, antaŭ [inaudible], forigi la papero de ĵeleo. 529 00:24:04,456 --> 00:24:06,940 DAVID J. Malan: Forigi papero de ĵeleo. 530 00:24:06,940 --> 00:24:08,229 Ŝtupo 14. 531 00:24:08,229 --> 00:24:09,020 Ni estas preskaŭ tie. 532 00:24:09,020 --> 00:24:09,857 Jes? 533 00:24:09,857 --> 00:24:12,600 >> Publiko: Inversigu jelly botelo antaux cxio falas. 534 00:24:12,600 --> 00:24:16,515 >> DAVID J. Malan: Inversigu ĵeleo Botelo antaŭ jelly falas. 535 00:24:16,515 --> 00:24:19,070 536 00:24:19,070 --> 00:24:19,890 Ŝtupo 15. 537 00:24:19,890 --> 00:24:21,130 >> Publiko: Anstataŭigu la ĉapo. 538 00:24:21,130 --> 00:24:22,463 >> DAVID J. Malan: Anstataŭigu la ĉapo. 539 00:24:22,463 --> 00:24:25,880 540 00:24:25,880 --> 00:24:28,190 Ŝtupo 16. 541 00:24:28,190 --> 00:24:28,931 Yeah? 542 00:24:28,931 --> 00:24:29,806 >> Publiko: [inaudible] 543 00:24:29,806 --> 00:24:34,109 544 00:24:34,109 --> 00:24:35,400 DAVID J. Malan: Diru tion denove. 545 00:24:35,400 --> 00:24:38,100 Publiko: Prenu ĉapon ekstere de via ĵeleo. 546 00:24:38,100 --> 00:24:39,650 DAVID J. Malan: Off vian ĵeleo. 547 00:24:39,650 --> 00:24:43,720 548 00:24:43,720 --> 00:24:49,510 Do really-- Oops. 549 00:24:49,510 --> 00:24:50,420 Venu. 550 00:24:50,420 --> 00:24:51,740 Anstataŭigi la ĉapo. 551 00:24:51,740 --> 00:24:56,660 Metu cap-- Vi diris forigi ĉapo de ĵeleo. 552 00:24:56,660 --> 00:24:58,950 Sentas kiel ni estas en iom de buklo. 553 00:24:58,950 --> 00:24:59,640 Ŝtupo 17. 554 00:24:59,640 --> 00:25:00,398 Jes? 555 00:25:00,398 --> 00:25:02,639 >> Publiko: [inaudible] 556 00:25:02,639 --> 00:25:03,930 DAVID J. Malan: Diru tion denove. 557 00:25:03,930 --> 00:25:05,150 Publiko: [inaudible] 558 00:25:05,150 --> 00:25:07,835 DAVID J. Malan: Reiru al step-- 559 00:25:07,835 --> 00:25:10,110 Publiko: [inaudible] 560 00:25:10,110 --> 00:25:13,760 DAVID J. Malan: Forigi ĉapo el arakido butero. 561 00:25:13,760 --> 00:25:14,492 Jes? 562 00:25:14,492 --> 00:25:16,430 >> Publiko: Drop ĉiuj ĵeleo sur la pano. 563 00:25:16,430 --> 00:25:19,040 >> DAVID J. Malan: Drop ĉiuj la ĵeleo sur la pano. 564 00:25:19,040 --> 00:25:25,372 565 00:25:25,372 --> 00:25:26,830 DAVID J. Malan: Ni estas preskaŭ tie. 566 00:25:26,830 --> 00:25:27,800 Ŝtupo 19. 567 00:25:27,800 --> 00:25:30,250 >> Publiko: Forigi troo ĵeleo. 568 00:25:30,250 --> 00:25:31,720 >> DAVID J. Malan: Haha, ĵeleo. 569 00:25:31,720 --> 00:25:36,615 >> [Aplaŭdo] 570 00:25:36,615 --> 00:25:39,240 DAVID J. Malan: Kial ne we-- pli paŝo preni ĉi hejmo. 571 00:25:39,240 --> 00:25:41,720 Unu paŝo pli kaj poste ni servi la sandviĉojn. 572 00:25:41,720 --> 00:25:42,900 Jes? 573 00:25:42,900 --> 00:25:45,570 >> Publiko: [inaudible] 574 00:25:45,570 --> 00:25:50,704 >> DAVID J. Malan: Dum ajna sandviĉo remains-- Ni indent this-- manĝi. 575 00:25:50,704 --> 00:25:56,400 >> [Spektantaro Ridado] 576 00:25:56,400 --> 00:26:00,395 >> DAVID J. Malan: Bone, dankon vi niaj volontuloj tie. 577 00:26:00,395 --> 00:26:06,150 >> [Aplaŭdo} 578 00:26:06,150 --> 00:26:08,940 >> DAVID J. Malan: Ni havas belan Adiaŭinte donacoj por ĉiu el vi. 579 00:26:08,940 --> 00:26:14,350 Via propra arakido butero, ĵeleo, kaj panon por alporti hejmen. 580 00:26:14,350 --> 00:26:15,774 Dankon. 581 00:26:15,774 --> 00:26:17,118 >> Kiersten: Dankon. 582 00:26:17,118 --> 00:26:18,618 DAVID J. Malan: [inaudible] bonvena. 583 00:26:18,618 --> 00:26:21,849 [Aplaŭdo] 584 00:26:21,849 --> 00:26:24,390 DAVID J. Malan: Do, tiu estas, Kompreneble, ridinda ekzemplo. 585 00:26:24,390 --> 00:26:24,890 Ĝuste? 586 00:26:24,890 --> 00:26:28,890 Sed ĝi specon de malkaŝi kiom ni homoj simple preni klareco por sentado. 587 00:26:28,890 --> 00:26:30,890 Kaj la fakto ke mi estis parolante al alia homo, 588 00:26:30,890 --> 00:26:33,300 li aŭ ŝi nur scias kion vi volas diri. 589 00:26:33,300 --> 00:26:35,220 >> Komputiloj ne iras scii kion vi volas diri, 590 00:26:35,220 --> 00:26:37,430 eĉ kiam oni uzas, kiel ni estas faronta hodiaŭ, 591 00:26:37,430 --> 00:26:42,300 plani ion en Scratch, oni trenu kaj guton, puzlo peco stilo lingvo. 592 00:26:42,300 --> 00:26:44,310 Eĉ desegnita por junaj infanoj, vi devas 593 00:26:44,310 --> 00:26:48,726 esti tiel eksplicita do laŭvorta kun kion vi volas, ke via programo por fari. 594 00:26:48,726 --> 00:26:50,600 Nun finfine ni estas tuj estos programado 595 00:26:50,600 --> 00:26:53,550 ne en _pseudocode_ kodo, Angla kiel sintakson, 596 00:26:53,550 --> 00:26:56,370 sed kodo aŭ, pli ĝuste, fontkodo. 597 00:26:56,370 --> 00:26:59,260 Fontkodo estas nur la imago vojo por priskribi kodo vi reale 598 00:26:59,260 --> 00:27:01,730 skribi kun klavaro tio Ne en la angla mem. 599 00:27:01,730 --> 00:27:06,480 Ĝi estas en C aŭ Java aŭ C ++ aŭ io tiel, kiel ni baldaŭ vidos. 600 00:27:06,480 --> 00:27:09,510 >> Kaj fakte, nur por timigi al kelkaj el vi, unuavide, 601 00:27:09,510 --> 00:27:13,769 tio estas programo skribita en lingvo nomita C. Sed un-susto kelkaj el vi, 602 00:27:13,769 --> 00:27:15,560 vi volas tute kompreni kion okazas 603 00:27:15,560 --> 00:27:18,980 sur venis proksima lundo kiam venas al iu kiel ĉi tio. 604 00:27:18,980 --> 00:27:20,510 Sincere, tiu estas pli malnova lingvo. 605 00:27:20,510 --> 00:27:22,430 Estas sufiĉe arcane, sed estas reprezentanto 606 00:27:22,430 --> 00:27:26,120 de multaj lingvoj tiuj tagoj kiuj havas multe da parentezoj kaj krispa 607 00:27:26,120 --> 00:27:28,630 streĉaj kaj citaĵo kadroj kaj punktokomojn. 608 00:27:28,630 --> 00:27:30,780 Kaj multan ĉi sintaksa stuff ke ne estas 609 00:27:30,780 --> 00:27:32,450 tute intelekte interesa. 610 00:27:32,450 --> 00:27:35,790 Efektive, ĝi estas absolutajn distro el la tre simplajn ideojn 611 00:27:35,790 --> 00:27:37,370 kiuj fiksrigardis nin en la vizaĝo. 612 00:27:37,370 --> 00:27:41,760 Tiu programo, kiel vi eble ĝuste diveni, impresoj al ies komputilo ekrano 613 00:27:41,760 --> 00:27:44,070 la vortoj "Saluton komo mondo." 614 00:27:44,070 --> 00:27:44,860 Estas tio. 615 00:27:44,860 --> 00:27:46,580 Do klare, ke estas multajn aĵoj estas 616 00:27:46,580 --> 00:27:48,970 alvenante en la vojo iu evidenteco tie, 617 00:27:48,970 --> 00:27:52,490 sed tuj rapide glitas for kaj esti tute intuitiva. 618 00:27:52,490 --> 00:27:55,617 >> Efektive, kion ni faros hodiaŭ distili tiu sufiĉe kompleksa 619 00:27:55,617 --> 00:27:58,950 rigardas programon, kiu denove vi venis kompreni rapide, sed al io 620 00:27:58,950 --> 00:27:59,710 multe pli simpla. 621 00:27:59,710 --> 00:28:01,640 Ni simple diru kion ni volas diri. 622 00:28:01,640 --> 00:28:05,590 Ni desegni bildon de kion ni volas diri, tra tiuj puzlo pecoj tie. 623 00:28:05,590 --> 00:28:09,110 >> Do tiu estas programado lingvo konata kiel Scratch. 624 00:28:09,110 --> 00:28:11,080 Ĝi estis disvolvita de MIT Media Lab. 625 00:28:11,080 --> 00:28:14,830 Kaj kion vi vidas en problemo starigis nulo, kiu estos ĵetita poste tiu nokto, 626 00:28:14,830 --> 00:28:18,980 ni havos vi iros al tiu URL tie scratch.mit.edu. 627 00:28:18,980 --> 00:28:20,940 Kaj ili havas retejon bazita interfaco tra kiu 628 00:28:20,940 --> 00:28:22,540 vi skribos vian unuan programon. 629 00:28:22,540 --> 00:28:25,330 Aŭ tiuj de vi antaŭa sperto, via dua programoj, 630 00:28:25,330 --> 00:28:28,090 sed en medio tio probable iom familiarizados kaj ke 631 00:28:28,090 --> 00:28:32,930 pelos vin krei ion uzante tiu tre vida medio. 632 00:28:32,930 --> 00:28:35,940 >> Nun, kion mi faros ĉi tie estas malfermi la programo mem. 633 00:28:35,940 --> 00:28:41,911 Ekzistas ne nur kiel retumilo, sed ankaŭ kiel elŝutebla programo 634 00:28:41,911 --> 00:28:44,660 tiel ke vi povas efektive uzi ĝin se vi ne havas aliron al interreto. 635 00:28:44,660 --> 00:28:46,743 Kaj mi tuj faros tion en tie, en Sanders, simple 636 00:28:46,743 --> 00:28:49,580 en kazo la Wi-Fi ne kunlaboru súper bone. 637 00:28:49,580 --> 00:28:52,640 Kaj kion mi tuj faros estas punkto el kelkaj trajtoj de tiu programo. 638 00:28:52,640 --> 00:28:55,720 Do, esti klara: Mi havas nur duobla klakis la ikonon sur mia labortablo, 639 00:28:55,720 --> 00:28:59,830 aŭ ekvivalente irinta al scratch.mit.edu, kaj ĝin tiris supren fenestron. 640 00:28:59,830 --> 00:29:01,650 Jen programado medio. 641 00:29:01,650 --> 00:29:04,110 Ĝi estas peco de programaro kiu kelkaj el niaj amikoj ĉe MIT 642 00:29:04,110 --> 00:29:08,850 skribis ke ni nin kaj vi skribas programoj en lingvo nomita Scratch. 643 00:29:08,850 --> 00:29:12,010 >> Nun ĉi tio okazas al esti kato, kiu estas ankaŭ nomata Scratch 644 00:29:12,010 --> 00:29:13,890 kaj jen estas la mondo en kiu li vivas. 645 00:29:13,890 --> 00:29:17,175 Ĉi tio estas la scenejo, tiel diri, ke rektangulo sur la supra maldekstra angulo. 646 00:29:17,175 --> 00:29:18,800 Kaj li ne devas rigardi kiel kato. 647 00:29:18,800 --> 00:29:20,591 Vi povas fari lin rigardi kiel nenion kaj vi 648 00:29:20,591 --> 00:29:23,700 povas havi multajn tiajn sprites, aŭ karakteroj, en programo. 649 00:29:23,700 --> 00:29:27,450 Dume, pli tie en la malproksima Bone, estas granda blanka skribtabulo. 650 00:29:27,450 --> 00:29:30,260 Kaj ĉi tiu estas kie, momente, ni tuj komencos programado 651 00:29:30,260 --> 00:29:32,750 trenante kaj delasante tiuj grafikaj enigmo 652 00:29:32,750 --> 00:29:35,300 pecoj kiu pravas tie en la mezo. 653 00:29:35,300 --> 00:29:38,140 Kaj tie estas vojo pli da ili ol ni devos elspezi tempon ĉi tie en klaso 654 00:29:38,140 --> 00:29:40,080 ĉar vi trovos ke Ili ĉiuj estas sufiĉe intuitivo. 655 00:29:40,080 --> 00:29:41,788 Denove, ĝi estas desegnita por infanoj, sed ni 656 00:29:41,788 --> 00:29:45,759 uzi ĝin por turmentus aparte iujn el tiuj fundamentaj ideoj de variabloj, loops, 657 00:29:45,759 --> 00:29:48,050 kondiĉoj, kaj, baldaŭ, aĵoj kiel funkcioj kaj eventoj 658 00:29:48,050 --> 00:29:51,810 kaj fadenoj kaj aliaj fancy aferojn ni atingi antaux longa por fakte krei 659 00:29:51,810 --> 00:29:53,840 ion de Scratch. 660 00:29:53,840 --> 00:29:54,810 Vortludo intencita. 661 00:29:54,810 --> 00:29:58,740 >> Nun, kion mi faros ĉi tie alklaku ne moviĝo, sed kontrolo. 662 00:29:58,740 --> 00:30:01,400 Kaj tio estas nur categorización de here-- 663 00:30:01,400 --> 00:30:03,150 Mi vidas alian koloro aro de blokoj. 664 00:30:03,150 --> 00:30:05,030 Sed rimarki kelkajn familiarajn vortojn. 665 00:30:05,030 --> 00:30:07,830 "Se" kaj "alie se" kaj "ripeto". 666 00:30:07,830 --> 00:30:10,440 Kaj vi povas verŝajne diveni tio memoras la branĉo, 667 00:30:10,440 --> 00:30:12,870 aŭ la kondiĉojn ni vidis, eĉ la looping konstrui. 668 00:30:12,870 --> 00:30:14,760 Do ni havas similajn blokoj tie. 669 00:30:14,760 --> 00:30:16,720 Sed la plej interesa estas ĉi tie. 670 00:30:16,720 --> 00:30:20,690 Kiam ĉi verda flago estas klakis, tiu, por tiuj kun antaŭaj programado 671 00:30:20,690 --> 00:30:23,110 sperto, estas ekvivalenta al ĉefa funkcio. 672 00:30:23,110 --> 00:30:25,300 Sed por tiuj nekonataj, tio estas la puzlo peco 673 00:30:25,300 --> 00:30:27,320 ke estos piedbati komenci nian tutan programon. 674 00:30:27,320 --> 00:30:31,350 Ĝi laŭvorte signifas kiam mi veturas, en tiu programo, kaj klaku verda flag-- 675 00:30:31,350 --> 00:30:35,560 kiun vi povas vidi ĉi tie en la supra maldekstra angulo de la UI, 676 00:30:35,560 --> 00:30:38,570 tiel vidas la verdan flagon apud la ruĝa halto signo? 677 00:30:38,570 --> 00:30:41,475 Kiam mi klakas, miaj programo tuj kuros. 678 00:30:41,475 --> 00:30:43,850 Nun, mi volas fari ion súper simpla kun Scratch. 679 00:30:43,850 --> 00:30:46,640 Mi tuj iros antaŭen kaj iri al la rigardojn panelo 680 00:30:46,640 --> 00:30:50,010 tien, kie mi havas faskon purpura puzlo pecoj 681 00:30:50,010 --> 00:30:53,887 kaj mi tuj iros antaŭen kaj fari io súper simpla kiel, diru. 682 00:30:53,887 --> 00:30:55,720 Kaj then-- avizo ĉi teksto en la blanka skatolo 683 00:30:55,720 --> 00:30:59,290 Estas editable-- Mi tuj diru "Saluton mondo" nur ŝatis nin 684 00:30:59,290 --> 00:31:01,470 faris en tiu teksta Versio antaŭ momento. 685 00:31:01,470 --> 00:31:05,920 Kaj nun se mi iros kaj alklaki ĉi verdan flagon, mi nun programita. 686 00:31:05,920 --> 00:31:07,810 Ne estas aparte interesa programo, 687 00:31:07,810 --> 00:31:09,760 sed mi faris la komputilo fari ion. 688 00:31:09,760 --> 00:31:13,120 Mi komencis programon kaj ĝi faris kion mi rakontis fari. 689 00:31:13,120 --> 00:31:16,170 Nun, mi povas daŭrigi treni kaj faligi pli kaj pli da tiuj puzlo pecoj 690 00:31:16,170 --> 00:31:19,220 kaj ili tuj interplektiĝas, sed ni frapas iuj terminologio ĉi tie 691 00:31:19,220 --> 00:31:21,680 ke ni vidos ripetiĝantajn laŭlonge de la kurso, 692 00:31:21,680 --> 00:31:24,610 kaj vere tra komputiko kaj programado pli ĝenerale. 693 00:31:24,610 --> 00:31:27,990 >> Tiu "diri" bloko, purpura, ni simple komenci nomante komunikaĵo. 694 00:31:27,990 --> 00:31:29,240 Estas kiel deklaro de fakto. 695 00:31:29,240 --> 00:31:30,380 Ĉu ĉi. 696 00:31:30,380 --> 00:31:32,590 Do, ĝi estas kategorio de instrukciojn ke vi 697 00:31:32,590 --> 00:31:36,760 povus nutri komputilo kiel parto de programo aŭ algoritmo. 698 00:31:36,760 --> 00:31:39,270 Kaj esti klaraj, vi havas verŝajne memkompreneble 699 00:31:39,270 --> 00:31:41,930 ke vi havas programojn en via komputilo. 700 00:31:41,930 --> 00:31:45,850 Kaj ili estas speco de algoritmoj, sed programo estas vere faskon de algoritmoj 701 00:31:45,850 --> 00:31:47,160 ke iuj homoj skribis. 702 00:31:47,160 --> 00:31:49,040 Ili pakas ĝin kaj ili vendis ĝin por vi, 703 00:31:49,040 --> 00:31:51,330 aŭ ili eldonis en retejo por elŝuti. 704 00:31:51,330 --> 00:31:54,930 Do, programo estas nur tuta aro de nuloj kaj 705 00:31:54,930 --> 00:31:56,970 ke iel homoj kreis. 706 00:31:56,970 --> 00:32:00,080 Kaj tiuj ŝablonoj de nuloj kaj karaj reprezentas aferojn, finfine, 707 00:32:00,080 --> 00:32:04,030 kiel "diri saluton mondo" aŭ "ludo tiu muziko "aŭ" ludi ĉi video " 708 00:32:04,030 --> 00:32:05,129 aŭ "sendu retmesaĝon." 709 00:32:05,129 --> 00:32:06,920 Sed ni revenos en vojon pli detale kion 710 00:32:06,920 --> 00:32:08,780 programo estas kiam vin, mem skribi ilin. 711 00:32:08,780 --> 00:32:11,320 >> Jen alia statement-- "Atendu por unu sekundo." 712 00:32:11,320 --> 00:32:14,330 Mi ne uzis ĉi ankoraŭ, sed se mi volas mia programo paŭzi momenton 713 00:32:14,330 --> 00:32:16,540 fari ion, mi povas diri al li tion fari. 714 00:32:16,540 --> 00:32:18,450 Atendi unu sekundo. 715 00:32:18,450 --> 00:32:20,150 Nun alia povus esti "ludi sonon." 716 00:32:20,150 --> 00:32:23,270 Do, tiu estas unika al nulo, ĝi havas la kapablon de reprodukti sonojn. 717 00:32:23,270 --> 00:32:26,130 Do, aserto mi povus uzo estas, ĉi tie, "ludi sonon." 718 00:32:26,130 --> 00:32:29,530 Dume, Bulea esprimo tial ĉi estas amatoro vorto 719 00:32:29,530 --> 00:32:34,490 nomita post nur ulo nomata ro bool, kaj tio estas ĉio pri demando. 720 00:32:34,490 --> 00:32:37,470 Veraj aŭ false-- estas la muson malsupren? 721 00:32:37,470 --> 00:32:41,100 Bulea esprimo estas nur iu esprimo angla 722 00:32:41,100 --> 00:32:42,860 ke estas aŭ vera aŭ malvera. 723 00:32:42,860 --> 00:32:44,140 Ĉu aŭ malŝalti. 724 00:32:44,140 --> 00:32:45,130 Ĉu unu aŭ nulo. 725 00:32:45,130 --> 00:32:46,960 Vi povas pensi pri tio en ajna nombro de manieroj, 726 00:32:46,960 --> 00:32:49,220 sed estas ĉu vera aŭ tiu falsa, finfine. 727 00:32:49,220 --> 00:32:52,540 Do "muson malsupren demandosigno" ke estus Bulea esprimo. 728 00:32:52,540 --> 00:32:54,300 Kaj vi povas pensi pri aliaj, eble. 729 00:32:54,300 --> 00:32:57,510 Ekzemple, "estas la maldekstra nombro malpli ol la dekstra kvanto? " 730 00:32:57,510 --> 00:32:59,410 Tio ankaŭ estus Bulea esprimo. 731 00:32:59,410 --> 00:33:01,540 "Malpli ol" estas Bulea esprimo. 732 00:33:01,540 --> 00:33:03,280 >> Ĉi tiu, tro "tuŝi muskursoron." 733 00:33:03,280 --> 00:33:05,196 Mi ne certas kial nomis ĝin muskursoron. 734 00:33:05,196 --> 00:33:08,430 Ĝi simple signifas, estas la kursoro, estas la arrow sur la ekrano, tuŝante la katon, 735 00:33:08,430 --> 00:33:09,022 ekzemple. 736 00:33:09,022 --> 00:33:10,480 Aŭ iu alia aspekto de la ekrano. 737 00:33:10,480 --> 00:33:13,710 Kaj ĝi estas demando, denove, kiu denota Bulea esprimo. 738 00:33:13,710 --> 00:33:17,130 Iu kiu vi povus volas uzi en kondiĉo. 739 00:33:17,130 --> 00:33:19,100 Do ni venas al tio en nur momento. 740 00:33:19,100 --> 00:33:20,350 Vi povas "kaj" aĵoj kune. 741 00:33:20,350 --> 00:33:23,099 Do, se vi volas kontroli ĉu tiu Estas la kazo kaj tiu estas la kazo, 742 00:33:23,099 --> 00:33:25,580 Vi povas uzi "kaj" bloko kiel ĉi. 743 00:33:25,580 --> 00:33:26,850 Kaj jen tiu kondiĉo. 744 00:33:26,850 --> 00:33:31,290 Rimarku la formon de la eta malfermo sur la supro de tiu flava puzlo peco, 745 00:33:31,290 --> 00:33:34,480 estas rememorado de la formo ke ni ĵus vidis antaŭ momento. 746 00:33:34,480 --> 00:33:37,920 Ĉiu de ĉi tiuj Bulea esprimoj havas tiuj pintaj lateroj 747 00:33:37,920 --> 00:33:39,030 sur la maldekstra kaj dekstra. 748 00:33:39,030 --> 00:33:43,140 Kaj tio estas pro la MIT uloj decidis ke per vide transportante formojn, 749 00:33:43,140 --> 00:33:45,780 vi povas speco de helpi homojn, studentoj kaj infanoj egale, 750 00:33:45,780 --> 00:33:47,650 al speco de plenigi la spacojn laŭvorte. 751 00:33:47,650 --> 00:33:49,780 >> Nun ke puzzle-- ke malfermo estas iom malgranda, 752 00:33:49,780 --> 00:33:52,750 kaj kiel ni vidos en la programo, en Scratch, ĝi kreskos persvadi. 753 00:33:52,750 --> 00:33:54,830 Ĝi subtenas lian formon, finfine. 754 00:33:54,830 --> 00:33:58,350 Do kondiĉo ni decidas "Mi devus fari ion aŭ ne?" 755 00:33:58,350 --> 00:34:00,470 Bulea esprimo estas la efektiva demando 756 00:34:00,470 --> 00:34:04,100 vi uzas por decidi cxu mi iru maldekstren OR mi iros dekstren 757 00:34:04,100 --> 00:34:06,710 kiam mi renkontas ĉi tn forko en la vojo? 758 00:34:06,710 --> 00:34:07,980 Vi povas havi du branĉojn. 759 00:34:07,980 --> 00:34:10,909 Se io estas vera, do tiu, alie iri tiun vojon, 760 00:34:10,909 --> 00:34:14,590 aŭ vi povas simple fari nenion ĉiuj, kiel tiu bloko implicita. 761 00:34:14,590 --> 00:34:16,360 Simile, ni povas neston tion. 762 00:34:16,360 --> 00:34:20,204 Do se vi volas triobligi forko en la vojo, aŭ fari tion aŭ ĉi tion aŭ tion, 763 00:34:20,204 --> 00:34:21,870 Vi povas simple nesto tion kune. 764 00:34:21,870 --> 00:34:24,520 Kaj ĝi komencas akiri iom malbela, eventuale, por certa, 765 00:34:24,520 --> 00:34:26,120 sed la logiko estas ankoraŭ la sama. 766 00:34:26,120 --> 00:34:28,000 Vi povas laŭvorte legis ĉi supre sube 767 00:34:28,000 --> 00:34:33,290 kaj ĝi diras kio means-- se tiu estas vera, do tio, alie se alie. 768 00:34:33,290 --> 00:34:36,179 >> Ciklo ne ricevas pli simpla en Scratch. 769 00:34:36,179 --> 00:34:37,422 Forever fari la sekvan. 770 00:34:37,422 --> 00:34:39,880 Nun vi eble ne kredas vin povas fari multe ĉar ne 771 00:34:39,880 --> 00:34:42,839 multa spaco inter la pinto kaj la malsupro de tiu puzlo peco malfermo. 772 00:34:42,839 --> 00:34:45,671 Sed vi vidos Scratch tuj kreski por persvadi kiel multaj puzlo pecoj 773 00:34:45,671 --> 00:34:47,060 kiel vi volas Cram tie. 774 00:34:47,060 --> 00:34:48,960 Alia buklo eble esprimita per ripetoj. 775 00:34:48,960 --> 00:34:51,590 Se vi scias anticipe, "mi voli fari ion 10 fojojn! " 776 00:34:51,590 --> 00:34:54,010 Vi povas simple diri Scratch fari ion 10 fojojn. 777 00:34:54,010 --> 00:34:57,260 Kaj dume, ni povas havi variablojn. 778 00:34:57,260 --> 00:34:59,572 Do jen arbitran unu, ĝi estas oranĝkolora tiukaze 779 00:34:59,572 --> 00:35:00,780 kaj jen ventego ĝiras. 780 00:35:00,780 --> 00:35:04,540 Denove, vi trovos ĉi tre atingebla unufoje vi komencas montrante kaj musklako. 781 00:35:04,540 --> 00:35:07,930 Mi nomis mian variablo n, sed mi povus esti enoficigis ajn mi volas, 782 00:35:07,930 --> 00:35:11,280 kaj mi fiksante ĝin ĉi tie, en tiu arbitra ekzemplo, al nulo. 783 00:35:11,280 --> 00:35:14,250 >> Nun vidinte programon kiel saluton mondo ne ĉiuj kiuj konvinka, 784 00:35:14,250 --> 00:35:17,900 do ni fakte malfermas ion ke iama studento faris. 785 00:35:17,900 --> 00:35:23,100 Lasu min kaj malfermu, Ekzemple, ĉi tie, 786 00:35:23,100 --> 00:35:26,780 por kio mi amas havi volontulon. 787 00:35:26,780 --> 00:35:28,450 Bone, kiom about-- ni pluen. 788 00:35:28,450 --> 00:35:29,240 Jes, venu supren. 789 00:35:29,240 --> 00:35:30,056 Kio estas via nomo? 790 00:35:30,056 --> 00:35:30,635 >> Abby: Abby. 791 00:35:30,635 --> 00:35:32,010 DAVID J. Malan: Abby, venu supren. 792 00:35:32,010 --> 00:35:35,930 Do ĉu vi iam ludis tiu ludo antaŭe? 793 00:35:35,930 --> 00:35:36,430 Abby: Ne 794 00:35:36,430 --> 00:35:37,370 DAVID J. Malan: Bone. 795 00:35:37,370 --> 00:35:38,380 David agrable renkonti vin. 796 00:35:38,380 --> 00:35:39,620 Venu super. 797 00:35:39,620 --> 00:35:42,300 Kaj kio estas via programado fono, ia. 798 00:35:42,300 --> 00:35:43,914 >> Abby: Mi lernis iom C ++. 799 00:35:43,914 --> 00:35:45,580 DAVID J. Malan: Vi lernis iuj C ++. 800 00:35:45,580 --> 00:35:48,382 Kaj kio estas via ludo ludi fono? 801 00:35:48,382 --> 00:35:49,505 >> Abby: Ne multe. 802 00:35:49,505 --> 00:35:51,130 DAVID J. Malan: Bone, do ni prenu tion. 803 00:35:51,130 --> 00:35:52,700 Do jen kiel la ludo tuj funkcios. 804 00:35:52,700 --> 00:35:54,510 Mi tuj iros antaŭen kaj klaku la verdan flagon, kiu 805 00:35:54,510 --> 00:35:55,830 estas ĝis tie supre dekstre. 806 00:35:55,830 --> 00:35:59,710 Nun via antaŭulo en la klaso donis al vi kelkajn instrukciojn tie. 807 00:35:59,710 --> 00:36:02,306 Kaj en nur momento, diras "spacon por komenci." 808 00:36:02,306 --> 00:36:03,680 Do iru antaŭen kaj frapis la spacebar. 809 00:36:03,680 --> 00:36:05,507 >> Komputila LUDO: Pikachu. 810 00:36:05,507 --> 00:36:08,340 DAVID J. Malan: Kaj la celo estas kapti la nutraĵon, kiel reprezentita tie 811 00:36:08,340 --> 00:36:09,320 sur la maldekstra. 812 00:36:09,320 --> 00:36:11,388 Kaj [inaudible] 813 00:36:11,388 --> 00:36:15,356 >> [LUDO MUZIKO Ludante] 814 00:36:15,356 --> 00:36:27,280 815 00:36:27,280 --> 00:36:29,610 >> DAVID J. Malan: Aww, nu, dankon por ludi. 816 00:36:29,610 --> 00:36:32,800 Ni havas ĉi tie iom Adiaŭinte donaco por vi. 817 00:36:32,800 --> 00:36:35,574 Ni havas CS50 streso pilko, Se vi ŝatus elekti. 818 00:36:35,574 --> 00:36:36,820 Bone, bone renkonti vin. 819 00:36:36,820 --> 00:36:39,680 Dankon pro via vizito kaj defianta. 820 00:36:39,680 --> 00:36:42,410 821 00:36:42,410 --> 00:36:46,910 Do ni havas pli streso pilkoj, tial ni faru ekzemplo pli motivi. 822 00:36:46,910 --> 00:36:48,150 Volontulo? 823 00:36:48,150 --> 00:36:50,510 Bone, kio pri ĝuste ĉi tie antaŭ. 824 00:36:50,510 --> 00:36:51,250 Kio estas via nomo? 825 00:36:51,250 --> 00:36:51,660 >> Phillip: Phillip. 826 00:36:51,660 --> 00:36:52,660 >> DAVID J. Malan: Phillip. 827 00:36:52,660 --> 00:36:54,530 Venu supren, Phillip. 828 00:36:54,530 --> 00:36:57,340 Do, Phillip tuj estos defiita kun alia ludo 829 00:36:57,340 --> 00:37:00,840 ke unu el viaj antaŭuloj skribis kiel parto de la problemo starigis nulo, 830 00:37:00,840 --> 00:37:03,510 nomita Ivy La Hardest Game. 831 00:37:03,510 --> 00:37:05,980 Kaj ni vidos en nur momento kion signifas tio. 832 00:37:05,980 --> 00:37:07,400 Phillip, agrable renkonti vin. 833 00:37:07,400 --> 00:37:09,060 Kio estas via fono? 834 00:37:09,060 --> 00:37:10,310 Phillip: Done multajn kodigo. 835 00:37:10,310 --> 00:37:11,110 Farita iom ludoj, ankaŭ. 836 00:37:11,110 --> 00:37:11,570 >> DAVID J. Malan: Bone. 837 00:37:11,570 --> 00:37:12,620 Got multajn ludoj, ankaŭ. 838 00:37:12,620 --> 00:37:14,230 Kaj vi ludis tiun ludon antaŭ? 839 00:37:14,230 --> 00:37:14,730 >> Phillip: Neniu 840 00:37:14,730 --> 00:37:16,438 DAVID J. Malan: Ĉiuj Bone, do jen ni iru. 841 00:37:16,438 --> 00:37:18,434 Mi tuj iros antaŭen kaj klaku la verdan flagon. 842 00:37:18,434 --> 00:37:24,160 >> [LUDO MUZIKO] 843 00:37:24,160 --> 00:37:27,770 >> [MUZIKO MC Hammer, "U ne povas tuŝi ĈI"] 844 00:37:27,770 --> 00:38:39,790 845 00:38:39,790 --> 00:38:41,635 >> Phillip: [inaudible] 846 00:38:41,635 --> 00:38:42,760 DAVID J. Malan: [inaudible] 847 00:38:42,760 --> 00:38:44,740 Phillip: [inaudible] 848 00:38:44,740 --> 00:38:49,056 [Ridante] 849 00:38:49,056 --> 00:38:50,680 [MUZIKO MC Hammer, "U ne povas tuŝi ĈI"] 850 00:38:50,680 --> 00:38:52,660 DAVID J. Malan: [inaudible] Plugi tra ĝi. 851 00:38:52,660 --> 00:38:54,094 Phillip: [inaudible] 852 00:38:54,094 --> 00:38:55,135 DAVID J. Malan: Iru antaŭen. 853 00:38:55,135 --> 00:39:01,570 [MUZIKO MC Hammer, "U ne povas tuŝi ĈI"] 854 00:39:01,570 --> 00:39:15,832 855 00:39:15,832 --> 00:39:16,915 DAVID J. Malan: Bone. 856 00:39:16,915 --> 00:39:18,400 Gratulojn. 857 00:39:18,400 --> 00:39:25,150 >> [Aplaŭdo] 858 00:39:25,150 --> 00:39:27,330 >> DAVID J. Malan: Ni volas post tiu linio poste tiom 859 00:39:27,330 --> 00:39:29,820 ke vi povas prokrasti kun ĝi ankaŭ. 860 00:39:29,820 --> 00:39:32,550 Princeton venas supren proksima, post tio. 861 00:39:32,550 --> 00:39:35,470 >> Do nun ni vere procedi komenci de nulo, 862 00:39:35,470 --> 00:39:39,310 tiel diri, kaj fakte konstrui ĝis ni povas turmentus aparte kelkaj el tiuj ideoj 863 00:39:39,310 --> 00:39:41,970 kaj instigi al io eĉ pli kompleksa por la fino. 864 00:39:41,970 --> 00:39:45,240 Mi tuj iros tien, kaj mi tuj antaŭeniri kaj krei novan dosieron. 865 00:39:45,240 --> 00:39:47,460 Do denove, la problemo aro irados vi per kelkaj el tiuj paŝoj. 866 00:39:47,460 --> 00:39:49,300 Sed, kion mi faris estis go al la menuo Dosiero kaj mi 867 00:39:49,300 --> 00:39:52,760 diris "nova", tiel kiel Microsoft Vorto aŭ ajna programo simila. 868 00:39:52,760 --> 00:39:56,630 >> Kaj ni iru antaŭen now-- kaj ni implementado "Saluton mondo" antaŭ momento, 869 00:39:56,630 --> 00:39:58,410 sed ni faru ion iom pli beleta. 870 00:39:58,410 --> 00:40:00,150 Mi tuj iros al eventoj. 871 00:40:00,150 --> 00:40:02,350 Kaj Mi faros "kiam verdaj flago klakis. " 872 00:40:02,350 --> 00:40:05,830 Kaj tiam mi tuj uzos, ni diros, branĉo. 873 00:40:05,830 --> 00:40:07,610 Do mi tuj uzos "se" kondiĉo. 874 00:40:07,610 --> 00:40:10,940 Kaj rimarki kiom kiam mi alproksimigi al ĝi, ĝi volas kapti kune. 875 00:40:10,940 --> 00:40:13,020 Do mi lasos ŝin punto kune. 876 00:40:13,020 --> 00:40:15,150 Kaj nun mi povas fari ion interesan. 877 00:40:15,150 --> 00:40:19,150 Se mi rulumu tra tie, mi tuj vidi tutan faskon da blokoj. 878 00:40:19,150 --> 00:40:22,620 Se mi iras al "datumo" - lasu min zomi in-- estas io pri variabloj. 879 00:40:22,620 --> 00:40:26,160 Se mi iras al "movado", vi povas ŝajne turni aferojn ĉirkaŭ. 880 00:40:26,160 --> 00:40:28,760 Se mi iras al "operatoroj" - ho, tio estas interesa, 881 00:40:28,760 --> 00:40:31,000 Mi povas pluki hazarda nombro. 882 00:40:31,000 --> 00:40:34,119 Do lasu min fari ion kun nur iu probablo, nur ĉar. 883 00:40:34,119 --> 00:40:36,160 Mi tuj iros antaŭen kaj treni ĉi puzlo peco, 884 00:40:36,160 --> 00:40:37,910 tio estas ke malpli ol bloko, do ĝi estas nur 885 00:40:37,910 --> 00:40:39,480 "Estas ĉi tiu nombro malpli ol tiu?" 886 00:40:39,480 --> 00:40:42,438 Sed mi ne volas malmola kodo nombro ĉar tio estos bela sencela. 887 00:40:42,438 --> 00:40:46,270 Do mi tuj trenos tiu peco tie kaj rimarki kiom gxi punto en, 888 00:40:46,270 --> 00:40:49,480 Nun lasu min antaŭeniri kaj diri "se la numero kiu estas elektita hazarde 889 00:40:49,480 --> 00:40:51,820 Estas malpli ol ses, cxu la jenaj. " 890 00:40:51,820 --> 00:40:52,790 Nun kial malpli ol ses? 891 00:40:52,790 --> 00:40:56,400 Kio probablo estas ĉi efike tuj al mi, nur intuicie? 892 00:40:56,400 --> 00:40:57,440 Ĉirkaŭ 50%, dekstra? 893 00:40:57,440 --> 00:41:01,190 Se la numero kiu la diveni hazarde inter 1 kaj 10 estas malpli ol ses, 894 00:41:01,190 --> 00:41:03,480 klare estas unu, du, tri, kvar, aŭ kvin. 895 00:41:03,480 --> 00:41:06,740 Kaj por ke tuj donos al mi 50% probablo de kio okazas? 896 00:41:06,740 --> 00:41:09,890 >> Nu ni faru ion kiel tiu, "ludi sonon meow." 897 00:41:09,890 --> 00:41:11,750 Kaj avizo, denove, la puzlo peco kreskas 898 00:41:11,750 --> 00:41:13,700 persvadi, tiel longe kiel la formoj koincidas. 899 00:41:13,700 --> 00:41:14,910 Tio estas kio estas grava. 900 00:41:14,910 --> 00:41:18,000 Permesu al mi iri al Scratch tie kaj klaku "ludo." 901 00:41:18,000 --> 00:41:19,300 Nenio okazas. 902 00:41:19,300 --> 00:41:21,160 Ĉu cimon? 903 00:41:21,160 --> 00:41:21,999 Ne, ne necesa. 904 00:41:21,999 --> 00:41:24,040 Ĝi povus simple esti, ke granda nombro estis elektita. 905 00:41:24,040 --> 00:41:25,762 Do ni faru ĝin denove. 906 00:41:25,762 --> 00:41:27,550 Nenio. 907 00:41:27,550 --> 00:41:28,344 >> [Meow] 908 00:41:28,344 --> 00:41:29,510 DAVID J. Malan: Tie estas. 909 00:41:29,510 --> 00:41:30,280 [Meow] 910 00:41:30,280 --> 00:41:31,690 DAVID J. Malan: Denove. 911 00:41:31,690 --> 00:41:32,300 No. 912 00:41:32,300 --> 00:41:32,922 >> [MEOWING] 913 00:41:32,922 --> 00:41:35,380 DAVID J. Malan: Do se vi havas iam ludis ludon, kompreneble, 914 00:41:35,380 --> 00:41:38,500 kie stuff okazas hazarde, kiel kanajloj venos aŭ ne 915 00:41:38,500 --> 00:41:41,350 venantan sur la ekrano, aŭ aĵoj fali aŭ ne fali, 916 00:41:41,350 --> 00:41:43,610 tio estas nur ĉar iu súper simpla kiel tio okazas. 917 00:41:43,610 --> 00:41:46,010 Pick hazarda nombro, kaj se ĝi estas malpli ol iu valoro, 918 00:41:46,010 --> 00:41:49,100 eble fari tion aŭ eble fari tion. 919 00:41:49,100 --> 00:41:51,340 Ni povas korpigi ke en kondiĉo. 920 00:41:51,340 --> 00:41:52,600 Ni faru ion malsama. 921 00:41:52,600 --> 00:41:53,559 >> Lasu min ĵeti ke for. 922 00:41:53,559 --> 00:41:56,058 Vi povas forigi necesajxojn simple trenante ĝin maldekstren 923 00:41:56,058 --> 00:41:56,810 kaj malfiksi. 924 00:41:56,810 --> 00:42:00,310 Lasu min kaj fari ĉiam bloko kaj tre rapide fari ion ĝena. 925 00:42:00,310 --> 00:42:03,010 Lasu min kaj diri "ludi sonon meow." 926 00:42:03,010 --> 00:42:06,620 Sed mi ne volas ĉi tro ĝena, do lasu min ekpreni tiu bloko, 927 00:42:06,620 --> 00:42:09,090 "Atendu dua," kaj avizo ekzistas nenia loko por ĝi. 928 00:42:09,090 --> 00:42:11,310 Sed se vi iros fermi sufiĉa, volas iri tien. 929 00:42:11,310 --> 00:42:14,100 Do mi lasos ŝin volas kreskas plenigi la bloko. 930 00:42:14,100 --> 00:42:15,932 Do nun, ĉi tiu estas buklo. 931 00:42:15,932 --> 00:42:16,432 [MEOWING] 932 00:42:16,432 --> 00:42:18,473 DAVID J. Malan: Mi laŭvorte faras ĉi eterne. 933 00:42:18,473 --> 00:42:19,360 Denove kaj denove. 934 00:42:19,360 --> 00:42:21,510 Tio estas ĝuste ne natura sondado. 935 00:42:21,510 --> 00:42:24,800 Lasu min kaj ŝanĝi ĉi ne dua, por du sekundoj 936 00:42:24,800 --> 00:42:25,854 kaj batis Enter. 937 00:42:25,854 --> 00:42:28,770 Kaj kio estas agrabla pri Scratch estas ke vi povus plani interage. 938 00:42:28,770 --> 00:42:32,450 Fari ŝanĝon, eble batis Enter aŭ Ludu denove, kaj gxi estos nur plu iri. 939 00:42:32,450 --> 00:42:34,962 Nu, nun kial ni ne faru iu iom pli beleta? 940 00:42:34,962 --> 00:42:39,680 Anstataŭ fari ĉion de nulo, lasu min antaŭeniri kaj malfermu anticipan 941 00:42:39,680 --> 00:42:43,180 faris, ke mi pre-bakita, nomata "Pet la Kato." 942 00:42:43,180 --> 00:42:44,920 Kaj ni sendi ĉiujn tiujn dosierojn enreta, 943 00:42:44,920 --> 00:42:48,464 kaj problemo starigis nulo rakontos kiel aliri ilin kaj malfermu ilin. 944 00:42:48,464 --> 00:42:49,880 Kaj rimarki, tiu estas sufiĉe simpla. 945 00:42:49,880 --> 00:42:53,860 Sed anticipe, ŝajne mi kroĉis a "por ĉiam" bloko, do mi havas buklo. 946 00:42:53,860 --> 00:42:55,500 Kaj tiam mi havas unu "se" kondiĉo. 947 00:42:55,500 --> 00:42:57,410 Mi havas Bulea esprimo. 948 00:42:57,410 --> 00:43:00,100 >> Do en Esperanto, simple rigardante tiu, speciale se vi neniam 949 00:43:00,100 --> 00:43:04,278 planita antaŭe, nur intuicie, kio estas tio faros, tiu programo? 950 00:43:04,278 --> 00:43:06,910 >> [Spektantaro babilado] 951 00:43:06,910 --> 00:43:09,960 >> DAVID J. Malan: Se dorlotbesto kato, la kato tuj meow, dekstra? 952 00:43:09,960 --> 00:43:14,560 Ĉar "ĉiam unchecking" estas la muskursoron tuŝi la kato. 953 00:43:14,560 --> 00:43:17,630 Do por esti klara, kaj mi ne diris antauxvidante, ĉiuj tiuj enigmo 954 00:43:17,630 --> 00:43:20,750 pecoj kaj la skripto kiu ni kombinis ilin en, 955 00:43:20,750 --> 00:43:25,510 tiel diri, skripto estas sinonimo programon, vere, ĝi apartenas al tiu kato. 956 00:43:25,510 --> 00:43:30,110 Kaj la kialo is-- ĉar avizo kiel tiu sama kato tie elstaras, 957 00:43:30,110 --> 00:43:32,710 cxi tie vi povas krei dua kato aŭ hundo aŭ vere 958 00:43:32,710 --> 00:43:33,970 ajn vi volas grafike. 959 00:43:33,970 --> 00:43:35,900 Vi povas importi ion de Photoshop, aŭ simile, 960 00:43:35,900 --> 00:43:38,300 kaj integri ion se vi volas fari por projekto. 961 00:43:38,300 --> 00:43:40,174 Kaj kion vi trovos: finfine, estas ke vi 962 00:43:40,174 --> 00:43:44,800 povas aldoni skriptoj, aldonu enigmo pecoj, al unuopaj signoj. 963 00:43:44,800 --> 00:43:47,210 Do tiuj ĉiuj apartenas al tiu aparta kato. 964 00:43:47,210 --> 00:43:51,770 Do nun, se mi iru antaŭen kaj ludas tiu programo, nenio okazas. 965 00:43:51,770 --> 00:43:52,970 Sed ĝi kuras. 966 00:43:52,970 --> 00:43:56,364 La programo estas en tiu eterna buklo, ia atendante kio okazos? 967 00:43:56,364 --> 00:43:57,230 >> [Spektantaro babilado] 968 00:43:57,230 --> 00:43:58,130 >> DAVID J. Malan: Por dorlotbesto kato. 969 00:43:58,130 --> 00:43:59,800 Do se mi kopias mian muson al him-- 970 00:43:59,800 --> 00:44:02,420 >> [MEOWING] 971 00:44:02,420 --> 00:44:04,450 >> DAVID J. Malan: Do nun Mi Petting la kato. 972 00:44:04,450 --> 00:44:07,330 Dume, ni povas havi duobla branĉo. 973 00:44:07,330 --> 00:44:10,370 Lasu min kaj malfermu ĝis ne dorlotbesto kato. 974 00:44:10,370 --> 00:44:12,160 Ni sendi ĉi linio. 975 00:44:12,160 --> 00:44:16,760 Tio estas iom pli kompleksa, sed sen diri 976 00:44:16,760 --> 00:44:18,780 Vi povas diveni eble kio okazos. 977 00:44:18,780 --> 00:44:20,160 >> [MEOWING] 978 00:44:20,160 --> 00:44:23,900 >> DAVID J. Malan: Kato estas meowing, grand malnova tempo. 979 00:44:23,900 --> 00:44:26,690 Sed tiu programo estas kompreneble nomita "Ne Pet la Kato," 980 00:44:26,690 --> 00:44:29,350 tiel klare, mi volas dorlotbesto kato. 981 00:44:29,350 --> 00:44:30,490 >> [Blekegantaj] 982 00:44:30,490 --> 00:44:31,940 >> DAVID J. Malan: Ne dorlotbesto kato. 983 00:44:31,940 --> 00:44:34,230 Nun, ni rigardu ĉe alia ekzemplo tie. 984 00:44:34,230 --> 00:44:38,035 Ĉi tiu estos nomata "Hi, Hi, Hi," pro kialoj 985 00:44:38,035 --> 00:44:40,410 ke estos klara, ĉar kiam mi kuros ĉi thing-- 986 00:44:40,410 --> 00:44:41,401 >> [SEAL Barking] 987 00:44:41,401 --> 00:44:43,942 DAVID J. Malan: Tre facile skribi ĝena Scratch programoj. 988 00:44:43,942 --> 00:44:45,300 [SEAL Barking] 989 00:44:45,300 --> 00:44:48,540 DAVID J. Malan: Nun ni ne iros en granda detalo kun ĉiuj el tiuj, 990 00:44:48,540 --> 00:44:51,150 sed rimarki tie estas paro de novaj karakterizaĵoj tie. 991 00:44:51,150 --> 00:44:55,540 Tie estas ŝanĝiĝemaj, nomita "dampita" kaj tiam ekzistas aro da kondiĉoj. 992 00:44:55,540 --> 00:44:57,900 Kaj nun, permesu min nur turmentus vin dirante 993 00:44:57,900 --> 00:45:03,170 ke se tiu ulo kiu tro ĝena, Mi povas bati la spacebar kaj li haltas. 994 00:45:03,170 --> 00:45:05,880 Pro la rolo ludiĝas per tiuj du skriptoj estas kiel sekvas. 995 00:45:05,880 --> 00:45:08,510 Unu el ili faras la bojante ĉiu malmultaj sekundoj. 996 00:45:08,510 --> 00:45:11,305 La alia estas nur atendas por min bati la spacebar. 997 00:45:11,305 --> 00:45:14,780 Kaj se mi faros batis la spacebar, tio tuj ŝanĝos 998 00:45:14,780 --> 00:45:18,096 la stato de tiu variablo, la valoro de tiu variablo, tio ŝajne 999 00:45:18,096 --> 00:45:20,470 nomata "dampita," Mi ne vokis iun enuiga kiel n, 1000 00:45:20,470 --> 00:45:22,370 Mi nomis ĝin anglan vorton "dampita." 1001 00:45:22,370 --> 00:45:24,740 De la 1 al 0 aŭ 0 al 1. 1002 00:45:24,740 --> 00:45:26,830 De vero al falsa aŭ falsa vera. 1003 00:45:26,830 --> 00:45:28,930 Kaj tiel vi povas reale vidu nun, ke vi 1004 00:45:28,930 --> 00:45:31,720 povus havi du skriptoj, du programoj kurante samtempe, 1005 00:45:31,720 --> 00:45:34,360 kaj ambaux povus sidi en buklo fari ion. 1006 00:45:34,360 --> 00:45:38,067 Atendante la homa fari iu kiel bati spacebar. 1007 00:45:38,067 --> 00:45:38,650 [SEAL Barking] 1008 00:45:38,650 --> 00:45:40,566 DAVID J. Malan: Nun li estas sur sia vojo denove. 1009 00:45:40,566 --> 00:45:41,640 [SEAL Barking] 1010 00:45:41,640 --> 00:45:45,220 DAVID J. Malan: Do kio alia eble ni faros per tiuj ekzemploj? 1011 00:45:45,220 --> 00:45:50,920 Bone, ni iru antaŭen kaj fari Ekzemple kun rakonti ŝafoj. 1012 00:45:50,920 --> 00:45:59,210 Ni daŭrigu tiun laŭ la linioj tie of-- ni malfermu la sxafojn ekzemplo. 1013 00:45:59,210 --> 00:46:02,460 Kaj avizo, multe kiel antaŭe, ĉi tiu, Feliĉe, estas iom malpli ĝenaj. 1014 00:46:02,460 --> 00:46:06,940 Iam mi batis ludi here-- Ho ne, tio estas ĝena. 1015 00:46:06,940 --> 00:46:10,130 Li tuj BAA kun iu probablo. 1016 00:46:10,130 --> 00:46:11,050 Ni ludas ĉi denove. 1017 00:46:11,050 --> 00:46:15,221 >> [Sxafo BLEETING] 1018 00:46:15,221 --> 00:46:18,470 DAVID J. Malan: La sola diferenco estas ni ŝanĝis la kostumo, tiel diri, 1019 00:46:18,470 --> 00:46:21,710 kaj ni _halving_ kaj diru kion tio reala nombro estas. 1020 00:46:21,710 --> 00:46:24,680 Nu ni iru antaŭen kaj prenu ĉi paŝon pli. 1021 00:46:24,680 --> 00:46:28,190 Kaj lasu min turmentus vin unu alia karakterizaĵo tie. 1022 00:46:28,190 --> 00:46:31,800 Ni iru antaŭen kaj malfermu programo nomata Fadenoj. 1023 00:46:31,800 --> 00:46:36,620 Tiel kiel vi povas havi unu sprite, havanta plurajn manuskriptojn, 1024 00:46:36,620 --> 00:46:41,250 Vi povas havi du sprites, birdo en kato, ĉiu havanta sian propran skribon. 1025 00:46:41,250 --> 00:46:43,976 Kaj ĉiu el ili povas funkcii samtempe. 1026 00:46:43,976 --> 00:46:45,980 Se vi iam aŭdis la vorto "multithreading" 1027 00:46:45,980 --> 00:46:49,240 komputilo estas "disfadeniga" signifas ĝi povas fari plurajn aferojn samtempe, 1028 00:46:49,240 --> 00:46:50,880 kaj, efektive, tiel povas skrapi. 1029 00:46:50,880 --> 00:46:52,690 >> Kaj nun rimarkos la birdo estas speco de mutaj. 1030 00:46:52,690 --> 00:46:55,100 Ĝi nur faras tion hazarde, rebotar ekstere de la ekrano. 1031 00:46:55,100 --> 00:46:59,460 Klare la kato estis programita al speco de havi sercxante kapablojn 1032 00:46:59,460 --> 00:47:02,680 por hejmo en la birdo ĉar li ĉiam indikante lin. 1033 00:47:02,680 --> 00:47:06,176 Ĝis fine, li prende la efektiva birdo. 1034 00:47:06,176 --> 00:47:08,550 Do mi ne volas logxi en la detaloj tie, sed vi povas ia 1035 00:47:08,550 --> 00:47:12,160 duonvidi la saman formojn, kelkaj "Se" kondiĉojn, kelkaj variabloj, 1036 00:47:12,160 --> 00:47:15,740 eble kelkaj bukloj, estas fine fari la samon. 1037 00:47:15,740 --> 00:47:18,400 >> Nun lasu min antaŭeniri kaj malfermi ion ajn aro, 1038 00:47:18,400 --> 00:47:20,920 al turmentus iuj el vi, aparte tiuj pli komforta 1039 00:47:20,920 --> 00:47:22,760 kion vi povas reale fari kun ĉi tiu. 1040 00:47:22,760 --> 00:47:26,080 Mi tuj iros antaŭen kaj malfermu Buton tie. 1041 00:47:26,080 --> 00:47:28,740 Kaj tiu estas super simpla-sxajna programo, 1042 00:47:28,740 --> 00:47:34,190 sed rigardi kion okazas kiam I-- Watch kio 1043 00:47:34,190 --> 00:47:39,860 okazas kiam mi malfermas ĉi versio de ĝi, tie en la navegador, scratch.mit.edu. 1044 00:47:39,860 --> 00:47:43,460 Kiam mi klakas ĉi granda ruĝa butonon, rimarki kio okazas. 1045 00:47:43,460 --> 00:47:46,110 1046 00:47:46,110 --> 00:47:47,647 Do kio okazas ĉi tie? 1047 00:47:47,647 --> 00:47:50,480 Estas vere multe pli complejidad irante sur sub la kapuĉo, 1048 00:47:50,480 --> 00:47:52,896 kvankam mi implementado tiu, aŭ sincere, Dan Bradley 1049 00:47:52,896 --> 00:47:54,660 estas implementado ĉi tiel simple. 1050 00:47:54,660 --> 00:47:59,540 Li desegnis kutimo Scratch enigmo peco, konita kiel Scratch etendo, 1051 00:47:59,540 --> 00:48:01,300 Li nomis ĝin Komuti. 1052 00:48:01,300 --> 00:48:06,332 >> Kaj kio Komuti faras estas ĝi sendas mesaĝo super la interreto. 1053 00:48:06,332 --> 00:48:08,290 Kaj tiu mesaĝo mem aspektas iom kamufla. 1054 00:48:08,290 --> 00:48:10,248 Sed tio ankaŭ vi kompreni por termino fino. 1055 00:48:10,248 --> 00:48:14,930 La mesaĝo li efektive sendo aspektas iom io tiamaniere. 1056 00:48:14,930 --> 00:48:15,921 Estas nur tekston. 1057 00:48:15,921 --> 00:48:16,420 Kamufla. 1058 00:48:16,420 --> 00:48:19,130 Vi komprenas la tempon ni atingas la problemo starigis sep. 1059 00:48:19,130 --> 00:48:22,180 Ĝi simple sendante teksta mesaĝo super la interreto al servanto. 1060 00:48:22,180 --> 00:48:24,330 Kaj tiu servilo estas, finfine, parolante al tiu ampolo, kiu 1061 00:48:24,330 --> 00:48:27,240 havas unu el tiuj fancy ampoloj en ĝi, ke mem, parolas 1062 00:48:27,240 --> 00:48:30,760 al la Wi-Fi en la reto tie, kie loka aparato malsupren here-- 1063 00:48:30,760 --> 00:48:34,400 kaj, finfine, ĝi estas reale igante ke lumo kaj ekstere. 1064 00:48:34,400 --> 00:48:36,240 Sed ni povas fari pli Interesa aferoj ankoraŭ. 1065 00:48:36,240 --> 00:48:38,270 Rimarku kion Dan ankaŭ faris por ni. 1066 00:48:38,270 --> 00:48:42,210 Li faris plurajn sprites, ĉiu el kiu havas skripton atendante clic. 1067 00:48:42,210 --> 00:48:44,030 Kaj se mi klakas ruĝa, ĝi iras ruĝa. 1068 00:48:44,030 --> 00:48:46,780 Se mi ricevas bluan iras blueish. 1069 00:48:46,780 --> 00:48:49,854 Verda, flava, oranĝa. 1070 00:48:49,854 --> 00:48:52,520 Kaj ĉio ĉi okazas per tuj elirejo sur la interreto, 1071 00:48:52,520 --> 00:48:54,690 posteniri tie la ampolo, kaj ekstere. 1072 00:48:54,690 --> 00:48:57,981 >> Kaj se vi povas kredi it-- kaj tio estas eble unu el la plej kompleksaj Scratch 1073 00:48:57,981 --> 00:49:00,930 projektoj iu havas implemented-- Li faris ĝin juste en tago. 1074 00:49:00,930 --> 00:49:04,180 Kaj tiu estis la defio ni ĵetis malsupren Dan kiam ni vidis havas duuma bulboj, 1075 00:49:04,180 --> 00:49:05,810 ni havos Scratch, kiom ni povas kombini ilin? 1076 00:49:05,810 --> 00:49:08,410 Kaj ĝuste tio estas absolute io iu ajn en ĉi tiu ĉambro 1077 00:49:08,410 --> 00:49:14,250 povis fari por sesmonato de end-- Ĉu li reimplementó duuma bulboj uzante 1078 00:49:14,250 --> 00:49:18,310 la saman interfacon kiu estis en nia iPad merkrede. 1079 00:49:18,310 --> 00:49:22,000 Tial nun, se vi reale klaki la pli tie, 1080 00:49:22,000 --> 00:49:25,250 Ni havas unu, du, tri. 1081 00:49:25,250 --> 00:49:27,550 Mi povas bati la 16 kaj turni kiuj unu. 1082 00:49:27,550 --> 00:49:29,440 128, kaj tiel plu. 1083 00:49:29,440 --> 00:49:31,250 >> Nun se kiu sola havas kaj blovita via menso, 1084 00:49:31,250 --> 00:49:35,680 Vi povus fari tion multe pli atingebla, ne engaĝante ajna aparataro certe. 1085 00:49:35,680 --> 00:49:38,320 Nur tion sur la ekrano mem. 1086 00:49:38,320 --> 00:49:41,110 Kaj efektive, kio plej studentoj fini farante estas ia ludo, 1087 00:49:41,110 --> 00:49:44,600 iu peco de arta laboro, aŭ ia interaga animacio. 1088 00:49:44,600 --> 00:49:47,352 Kaj mi diros unu el niaj favoritos estis ĉi tiu. 1089 00:49:47,352 --> 00:49:49,060 Kaj mi pensis, se ni povus malhelan la lumoj, 1090 00:49:49,060 --> 00:49:52,960 ni prenos rigardeton ĉe tiu fino Scratch projekto en konkludo. 1091 00:49:52,960 --> 00:49:57,460 Sed kion vi devus teni en menso, kiel Mi povas turmentus vin kun lasta detalo, 1092 00:49:57,460 --> 00:49:59,140 Sekciigo komencos venontan semajnon. 1093 00:49:59,140 --> 00:50:00,830 Oficejo horoj komencos venontan semajnon. 1094 00:50:00,830 --> 00:50:04,410 Problemo starigis nulo estos eldonita CS50.harvard.edu poste hodiaŭ. 1095 00:50:04,410 --> 00:50:06,430 Kaj vi estos salutis en problemo starigis nulo 1096 00:50:06,430 --> 00:50:10,070 al CS50 propra Zamyla Chan, kiu gvidas la plimulto de niaj walkthroughs. 1097 00:50:10,070 --> 00:50:11,952 Tiuj estas enigita filmetoj en la problemo aroj 1098 00:50:11,952 --> 00:50:15,160 kiuj tenos vian manon tra multe de la komenca aro supren kaj tra multaj 1099 00:50:15,160 --> 00:50:16,570 el la eblaj decidoj de dezajno. 1100 00:50:16,570 --> 00:50:19,570 Do se vi iam havis tiun emocio kiam reprenante hejmtasko asigno 1101 00:50:19,570 --> 00:50:21,030 kaj scivolante, kie komenci? 1102 00:50:21,030 --> 00:50:23,510 Ŝi havos tiun respondon por vi. 1103 00:50:23,510 --> 00:50:27,720 Kaj nun definitivan programon de unu el viaj antaŭuloj 1104 00:50:27,720 --> 00:50:30,659 en respondo al la demando "Kion faras la vulpo diris?" 1105 00:50:30,659 --> 00:50:32,242 [MUZIKO YLVIS, "Kion faras la FOX diri?] 1106 00:50:32,242 --> 00:50:40,178 1107 00:50:40,178 --> 00:50:41,666 >> YLVIS: (kantisto) Hundo iras enteksitajxo. 1108 00:50:41,666 --> 00:50:43,650 Kato iras meow. 1109 00:50:43,650 --> 00:50:47,520 Birdo iras tweet kaj muso iras Squeak. 1110 00:50:47,520 --> 00:50:49,240 Bovino iras Moo. 1111 00:50:49,240 --> 00:50:51,690 Rano iras kva. 1112 00:50:51,690 --> 00:50:54,630 Kaj la elefanto iras Toot. 1113 00:50:54,630 --> 00:50:59,040 Anasoj diri ĉarlatano kaj fiŝoj iri blub. 1114 00:50:59,040 --> 00:51:07,370 Kaj la stampo iras iel iel iel, sed ekzistas unu sono kiu ne scias, 1115 00:51:07,370 --> 00:51:10,330 kion la vulpo diris? 1116 00:51:10,330 --> 00:51:11,020 Kaj 1117 00:51:11,020 --> 00:51:12,478 >> DAVID J. Malan: Estas tio por CS50. 1118 00:51:12,478 --> 00:51:15,436 Ni vidos vin je Puzzle Tago kaj lunde. 1119 00:51:15,436 --> 00:51:16,424 >> [Aplaŭdo] 1120 00:51:16,424 --> 00:51:19,882 >> [MUZIKO YLVIS, "Kion faras la FOX diras?"] 1121 00:51:19,882 --> 00:51:24,840 1122 00:51:24,840 --> 00:51:28,820 >> Rakontanto: Nun profunda pensoj, per Daven Farnham. 1123 00:51:28,820 --> 00:51:31,770 1124 00:51:31,770 --> 00:51:34,570 Hodiaŭ mi got batita en la alfronti kun telefono libro. 1125 00:51:34,570 --> 00:51:38,160 Konfuzante, kiel mi estas ĉe hejmo rigardante enreta. 1126 00:51:38,160 --> 00:51:42,528