1 00:00:00,000 --> 00:00:10,980 >> [Musik zu spielen] 2 00:00:10,980 --> 00:00:13,260 >> -Alright! 3 00:00:13,260 --> 00:00:16,400 >> Dieses wird CS50. 4 00:00:16,400 --> 00:00:18,220 >> Dieses wird CS50. 5 00:00:18,220 --> 00:00:19,324 >> Dieses wird CS50. 6 00:00:19,324 --> 00:00:20,615 [MUSIC - IGGY Azalee, "Fancy"] 7 00:00:20,615 --> 00:00:29,925 8 00:00:29,925 --> 00:00:33,570 >> -My Schönste Erinnerung von CS50 war, als ich ging zum Tag Puzzle. 9 00:00:33,570 --> 00:00:35,797 >> -wahrscheinlich Gerade die Zeit damit verbracht, an Problem-Sets 10 00:00:35,797 --> 00:00:38,630 mit meinen Freunden und Menschen, die wold schließlich meine blockmates werden. 11 00:00:38,630 --> 00:00:40,421 >> -My Beste Erinnerung aus CS50 ist der Hackathon. 12 00:00:40,421 --> 00:00:41,630 -Der 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 -Der Hackathon 17 00:00:43,883 --> 00:00:45,027 -ROB Bowden. 18 00:00:45,027 --> 00:00:46,110 Einfach alles über ihn. 19 00:00:46,110 --> 00:00:47,401 >> [MUSIC - IGGY Azalee, "Fancy"] 20 00:00:47,401 --> 00:00:56,790 21 00:00:56,790 --> 00:01:02,512 >> -My Schönste Erinnerung ist, als ich auf Bühne und ich spielte mit dem renommierten Rolle 22 00:01:02,512 --> 00:01:04,220 von einem Knoten [? in der verknüpften?] [? Liste. ?] 23 00:01:04,220 --> 00:01:08,470 >> -Wenn Wir alle freien Raum und Dropbox David war wie, schauen Sie unter Ihren Sitzen. 24 00:01:08,470 --> 00:01:10,520 Und es war wie, Raum für alle! 25 00:01:10,520 --> 00:01:11,811 >> [MUSIC - IGGY Azalee, "Fancy"] 26 00:01:11,811 --> 00:01:20,940 27 00:01:20,940 --> 00:01:22,830 >> -My Beratung für alle ankommenden Schüler würde 28 00:01:22,830 --> 00:01:26,170 sein, um wirklich arbeiten P-Sätze mit Freunden. 29 00:01:26,170 --> 00:01:27,960 >> -Office Stunden ist sehr viel dein Freund. 30 00:01:27,960 --> 00:01:30,870 >> Details bitte das Beste aus Ihrer Erfahrung und treffen so viele Menschen wie Sie können. 31 00:01:30,870 --> 00:01:32,390 >> -Nicht Angst, um Hilfe zu bitten. 32 00:01:32,390 --> 00:01:33,890 -start Die P-Sätze Anfang der Woche. 33 00:01:33,890 --> 00:01:36,723 -I Denke, die größte Sache ist, profitieren Sie von allen Ressourcen 34 00:01:36,723 --> 00:01:37,950 dass CS50 hat. 35 00:01:37,950 --> 00:01:39,960 >> -Gehen Zu Bürozeiten Anfang der Woche. 36 00:01:39,960 --> 00:01:41,430 >> -Definitely Sehen die Shorts. 37 00:01:41,430 --> 00:01:42,989 >> -Nicht Auf Ihrem P-Sätze zu verschleppen. 38 00:01:42,989 --> 00:01:45,780 Details bitte sicher, dass Sie eine große Gruppe zu finden von Menschen, die auf P-Sätze mit zu arbeiten. 39 00:01:45,780 --> 00:01:48,530 Sie können eine Menge Spaß haben und gehen zusammen gearbeitet. 40 00:01:48,530 --> 00:01:50,370 >> -Nicht Angst, sich zu drücken. 41 00:01:50,370 --> 00:01:52,080 Gehen Sie für die Hacker-Ausgabe manchmal. 42 00:01:52,080 --> 00:01:55,410 >> -Write Dinge auf Papier vor Sie jemals berühren Ihrem Computer. 43 00:01:55,410 --> 00:01:58,380 >> -CS50 Ist wirklich toll an Bereitstellung von Möglichkeiten, um Hilfe zu holen. 44 00:01:58,380 --> 00:02:01,134 >> -My Einen Rat ist der Schlaf. 45 00:02:01,134 --> 00:02:02,050 Hat jemand gesagt? 46 00:02:02,050 --> 00:02:04,100 Schlaf, das ist sicher. 47 00:02:04,100 --> 00:02:08,919 Es ist einfach nicht zu tun, aber Sie haben, es zu tun, denke ich. 48 00:02:08,919 --> 00:02:12,982 >> -I Würde sagen, wirklich geistig vorbereitet werden weil Sie es lieben. 49 00:02:12,982 --> 00:02:14,273 [MUSIC - IGGY Azalee, "Fancy"] 50 00:02:14,273 --> 00:02:17,750 51 00:02:17,750 --> 00:02:18,940 >> Dieses wird CS50. 52 00:02:18,940 --> 00:02:22,090 53 00:02:22,090 --> 00:02:23,066 >> Dieses wird CS50. 54 00:02:23,066 --> 00:02:26,400 55 00:02:26,400 --> 00:02:26,989 >> Dieses wird CS50. 56 00:02:26,989 --> 00:02:28,280 [MUSIC - IGGY Azalee, "Fancy"] 57 00:02:28,280 --> 00:02:31,290 58 00:02:31,290 --> 00:02:31,964 >> Dieses wird CS50. 59 00:02:31,964 --> 00:02:36,020 60 00:02:36,020 --> 00:02:42,270 >> [Applaus] 61 00:02:42,270 --> 00:02:46,040 >> David J. MALAN: Das ist also CS50 und dies ist das Ende der Woche 0. 62 00:02:46,040 --> 00:02:48,770 Und das war nur etwas der Mitarbeiter, die den CS50 63 00:02:48,770 --> 00:02:51,100 erwarten Sie nicht nur in den Abschnitten und Öffnungszeiten, aber, 64 00:02:51,100 --> 00:02:54,390 Auch am kommenden Wochenende auf CS50 Puzzle Day. 65 00:02:54,390 --> 00:02:56,410 Die wiederum nicht alles über die Programmierung. 66 00:02:56,410 --> 00:02:59,710 In der Tat, es ist zu erwarten, dass Sie nicht haben, um etwas zu programmieren, 67 00:02:59,710 --> 00:03:03,780 sondern Probleme lösen mit Verstand und Freunden neben Ihnen. 68 00:03:03,780 --> 00:03:06,400 >> Wir werden von einigen verbunden werden von unseren Freunden bei Facebook-- 69 00:03:06,400 --> 00:03:08,980 wenn Sie hier-- registrieren, die in den letzten paar Jahren, 70 00:03:08,980 --> 00:03:11,450 haben tatsächlich geschrieben diese Herausforderungen mit uns. 71 00:03:11,450 --> 00:03:14,822 Und so wird sie diejenigen sein letztlich läuft Puzzle Day. 72 00:03:14,822 --> 00:03:17,530 Und so werden Sie herausgefordert werden mit genau die Art von Dingen 73 00:03:17,530 --> 00:03:20,520 und Probleme, die Leute bei Facebook Like zu denken. 74 00:03:20,520 --> 00:03:21,860 Das ist also morgen. 75 00:03:21,860 --> 00:03:25,980 Registrieren Sie sich bei cs50.harvard.edu/register. 76 00:03:25,980 --> 00:03:28,120 >> Nun ein Wort auf ein paar Personal insbesondere. 77 00:03:28,120 --> 00:03:30,090 Das hier ist Ansel Duff, wer ist eigentlich eine 78 00:03:30,090 --> 00:03:33,860 der Co-Autoren dieser binären Lampen, die wir am Mittwoch sah, 79 00:03:33,860 --> 00:03:36,710 zusätzlich zu CS50 eigenen Dan Bradley. 80 00:03:36,710 --> 00:03:40,094 Ansel Duff war auch ein ehemaliger Freshman advisee von mir vor 3 Jahren 81 00:03:40,094 --> 00:03:41,760 und er eigentlich noch baute dieses Rednerpult. 82 00:03:41,760 --> 00:03:45,330 Er ist auf zu tun, weg Ingenieurwissenschaften und mehr. 83 00:03:45,330 --> 00:03:49,279 Nun ist sein Bild hier tatsächlich Ansel vor 3 Jahren an der CS50 Hackathon 84 00:03:49,279 --> 00:03:51,820 als er geliehen einem unserer Luftballons, steckte ihn auf seinem Laptop, 85 00:03:51,820 --> 00:03:55,240 und für die nächsten 12 einige ungerade Stunden, konzentrierte sich auf seine Abschlussprojekt, 86 00:03:55,240 --> 00:03:59,150 Pausen nur zu öffnen Tüten mit Süßigkeiten an der Hackathon. 87 00:03:59,150 --> 00:04:02,210 >> Aber er ging vor kurzem zu verbringen vergangenen Sommer mit uns, 88 00:04:02,210 --> 00:04:05,270 seit CS50 für seine Mitarbeiter und jetzt Studenten in diesem Semester, 89 00:04:05,270 --> 00:04:06,770 hat seine eigenen 3D-Drucker. 90 00:04:06,770 --> 00:04:10,180 Und in Kürze ein 3D-Drucker ist ein Gerät, das ganz so aussieht. 91 00:04:10,180 --> 00:04:15,700 Sie füllen es mit einer Kunststoffspule das heißt, die von der Vorrichtung aufgeschmolzen 92 00:04:15,700 --> 00:04:18,940 und Sie Dinge zu bauen buchstäblich aus dem Nichts. 93 00:04:18,940 --> 00:04:22,660 Ähnlich wie ein Tintenstrahldrucker, starten Sie spuckt kleine Punkte aus Kunststoff 94 00:04:22,660 --> 00:04:24,990 dass Form zusammen, um bilden ganze Objekte. 95 00:04:24,990 --> 00:04:28,430 Und Ansel, so zum Beispiel früher in diesem Sommer, hat eine iPhone 5 96 00:04:28,430 --> 00:04:30,722 und beschloss er wirklich wollte um es zu stützen auf seinem Schreibtisch. 97 00:04:30,722 --> 00:04:32,638 Aber er wollte nicht gehen und etwas kaufen 98 00:04:32,638 --> 00:04:36,030 aus dem Apple-Store oder dergleichen, so dass er setzte sich und begann Zeichnung etwas. 99 00:04:36,030 --> 00:04:38,280 Er nahm ein paar Messungen , wie dick 100 00:04:38,280 --> 00:04:41,270 und wie breit sein iPhone war, er zeichnete dieses Bild hier, 101 00:04:41,270 --> 00:04:43,870 entschied er, dass er wollte, um eine 75-Grad-Neigung haben 102 00:04:43,870 --> 00:04:46,150 wie es bei der starren ihm auf seinem Schreibtisch dort. 103 00:04:46,150 --> 00:04:50,440 Dann wandte er sich diese mit Software in ein 3D-CAD-Modell 104 00:04:50,440 --> 00:04:52,400 , die ein wenig aussah so etwas wie dieses. 105 00:04:52,400 --> 00:04:55,940 Und dann fuhr er fort, letztlich tatsächlich erstellen Sie es. 106 00:04:55,940 --> 00:05:00,250 Also in der Tat, wenn einer von euch hier, vielleicht in Folge, dass ich kann, um zu werfen, haben 107 00:05:00,250 --> 00:05:06,780 an-- da haben wir Leute mit iPhone 5, und hier haben wir noch zwei weitere. 108 00:05:06,780 --> 00:05:10,650 109 00:05:10,650 --> 00:05:17,037 >> Jetzt, nicht zu übertreffen, CS50 eigenen Cheng Gong auch in diesem Sommer festgelegten 110 00:05:17,037 --> 00:05:19,870 ziemlich viele Dinge und zu bauen, In der Tat, aus Gründen, die noch 111 00:05:19,870 --> 00:05:23,970 unklar ist, hat sich seit Druck eine Armee von Elefanten 112 00:05:23,970 --> 00:05:27,250 mit Gelenkarmen und Stämme. 113 00:05:27,250 --> 00:05:32,515 Ein paar von denen sind eigentlich hier, wenn jemand würde jetzt like-- einen Elefanten. 114 00:05:32,515 --> 00:05:35,650 115 00:05:35,650 --> 00:05:40,522 In Ordnung,. aber was tat auch Cheng für uns ist er sehr freundlich, eine Kamera so einstellen, 116 00:05:40,522 --> 00:05:42,230 weil dieser Elefant, es glauben oder nicht, 117 00:05:42,230 --> 00:05:44,690 dauert etwa zwei und eine anderthalb Stunden zu drucken. 118 00:05:44,690 --> 00:05:47,840 Selbst das iPhone Ständer nahm ein und eine halbe Stunde zu drucken. 119 00:05:47,840 --> 00:05:51,490 Und was Cheng ging voran und tat wurde eine nette Kamera vor eingestellt 120 00:05:51,490 --> 00:05:55,580 dieser 3D-Drucker, für eine Stunde gefilmt und eine halb so Ansel Design gedruckt. 121 00:05:55,580 --> 00:05:58,090 Wir überlagert einige sexy Musik, um es in Ordnung 122 00:05:58,090 --> 00:06:00,570 Ihnen diese geben, um zu suchen an, wie 3D-Druck funktioniert. 123 00:06:00,570 --> 00:06:02,494 Und obwohl diese tatsächlich aus Kunststoff, 124 00:06:02,494 --> 00:06:05,160 erkennen, dass, wenn dieser Bereich für Sie von Interesse akademisch, 125 00:06:05,160 --> 00:06:07,120 es gibt Leute, unter sie Jennifer Lewis hier 126 00:06:07,120 --> 00:06:09,036 an der Schule für Engineering, die tatsächlich 127 00:06:09,036 --> 00:06:10,920 arbeiten an 3D-Druck von Kunststoffobjekten. 128 00:06:10,920 --> 00:06:14,150 Aber auch zunehmend biologischen Materialien zu lösen 129 00:06:14,150 --> 00:06:16,530 physiologische Probleme für den Menschen. 130 00:06:16,530 --> 00:06:19,944 Aber hier ist ein wenig etwas von CS50. 131 00:06:19,944 --> 00:06:31,625 >> [LOUD mechanische Geräusche] 132 00:06:31,625 --> 00:06:34,250 David J. MALAN: Es klingt nicht so etwas in der Realität 133 00:06:34,250 --> 00:06:37,240 aber es ist viel kühler, es zu sehen Bei dieser Geschwindigkeit und mit dem Ton. 134 00:06:37,240 --> 00:06:40,000 >> Nun, am Mittwoch, wie haben wir zuerst hierher gekommen? 135 00:06:40,000 --> 00:06:43,345 Wir kamen ins Gespräch über Computer Wissenschaft und wir fragten, was es war. 136 00:06:43,345 --> 00:06:46,470 Und es geht um eine Reihe von Dingen, und es gibt so viele verschiedene Richtungen 137 00:06:46,470 --> 00:06:48,477 in dem Sie Kopf nach einem Kurs wie CS50. 138 00:06:48,477 --> 00:06:50,810 In der Tat, wenn Sie abgeholt ein dieser inoffiziellen Führer 139 00:06:50,810 --> 00:06:54,080 CS draußen, die Broschüre, die wir zur Verfügung gestellt haben, ob Sie 140 00:06:54,080 --> 00:06:57,150 denken, die nur CS50, oder vielleicht tut eine sekundäre, 141 00:06:57,150 --> 00:06:59,557 oder vielleicht sogar die Konzentration in CS, nicht durch das, zu kippen. 142 00:06:59,557 --> 00:07:01,390 Und Sie werden sehen, ein Diagramm gegen Ende, dass 143 00:07:01,390 --> 00:07:04,950 zeigt Ihnen die vielen verschiedenen Richtungen in CS, die Sie gehen kann im. 144 00:07:04,950 --> 00:07:09,030 >> Aber für heute, wir konzentrieren, wieder auf wirklich eine der Grundanschauungen, 145 00:07:09,030 --> 00:07:11,500 vielleicht, wo man Eingänge zu Problemen 146 00:07:11,500 --> 00:07:13,430 Sie Ausgänge haben Probleme, und Sie haben 147 00:07:13,430 --> 00:07:17,420 Algorithmen, mit denen zu schaffen diese Ausgangssignale von diesen Eingängen. 148 00:07:17,420 --> 00:07:20,330 Und ein Beispiel dafür war der Natürlich ist diese Telefonbuch hier. 149 00:07:20,330 --> 00:07:24,180 Und wir als Beispiel verwendet, um zu gehen durch einen Algorithmus, der richtig war. 150 00:07:24,180 --> 00:07:26,490 Und dann noch eine war richtig, aber ein wenig schneller. 151 00:07:26,490 --> 00:07:29,448 Und dann noch eine, die ein wenig war mehr dramatisch, aber grundlegend 152 00:07:29,448 --> 00:07:30,000 Schneller. 153 00:07:30,000 --> 00:07:32,720 >> Richtig, das Telefonbuch haben wir behauptet hatte etwa 1.000 Seiten. 154 00:07:32,720 --> 00:07:36,200 Und wie oft habe ich um das Telefonbuch in der Hälfte reißen 155 00:07:36,200 --> 00:07:39,930 , jemanden wie Mike Smith zu finden, maximal in 1.000-Seiten-Buches? 156 00:07:39,930 --> 00:07:41,040 So, 10 geben oder nehmen. 157 00:07:41,040 --> 00:07:45,050 Und so einmal riss ich diese Sache in Hälfte, oder einfach, reifer, 158 00:07:45,050 --> 00:07:48,490 in zwei Hälften geteilt, es ist nur 10 Seiten von 1000. 159 00:07:48,490 --> 00:07:51,470 Und wenn Sie zu extrapolieren, ein wenig unrealistisch für ein Telefonbuch, 160 00:07:51,470 --> 00:07:56,540 aber wenn das Telefonbuch hatte eine 4 Milliarden Seiten in ihm, so ganz 161 00:07:56,540 --> 00:07:59,680 unhandlich physisch, wie viele Male Sie unterteilen ein 4 Milliarden 162 00:07:59,680 --> 00:08:01,460 Seite Telefonbuch in der Hälfte? 163 00:08:01,460 --> 00:08:03,035 Also es ist eigentlich 32, geben oder nehmen. 164 00:08:03,035 --> 00:08:07,090 Und nur so 32-mal, aus von 4 Milliarden Seiten, können 165 00:08:07,090 --> 00:08:08,700 Sie finden jemanden wie Mike Smith. 166 00:08:08,700 --> 00:08:09,740 Und das ist Effizienz. 167 00:08:09,740 --> 00:08:12,130 Das ist ein guter Algorithmus, wage zu behaupten. 168 00:08:12,130 --> 00:08:14,480 >> Aber dann zogen wir aus, dass zu versuchen, es zu formalisieren. 169 00:08:14,480 --> 00:08:16,100 Und ich schlug diese Pseudocode. 170 00:08:16,100 --> 00:08:17,800 Pseudocode ist nicht alles, was formal. 171 00:08:17,800 --> 00:08:18,880 Es ist nicht etwas, das man auswendig lernen. 172 00:08:18,880 --> 00:08:21,588 Es ist nur etwas, was Sie zum Ausdruck bringen ziemlich intuitiv mit Deutsch, Englisch, 173 00:08:21,588 --> 00:08:24,990 oder eine Sprache, wirklich, dass vermittelt Ihre Ideen kurz und bündig. 174 00:08:24,990 --> 00:08:26,990 Aber was ist Schlüssel zu Pseudocode ist, dass Sie 175 00:08:26,990 --> 00:08:30,331 versuchen, alle die zu antizipieren mögliche Fälle, die passieren könnten. 176 00:08:30,331 --> 00:08:33,080 Und in der Tat, in diesem Pseudocode Code, es waren wirklich drei Fällen 177 00:08:33,080 --> 00:08:34,700 jedesmal, wenn ich teilte das Telefonbuch. 178 00:08:34,700 --> 00:08:36,006 Mike könnte auf der linken Seite sein. 179 00:08:36,006 --> 00:08:37,130 Mike könnte auf der rechten Seite sein. 180 00:08:37,130 --> 00:08:39,240 Oder er könnte direkt auf der Seite bin ich auf sein. 181 00:08:39,240 --> 00:08:42,110 Oder eine vierte Ecke Fall, so zu sprechen. 182 00:08:42,110 --> 00:08:46,470 Ein schlechtes Szenario könnte sein which--, was ist passiert? 183 00:08:46,470 --> 00:08:48,860 Mike ist einfach nicht in das Telefonbuch überhaupt. 184 00:08:48,860 --> 00:08:52,720 >> Und wenn Programme crash-- wenn Mac und PC-Software, die Sie Jungs laufen 185 00:08:52,720 --> 00:08:56,400 auf Ihrem Computer manchmal hängt oder wird unerwartet beendet, 186 00:08:56,400 --> 00:08:59,770 dass in der Regel bedeutet, dass einige Programmierer, einige Mensch wie Sie bald, 187 00:08:59,770 --> 00:09:01,650 nur oben geschraubt und einige Fehler gemacht. 188 00:09:01,650 --> 00:09:05,207 Vielleicht nicht davon aus, dass es vielleicht habe keine Mike Smith im Telefonbuch. 189 00:09:05,207 --> 00:09:08,040 Und wenn Sie eigentlich gar nicht schreiben Code, um Situationen wie damit umgehen, 190 00:09:08,040 --> 00:09:09,890 in der Regel unberechenbar Dinge passieren können. 191 00:09:09,890 --> 00:09:10,960 Ihr Gerät kann gefrieren. 192 00:09:10,960 --> 00:09:11,730 Es kann neu starten. 193 00:09:11,730 --> 00:09:12,889 Das Programm kann zu beenden. 194 00:09:12,889 --> 00:09:14,722 Und so alle diese Dummheiten, die Sie 195 00:09:14,722 --> 00:09:18,030 haben in Ihrer aktuellen angetroffen Leben nur mit dem Computer, 196 00:09:18,030 --> 00:09:20,710 zunehmend nur sein, weg von dieser Intuition erklärt 197 00:09:20,710 --> 00:09:24,920 und das Verständnis dessen, was eigentlich vor sich geht unter der Haube. 198 00:09:24,920 --> 00:09:27,329 >> Jetzt wollen wir versuchen, einen Blick zu nehmen auf einer allgemeineren Problem. 199 00:09:27,329 --> 00:09:29,120 Anstatt die Besuch in einem Ort wie 200 00:09:29,120 --> 00:09:32,230 diese, die ganz langsam wäre ein, zwei, drei, vier tun. 201 00:09:32,230 --> 00:09:34,070 Oder vielleicht zwei, vier, sechs, acht. 202 00:09:34,070 --> 00:09:36,080 Konzentrieren wir uns stattdessen auf wie wir formalisieren 203 00:09:36,080 --> 00:09:39,400 Der Algorithmus des Verfahrens durch die könnten wir die Teilnahme zu nehmen. 204 00:09:39,400 --> 00:09:42,290 Und auf dem Weg, lassen Sie uns beginnen einige Nomenklatur gelten 205 00:09:42,290 --> 00:09:47,130 dass wir heute verwenden werden, wenn wir tatsächlich Start der Programmierung in einer Sprache. 206 00:09:47,130 --> 00:09:50,910 Also gebe ich Ihnen jetzt, ein vierminütiges Video dass wir mit unseren Freunden zusammen 207 00:09:50,910 --> 00:09:52,820 von TED, der Organisation. 208 00:09:52,820 --> 00:09:56,380 Wobei wir ein Skript geliefert und sie ihre Animatoren zum Tragen, 209 00:09:56,380 --> 00:10:00,970 und eigentlich ein 2D erstellt Animation von dem, was ein Algorithmus ist. 210 00:10:00,970 --> 00:10:02,776 Wenn wir das Licht zu dimmen. 211 00:10:02,776 --> 00:10:06,664 >> [Musik zu spielen] 212 00:10:06,664 --> 00:10:17,890 213 00:10:17,890 --> 00:10:19,140 SPRECHER: Was ist ein Algorithmus? 214 00:10:19,140 --> 00:10:21,620 In der Informatik Ein Algorithmus ist eine Soll 215 00:10:21,620 --> 00:10:24,840 von Anweisungen Lösung ein Problem Schritt für Schritt. 216 00:10:24,840 --> 00:10:27,310 Üblicherweise werden Algorithmen von Computern ausgeführt, 217 00:10:27,310 --> 00:10:29,365 aber wir Menschen haben Algorithmen als gut. 218 00:10:29,365 --> 00:10:31,240 Zum Beispiel, wie würde Sie zählen zu gehen 219 00:10:31,240 --> 00:10:32,990 die Zahl der Personen in einem Raum? 220 00:10:32,990 --> 00:10:36,840 Nun, wenn Sie wie ich sind, würden Sie wahrscheinlich Punkt bei jeder Person ein zu einer Zeit 221 00:10:36,840 --> 00:10:38,370 und zählen von Null. 222 00:10:38,370 --> 00:10:41,200 Eins, zwei, drei, vier und so weiter. 223 00:10:41,200 --> 00:10:42,410 Nun, das ist ein Algorithmus. 224 00:10:42,410 --> 00:10:45,820 In der Tat, wollen wir versuchen, sie ein Ausdruck bisschen mehr formal in Pseudocode. 225 00:10:45,820 --> 00:10:48,940 Englisch-ähnliche Syntax, ähnelt einer Programmiersprache. 226 00:10:48,940 --> 00:10:50,880 >> Sei n gleich 0 ist. 227 00:10:50,880 --> 00:10:55,210 Für jede Person im Zimmer, gesetzt n gleich n plus 1. 228 00:10:55,210 --> 00:10:56,790 Wie Sie das Pseudocode zu interpretieren? 229 00:10:56,790 --> 00:10:59,490 Nun Zeile eins erklärt, sozusagen einen variablen 230 00:10:59,490 --> 00:11:02,880 genannt n und initialisiert den Wert auf 0 Diese nur 231 00:11:02,880 --> 00:11:05,080 bedeutet, dass die Beginn des Algorithmus, 232 00:11:05,080 --> 00:11:07,910 Die Sache mit dem wir sind Zählen hat einen Wert von 0. 233 00:11:07,910 --> 00:11:10,860 Nach allem, bevor wir anfangen zu zählen wir haben noch nichts gezählt. 234 00:11:10,860 --> 00:11:13,580 Der Aufruf dieser Variablen n ist nur eine Konvention. 235 00:11:13,580 --> 00:11:15,130 Ich konnte es genannt haben fast alles. 236 00:11:15,130 --> 00:11:17,460 Jetzt säumen zwei eichen der Anfang einer Schleife, 237 00:11:17,460 --> 00:11:20,550 eine Abfolge von Schritten, dass Will Wiederholen eine bestimmte Anzahl von Malen. 238 00:11:20,550 --> 00:11:24,130 Also in unserem Beispiel der Schritt sind wir Nahme wird Personenzählung in den Raum. 239 00:11:24,130 --> 00:11:26,260 Unter Zeile zwei ist die Linie drei der beschreibt, 240 00:11:26,260 --> 00:11:28,400 genau, wie wir über das Zählen zu gehen. 241 00:11:28,400 --> 00:11:31,720 Die Vertiefung beinhaltet, dass es ist Zeile drei, die sich wiederholen wird. 242 00:11:31,720 --> 00:11:35,190 Also mit dem Pseudocode sagen ist, dass nach dem Start bei 0 243 00:11:35,190 --> 00:11:38,940 für jede Person in der Zimmer wir n um 1 zu erhöhen 244 00:11:38,940 --> 00:11:41,310 Jetzt ist dieser Algorithmus korrekt? 245 00:11:41,310 --> 00:11:42,820 Nun lassen Sie uns Knall auf es ein bisschen. 246 00:11:42,820 --> 00:11:45,520 >> Funktioniert es, wenn es zwei Personen im Zimmer? 247 00:11:45,520 --> 00:11:46,420 Mal sehen. 248 00:11:46,420 --> 00:11:48,500 In der ersten Zeile initialisieren wir n auf 0. 249 00:11:48,500 --> 00:11:51,910 Für jede dieser beiden Personen, wir dann n um 1 erhöht. 250 00:11:51,910 --> 00:11:55,570 Also in der ersten Reise durch die Schleife aktualisieren wir n von 0 bis 1. 251 00:11:55,570 --> 00:11:59,320 Auf der zweiten Reise durch die gleiche Schleife, aktualisieren wir n von 1 bis 2. 252 00:11:59,320 --> 00:12:02,850 Und so, durch diesen Algorithmus Ende ist, n 2, die 253 00:12:02,850 --> 00:12:04,950 in der Tat entspricht der Anzahl Menschen in dem Raum. 254 00:12:04,950 --> 00:12:06,040 So weit, ist es gut. 255 00:12:06,040 --> 00:12:07,870 >> Wie wäre es mit einer Ecke Fall aber? 256 00:12:07,870 --> 00:12:11,090 Angenommen, es gibt Menschen 0 in der room-- außer mir, wer ist 257 00:12:11,090 --> 00:12:12,420 Dabei zählen. 258 00:12:12,420 --> 00:12:15,380 In der ersten Zeile, die wir wieder zu initialisieren n auf 0. 259 00:12:15,380 --> 00:12:17,810 Dieses Mal aber, Linie drei überhaupt nicht ausführen 260 00:12:17,810 --> 00:12:19,610 Da es nicht um eine Person in dem Raum. 261 00:12:19,610 --> 00:12:23,540 Und so bleibt n 0, was in der Tat passt die Zahl der Personen im Raum. 262 00:12:23,540 --> 00:12:24,670 Ziemlich einfach, oder? 263 00:12:24,670 --> 00:12:27,880 Aber zählen Menschen, die man in einer Zeit, ist ziemlich ineffizient, zu, oder? 264 00:12:27,880 --> 00:12:29,160 Sicherlich werden wir es besser machen. 265 00:12:29,160 --> 00:12:33,440 Warum nicht in einer Zeit, zählen zwei Personen, anstelle des Zählens einer, zwei, drei, 266 00:12:33,440 --> 00:12:36,470 vier, fünf, sechs, sieben, acht und so weiter. 267 00:12:36,470 --> 00:12:39,106 Warum nicht zählen zwei, vier, sechs, acht und so weiter? 268 00:12:39,106 --> 00:12:40,670 Es klingt sogar noch schneller. 269 00:12:40,670 --> 00:12:41,940 Und es ist sicherlich. 270 00:12:41,940 --> 00:12:44,490 >> Lassen Sie uns zum Ausdruck bringen diese Optimierung in Pseudocode. 271 00:12:44,490 --> 00:12:46,040 Sei n gleich 0 ist. 272 00:12:46,040 --> 00:12:50,760 Für jedes Paar von Menschen Raum, gleich n plus 2 n. 273 00:12:50,760 --> 00:12:52,360 Ziemlich einfache Änderung, oder? 274 00:12:52,360 --> 00:12:56,560 Anstatt zählen Menschen, die man in einer Zeit, wir zählen sie statt zwei auf einmal. 275 00:12:56,560 --> 00:12:59,240 Dieser Algorithmus ist somit doppelt so schnell wie die letzte. 276 00:12:59,240 --> 00:13:00,530 Aber ist es richtig? 277 00:13:00,530 --> 00:13:01,160 Mal sehen. 278 00:13:01,160 --> 00:13:03,580 Funktioniert es, wenn es zwei Personen im Zimmer? 279 00:13:03,580 --> 00:13:05,800 In der ersten Zeile, initialisieren wir n auf 0. 280 00:13:05,800 --> 00:13:09,160 Für diese ein Paar von Personen, Dann inkrementiert n um 2. 281 00:13:09,160 --> 00:13:11,910 Und so durch diesen Algorithmus Ende n 2, die 282 00:13:11,910 --> 00:13:13,910 in der Tat entspricht der Anzahl Menschen in dem Raum. 283 00:13:13,910 --> 00:13:16,610 >> Angenommen, dass es neben Null Personen im Raum. 284 00:13:16,610 --> 00:13:19,080 In der ersten Zeile initialisieren wir n auf 0. 285 00:13:19,080 --> 00:13:21,260 Wie vor, Linie drei nicht ausgeführt alles 286 00:13:21,260 --> 00:13:25,270 Da es keine Paare von Menschen in den Raum, bleibt und so n 0. 287 00:13:25,270 --> 00:13:27,840 Die in der Tat passt die Anzahl der Personen im Raum. 288 00:13:27,840 --> 00:13:30,520 Aber was, wenn es drei Personen im Zimmer? 289 00:13:30,520 --> 00:13:32,380 Wie funktioniert dieser Algorithmus Tarif? 290 00:13:32,380 --> 00:13:35,710 Mal sehen, in der ersten Zeile, Wir initialisieren n auf 0. 291 00:13:35,710 --> 00:13:39,140 Für ein Paar jener Menschen, Dann inkrementiert n um 2. 292 00:13:39,140 --> 00:13:40,050 Aber was dann? 293 00:13:40,050 --> 00:13:42,340 Es gibt keine andere Voll Paar Leute im Raum, 294 00:13:42,340 --> 00:13:44,430 so Linie zwei nicht mehr. 295 00:13:44,430 --> 00:13:48,790 Und so bis Ende diesen Algorithmus, n ist immer noch 2, die nicht korrekt ist. 296 00:13:48,790 --> 00:13:52,070 In der Tat diese Algorithmus sagte zu Buggy sein, weil es einen Fehler hat. 297 00:13:52,070 --> 00:13:54,070 >> Lassen Sie uns mit einigen Wiedergutmachung neue Pseudocode. 298 00:13:54,070 --> 00:13:56,110 Sei n gleich 0 ist. 299 00:13:56,110 --> 00:14:00,790 Für jedes Paar von Menschen Raum, gleich n plus 2 N. 300 00:14:00,790 --> 00:14:05,410 Wenn eine Person bleibt ungepaarten, gesetzt N gleich n plus 1. 301 00:14:05,410 --> 00:14:09,340 Um dieses spezielle Problem zu lösen, haben wir in Zeile vier eine Bedingung eingeführt, 302 00:14:09,340 --> 00:14:12,120 anders als eine bekannte Zweig, dass nur ausführt, 303 00:14:12,120 --> 00:14:14,890 wenn es eine Person, die wir nicht mit einem anderen Paar. 304 00:14:14,890 --> 00:14:17,140 Und jetzt, ob es gibt einen, oder drei, 305 00:14:17,140 --> 00:14:21,550 oder eine ungerade Anzahl von Personen im Raum, Dieser Algorithmus wird nun zählen. 306 00:14:21,550 --> 00:14:22,810 Können wir tun, noch besser? 307 00:14:22,810 --> 00:14:25,890 Nun, wir könnten zu dritt zu zählen, oder Vieren, oder sogar Fünfer und Zehner, 308 00:14:25,890 --> 00:14:29,390 aber darüber hinaus, es geht zu bekommen ein wenig schwierig zu Punkt. 309 00:14:29,390 --> 00:14:32,900 >> Am Ende des Tages, ob von Computern oder Menschen ausgeführt wird, 310 00:14:32,900 --> 00:14:34,870 Algorithmen sind nur ein Satz von Anweisungen 311 00:14:34,870 --> 00:14:36,560 mit denen Probleme zu lösen. 312 00:14:36,560 --> 00:14:38,360 Dies waren nur drei. 313 00:14:38,360 --> 00:14:41,860 Welches Problem würden Sie mit einem Algorithmus zu lösen? 314 00:14:41,860 --> 00:14:44,261 >> David J. MALAN: Also bewusst, ein sehr einfaches Programm, 315 00:14:44,261 --> 00:14:46,260 ein sehr einfacher Algorithmus, für etwas zu erreichen 316 00:14:46,260 --> 00:14:48,280 sehr einfach, das Zählen der Anzahl der Personen im Raum. 317 00:14:48,280 --> 00:14:50,370 >> Aber lassen Sie uns necken neben einige der Vertreter 318 00:14:50,370 --> 00:14:52,870 Features hier, die eigentlich werde auch nützlich sein, wenn 319 00:14:52,870 --> 00:14:54,880 Umsetzung der meisten komplexe Software. 320 00:14:54,880 --> 00:14:58,060 So zum Beispiel, in dieser ersten Zeile, wir haben, was wir die Variable nennen, 321 00:14:58,060 --> 00:15:01,040 und aus der Algebra, sind Sie allgemein bekannt mit x und y 322 00:15:01,040 --> 00:15:02,930 und Z manchmal, und so weiter. 323 00:15:02,930 --> 00:15:05,770 Aber in der Programmierung, Variablen noch am Ende des Tages, 324 00:15:05,770 --> 00:15:06,680 sehr ähnlich. 325 00:15:06,680 --> 00:15:09,910 Aber es ist vielleicht einfacher zu denken, einer Variablen als nur einem Behälter. 326 00:15:09,910 --> 00:15:13,520 Und, in der Tat ist es eine bestimmte Anzahl von Bits irgendwie auf Ihrer Festplatte umgesetzt 327 00:15:13,520 --> 00:15:16,410 oder im Speicher des Computers, aber mehr dazu in der Zukunft. 328 00:15:16,410 --> 00:15:17,670 Es ist nur ein Container. 329 00:15:17,670 --> 00:15:20,310 Und wenn Sie etwas sagen, wie lassen n gleich 0, 330 00:15:20,310 --> 00:15:24,310 auch das ist wie der Aufruf dieses Glas Schüssel hier n, nur ein beliebiger Name, 331 00:15:24,310 --> 00:15:26,230 und setzen nichts in ihm zunächst. 332 00:15:26,230 --> 00:15:28,940 So ist der Wert dieses Schüssel ist im Moment Null. 333 00:15:28,940 --> 00:15:31,380 Und natürlich, wenn Sie wahrnehmen, in einer nachfolgenden Zeile, 334 00:15:31,380 --> 00:15:35,070 um tatsächlich etwas zu erhöhen Linie Code, wie in diesem dritten Zeile hier, 335 00:15:35,070 --> 00:15:39,857 um 1, das ist wie wenn man sagt, was ist der aktuelle Wert von n, ist es 0, plus 1, 336 00:15:39,857 --> 00:15:41,690 stellen so etwas wie eine Tischtennisball in hier. 337 00:15:41,690 --> 00:15:45,140 Jetzt wird der Wert dieser Variable ist ganz einfach ein. 338 00:15:45,140 --> 00:15:50,064 Und man konnte sehr schnell zu extrapolieren, aber jetzt ist es 2, jetzt ist es 3, und so weiter. 339 00:15:50,064 --> 00:15:51,230 Also das ist alles eine Variable ist. 340 00:15:51,230 --> 00:15:53,740 Es ist ein Stück von Speicher zu einige Daten tatsächlich gespeichert werden. 341 00:15:53,740 --> 00:15:55,050 Für jetzt ist es ein Ping-Pong-Ball. 342 00:15:55,050 --> 00:15:55,883 Es es ist eine Zahl. 343 00:15:55,883 --> 00:15:58,910 Aber es könnte sein, Wörter in einem Wörterbuch, wie die Rechtschreibprüfung 344 00:15:58,910 --> 00:16:02,300 Ich spielte auf am Mittwoch für Einer der letztjährigen Problem-Sets. 345 00:16:02,300 --> 00:16:05,640 >> Jetzt ein weiterer wichtiger Gedanke, dass ähnlich ist ziemlich intuitiv würde ich behaupten, 346 00:16:05,640 --> 00:16:06,690 ist, dass eine Schleife. 347 00:16:06,690 --> 00:16:08,930 Und die Schleife in dem Verfahren zählen alle 348 00:16:08,930 --> 00:16:12,540 ist natürlich das Gleiche Sache wieder und again-- entweder 349 00:16:12,540 --> 00:16:14,140 an einem oder zwei Mal zu einer Zeit. 350 00:16:14,140 --> 00:16:17,690 Und Sie können dies auf Englisch auszudrücken, oder Pseudocode, in einer beliebigen Anzahl von Wegen, 351 00:16:17,690 --> 00:16:21,560 aber mit dieser Präposition "für" ist ein sehr üblicher Weg dies zu tun. 352 00:16:21,560 --> 00:16:24,460 Für jede Person im Raum, dies tun. 353 00:16:24,460 --> 00:16:25,350 Wieder und wieder. 354 00:16:25,350 --> 00:16:27,700 Und die Tatsache, dass es rückt, Linie drei, 355 00:16:27,700 --> 00:16:29,840 bedeutet nur, dass das, was Sie tun sollen 356 00:16:29,840 --> 00:16:33,490 ist der Stoff, eingerückt ist unter dem Strich zwei sich. 357 00:16:33,490 --> 00:16:35,590 Nur ein Mensch Konvention aber ein allgemeines 358 00:16:35,590 --> 00:16:39,010 wie wir im tatsächlichen höheren sehen Programmiersprachen. 359 00:16:39,010 --> 00:16:41,870 >> Jetzt wenig interessanter ist wenn man in einer Ecke Fall. 360 00:16:41,870 --> 00:16:43,970 Zum Beispiel kann eine Ecke Fall war, wenn es 361 00:16:43,970 --> 00:16:48,060 waren drei Personen, oder fünf, oder sieben, oder eine ungerade Anzahl von Personen im Raum, 362 00:16:48,060 --> 00:16:51,630 weil die dabei durch die Zweier-Bremsen schließlich, weil Sie gehen 363 00:16:51,630 --> 00:16:54,265 , jemanden zu vermissen entweder an die Anfang oder das Ende 364 00:16:54,265 --> 00:16:55,390 je nachdem, wie Sie es tun. 365 00:16:55,390 --> 00:16:59,800 Und so, jetzt habe ich diesen Zweig oder Zustand, wenn eine Person bleibt, 366 00:16:59,800 --> 00:17:04,490 dann gehen Sie vor und Griff, dass man einsame Person, die nicht bekommen 367 00:17:04,490 --> 00:17:05,690 mit jemand anderem gepaart. 368 00:17:05,690 --> 00:17:09,030 Also das ist, was wir nennen würden ein Zustand, oder ein Zweig. 369 00:17:09,030 --> 00:17:11,500 >> Jetzt Pseudocode allgemeiner können 370 00:17:11,500 --> 00:17:13,730 geschrieben, um eine beliebige Anzahl von Problemen zu lösen. 371 00:17:13,730 --> 00:17:16,490 Und was ich dachte, wir würden hier tun, ist einen Moment Zeit nehmen 372 00:17:16,490 --> 00:17:20,089 einladen sollen wir sagen CS50 ist besitzen Rob Bowden auf der Bühne 373 00:17:20,089 --> 00:17:25,040 von zwei Freiwilligen verbunden werden, , die keine Ahnung haben, was sie erwartet. 374 00:17:25,040 --> 00:17:26,890 Eine Hand ging, sobald ich das sagte. 375 00:17:26,890 --> 00:17:28,700 Wie über Sie auf der Ende hier, komm auf. 376 00:17:28,700 --> 00:17:33,040 Und wie aus weiter weg, wie über Art und Weise in den Rücken. 377 00:17:33,040 --> 00:17:35,200 Hintere Reihe, kommen Sie mit Ihren Händen auf. 378 00:17:35,200 --> 00:17:36,475 Okay, und was ist Ihr Name? 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 Okay, schön, Sie zu treffen. 382 00:17:38,613 --> 00:17:41,010 Lassen Sie mich Ihnen Rob Bowden vorstellen. 383 00:17:41,010 --> 00:17:42,890 Dies ist Anita. 384 00:17:42,890 --> 00:17:44,033 Und was ist dein Name? 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, komm und treffen Rob Bowden und Anita. 388 00:17:49,790 --> 00:17:51,036 Freut mich, dich kennenzulernen. 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: Okay, 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: Hallo Anita. 394 00:17:56,520 --> 00:17:58,686 David J. MALAN: Und Ihre mehrere hundert Klassenkameraden. 395 00:17:58,686 --> 00:18:02,490 So, jetzt lassen Sie mich gehen Sie vor und ziehen bis nur ein einfaches Programm hier 396 00:18:02,490 --> 00:18:05,690 auf Mac OS, dass sie mich lassen tatsächlich notieren einige Noten nach unten. 397 00:18:05,690 --> 00:18:09,570 Und wenn Sie Jungs wollen nehmen jeweils ein Position, an einer dieser Schulen gibt, 398 00:18:09,570 --> 00:18:16,360 lassen Sie mich gehen Sie vor und startet eine Liste von Pseudocode, wenn man so will. 399 00:18:16,360 --> 00:18:19,970 Und was ich will zu tun, schließlich ist der Typ für Sie 400 00:18:19,970 --> 00:18:22,470 einige Anweisungen, die unsere Zuschauer sind eigentlich 401 00:18:22,470 --> 00:18:23,569 gehen, um für uns zu beten. 402 00:18:23,569 --> 00:18:25,860 Lassen Sie mich weiter und gehen Sie einfach zu einer nummerierten Liste ändern diese 403 00:18:25,860 --> 00:18:27,720 zu entsprechen, was wir da oben. 404 00:18:27,720 --> 00:18:30,990 Und was ich zu tun Ihre Hilfe ist ein Programm schreiben 405 00:18:30,990 --> 00:18:34,620 in Pseudocode, mit dem Diese Leute werden 406 00:18:34,620 --> 00:18:38,150 um eine Erdnuss zu implementieren Butter und Gelee-Sandwich. 407 00:18:38,150 --> 00:18:40,880 So ist es vielleicht apropos etwas zeigen einige von euch 408 00:18:40,880 --> 00:18:44,560 vielleicht im Internet gesehen haben, nur für einen kurzen Moment ärgerlich. 409 00:18:44,560 --> 00:18:47,650 >> [MUSIC BUCKEWHEAT Jungs ", Erdnussbutter  Gelee-Zeit "] 410 00:18:47,650 --> 00:19:08,119 411 00:19:08,119 --> 00:19:08,910 David J. MALAN: OK. 412 00:19:08,910 --> 00:19:10,050 Das ist genug. 413 00:19:10,050 --> 00:19:12,690 Also hier mittlerweile, ich habe eine Paar Gläser, die Google 414 00:19:12,690 --> 00:19:16,500 wir werden auf CS50 eigenen Rob Bowden setzen , die Welt durch seine Augen zu sehen. 415 00:19:16,500 --> 00:19:19,140 Und wir werden unser Bestes tun, in der Post Produktion, um tatsächlich zu weben 416 00:19:19,140 --> 00:19:23,100 die Aufnahmen von dem, was Rob ist zu sehen Jetzt, in dieser Vorlesung tatsächlichen 417 00:19:23,100 --> 00:19:26,420 Video mit unseren beiden Freiwillige neben ihm. 418 00:19:26,420 --> 00:19:28,480 Also, was ich tun werde ist, werde ich die Schreibkraft sein. 419 00:19:28,480 --> 00:19:31,849 Wir haben das Ziel, hier der tatsächlich ein Programm schreiben 420 00:19:31,849 --> 00:19:34,640 mit dem um letztlich eine Erdnussbutter und Gelee-Sandwich, 421 00:19:34,640 --> 00:19:37,680 aber diese drei sind sich verhalten als ob sie Computern. 422 00:19:37,680 --> 00:19:40,638 Und Computer, am Ende des Tages, sind eigentlich ziemlich dumm Geräte. 423 00:19:40,638 --> 00:19:44,432 Sie sind super schnell, aber sie können nur tun, buchstäblich, was sie erzählt. 424 00:19:44,432 --> 00:19:46,890 Man kann nicht einfach sagen, machen eine Erdnuss Butter und Gelee-Sandwich. 425 00:19:46,890 --> 00:19:48,640 Sie haben, um sie zu programmieren, um das zu tun. 426 00:19:48,640 --> 00:19:51,420 Sie müssen ihnen sagen, mit Präzision, was zu tun ist, 427 00:19:51,420 --> 00:19:54,400 weniger die Dinge schrecklich und, hoffentlich amüsant schief. 428 00:19:54,400 --> 00:19:57,460 >> Also mit dieser sagte, müssen wir Ein Anruf-out aus dem Publikum 429 00:19:57,460 --> 00:19:59,440 für das, was Schritt sollte sein, wenn das Ziel hier 430 00:19:59,440 --> 00:20:01,356 ist es, eine Erdnuss zu machen Butter und Gelee-Sandwich. 431 00:20:01,356 --> 00:20:01,910 Ja? 432 00:20:01,910 --> 00:20:03,647 >> ZIELGRUPPE: [unverständlich] die Tasche Brot. 433 00:20:03,647 --> 00:20:05,230 David J. MALAN: Öffnen Sie den Beutel mit Brot. 434 00:20:05,230 --> 00:20:08,360 Also, wenn die drei Teilnehmer würden mag zu gehen, um das wörtlich zu tun. 435 00:20:08,360 --> 00:20:12,394 Öffnen Sie den Beutel Brot. 436 00:20:12,394 --> 00:20:15,810 >> [PUBLIKUM lacht] 437 00:20:15,810 --> 00:20:20,717 438 00:20:20,717 --> 00:20:22,300 David J. MALAN: Also lassen Sie uns arbeiten daran. 439 00:20:22,300 --> 00:20:23,180 In Ordnung. 440 00:20:23,180 --> 00:20:25,400 So Schritt zwei, how-- Lassen Sie uns diese weiter zu gehen. 441 00:20:25,400 --> 00:20:26,480 Ja, in der Front. 442 00:20:26,480 --> 00:20:27,240 >> ZIELGRUPPE: [unverständlich] das Brot. 443 00:20:27,240 --> 00:20:27,735 >> David J. MALAN: Was ist das? 444 00:20:27,735 --> 00:20:28,836 >> ZIELGRUPPE: Entfernen Sie das Brot. 445 00:20:28,836 --> 00:20:30,210 David J. MALAN: Entfernen Sie das Brot. 446 00:20:30,210 --> 00:20:31,190 Ebenso prägnant. 447 00:20:31,190 --> 00:20:33,667 Danke. 448 00:20:33,667 --> 00:20:43,777 >> [Applaus] 449 00:20:43,777 --> 00:20:44,860 David J. MALAN: Das ist es? 450 00:20:44,860 --> 00:20:48,830 OK, also Schritt zwei wird zu sein, entfernen Sie das Brot. 451 00:20:48,830 --> 00:20:51,790 Okay, jemand will Schreiben Sie uns eine längere Strafe? 452 00:20:51,790 --> 00:20:52,640 Jemand anders? 453 00:20:52,640 --> 00:20:53,920 Ein wenig mehr [unverständlich]. 454 00:20:53,920 --> 00:20:54,810 Nein, jetzt nichts. 455 00:20:54,810 --> 00:20:56,094 Ja? 456 00:20:56,094 --> 00:20:58,900 >> ZIELGRUPPE: Platz zwei Scheiben nebeneinander. 457 00:20:58,900 --> 00:21:03,575 >> David J. MALAN: Platz zwei Scheiben nebeneinander. 458 00:21:03,575 --> 00:21:06,420 >> [PUBLIKUM lacht] 459 00:21:06,420 --> 00:21:09,590 >> David J. MALAN: Platz zwei Scheiben nebeneinander. 460 00:21:09,590 --> 00:21:11,334 Schritt vier. 461 00:21:11,334 --> 00:21:12,816 Ja? 462 00:21:12,816 --> 00:21:14,792 >> ZIELGRUPPE: Nehmen Sie Ihre Hand und legen Sie es leicht 463 00:21:14,792 --> 00:21:17,756 auf der Oberseite des Deckels Erdnußbutter. 464 00:21:17,756 --> 00:21:19,710 >> [PUBLIKUM lacht] 465 00:21:19,710 --> 00:21:21,710 ZIELGRUPPE: [unverständlich] neben der Erdnussbutter. 466 00:21:21,710 --> 00:21:21,870 David J. MALAN: Was? 467 00:21:21,870 --> 00:21:22,520 Sag das noch einmal. 468 00:21:22,520 --> 00:21:26,308 >> ZIELGRUPPE: Schrauben Sie den Deckel und legen es vorsichtig neben der Erdnussbutter. 469 00:21:26,308 --> 00:21:31,490 >> David J. MALAN: Legen Sie es sanft neben der Erdnussbutter. 470 00:21:31,490 --> 00:21:37,770 471 00:21:37,770 --> 00:21:40,090 OK, Fortschritte. 472 00:21:40,090 --> 00:21:41,080 Schritt fünf. 473 00:21:41,080 --> 00:21:42,380 Ausgezeichnet. 474 00:21:42,380 --> 00:21:43,261 Ja? 475 00:21:43,261 --> 00:21:44,163 >> Pick-up Messer. 476 00:21:44,163 --> 00:21:46,380 477 00:21:46,380 --> 00:21:47,630 David J. MALAN: Abholung Messer. 478 00:21:47,630 --> 00:21:52,320 479 00:21:52,320 --> 00:21:53,631 OK, sechs Schritt. 480 00:21:53,631 --> 00:21:54,130 Ja? 481 00:21:54,130 --> 00:21:56,237 >> ZIELGRUPPE: Halten Sie Messer am Griff. 482 00:21:56,237 --> 00:21:57,945 David J. MALAN: Halten Messer am Griff. 483 00:21:57,945 --> 00:22:00,710 484 00:22:00,710 --> 00:22:03,230 Halten Sie Messer am Griff. 485 00:22:03,230 --> 00:22:04,880 Schritt sieben. 486 00:22:04,880 --> 00:22:05,692 Ja? 487 00:22:05,692 --> 00:22:10,030 >> ZIELGRUPPE: [unverständlich] Messer in Erdnuss Butter und so wenig out [unverständlich]. 488 00:22:10,030 --> 00:22:13,070 >> David J. MALAN: Setzen Messer in-- ich gehört "Messer in Erdnussbutter 489 00:22:13,070 --> 00:22:19,500 und nehmen Sie so wenig wie möglich. " 490 00:22:19,500 --> 00:22:22,480 Übrigens, entfernen Sie zuerst das Papier. 491 00:22:22,480 --> 00:22:29,320 492 00:22:29,320 --> 00:22:31,890 Alle Rechte, Schritt neun. 493 00:22:31,890 --> 00:22:34,910 Schritt neun. 494 00:22:34,910 --> 00:22:35,624 Schritt neun. 495 00:22:35,624 --> 00:22:37,290 Wir haben nicht wirklich ein Sandwich abgegeben. 496 00:22:37,290 --> 00:22:37,790 Ja? 497 00:22:37,790 --> 00:22:41,570 ZIELGRUPPE: Mit Messer in Erdnussbutter, gelten Erdnussbutter auf dem Brot. 498 00:22:41,570 --> 00:22:47,440 >> David J. MALAN: Mit Messer in Erdnussbutter, gelten Erdnussbutter auf 499 00:22:47,440 --> 00:22:48,736 der Brot. 500 00:22:48,736 --> 00:22:56,030 >> [PUBLIKUM lacht] 501 00:22:56,030 --> 00:22:59,480 David J. MALAN: Alle richtigen Schritt 10. 502 00:22:59,480 --> 00:23:01,762 Schritt 10. 503 00:23:01,762 --> 00:23:02,750 Ja? 504 00:23:02,750 --> 00:23:05,220 >> ZIELGRUPPE: Geschmack Erdnuss Butter um die Qualität. 505 00:23:05,220 --> 00:23:15,960 >> [PUBLIKUM lacht] 506 00:23:15,960 --> 00:23:16,960 David J. MALAN: Schritt 11. 507 00:23:16,960 --> 00:23:19,500 508 00:23:19,500 --> 00:23:21,340 Schritt 11. 509 00:23:21,340 --> 00:23:22,101 Schritt 11. 510 00:23:22,101 --> 00:23:22,600 Komm schon. 511 00:23:22,600 --> 00:23:23,099 Ja? 512 00:23:23,099 --> 00:23:24,208 Genau dort. 513 00:23:24,208 --> 00:23:25,840 >> ZIELGRUPPE: Sorgfältig abholen Gelee. 514 00:23:25,840 --> 00:23:28,220 >> David J. MALAN: Sorgfältig abholen Gelee. 515 00:23:28,220 --> 00:23:29,970 OK, und eine andere Hand lag. 516 00:23:29,970 --> 00:23:32,812 517 00:23:32,812 --> 00:23:33,520 Direkt hinter dir. 518 00:23:33,520 --> 00:23:35,761 Ja, in blau. 519 00:23:35,761 --> 00:23:40,671 >> ZIELGRUPPE: Alle Rechte, entfernen Deckel von [unverständlich], ja, 520 00:23:40,671 --> 00:23:42,635 Deckel zu entfernen aus dem Gelee. 521 00:23:42,635 --> 00:23:43,617 >> [PUBLIKUM lacht] 522 00:23:43,617 --> 00:23:44,742 >> David J. MALAN: Vom Gelee. 523 00:23:44,742 --> 00:23:45,581 Ha ha. 524 00:23:45,581 --> 00:23:48,967 >> [PUBLIKUM lacht] 525 00:23:48,967 --> 00:23:49,800 David J. MALAN: Und? 526 00:23:49,800 --> 00:23:52,490 ZIELGRUPPE: Und kaum fegen beliebig [unverständlich]. 527 00:23:52,490 --> 00:23:59,536 [PUBLIKUM lacht] 528 00:23:59,536 --> 00:24:04,456 ZIELGRUPPE: Natürlich, bevor [unverständlich], entfernen Sie das Papier aus Gelee. 529 00:24:04,456 --> 00:24:06,940 David J. MALAN: Nehmen Sie das Papier aus Gelee. 530 00:24:06,940 --> 00:24:08,229 Schritt 14. 531 00:24:08,229 --> 00:24:09,020 Wir sind fast da. 532 00:24:09,020 --> 00:24:09,857 Ja? 533 00:24:09,857 --> 00:24:12,600 >> ZIELGRUPPE: Invert Gelee Flasche bevor alles fällt aus. 534 00:24:12,600 --> 00:24:16,515 >> David J. MALAN: Invert Gelee Flasche vor Gelee fällt aus. 535 00:24:16,515 --> 00:24:19,070 536 00:24:19,070 --> 00:24:19,890 Schritt 15. 537 00:24:19,890 --> 00:24:21,130 >> ZIELGRUPPE: Setzen Sie die Kappe. 538 00:24:21,130 --> 00:24:22,463 >> David J. MALAN: Setzen Sie die Kappe. 539 00:24:22,463 --> 00:24:25,880 540 00:24:25,880 --> 00:24:28,190 Schritt 16. 541 00:24:28,190 --> 00:24:28,931 Ja? 542 00:24:28,931 --> 00:24:29,806 >> ZIELGRUPPE: [unverständlich] 543 00:24:29,806 --> 00:24:34,109 544 00:24:34,109 --> 00:24:35,400 David J. MALAN: Sag das noch einmal. 545 00:24:35,400 --> 00:24:38,100 ZIELGRUPPE: Nehmen Sie Kappe von Ihrem Gelee. 546 00:24:38,100 --> 00:24:39,650 David J. MALAN: Aus Ihrer Gelee. 547 00:24:39,650 --> 00:24:43,720 548 00:24:43,720 --> 00:24:49,510 So really-- Oops. 549 00:24:49,510 --> 00:24:50,420 Komm schon. 550 00:24:50,420 --> 00:24:51,740 Setzen Sie die Kappe. 551 00:24:51,740 --> 00:24:56,660 Setzen Sie die cap-- Den Deckel von Gelee. 552 00:24:56,660 --> 00:24:58,950 Fühlen Sie sich wie wir ein bisschen in der Schleife sind. 553 00:24:58,950 --> 00:24:59,640 Schritt 17. 554 00:24:59,640 --> 00:25:00,398 Ja? 555 00:25:00,398 --> 00:25:02,639 >> ZIELGRUPPE: [unverständlich] 556 00:25:02,639 --> 00:25:03,930 David J. MALAN: Sag das noch einmal. 557 00:25:03,930 --> 00:25:05,150 ZIELGRUPPE: [unverständlich] 558 00:25:05,150 --> 00:25:07,835 David J. MALAN: Zurück zum step-- 559 00:25:07,835 --> 00:25:10,110 ZIELGRUPPE: [unverständlich] 560 00:25:10,110 --> 00:25:13,760 David J. MALAN: Entfernen Kappe von Erdnussbutter. 561 00:25:13,760 --> 00:25:14,492 Ja? 562 00:25:14,492 --> 00:25:16,430 >> ZIELGRUPPE: Drop alle Gelee auf dem Brot. 563 00:25:16,430 --> 00:25:19,040 >> David J. MALAN: Löschen Sie alle das Gelee auf dem Brot. 564 00:25:19,040 --> 00:25:25,372 565 00:25:25,372 --> 00:25:26,830 David J. MALAN: Wir sind fast da. 566 00:25:26,830 --> 00:25:27,800 Schritt 19. 567 00:25:27,800 --> 00:25:30,250 >> ZIELGRUPPE: Entfernen Sie überschüssiges Gelee. 568 00:25:30,250 --> 00:25:31,720 >> David J. MALAN: Haha, Gelee. 569 00:25:31,720 --> 00:25:36,615 >> [Applaus] 570 00:25:36,615 --> 00:25:39,240 David J. MALAN: Warum nicht wir-- nicht ein weiterer Schritt, um dieses Haus zu nehmen. 571 00:25:39,240 --> 00:25:41,720 Ein weiterer Schritt, und dann wir Sandwiches dienen. 572 00:25:41,720 --> 00:25:42,900 Ja? 573 00:25:42,900 --> 00:25:45,570 >> ZIELGRUPPE: [unverständlich] 574 00:25:45,570 --> 00:25:50,704 >> David J. MALAN: Während jedem Sandwich Lassen Sie uns remains-- Gedankenstrich this-- essen. 575 00:25:50,704 --> 00:25:56,400 >> [Gelächter im Publikum] 576 00:25:56,400 --> 00:26:00,395 >> David J. MALAN: Okay, danke Ihnen, unseren Freiwilligen hier. 577 00:26:00,395 --> 00:26:06,150 >> [Beifall} 578 00:26:06,150 --> 00:26:08,940 >> David J. MALAN: Wir haben ein paar schöne Abschiedsgeschenke für jeden von euch. 579 00:26:08,940 --> 00:26:14,350 Ihre eigene Erdnussbutter, Gelee, und Brot nach Hause zu bringen. 580 00:26:14,350 --> 00:26:15,774 Danke. 581 00:26:15,774 --> 00:26:17,118 >> KIERSTEN: Danke. 582 00:26:17,118 --> 00:26:18,618 David J. MALAN: [unverständlich] begrüßen zu dürfen. 583 00:26:18,618 --> 00:26:21,849 [Applaus] 584 00:26:21,849 --> 00:26:24,390 David J. MALAN: Also, das ist, von natürlich eine lächerliche Beispiel. 585 00:26:24,390 --> 00:26:24,890 Oder? 586 00:26:24,890 --> 00:26:28,890 Aber es muss Art zeigen, wie wir Menschen nur nehmen Klarheit für selbstverständlich. 587 00:26:28,890 --> 00:26:30,890 Und die Tatsache, ich war im Gespräch mit anderen Menschen, 588 00:26:30,890 --> 00:26:33,300 er oder sie weiß, was du meinst. 589 00:26:33,300 --> 00:26:35,220 >> Computer werden nicht zu wissen, was du meinst, 590 00:26:35,220 --> 00:26:37,430 auch bei der Verwendung als wir sind dabei heute zu tun, 591 00:26:37,430 --> 00:26:42,300 Programmierung etwas in Scratch, eine Drag Drop, Puzzleteil Stil Sprache. 592 00:26:42,300 --> 00:26:44,310 Auch für junge entworfen Kinder, haben Sie 593 00:26:44,310 --> 00:26:48,726 so explizit und so wörtlich mit sein was Sie möchten, dass Ihr Programm zu tun. 594 00:26:48,726 --> 00:26:50,600 Jetzt letztlich sind wir Programmierarbeit zu sein 595 00:26:50,600 --> 00:26:53,550 nicht in Pseudocode, Englisch wie Syntax, 596 00:26:53,550 --> 00:26:56,370 aber Code oder, richtiger, Quellcode. 597 00:26:56,370 --> 00:26:59,260 Source-Code ist nur die andere Art für Code, den Sie beschreiben, tatsächlich 598 00:26:59,260 --> 00:27:01,730 Schreiben mit einer Tastatur, die ist nicht in englischer Sprache per se. 599 00:27:01,730 --> 00:27:06,480 Es ist in C oder Java oder C oder etwas ++ so, wie wir bald sehen werden. 600 00:27:06,480 --> 00:27:09,510 >> Und in der Tat, nur um einen Schreck einige von euch, auf den ersten Blick 601 00:27:09,510 --> 00:27:13,769 Dies ist ein Programm in einer Sprache geschrieben genannt C. Aber zu un-Schreck ein paar von euch, 602 00:27:13,769 --> 00:27:15,560 Sie werden vollständig verstehen, was los 603 00:27:15,560 --> 00:27:18,980 kommen auf nächsten Montag, wenn es kommt, so etwas zu. 604 00:27:18,980 --> 00:27:20,510 Ehrlich gesagt, ist dies eine ältere Sprache. 605 00:27:20,510 --> 00:27:22,430 Es ist ziemlich obskur, aber es ist repräsentativ 606 00:27:22,430 --> 00:27:26,120 von vielen Sprachen in diesen Tagen, dass haben viele Klammern und lockig 607 00:27:26,120 --> 00:27:28,630 Klammern und Anführungszeichen und Semikolons. 608 00:27:28,630 --> 00:27:30,780 Und eine Menge von dieser syntaktischen Sachen, die nicht 609 00:27:30,780 --> 00:27:32,450 haupt intellektuell interessant. 610 00:27:32,450 --> 00:27:35,790 In der Tat, es ist eine völlige Ablenkung von den einfachen Ideen 611 00:27:35,790 --> 00:27:37,370 dass starrte uns ins Gesicht. 612 00:27:37,370 --> 00:27:41,760 Dieses Programm, wie Sie vielleicht nur raten, Drucke auf Computer-Bildschirm jemand 613 00:27:41,760 --> 00:27:44,070 die Worte "Hallo Komma Welt." 614 00:27:44,070 --> 00:27:44,860 Das ist es. 615 00:27:44,860 --> 00:27:46,580 So klar, es gibt eine Menge Sachen, die es 616 00:27:46,580 --> 00:27:48,970 im Weg der einige Offensichtlichkeit gibt, 617 00:27:48,970 --> 00:27:52,490 aber es wird sehr schnell rutschen entfernt und völlig intuitiv. 618 00:27:52,490 --> 00:27:55,617 >> In der Tat, was wir tun werden heute destillieren diese recht komplexe 619 00:27:55,617 --> 00:27:58,950 Suche Programm, das wieder werden Sie kommen , schnell zu verstehen, sondern um etwas 620 00:27:58,950 --> 00:27:59,710 viel einfacher. 621 00:27:59,710 --> 00:28:01,640 Sagen wir einfach, was wir meinen. 622 00:28:01,640 --> 00:28:05,590 Lassen Sie uns ein Bild von, was wir meinen, durch diese Puzzleteile hier. 623 00:28:05,590 --> 00:28:09,110 >> Also das ist ein Programmier Sprache als Scratch bekannt. 624 00:28:09,110 --> 00:28:11,080 Es wurde von MIT Media Lab entwickelt. 625 00:28:11,080 --> 00:28:14,830 Und was Sie in Problem sehen Null gesetzt, die später heute Abend veröffentlicht wird, 626 00:28:14,830 --> 00:28:18,980 wir müssen Sie dies gehen URL hier scratch.mit.edu. 627 00:28:18,980 --> 00:28:20,940 Und sie haben einen Web- basierte Schnittstelle, über die 628 00:28:20,940 --> 00:28:22,540 Sie werden Ihr erstes Programm schreiben. 629 00:28:22,540 --> 00:28:25,330 Oder die von Ihnen mit vor Erfahrung, Ihre zweite Programme, 630 00:28:25,330 --> 00:28:28,090 aber in einem Umfeld, das ist wahrscheinlich ein wenig ungewohnt und dass 631 00:28:28,090 --> 00:28:32,930 Sie drücken, um etwas zu schaffen mit dieser sehr visuellen Umgebung. 632 00:28:32,930 --> 00:28:35,940 >> Nun, was ich hier zu tun ist die Öffnung des Programms. 633 00:28:35,940 --> 00:28:41,911 Es existiert nicht nur als ein Web-Browser, sondern auch als herunterladbare Programm 634 00:28:41,911 --> 00:28:44,660 so dass Sie tatsächlich verwenden Wenn Sie keinen Internetzugang. 635 00:28:44,660 --> 00:28:46,743 Und ich werde das tun, hier, in Sanders, nur 636 00:28:46,743 --> 00:28:49,580 für den Fall, das Wi-Fi funktioniert nicht super gut zusammenarbeiten. 637 00:28:49,580 --> 00:28:52,640 Und was ich tun werde, ist der Punkt aus ein paar Funktionen des Programms. 638 00:28:52,640 --> 00:28:55,720 Also, klar zu sein, habe ich einfach doppelt klickt auf das Symbol auf dem Desktop, 639 00:28:55,720 --> 00:28:59,830 oder äquivalent gegangen, um scratch.mit.edu, und es ist dieses Fenster gezogen. 640 00:28:59,830 --> 00:29:01,650 Dies ist eine Programmierumgebung. 641 00:29:01,650 --> 00:29:04,110 Es ist ein Stück Software, dass einige unserer Freunde am MIT 642 00:29:04,110 --> 00:29:08,850 schrieb, dass die uns und Ihnen zu schreiben Programme in einer Sprache namens Scratch. 643 00:29:08,850 --> 00:29:12,010 >> Nun geschieht, ein sein Katze, die auch als Scratch 644 00:29:12,010 --> 00:29:13,890 und dies ist seine Welt, in der er lebt. 645 00:29:13,890 --> 00:29:17,175 Dies ist die Phase, so zu sprechen, dass Rechteck auf der linken oberen Ecke. 646 00:29:17,175 --> 00:29:18,800 Und er muss nicht wie eine Katze aussehen. 647 00:29:18,800 --> 00:29:20,591 Sie kann ihn sehen wie alles, und Sie 648 00:29:20,591 --> 00:29:23,700 können viele solcher Sprites haben, oder Schriftzeichen in einem Programm. 649 00:29:23,700 --> 00:29:27,450 Inzwischen hier auf der anderen rechts, ist ein großes unbeschriebenes Blatt. 650 00:29:27,450 --> 00:29:30,260 Und das ist, wo, in einem Augenblick, werden wir mit der Programmierung beginnen 651 00:29:30,260 --> 00:29:32,750 durch Ziehen und Ablegen Diese grafischen Puzzle 652 00:29:32,750 --> 00:29:35,300 Stücke, die richtigen sind hier in der Mitte. 653 00:29:35,300 --> 00:29:38,140 Und es ist viel mehr von ihnen als wir Zeit auf in der Klasse verbringen hier 654 00:29:38,140 --> 00:29:40,080 weil Sie werden feststellen, dass sie sind alle ziemlich intuitiv. 655 00:29:40,080 --> 00:29:41,788 Wieder, es ist entworfen, für Kinder, aber wir 656 00:29:41,788 --> 00:29:45,759 verwenden, um necken neben einige von denen, Grundgedanken der Variablen, Schleifen, 657 00:29:45,759 --> 00:29:48,050 Bedingungen, und bald Dinge wie Veranstaltungen und Events 658 00:29:48,050 --> 00:29:51,810 und Fäden und andere ausgefallene Dinge, die wir werde bekommen, um vor lange, um tatsächlich zu schaffen 659 00:29:51,810 --> 00:29:53,840 etwas von Grund auf. 660 00:29:53,840 --> 00:29:54,810 Wortspiel beabsichtigt. 661 00:29:54,810 --> 00:29:58,740 >> Nun, was ich hier zu tun ist klicken Sie nicht Bewegung, sondern Kontrolle. 662 00:29:58,740 --> 00:30:01,400 Und das ist nur eine Kategorisierung von hier-- 663 00:30:01,400 --> 00:30:03,150 und ich sehe eine andere Farbe Satz von Blöcken. 664 00:30:03,150 --> 00:30:05,030 Beachten Sie aber, ein paar bekannte Wörter. 665 00:30:05,030 --> 00:30:07,830 "Wenn" und "else if" und "Wiederholung". 666 00:30:07,830 --> 00:30:10,440 Und Sie können sich wahrscheinlich vorstellen, das ist erinnert an den Zweig, 667 00:30:10,440 --> 00:30:12,870 oder die Bedingungen, die wir gesehen haben, und sogar die Schleifenkonstrukt. 668 00:30:12,870 --> 00:30:14,760 So haben wir hier ähnliche Blöcke. 669 00:30:14,760 --> 00:30:16,720 Aber am interessantesten man ist diese hier. 670 00:30:16,720 --> 00:30:20,690 Wenn diese grüne Flagge angeklickt wird, dies für die mit dem Stand der Programmier 671 00:30:20,690 --> 00:30:23,110 Erfahrung entspricht einem Hauptfunktion. 672 00:30:23,110 --> 00:30:25,300 Aber für diejenigen, die nicht, Das ist das Puzzlestück 673 00:30:25,300 --> 00:30:27,320 das wird einen Anstoß für unsere gesamte Programm. 674 00:30:27,320 --> 00:30:31,350 Wörtlich bedeutet es, wenn ich gehe, in diesem Programm, und klicken Sie auf einen grünen flag-- 675 00:30:31,350 --> 00:30:35,560 was können Sie bis in die hier zu sehen linken oberen Ecke der Benutzeroberfläche, 676 00:30:35,560 --> 00:30:38,570 so sehen die grüne Fahne neben dem roten Stopp-Schild? 677 00:30:38,570 --> 00:30:41,475 Wenn ich auf das, meine Programm laufen soll. 678 00:30:41,475 --> 00:30:43,850 Nun, ich werde etwas tun super einfach mit Scratch. 679 00:30:43,850 --> 00:30:46,640 Ich werde weitermachen und gehen auf die Blicke Tafel 680 00:30:46,640 --> 00:30:50,010 hier, wo ich ein paar von lila Puzzleteile, 681 00:30:50,010 --> 00:30:53,887 und ich werde weitermachen und tun super einfach etwas sagen wie. 682 00:30:53,887 --> 00:30:55,720 Und diese Ankündigung dann- Text in das weiße Feld 683 00:30:55,720 --> 00:30:59,290 ist editable-- Ich werde sagen, "Hallo Welt", wie wir gerade 684 00:30:59,290 --> 00:31:01,470 hat in diesem Text Version vor einem Augenblick. 685 00:31:01,470 --> 00:31:05,920 Und jetzt, wenn ich gehe, und klicken Sie diese grüne Flagge, ich habe jetzt programmiert. 686 00:31:05,920 --> 00:31:07,810 Es ist kein besonders interessantes Programm, 687 00:31:07,810 --> 00:31:09,760 aber ich machte der Computer etwas zu tun. 688 00:31:09,760 --> 00:31:13,120 Ich begann ein Programm, und es tat, was ich gesagt, es zu tun. 689 00:31:13,120 --> 00:31:16,170 Jetzt kann ich weiter ziehen mehr und mehr von diesen Puzzleteilen 690 00:31:16,170 --> 00:31:19,220 und sie gehen zu verriegeln, aber wir schlagen einige Begriffe hier 691 00:31:19,220 --> 00:31:21,680 wir werden sehen, dass wiederkehrende Während des Kurses 692 00:31:21,680 --> 00:31:24,610 und wirklich ganz Informatik und Programmierung im Allgemeinen. 693 00:31:24,610 --> 00:31:27,990 >> Diese "sagen" Block, in lila, lassen Sie uns nur telefonieren Sie eine Erklärung ab. 694 00:31:27,990 --> 00:31:29,240 Es ist wie eine Feststellung. 695 00:31:29,240 --> 00:31:30,380 Tun Sie dies. 696 00:31:30,380 --> 00:31:32,590 Also, es ist eine Kategorie von Anweisungen, die Sie 697 00:31:32,590 --> 00:31:36,760 könnte einen Computer als Teil füttern eines Programms oder eines Algorithmus. 698 00:31:36,760 --> 00:31:39,270 Und klar sein, haben Sie wohl für selbstverständlich 699 00:31:39,270 --> 00:31:41,930 dass Sie Programme auf Ihrem Computer. 700 00:31:41,930 --> 00:31:45,850 Und sie sind Art von Algorithmen, sondern ein Programm ist wirklich ein Haufen von Algorithmen 701 00:31:45,850 --> 00:31:47,160 dass einige Menschen schrieb. 702 00:31:47,160 --> 00:31:49,040 Sie verpackt es und sie verkauft, so dass Sie, 703 00:31:49,040 --> 00:31:51,330 oder sie auf einer Website veröffentlicht für Sie zum Download bereit. 704 00:31:51,330 --> 00:31:54,930 Also, das ist ein Programm, nur einen ganze Reihe von Nullen und Einsen 705 00:31:54,930 --> 00:31:56,970 dass, irgendwie, schuf den Menschen. 706 00:31:56,970 --> 00:32:00,080 Und diese Muster von Nullen und diejenigen Dinge darstellen, letztlich 707 00:32:00,080 --> 00:32:04,030 sagen wie "Hallo Welt" oder "Spiel diese Musik "oder" spielen dieses video " 708 00:32:04,030 --> 00:32:05,129 oder "senden Sie eine E-Mail." 709 00:32:05,129 --> 00:32:06,920 Aber wir werden wieder kommen in Weise näher, was 710 00:32:06,920 --> 00:32:08,780 ein Programm ist, wenn Sie, sich selbst, schreibt sie. 711 00:32:08,780 --> 00:32:11,320 >> Hier ist ein weiterer statement-- "Warten Sie eine Sekunde." 712 00:32:11,320 --> 00:32:14,330 Ich habe nicht mit dieser noch nicht, aber wenn ich will, mein Programm für einen Moment innehalten 713 00:32:14,330 --> 00:32:16,540 etwas zu tun, kann ich sagen, es zu tun. 714 00:32:16,540 --> 00:32:18,450 Warten Sie eine Sekunde. 715 00:32:18,450 --> 00:32:20,150 Jetzt ein anderer sein könnte "spielen Sound." 716 00:32:20,150 --> 00:32:23,270 Also, das ist einzigartig, es Scratch hat die Fähigkeit, Töne zu spielen. 717 00:32:23,270 --> 00:32:26,130 Also, ich könnte eine Erklärung Einsatz ist, hier "spielen Sound." 718 00:32:26,130 --> 00:32:29,530 Inzwischen Booleschen Ausdruck, so ist dies ein schicker Wort 719 00:32:29,530 --> 00:32:34,490 nach nur einem Mann namens Mr. Bool benannt, und das ist alles über eine Frage. 720 00:32:34,490 --> 00:32:37,470 Wahr oder false-- ist die Maus nach unten? 721 00:32:37,470 --> 00:32:41,100 Ein boolescher Ausdruck ist nur einige Ausdruck in Englisch 722 00:32:41,100 --> 00:32:42,860 das ist entweder wahr oder falsch. 723 00:32:42,860 --> 00:32:44,140 Entweder an oder aus. 724 00:32:44,140 --> 00:32:45,130 Entweder Eins oder Null. 725 00:32:45,130 --> 00:32:46,960 Sie können es glauben in einer beliebigen Anzahl von Wegen, 726 00:32:46,960 --> 00:32:49,220 aber es ist entweder wahr oder Diese falsche, letztlich. 727 00:32:49,220 --> 00:32:52,540 So "Maus nach unten Fragezeichen," das wäre ein boolscher Ausdruck sein kann. 728 00:32:52,540 --> 00:32:54,300 Und Sie können an andere zu denken, vielleicht. 729 00:32:54,300 --> 00:32:57,510 Zum Beispiel, "ist die linke Zahl weniger als die richtige Zahl? " 730 00:32:57,510 --> 00:32:59,410 Auch das wäre ein boolescher Ausdruck. 731 00:32:59,410 --> 00:33:01,540 "Weniger als" ist ein boolescher Ausdruck. 732 00:33:01,540 --> 00:33:03,280 >> Dieser, auch "berühren Mauszeiger." 733 00:33:03,280 --> 00:33:05,196 Ich bin mir nicht sicher, warum sie nannte es Mauszeiger. 734 00:33:05,196 --> 00:33:08,430 Es bedeutet nur, befindet sich der Cursor ist die Pfeil auf dem Bildschirm, berühren die Katze, 735 00:33:08,430 --> 00:33:09,022 beispielsweise. 736 00:33:09,022 --> 00:33:10,480 Oder einen anderen Aspekt des Bildschirms. 737 00:33:10,480 --> 00:33:13,710 Und es ist eine Frage, wieder und dass bezeichnet einen Booleschen Ausdruck. 738 00:33:13,710 --> 00:33:17,130 Etwas, dass Sie vielleicht wollen in einem Zustand zu verwenden. 739 00:33:17,130 --> 00:33:19,100 Also werden wir an, dass in nur einem Augenblick kommen. 740 00:33:19,100 --> 00:33:20,350 Sie können "und" die Dinge zusammen. 741 00:33:20,350 --> 00:33:23,099 Also, wenn Sie wollen, wenn dies zu überprüfen ist der Fall, und das ist der Fall, 742 00:33:23,099 --> 00:33:25,580 können Sie ein "und" Block wie diese zu verwenden. 743 00:33:25,580 --> 00:33:26,850 Und hier ist die Bedingung. 744 00:33:26,850 --> 00:33:31,290 Beachten Sie die Form der kleinen Öffnung in der Anfang der gelben Puzzleteil, 745 00:33:31,290 --> 00:33:34,480 es erinnert an die Form dass wir gerade vor einem Moment sah. 746 00:33:34,480 --> 00:33:37,920 Jede dieser Booleschen Ausdrücken haben diese spitzen Ecken 747 00:33:37,920 --> 00:33:39,030 links und rechts. 748 00:33:39,030 --> 00:33:43,140 Und das ist, weil die Leute MIT entschieden dass durch die visuell Förder Formen, 749 00:33:43,140 --> 00:33:45,780 Sie können den Menschen helfen, Art, Studenten und Kinder gleichermaßen, 750 00:33:45,780 --> 00:33:47,650 zu Art füllen Sie die Felder wörtlich. 751 00:33:47,650 --> 00:33:49,780 >> Jetzt, dass puzzle-- Öffnung ist ein wenig klein, 752 00:33:49,780 --> 00:33:52,750 und wie wir in dem Programm zu sehen, in Scratch, wird es wachsen zu passen. 753 00:33:52,750 --> 00:33:54,830 Es wird seine Form beizubehalten, letztlich. 754 00:33:54,830 --> 00:33:58,350 So ein Zustand, lassen Sie uns zu entscheiden "Soll ich etwas zu tun oder nicht?" 755 00:33:58,350 --> 00:34:00,470 Ein boolescher Ausdruck ist die eigentliche Frage 756 00:34:00,470 --> 00:34:04,100 Sie entscheiden, kann ich zu gehen links oder gehe ich nach rechts 757 00:34:04,100 --> 00:34:06,710 wenn ich diese Begegnung so genannte Gabel in der Straße? 758 00:34:06,710 --> 00:34:07,980 Sie können zwei Zweige haben. 759 00:34:07,980 --> 00:34:10,909 Wenn etwas wahr ist, tun diese, sonst gehen diesen Weg, 760 00:34:10,909 --> 00:34:14,590 oder Sie können einfach gar nichts zu tun allem, wie dieser Block stillschweigend. 761 00:34:14,590 --> 00:34:16,360 Ebenso können wir diese Dinge Nest. 762 00:34:16,360 --> 00:34:20,204 Also, wenn Sie bis zum Verbraucher in der Triple wollen Straße, entweder dies oder dies oder das, 763 00:34:20,204 --> 00:34:21,870 Sie können nur Nest diese Dinge zusammen. 764 00:34:21,870 --> 00:34:24,520 Und es beginnt, ein wenig zu hässlich, schließlich, das ist sicher, 765 00:34:24,520 --> 00:34:26,120 aber die Logik immer noch die gleichen. 766 00:34:26,120 --> 00:34:28,000 Sie können buchstäblich lesen dies oben nach unten 767 00:34:28,000 --> 00:34:33,290 und es sagt, was es means-- wenn diese wahr ist, dies zu tun, sonst, wenn anderes. 768 00:34:33,290 --> 00:34:36,179 >> Eine Schleife wird nicht einfacher im Scratch. 769 00:34:36,179 --> 00:34:37,422 Für immer tun die folgenden. 770 00:34:37,422 --> 00:34:39,880 Nun könnte man Sie nicht, dass können viel tun, weil es nicht 771 00:34:39,880 --> 00:34:42,839 viel Raum zwischen der oberen und der Ende der Puzzle-Stück Öffnung. 772 00:34:42,839 --> 00:34:45,671 Aber Sie werden sehen, Scratch ist los wachsen, so viele Puzzleteile passen 773 00:34:45,671 --> 00:34:47,060 wie man dort stopfen wollen. 774 00:34:47,060 --> 00:34:48,960 Weitere Schleife könnte mit Wiederholungen ausgedrückt. 775 00:34:48,960 --> 00:34:51,590 Wenn Sie im Voraus wissen: "Ich wollen etwas 10 Mal zu tun ", 776 00:34:51,590 --> 00:34:54,010 Sie können nur sagen, Scratch etwas 10 Mal zu tun. 777 00:34:54,010 --> 00:34:57,260 Und mittlerweile können wir Variablen haben. 778 00:34:57,260 --> 00:34:59,572 Also hier ist eine willkürliche, es ist in diesem Fall Orange, 779 00:34:59,572 --> 00:35:00,780 und das ist eine rasante Tour. 780 00:35:00,780 --> 00:35:04,540 Auch hier finden Sie diese sehr zugänglich finden sobald Sie beginnen Zeigen und Klicken. 781 00:35:04,540 --> 00:35:07,930 Ich habe meine Variable n genannt, aber ich könnte es, was ich will benannt haben, 782 00:35:07,930 --> 00:35:11,280 und ich bin hier die Einstellung, in Diese willkürliche Beispiel Null. 783 00:35:11,280 --> 00:35:14,250 >> Jetzt sehen Sie ein Programm wie hallo Welt ist gar nicht so überzeugend, 784 00:35:14,250 --> 00:35:17,900 also lasst uns tatsächlich eröffnen etwas dass ein ehemaliger Schüler gemacht. 785 00:35:17,900 --> 00:35:23,100 Lassen Sie mich gehen Sie vor und öffnen, zum Beispiel diese hier, 786 00:35:23,100 --> 00:35:26,780 für die ich lieben würde , einen Freiwilligen zu haben. 787 00:35:26,780 --> 00:35:28,450 Alle Rechte, wie about-- wir weiter gehen. 788 00:35:28,450 --> 00:35:29,240 Ja, kommen Sie auf. 789 00:35:29,240 --> 00:35:30,056 Wie heißen Sie? 790 00:35:30,056 --> 00:35:30,635 >> ABBY: Abby. 791 00:35:30,635 --> 00:35:32,010 David J. MALAN: Abby, komm auf. 792 00:35:32,010 --> 00:35:35,930 So haben Sie jemals gespielt dieses Spiel vor? 793 00:35:35,930 --> 00:35:36,430 ABBY: Nein 794 00:35:36,430 --> 00:35:37,370 David J. MALAN: In Ordnung. 795 00:35:37,370 --> 00:35:38,380 David, schön, Sie zu treffen. 796 00:35:38,380 --> 00:35:39,620 Kommen Sie vorbei. 797 00:35:39,620 --> 00:35:42,300 Und was ist Ihre Programmierung Hintergrund, wenn vorhanden. 798 00:35:42,300 --> 00:35:43,914 >> ABBY: Ich habe einige C ++ gelernt. 799 00:35:43,914 --> 00:35:45,580 David J. MALAN: Sie haben einige C ++ gelernt. 800 00:35:45,580 --> 00:35:48,382 Und was ist Ihr Spiel Hintergrund spielen? 801 00:35:48,382 --> 00:35:49,505 >> ABBY: Nicht viel. 802 00:35:49,505 --> 00:35:51,130 David J. MALAN: OK, so dass wir, dass zu nehmen. 803 00:35:51,130 --> 00:35:52,700 Also hier ist, wie das Spiel funktionieren wird. 804 00:35:52,700 --> 00:35:54,510 Ich werde weitermachen und klicken Sie auf die grüne Fahne, die 805 00:35:54,510 --> 00:35:55,830 ist hier oben rechts. 806 00:35:55,830 --> 00:35:59,710 Jetzt ist Ihre Vorgänger in der Klasse Sie hier einige Anweisungen gegeben hat. 807 00:35:59,710 --> 00:36:02,306 Und in nur einem Augenblick, es sagt: "Platz, um zu beginnen." 808 00:36:02,306 --> 00:36:03,680 So gehen Sie vor und schlug die Leertaste. 809 00:36:03,680 --> 00:36:05,507 >> COMPUTERSPIEL: Pikachu. 810 00:36:05,507 --> 00:36:08,340 DAVID J. MALAN: Und das Ziel ist, fangen die Nahrung, da es dargestellt 811 00:36:08,340 --> 00:36:09,320 links. 812 00:36:09,320 --> 00:36:11,388 Und [unverständlich] 813 00:36:11,388 --> 00:36:15,356 >> [GAME Musik zu spielen] 814 00:36:15,356 --> 00:36:27,280 815 00:36:27,280 --> 00:36:29,610 >> David J. MALAN: Oh, gut, danke für das Spielen. 816 00:36:29,610 --> 00:36:32,800 Wir haben hier eine kleine Abschiedsgeschenk für Sie. 817 00:36:32,800 --> 00:36:35,574 Wir haben CS50 Stress-Ball, wenn Sie möchten, zu wählen. 818 00:36:35,574 --> 00:36:36,820 Alles in Ordnung, gute, Sie zu treffen. 819 00:36:36,820 --> 00:36:39,680 Danke für das Kommen und herausfordernd. 820 00:36:39,680 --> 00:36:42,410 821 00:36:42,410 --> 00:36:46,910 So haben wir mehr Stress-Bälle, so machen wir noch ein Beispiel, um zu motivieren. 822 00:36:46,910 --> 00:36:48,150 Ein Freiwilliger? 823 00:36:48,150 --> 00:36:50,510 Alle Rechte, wie etwa hier vor. 824 00:36:50,510 --> 00:36:51,250 Wie heißen Sie? 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 Komm auf, Phillip. 828 00:36:54,530 --> 00:36:57,340 Also, Phillip sein wird mit einem anderen Spiel herausgefordert 829 00:36:57,340 --> 00:37:00,840 dass einer Ihrer Vorgänger schrieb als Teil des Problems Null gesetzt, 830 00:37:00,840 --> 00:37:03,510 Hardest Game namens Ivy. 831 00:37:03,510 --> 00:37:05,980 Und wir werden in nur einer zu sehen Moment, was damit gemeint ist. 832 00:37:05,980 --> 00:37:07,400 Phillip, schön, Sie zu treffen. 833 00:37:07,400 --> 00:37:09,060 Was ist dein Hintergrund? 834 00:37:09,060 --> 00:37:10,310 PHILLIP: Fertig viel Codierung. 835 00:37:10,310 --> 00:37:11,110 Geschehen ein wenig Gaming, auch. 836 00:37:11,110 --> 00:37:11,570 >> David J. MALAN: OK. 837 00:37:11,570 --> 00:37:12,620 Haben Sie eine Menge Spiele, auch. 838 00:37:12,620 --> 00:37:14,230 Und haben Sie dieses Spiel schon gespielt? 839 00:37:14,230 --> 00:37:14,730 >> PHILLIP: Nein 840 00:37:14,730 --> 00:37:16,438 David J. MALAN: Alle rechts, so hier gehen wir. 841 00:37:16,438 --> 00:37:18,434 Ich werde weitermachen und klicken Sie auf die grüne Flagge. 842 00:37:18,434 --> 00:37:24,160 >> [Game Music] 843 00:37:24,160 --> 00:37:27,770 >> [MUSIC MC Hammer, "U können nicht Touch dieses"] 844 00:37:27,770 --> 00:38:39,790 845 00:38:39,790 --> 00:38:41,635 >> PHILLIP: [unverständlich] 846 00:38:41,635 --> 00:38:42,760 David J. MALAN: [unverständlich] 847 00:38:42,760 --> 00:38:44,740 PHILLIP: [unverständlich] 848 00:38:44,740 --> 00:38:49,056 [Lacht] 849 00:38:49,056 --> 00:38:50,680 [MUSIC MC Hammer, "U können nicht Touch dieses"] 850 00:38:50,680 --> 00:38:52,660 David J. MALAN: [unverständlich] Pflügen durch sie. 851 00:38:52,660 --> 00:38:54,094 PHILLIP: [unverständlich] 852 00:38:54,094 --> 00:38:55,135 David J. MALAN: Gehen Sie voran. 853 00:38:55,135 --> 00:39:01,570 [MUSIC MC Hammer, "U können nicht Touch dieses"] 854 00:39:01,570 --> 00:39:15,832 855 00:39:15,832 --> 00:39:16,915 David J. MALAN: In Ordnung. 856 00:39:16,915 --> 00:39:18,400 Herzlichen Glückwunsch. 857 00:39:18,400 --> 00:39:25,150 >> [Applaus] 858 00:39:25,150 --> 00:39:27,330 >> David J. MALAN: Wir werden Post, die später online so 859 00:39:27,330 --> 00:39:29,820 Sie verschleppen können mit ihm auch. 860 00:39:29,820 --> 00:39:32,550 Princeton kommt als nächstes, danach. 861 00:39:32,550 --> 00:39:35,470 >> So, jetzt ist eigentlich gehen lassen von vorne anfangen, 862 00:39:35,470 --> 00:39:39,310 so zu sprechen, und tatsächlich bauen, bis wir auseinander zu necken einige dieser Ideen 863 00:39:39,310 --> 00:39:41,970 und um etwas zu bekommen, auch komplexere Ende. 864 00:39:41,970 --> 00:39:45,240 Ich werde hier gehen, und ich werde gehen Sie vor und erstellen Sie eine neue Datei. 865 00:39:45,240 --> 00:39:47,460 Also noch einmal, wird das Problem Satz gehen Sie durch einige dieser Schritte. 866 00:39:47,460 --> 00:39:49,300 Aber alles, was ich tat, war unterwegs Um die Datei-Menü und ich 867 00:39:49,300 --> 00:39:52,760 sagte: "neu", so viel wie Microsoft Wort oder jedes Programm so. 868 00:39:52,760 --> 00:39:56,630 >> Und lassen Sie uns weitermachen und wir now-- vor einem Augenblick "Hallo Welt" umgesetzt, 869 00:39:56,630 --> 00:39:58,410 aber wir tun etwas, ein wenig süßer. 870 00:39:58,410 --> 00:40:00,150 Ich werde gehen bis zu Veranstaltungen. 871 00:40:00,150 --> 00:40:02,350 Und ich werde "zu tun, wenn grüne Fahne angeklickt. " 872 00:40:02,350 --> 00:40:05,830 Und dann werde ich nutzen, sagen wir mal, eine Filiale. 873 00:40:05,830 --> 00:40:07,610 Also werde ich eine "if" Bedingung verwenden. 874 00:40:07,610 --> 00:40:10,940 Und merken, wie, sobald ich in der Nähe um sie, will sie zusammenschnappen. 875 00:40:10,940 --> 00:40:13,020 Also ließ ich gehen und es zusammen einrastet. 876 00:40:13,020 --> 00:40:15,150 Und jetzt kann ich etwas Interessantes zu tun. 877 00:40:15,150 --> 00:40:19,150 Wenn ich hier durch zu blättern, werde ich auf eine ganze Reihe von Blöcken zu sehen. 878 00:40:19,150 --> 00:40:22,620 Wenn ich auf "Daten" - lassen Sie mich heran in-- gibt es etwas über Variablen. 879 00:40:22,620 --> 00:40:26,160 Wenn ich auf "Bewegung", können Sie offenbar Dinge umdrehen. 880 00:40:26,160 --> 00:40:28,760 Wenn ich auf "Betreiber" - Oh, das ist interessant, 881 00:40:28,760 --> 00:40:31,000 Ich kann eine Zufallszahl auszuwählen. 882 00:40:31,000 --> 00:40:34,119 Also lassen Sie mich etwas zu tun mit nur eine gewisse Wahrscheinlichkeit, einfach nur so. 883 00:40:34,119 --> 00:40:36,160 Ich werde weitermachen und ziehen dieses Puzzleteil, 884 00:40:36,160 --> 00:40:37,910 ist, dass weniger als Block, so ist es nur 885 00:40:37,910 --> 00:40:39,480 "Diese Zahl ist geringer als dass man?" 886 00:40:39,480 --> 00:40:42,438 Aber ich glaube eine harte Code nicht wollen, eine Reihe weil das ziemlich sinnlos. 887 00:40:42,438 --> 00:40:46,270 Also werde ich dieses Stück ziehen hier, und merken, wie es einrastet, 888 00:40:46,270 --> 00:40:49,480 und jetzt lassen Sie mich gehen Sie vor und sagen, "wenn die Zahl, die zufällig ausgewählt ist 889 00:40:49,480 --> 00:40:51,820 weniger als sechs, gehen Sie folgendermaßen vor. " 890 00:40:51,820 --> 00:40:52,790 Nun, warum weniger als sechs? 891 00:40:52,790 --> 00:40:56,400 Welche Wahrscheinlichkeit ist dies effektiv geht mir zu geben, nur intuitiv? 892 00:40:56,400 --> 00:40:57,440 Etwa 50%, oder? 893 00:40:57,440 --> 00:41:01,190 Wenn die Zahl, die zufällig zu erraten zwischen 1 und 10 ist kleiner als sechs, 894 00:41:01,190 --> 00:41:03,480 klar, es ist eine, zwei, drei, vier oder fünf. 895 00:41:03,480 --> 00:41:06,740 Und damit geht für mich ein geben Wahrscheinlichkeit von 50%, was passiert? 896 00:41:06,740 --> 00:41:09,890 >> Nun machen wir so etwas wie das, "Ton abspielen miauen." 897 00:41:09,890 --> 00:41:11,750 Und beachtet, wieder, das Puzzlestück wächst 898 00:41:11,750 --> 00:41:13,700 zu passen, solange die Formen übereinstimmen. 899 00:41:13,700 --> 00:41:14,910 Das ist, was wichtig ist. 900 00:41:14,910 --> 00:41:18,000 Lassen Sie mich gehen über Scratch hier und klicken Sie auf "Play". 901 00:41:18,000 --> 00:41:19,300 Nichts passiert. 902 00:41:19,300 --> 00:41:21,160 Ist das ein Bug? 903 00:41:21,160 --> 00:41:21,999 Nein, nicht erforderlich. 904 00:41:21,999 --> 00:41:24,040 Es könnte nur sein, dass eine größere Anzahl gewählt. 905 00:41:24,040 --> 00:41:25,762 Also lassen Sie es wieder tun. 906 00:41:25,762 --> 00:41:27,550 Nichts. 907 00:41:27,550 --> 00:41:28,344 >> [Miau] 908 00:41:28,344 --> 00:41:29,510 David J. MALAN: Da ist es. 909 00:41:29,510 --> 00:41:30,280 [Miau] 910 00:41:30,280 --> 00:41:31,690 David J. MALAN: Wieder. 911 00:41:31,690 --> 00:41:32,300 Nein. 912 00:41:32,300 --> 00:41:32,922 >> [Miauen] 913 00:41:32,922 --> 00:41:35,380 David J. MALAN: Also, wenn Sie noch jemals ein Spiel gespielt, natürlich, 914 00:41:35,380 --> 00:41:38,500 wo Sachen zufällig geschieht, wie die bösen Jungs kommen oder nicht 915 00:41:38,500 --> 00:41:41,350 kommen auf den Bildschirm oder Dinge fallen oder nicht fallen, 916 00:41:41,350 --> 00:41:43,610 das nur, weil etwas super Einfaches wie dies geschieht. 917 00:41:43,610 --> 00:41:46,010 Wählen Sie eine Zufallszahl, und wenn es ist weniger als ein Wert, 918 00:41:46,010 --> 00:41:49,100 vielleicht tun oder vielleicht tun. 919 00:41:49,100 --> 00:41:51,340 Wir können integrieren dass in einem Zustand. 920 00:41:51,340 --> 00:41:52,600 Lassen Sie uns etwas anderes. 921 00:41:52,600 --> 00:41:53,559 >> Lassen Sie mich wegwerfen. 922 00:41:53,559 --> 00:41:56,058 Sie können Sachen durch loszuwerden nur indem Sie es nach links 923 00:41:56,058 --> 00:41:56,810 und Loslassen. 924 00:41:56,810 --> 00:42:00,310 Lassen Sie mich gehen Sie vor und machen Sie einen Block für immer und sehr schnell etwas lästig zu tun. 925 00:42:00,310 --> 00:42:03,010 Lassen Sie mich gehen Sie vor und sagen, "Ton abspielen miauen." 926 00:42:03,010 --> 00:42:06,620 Aber ich glaube nicht, dass dies auch sein ärgerlich, so lassen Sie mich diesen Block zu packen, 927 00:42:06,620 --> 00:42:09,090 "Warte eine Sekunde" und Ankündigung es gibt keinen Platz für sie mehr. 928 00:42:09,090 --> 00:42:11,310 Aber wenn man nahe genug zu gehen, es will, dorthin zu gehen. 929 00:42:11,310 --> 00:42:14,100 Also ließ ich gehen, und es wird wachsen, um den Block zu füllen. 930 00:42:14,100 --> 00:42:15,932 So jetzt ist dies eine Schleife. 931 00:42:15,932 --> 00:42:16,432 [Miauen] 932 00:42:16,432 --> 00:42:18,473 David J. MALAN: Ich bin buchstäblich tun dies immer. 933 00:42:18,473 --> 00:42:19,360 Wieder und wieder. 934 00:42:19,360 --> 00:42:21,510 Das ist einfach nicht natürlich klingende. 935 00:42:21,510 --> 00:42:24,800 Lassen Sie mich gehen Sie vor, und dies ändern nicht zu einer Sekunde auf zwei Sekunden 936 00:42:24,800 --> 00:42:25,854 und drücken Sie Enter. 937 00:42:25,854 --> 00:42:28,770 Und was ist schön zu Scratch ist dass Sie interaktiv programmieren könnte. 938 00:42:28,770 --> 00:42:32,450 Nehmen Sie eine Änderung, vielleicht drücken Sie Enter oder Play wieder, und es wird einfach weiter. 939 00:42:32,450 --> 00:42:34,962 Nun, jetzt, warum machen wir nicht etwas ein wenig netter? 940 00:42:34,962 --> 00:42:39,680 Anstatt alles zu tun, von Grund auf, lassen Sie mich gehen Sie vor und eröffnen eine Vorauszahlung 941 00:42:39,680 --> 00:42:43,180 machte einen, dass ich vorgebacken, namens "Pet die Katze." 942 00:42:43,180 --> 00:42:44,920 Und wir werden alle zu posten Diese Dateien online, 943 00:42:44,920 --> 00:42:48,464 und Problem Null gesetzt wird Ihnen sagen, wie diese zugänglich sind, und öffnen Sie sie. 944 00:42:48,464 --> 00:42:49,880 Und beachtet, das ist ziemlich einfach. 945 00:42:49,880 --> 00:42:53,860 Aber im Voraus, scheine ich packte haben ein "für immer"-Block, also habe ich eine Schleife bekam. 946 00:42:53,860 --> 00:42:55,500 Und dann habe ich eine "if" Bedingung bekam. 947 00:42:55,500 --> 00:42:57,410 Ich habe einen Booleschen Ausdruck bekam. 948 00:42:57,410 --> 00:43:00,100 >> Also in Englisch, nur mit einem Blick auf Diese, vor allem wenn Sie noch nie haben 949 00:43:00,100 --> 00:43:04,278 vor programmiert, nur intuitiv, was wird das wohl tun, dieses Programm? 950 00:43:04,278 --> 00:43:06,910 >> [PUBLIKUM CHATTER] 951 00:43:06,910 --> 00:43:09,960 >> David J. MALAN: Wenn Sie die Katze streicheln, die Katze zu miauen gehen, oder? 952 00:43:09,960 --> 00:43:14,560 Denn "für immer deaktivieren" wird der Mauszeiger berühren die Katze. 953 00:43:14,560 --> 00:43:17,630 So klar zu sein, und ich habe nicht gesagt, dies vor, alle diese Puzzle 954 00:43:17,630 --> 00:43:20,750 Stücke und das Skript, das wir haben sie in Kombination 955 00:43:20,750 --> 00:43:25,510 so zu sprechen, ist ein Skript, gleichbedeutend mit Programm, wirklich, gehört zu dieser Katze. 956 00:43:25,510 --> 00:43:30,110 Und der Grund, weil ist-- Ankündigung wie das gleiche Katze hier hervorgehoben, 957 00:43:30,110 --> 00:43:32,710 Sie hier unten ein erstellen zweite Katze oder Hund oder wirklich 958 00:43:32,710 --> 00:43:33,970 alles, was Sie wollen grafisch. 959 00:43:33,970 --> 00:43:35,900 Sie können etwas importieren aus Photoshop oder dergleichen, 960 00:43:35,900 --> 00:43:38,300 und zu integrieren, wenn Sie etwas möchte es für ein Projekt zu machen. 961 00:43:38,300 --> 00:43:40,174 Und was Sie finden, letztlich ist, dass Sie 962 00:43:40,174 --> 00:43:44,800 können Skripts hinzuzufügen, fügen Puzzle Stücke, um einzelne Zeichen. 963 00:43:44,800 --> 00:43:47,210 So dass diese alle gehören zu Diese besondere Katze. 964 00:43:47,210 --> 00:43:51,770 So, jetzt, wenn ich voran gehen und spielen Dieses Programm, das nichts passiert. 965 00:43:51,770 --> 00:43:52,970 Aber es läuft. 966 00:43:52,970 --> 00:43:56,364 Das Programm ist in dieser Endlosschleife, Art warten, was passieren? 967 00:43:56,364 --> 00:43:57,230 >> [PUBLIKUM CHATTER] 968 00:43:57,230 --> 00:43:58,130 >> David J. MALAN: Um die Katze zu streicheln. 969 00:43:58,130 --> 00:43:59,800 Also, wenn ich mich bewege meine Maus hin him-- 970 00:43:59,800 --> 00:44:02,420 >> [Miauen] 971 00:44:02,420 --> 00:44:04,450 >> David J. MALAN: So, jetzt Ich streichelt die Katze. 972 00:44:04,450 --> 00:44:07,330 In der Zwischenzeit können wir ein Doppelzweig haben. 973 00:44:07,330 --> 00:44:10,370 Lassen Sie mich gehen Sie vor und öffnen bis pet nicht die Katze. 974 00:44:10,370 --> 00:44:12,160 Wir werden diese auch online buchen. 975 00:44:12,160 --> 00:44:16,760 Dies ist ein wenig komplex, aber selbstverständlich 976 00:44:16,760 --> 00:44:18,780 Sie vielleicht erraten was passieren wird. 977 00:44:18,780 --> 00:44:20,160 >> [Miauen] 978 00:44:20,160 --> 00:44:23,900 >> David J. MALAN: Katze ist Miauen, große, alte Zeit. 979 00:44:23,900 --> 00:44:26,690 Aber dieses Programm ist natürlich genannt "die Katze Pet nicht" 980 00:44:26,690 --> 00:44:29,350 so klar, ich möchte die Katze streicheln. 981 00:44:29,350 --> 00:44:30,490 >> [ROARING] 982 00:44:30,490 --> 00:44:31,940 >> David J. MALAN: Sie streicheln die Katze nicht. 983 00:44:31,940 --> 00:44:34,230 Nun, lassen Sie uns einen Blick an einem anderen Beispiel. 984 00:44:34,230 --> 00:44:38,035 Dieser bezeichnet wird "Hallo, Hallo, Hallo," aus Gründen 985 00:44:38,035 --> 00:44:40,410 das wird klar sein, denn sobald ich dieses thing-- 986 00:44:40,410 --> 00:44:41,401 >> [SEAL BARKING] 987 00:44:41,401 --> 00:44:43,942 David J. MALAN: Sehr einfach zu schreiben ärgerlich Scratch-Programme. 988 00:44:43,942 --> 00:44:45,300 [SEAL BARKING] 989 00:44:45,300 --> 00:44:48,540 David J. MALAN: Jetzt werden wir nicht gehen sehr ins Detail mit allen von ihnen, 990 00:44:48,540 --> 00:44:51,150 aber feststellen, es ist ein paar neue Funktionen hier. 991 00:44:51,150 --> 00:44:55,540 Es gibt eine Variable, genannt "stummgeschaltet" und dann gibt es eine Reihe von Bedingungen. 992 00:44:55,540 --> 00:44:57,900 Und jetzt lassen Sie mich nur necken Sie sagen, 993 00:44:57,900 --> 00:45:03,170 dass, wenn dieser Kerl bekommt zu lästig, Ich kann die Leertaste zu schlagen und er stoppt. 994 00:45:03,170 --> 00:45:05,880 Weil die Rolle spielte, die von diese beiden Skripten ist wie folgt. 995 00:45:05,880 --> 00:45:08,510 Einer von ihnen ist dabei die Bellen alle paar Sekunden. 996 00:45:08,510 --> 00:45:11,305 Der andere ist nur darauf warten für mich, um die Leertaste zu schlagen. 997 00:45:11,305 --> 00:45:14,780 Und wenn ich die Leertaste schlagen, es wird sich ändern 998 00:45:14,780 --> 00:45:18,096 der Zustand dieser Variablen der Wert dieser Variablen, das anscheinend 999 00:45:18,096 --> 00:45:20,470 genannt "stummgeschaltet" Ich habe dich nicht gerufen es etwas langweilig wie n, 1000 00:45:20,470 --> 00:45:22,370 Ich nannte es ein englisches Wort, "stummgeschaltet". 1001 00:45:22,370 --> 00:45:24,740 Von 1 auf 0 oder von 0 bis 1 ist. 1002 00:45:24,740 --> 00:45:26,830 Von true in false oder false auf true. 1003 00:45:26,830 --> 00:45:28,930 Und so können Sie tatsächlich sehen jetzt, dass Sie 1004 00:45:28,930 --> 00:45:31,720 konnte zwei Skripte haben, zwei Programme gleichzeitig laufen, 1005 00:45:31,720 --> 00:45:34,360 und beide könnten sitzen in einer Schleife, etwas zu tun. 1006 00:45:34,360 --> 00:45:38,067 Warten auf das menschliche zu tun etwas wie das Schlagen der Leertaste. 1007 00:45:38,067 --> 00:45:38,650 [SEAL BARKING] 1008 00:45:38,650 --> 00:45:40,566 David J. MALAN: Und jetzt er ist auf dem Weg wieder. 1009 00:45:40,566 --> 00:45:41,640 [SEAL BARKING] 1010 00:45:41,640 --> 00:45:45,220 David J. MALAN: Also, was sonst könnten wir mit diesen Beispielen? 1011 00:45:45,220 --> 00:45:50,920 Nun, lasst uns gehen Sie vor und machen eine Beispiel mit Schäfchen zu zählen. 1012 00:45:50,920 --> 00:45:59,210 Wir werden dies nach dem Vorbild hier weiter von-- öffnen wir die Schafe Beispiel. 1013 00:45:59,210 --> 00:46:02,460 Und beachtet, ähnlich wie zuvor, dieses, Gott sei Dank, ist ein bisschen weniger nervig. 1014 00:46:02,460 --> 00:46:06,940 Sobald ich auf Play hier-- Oh nein, das ist ärgerlich. 1015 00:46:06,940 --> 00:46:10,130 Er ist baa gehen mit einiger Wahrscheinlichkeit. 1016 00:46:10,130 --> 00:46:11,050 Wir spielen diese wieder ein. 1017 00:46:11,050 --> 00:46:15,221 >> [SCHAFE BLEETING] 1018 00:46:15,221 --> 00:46:18,470 DAVID J. MALAN: Der einzige Unterschied ist, wir haben das Kostüm gewechselt, so zu sprechen, 1019 00:46:18,470 --> 00:46:21,710 und wir halbieren und sagen was das tatsächliche Zahl ist. 1020 00:46:21,710 --> 00:46:24,680 Nun lasst uns gehen Sie vor und nehmen diese einen Schritt weiter. 1021 00:46:24,680 --> 00:46:28,190 Und lassen Sie mich necken Sie mit eine andere Funktion hier. 1022 00:46:28,190 --> 00:46:31,800 Fahren wir fort und eröffnen ein Programm namens Themen. 1023 00:46:31,800 --> 00:46:36,620 So viel, wie Sie können eine haben Sprite mit mehreren Skripten, 1024 00:46:36,620 --> 00:46:41,250 Sie können zwei Sprites, ein Vogel in haben eine Katze, die jeweils ihre eigene Schrift. 1025 00:46:41,250 --> 00:46:43,976 Und jeder von ihnen kann gleichzeitig arbeiten. 1026 00:46:43,976 --> 00:46:45,980 Wenn Sie jemals gehört habe das Wort "Multithreading" 1027 00:46:45,980 --> 00:46:49,240 ein Computer "multithreaded" bedeutet es können mehrere Dinge gleichzeitig zu tun, 1028 00:46:49,240 --> 00:46:50,880 und in der Tat, so kann zu kratzen. 1029 00:46:50,880 --> 00:46:52,690 >> Und jetzt merken, der Vogel ist irgendwie dumm. 1030 00:46:52,690 --> 00:46:55,100 Es ist einfach, Dinge zu tun zufällig, abprallen den Bildschirm. 1031 00:46:55,100 --> 00:46:59,460 Klar, dass die Katze programmiert wurde zu Art haben Fähigkeiten suchen 1032 00:46:59,460 --> 00:47:02,680 zu Hause in der Vogel weil er ist immer auf ihn gerichtet. 1033 00:47:02,680 --> 00:47:06,176 Bis schließlich, er fängt die eigentliche Vogel. 1034 00:47:06,176 --> 00:47:08,550 So dass ich nicht auf die Details zu wohnen hier, aber man kann Art von 1035 00:47:08,550 --> 00:47:12,160 Einblick die gleichen Formen, einige "Wenn" Bedingungen, einige Variablen, 1036 00:47:12,160 --> 00:47:15,740 vielleicht ein paar Loops, sind letztlich das gleiche tun. 1037 00:47:15,740 --> 00:47:18,400 >> Nun lassen Sie mich gehen Sie vor und öffnen bis etwas ganz anderes, 1038 00:47:18,400 --> 00:47:20,920 einige von euch besonders ärgern, diejenigen, komfortabler, 1039 00:47:20,920 --> 00:47:22,760 was kann man eigentlich damit zu tun. 1040 00:47:22,760 --> 00:47:26,080 Ich werde weitermachen und eröffnen Knopf hier. 1041 00:47:26,080 --> 00:47:28,740 Und das ist ein super einfach anmutenden Programm, 1042 00:47:28,740 --> 00:47:34,190 aber schau, was passiert Sehen Sie, was, wenn I-- 1043 00:47:34,190 --> 00:47:39,860 passiert, wenn ich öffnen Sie diese Version davon, hier im Browser scratch.mit.edu. 1044 00:47:39,860 --> 00:47:43,460 Und wenn ich auf diesen großen roten Taste, bemerken, was passiert. 1045 00:47:43,460 --> 00:47:46,110 1046 00:47:46,110 --> 00:47:47,647 Also, was ist denn hier los? 1047 00:47:47,647 --> 00:47:50,480 Es gibt tatsächlich eine Menge mehr Komplexität geht unter der Haube, 1048 00:47:50,480 --> 00:47:52,896 auch wenn ich realisiert habe diese, oder ehrlich gesagt, Dan Bradley 1049 00:47:52,896 --> 00:47:54,660 hat dies so einfach umgesetzt werden. 1050 00:47:54,660 --> 00:47:59,540 Er hat eine eigene Scratch-Puzzle entworfen Stück, als Scratch-Erweiterung bekannt, 1051 00:47:59,540 --> 00:48:01,300 er nannte es Toggle. 1052 00:48:01,300 --> 00:48:06,332 >> Und was sehen tut, ist es sendet eine Nachricht über das Internet. 1053 00:48:06,332 --> 00:48:08,290 Und diese Botschaft selbst sieht ein wenig kryptisch. 1054 00:48:08,290 --> 00:48:10,248 Aber auch dies, werden Sie verstehen, durch den Begriff Ende. 1055 00:48:10,248 --> 00:48:14,930 Die Botschaft, die er ist tatsächlich das Senden sieht ein wenig so etwas wie dieses. 1056 00:48:14,930 --> 00:48:15,921 Es ist nur Text. 1057 00:48:15,921 --> 00:48:16,420 Cryptic. 1058 00:48:16,420 --> 00:48:19,130 Sie werden es mit der Zeit verstehen wir bekommen das Problem eingestellt sieben. 1059 00:48:19,130 --> 00:48:22,180 Es ist nur das Senden einer Textnachricht über das Internet an einen Server. 1060 00:48:22,180 --> 00:48:24,330 Und die Server letztendlich im Gespräch mit dieser Glühbirne, die 1061 00:48:24,330 --> 00:48:27,240 hat eines dieser Phantasie Glühbirnen in, dass, selbst, spricht 1062 00:48:27,240 --> 00:48:30,760 mit dem Wi-Fi-Netzwerk in der hier wo ein lokales Gerät nach unten hier-- 1063 00:48:30,760 --> 00:48:34,400 und schließlich ist es eigentlich Drehen, dass das Licht an und aus. 1064 00:48:34,400 --> 00:48:36,240 Aber wir können noch mehr tun interessante Dinge noch. 1065 00:48:36,240 --> 00:48:38,270 Beachten Sie, was für uns getan hat Dan auch. 1066 00:48:38,270 --> 00:48:42,210 Er machte mehrere Sprites, die jeweils das eine Skript wartet auf einen Klick. 1067 00:48:42,210 --> 00:48:44,030 Und wenn ich auf rot, geht es rot. 1068 00:48:44,030 --> 00:48:46,780 Wenn ich blau, geht es bläulich. 1069 00:48:46,780 --> 00:48:49,854 Grün, gelb, orange. 1070 00:48:49,854 --> 00:48:52,520 Und all dies geschieht, wird durch gehen Weg aus auf das Internet, 1071 00:48:52,520 --> 00:48:54,690 wieder hier unten, um die Glühbirne, ein und aus. 1072 00:48:54,690 --> 00:48:57,981 >> Und wenn Sie glauben, es-- und das ist vielleicht eine der komplexesten Scratch 1073 00:48:57,981 --> 00:49:00,930 Projekte jemand implemented-- er tat es, in Fairness, an einem Tag. 1074 00:49:00,930 --> 00:49:04,180 Und das war die Herausforderung, der wir warfen Dan als wir sahen, haben binäre Glühbirnen, 1075 00:49:04,180 --> 00:49:05,810 wie wir Scratch, können wir kombinieren? 1076 00:49:05,810 --> 00:49:08,410 Und in der Tat ist dies absolut etwas, was jeder in diesem Raum 1077 00:49:08,410 --> 00:49:14,250 tun konnte, von Semester end-- Ist er neu implementiert binären Glühbirnen mit 1078 00:49:14,250 --> 00:49:18,310 die gleiche Schnittstelle, die war auf unserer iPad am Mittwoch. 1079 00:49:18,310 --> 00:49:22,000 So dass jetzt, wenn ich tatsächlich klicken Sie auf das Plus hier, 1080 00:49:22,000 --> 00:49:25,250 Wir haben ein, zwei, drei. 1081 00:49:25,250 --> 00:49:27,550 Ich kann die 16 getroffen und drehen, dass man auf. 1082 00:49:27,550 --> 00:49:29,440 128, und so weiter. 1083 00:49:29,440 --> 00:49:31,250 >> Nun, wenn das allein hat und geblasen, Geist 1084 00:49:31,250 --> 00:49:35,680 Sie könnten die Dinge weit mehr zugänglich machen, keine Hardware mit Sicherheit. 1085 00:49:35,680 --> 00:49:38,320 Nur Dinge auf dem Bildschirm selber. 1086 00:49:38,320 --> 00:49:41,110 Und in der Tat, was die meisten Studenten am Ende tut, ist eine Art von Spiel, 1087 00:49:41,110 --> 00:49:44,600 einige Stück der künstlerischen Arbeit, oder eine Art von interaktiven Animation. 1088 00:49:44,600 --> 00:49:47,352 Und ich werde sagen, einer der unseren Favoriten ist diese. 1089 00:49:47,352 --> 00:49:49,060 Und ich dachte, wenn wir konnte die Lichter dimmen, 1090 00:49:49,060 --> 00:49:52,960 wir einen Blick auf diese letzte nehmen Scratch Projekt abschließend. 1091 00:49:52,960 --> 00:49:57,460 Aber das, was Sie beachten sollten, wie Ich kann Ihnen mit einem letzten Detail zu necken, 1092 00:49:57,460 --> 00:49:59,140 Schnitte in der nächsten Woche beginnen. 1093 00:49:59,140 --> 00:50:00,830 Bürozeiten in der nächsten Woche beginnen. 1094 00:50:00,830 --> 00:50:04,410 Problem Null gesetzt werden veröffentlicht CS50.harvard.edu später heute. 1095 00:50:04,410 --> 00:50:06,430 Und Sie werden begrüßt werden in Problem Null gesetzt 1096 00:50:06,430 --> 00:50:10,070 auf CS50 eigenen Zamyla Chan, der führt die meisten unserer Komplettlösungen. 1097 00:50:10,070 --> 00:50:11,952 Das sind eingebettete Videos in den Problemsätze 1098 00:50:11,952 --> 00:50:15,160 dass Ihre Hand durch eine Menge halten der Ersteinrichtung und durch viele 1099 00:50:15,160 --> 00:50:16,570 der möglichen Design-Entscheidungen. 1100 00:50:16,570 --> 00:50:19,570 Also, wenn Sie jemals dieses Gefühl hatte bei der Abholung eine Hausaufgabe 1101 00:50:19,570 --> 00:50:21,030 und frage mich, wo soll ich anfangen? 1102 00:50:21,030 --> 00:50:23,510 Sie wird die Antwort für Sie. 1103 00:50:23,510 --> 00:50:27,720 Und jetzt, eine endgültige Programm von einem Ihrer Vorgänger 1104 00:50:27,720 --> 00:50:30,659 in Antwort auf die Frage "Was hat der Fuchs gesagt?" 1105 00:50:30,659 --> 00:50:32,242 [MUSIC YLVIS, "WAS SAGT DER FOX sagen?] 1106 00:50:32,242 --> 00:50:40,178 1107 00:50:40,178 --> 00:50:41,666 >> YLVIS: (Gesang) Hund geht Einschlag. 1108 00:50:41,666 --> 00:50:43,650 Katze geht miauen. 1109 00:50:43,650 --> 00:50:47,520 Vogel geht tweet und Maus geht quietschen. 1110 00:50:47,520 --> 00:50:49,240 Kuh geht moo. 1111 00:50:49,240 --> 00:50:51,690 Frosch geht Krächzen. 1112 00:50:51,690 --> 00:50:54,630 Und der Elefant geht toot. 1113 00:50:54,630 --> 00:50:59,040 Enten quaken sagen und Fisch gehen blub. 1114 00:50:59,040 --> 00:51:07,370 Und die Dichtung geht ow ow ow, aber es gibt einen Sound, der niemand weiß, 1115 00:51:07,370 --> 00:51:10,330 was hat der Fuchs sagen? 1116 00:51:10,330 --> 00:51:11,020 Und 1117 00:51:11,020 --> 00:51:12,478 >> David J. MALAN: Das ist es für CS50. 1118 00:51:12,478 --> 00:51:15,436 Wir werden Sie sehen, Puzzle Tag und am Montag. 1119 00:51:15,436 --> 00:51:16,424 >> [Applaus] 1120 00:51:16,424 --> 00:51:19,882 >> [MUSIC YLVIS, "Was bedeutet die FOX sagen?"] 1121 00:51:19,882 --> 00:51:24,840 1122 00:51:24,840 --> 00:51:28,820 >> SPRECHER: Und jetzt tief Gedanken, von Daven Farnham. 1123 00:51:28,820 --> 00:51:31,770 1124 00:51:31,770 --> 00:51:34,570 Heute habe ich in der Treffer Gesicht mit einem Telefonbuch. 1125 00:51:34,570 --> 00:51:38,160 Verwirrend, da ich bei online beobachten. 1126 00:51:38,160 --> 00:51:42,528