1 00:00:00,000 --> 00:00:11,120 2 00:00:11,120 --> 00:00:12,590 >> SPEAKER: Saya [didengar]. 3 00:00:12,590 --> 00:00:14,820 Dan saya kanan di Leverett House. 4 00:00:14,820 --> 00:00:18,700 Saya belajar sains komputer, dan saya TF untuk CS50. 5 00:00:18,700 --> 00:00:21,640 Sebagai mahasiswa, saya tidak pun mempunyai komputer riba atau telefon pintar. 6 00:00:21,640 --> 00:00:23,550 Saya tidak mempunyai pengalaman pengaturcaraan. 7 00:00:23,550 --> 00:00:29,690 CS50 adalah kursus yang paling diingati bahawa Saya mengambil di Harvard kerana ia adalah 8 00:00:29,690 --> 00:00:32,960 perjuangan, tetapi ia adalah benar-benar perjuangan berseronok pada masa yang sama. 9 00:00:32,960 --> 00:00:37,670 Dan saya membuat banyak menakjubkan, kekal kawan-kawan, dan saya belajar banyak benar-benar 10 00:00:37,670 --> 00:00:38,830 kemahiran berkenaan. 11 00:00:38,830 --> 00:00:43,480 Saya hanya gembira bahawa saya tidak membenarkan saya kurangnya latar belakang menjadi alasan untuk saya 12 00:00:43,480 --> 00:00:44,840 tidak mengambil CS50. 13 00:00:44,840 --> 00:00:46,220 Saya [didengar]. 14 00:00:46,220 --> 00:00:48,910 Saya kanan di Leverett House, kelas 2014. 15 00:00:48,910 --> 00:00:51,670 Dan saya mengambil CS50. 16 00:00:51,670 --> 00:00:52,380 >> DAVID MALAN: Jadi ini adalah CS50. 17 00:00:52,380 --> 00:00:54,400 Ini adalah akhir sifar minggu. 18 00:00:54,400 --> 00:00:58,500 Dan ingat di mana kita bermula masa yang lalu, adalah dengan lampu, yang 19 00:00:58,500 --> 00:01:01,420 begitu popular yang kita pergi dan membeli beberapa lagi hari ini. 20 00:01:01,420 --> 00:01:03,790 Jadi saya rasa ini akan menjadi perkara yang kita tahun ini - 21 00:01:03,790 --> 00:01:07,230 lampu meja jika anda datang di atas pentas, sekurang-kurangnya sehingga kita habis. 22 00:01:07,230 --> 00:01:11,570 >> Tetapi kita digunakan ingat ini, untuk memperkenalkan asas-asas perwakilan data. 23 00:01:11,570 --> 00:01:15,640 Kami memerlukan cara untuk memulakan mewakili maklumat di dalam komputer. 24 00:01:15,640 --> 00:01:18,650 Dan cara yang paling mudah untuk berbuat demikian adalah dengan satu bahan, elektrik. 25 00:01:18,650 --> 00:01:21,760 Dan perkara yang paling mudah yang boleh anda lakukan dengan elektrik hidupkannya dan ia dimatikan. 26 00:01:21,760 --> 00:01:23,520 Mari aliran elektron atau tidak. 27 00:01:23,520 --> 00:01:27,930 Dan menggunakan kedua-dua negeri asas, off dan pada, atau palsu dan benar, atau sifar dan 28 00:01:27,930 --> 00:01:31,290 satu, kita mula melihat bahawa kita boleh membina sehingga, dalam kes ini, dengan cahaya 29 00:01:31,290 --> 00:01:33,720 mentol, lebih nombor daripada hanya sifar dan satu. 30 00:01:33,720 --> 00:01:36,160 Kami dikira setinggi tujuh, misalnya, masa lepas. 31 00:01:36,160 --> 00:01:38,840 Tetapi semua yang perlu kita lakukan adalah menjaga membuang mentol lebih banyak cahaya pada itu 32 00:01:38,840 --> 00:01:41,820 masalah dan, benar-benar, kita boleh mewakili mana-mana nombor yang kita 33 00:01:41,820 --> 00:01:42,970 mungkin mungkin mahu. 34 00:01:42,970 --> 00:01:47,230 >> Nah, kita beralih dengan cepat dan kemudian pada Rabu untuk bait ini sukarelawan. 35 00:01:47,230 --> 00:01:52,040 8 bit adalah apa yang kita biasanya panggilan bait, jadi di sini kita mempunyai lapan sukarelawan 36 00:01:52,040 --> 00:01:54,900 pada hari Rabu yang secara kolektif adalah mewakili lapan bit. 37 00:01:54,900 --> 00:01:56,750 Dan apabila tangan mereka pergi , mereka adalah satu. 38 00:01:56,750 --> 00:01:58,530 Dan apabila tangan mereka adalah ke bawah, terdapat sifar. 39 00:01:58,530 --> 00:02:01,970 Dan kita mempunyai orang ini datang mengapa peringkat? 40 00:02:01,970 --> 00:02:06,530 Apa yang kita boleh lakukan dengan urutan ini bit? 41 00:02:06,530 --> 00:02:07,510 >> Untuk mencipta abjad. 42 00:02:07,510 --> 00:02:11,550 Kita dapat membina di atas itu pelajaran sebelumnya yang dipelajari dan sebenarnya 43 00:02:11,550 --> 00:02:14,200 mula membuat lebih menarik maklumat yang sekurang-kurangnya lebih 44 00:02:14,200 --> 00:02:15,330 biasa kepada kita manusia. 45 00:02:15,330 --> 00:02:18,360 Dan ini akan menjadi yang berulang-ulang tema sepanjang 50, tetapi juga komputer 46 00:02:18,360 --> 00:02:21,470 sains lebih amnya, idea ini lapisan, di mana, pada akhir 47 00:02:21,470 --> 00:02:24,820 hari, jika anda benar-benar memulakan asas-asas dengan komputer, ya, 48 00:02:24,820 --> 00:02:25,760 ia adalah sifar dan orang-orang. 49 00:02:25,760 --> 00:02:27,480 Dan di bawah bahawa ia adalah hanya elektrik. 50 00:02:27,480 --> 00:02:30,840 Tetapi kita dengan cepat mula mengambil mereka butiran tahap rendah untuk diberikan 51 00:02:30,840 --> 00:02:35,600 dan mula lapisan di atas lalu bekerja dilakukan supaya kita, akhirnya, dengan 52 00:02:35,600 --> 00:02:38,610 akhir semester, dan benar-benar, secara umum sebagai saintis komputer 53 00:02:38,610 --> 00:02:42,790 dan pengaturcara, boleh melakukan beberapa benar-benar perkara-perkara yang berkuasa dengan menggunakan kerja 54 00:02:42,790 --> 00:02:46,620 yang kita sendiri telah dilakukan dan juga berdiri di atas bahu orang lain. 55 00:02:46,620 --> 00:02:49,300 >> Sekarang kita beralih dengan cepat pada hari Rabu daripada hanya perlu 56 00:02:49,300 --> 00:02:52,080 mewakili maklumat yang ingin untuk melakukan sesuatu dengannya. 57 00:02:52,080 --> 00:02:54,170 Jadi apa yang kita menentukan algoritma sebagai? 58 00:02:54,170 --> 00:02:57,340 59 00:02:57,340 --> 00:02:58,900 Satu siri arahan. 60 00:02:58,900 --> 00:03:03,380 Jadi ia adalah satu siri arahan, satu beberapa langkah-langkah yang anda, seorang manusia, atau 61 00:03:03,380 --> 00:03:07,160 komputer, lebih biasanya, akan melaksanakan satu demi satu dalam usaha 62 00:03:07,160 --> 00:03:08,100 untuk mencapai matlamat beberapa. 63 00:03:08,100 --> 00:03:11,360 Dan kita mempunyai beberapa matlamat masa lalu, satu daripadanya adalah untuk mengira 64 00:03:11,360 --> 00:03:12,250 orang di dalam bilik. 65 00:03:12,250 --> 00:03:15,560 Dan satu lagi contoh adalah untuk mencari Mike Smith dalam buku telefon. 66 00:03:15,560 --> 00:03:19,750 >> Jadi, anda boleh ingat bahawa saya mengoyakkan telefon buku di separuh akhir ke arah ini sehingga 67 00:03:19,750 --> 00:03:21,280 mencari Mike Smith. 68 00:03:21,280 --> 00:03:24,000 Tujuan yang visual adalah untuk menunjukkan, sekali lagi, bahawa kami 69 00:03:24,000 --> 00:03:27,770 betul-betul mengoyak masalah ini dalam separuh, pada separuh, pada separuh, dan sangat 70 00:03:27,770 --> 00:03:31,750 cepat pergi dari seperti 1,000 muka surat hanya satu halaman. 71 00:03:31,750 --> 00:03:34,860 Orang-orang yang terlepas ini pada Rabu, saya fikir kita akan memainkan semula 72 00:03:34,860 --> 00:03:36,820 beberapa rakaman apa yang anda terlepas. 73 00:03:36,820 --> 00:03:38,914 Mari kita melihat. 74 00:03:38,914 --> 00:03:40,906 >> [MAIN SEMULA VIDEO] 75 00:03:40,906 --> 00:03:55,360 76 00:03:55,360 --> 00:03:55,990 >> -Ada kita pergi. 77 00:03:55,990 --> 00:04:01,432 1500 muka surat, garis bersih Nice, air mata yang sah. 78 00:04:01,432 --> 00:04:02,850 >> [AKHIR VIDEO MAIN SEMULA] 79 00:04:02,850 --> 00:04:05,230 >> DAVID MALAN: Jadi itu adalah hari Rabu. 80 00:04:05,230 --> 00:04:09,150 Kami peralihan, walaupun, pada Rabu kini kepada yang ingin mewakili algoritma 81 00:04:09,150 --> 00:04:12,410 dalam beberapa cara agak standard, bukan sahaja menggambarkan mereka secara lisan, tetapi 82 00:04:12,410 --> 00:04:16,290 cuba untuk menyatakan mereka secara bertulis atau skrin komputer supaya kita boleh 83 00:04:16,290 --> 00:04:19,170 mula untuk memperbaiki, dan mengubah suai mereka, dan, akhirnya, sebenarnya 84 00:04:19,170 --> 00:04:21,160 menganalisis betapa betul atau berapa cepat mereka. 85 00:04:21,160 --> 00:04:23,360 >> Jadi kami memperkenalkan idea ini daripada pseudokod, yang, dalam 86 00:04:23,360 --> 00:04:26,410 Dari segi orang biasa itu, adalah apa? 87 00:04:26,410 --> 00:04:26,930 OK, kata-kata. 88 00:04:26,930 --> 00:04:28,730 Mari kita pergi sedikit lebih mendalam daripada itu. 89 00:04:28,730 --> 00:04:32,540 Bahasa Inggeris, pasti, tetapi adalah terhadap apa yang akhir? 90 00:04:32,540 --> 00:04:35,180 Perkataan yang boleh digunakan untuk membuat atau untuk mewakili algoritma. 91 00:04:35,180 --> 00:04:38,380 Jadi tidak ada satu bahasa yang dikenali sebagai pseudokod di dunia. 92 00:04:38,380 --> 00:04:41,110 Ia hanya bahawa anda, dalam bahasa Inggeris, atau apa bahasa pertuturan anda, menggunakan 93 00:04:41,110 --> 00:04:44,930 sejenis notasi sepintas lalu untuk menyampaikan idea yang sangat ringkas. 94 00:04:44,930 --> 00:04:47,930 Tetapi kita akan melihat bahawa, sudah tentu dengan Pseudokod Bahasa Inggeris, dan ia ternyata 95 00:04:47,930 --> 00:04:51,700 kebanyakan bahasa pengaturcaraan diri adalah terbitan daripada bahasa Inggeris itu sendiri, 96 00:04:51,700 --> 00:04:55,750 kita akan mendapati bahawa terdapat beberapa standard cara-cara yang mewakili pseudokod dan 97 00:04:55,750 --> 00:04:57,150 juga pengaturcaraan kod. 98 00:04:57,150 --> 00:05:00,200 Jadi, apabila anda mula melihat walaupun yang paling mudah contoh hari ini, merealisasikan 99 00:05:00,200 --> 00:05:02,160 corak yang sama akan berulang minggu depan. 100 00:05:02,160 --> 00:05:04,710 >> Jadi pseudokod adalah beberapa jenis bahasa menyerupai 101 00:05:04,710 --> 00:05:06,170 bahasa pengaturcaraan. 102 00:05:06,170 --> 00:05:09,260 Dan contoh yang pertama kita lihat visual diturunkan adalah yang satu ini. 103 00:05:09,260 --> 00:05:12,870 Ia hanya program tiga langkah, matlamat iaitu untuk mengira bilangan 104 00:05:12,870 --> 00:05:15,650 orang di sebuah bilik asrama untuk bahawa video pada Rabu. 105 00:05:15,650 --> 00:05:19,040 Tetapi terdapat beberapa aspek yang menarik program ini mudah. 106 00:05:19,040 --> 00:05:20,320 >> Dan ini akan menjadi tema yang berulang-ulang. 107 00:05:20,320 --> 00:05:22,930 Jadi bagi mereka yang tidak biasa dengan ini, satu, kami memperkenalkan pembolehubah. 108 00:05:22,930 --> 00:05:25,650 Dan mungkin semua orang di dalam bilik ini adalah biasa dengan berubah-ubah dalam 109 00:05:25,650 --> 00:05:27,250 konteks algebra. 110 00:05:27,250 --> 00:05:31,190 Tetapi di sini dalam pengaturcaraan, pembolehubah adalah, satu, boleh 111 00:05:31,190 --> 00:05:32,220 dikenali sebagai apa-apa yang kita mahu. 112 00:05:32,220 --> 00:05:33,620 Kami telah menggunakan n sebagai kaunter. 113 00:05:33,620 --> 00:05:37,490 Tetapi kita boleh menggunakan kaunter perkataan, atau, seperti yang anda akan lihat, ungkapan yang paling mana-mana yang 114 00:05:37,490 --> 00:05:40,240 anda mungkin ingin selagi ia deskriptif, tetapi ia adalah benar-benar hanya 115 00:05:40,240 --> 00:05:41,250 bekas penyimpanan. 116 00:05:41,250 --> 00:05:44,170 Ia adalah sebahagian daripada memori, ada beberapa bit, dan ia berbeza dengan komputer, bagaimana 117 00:05:44,170 --> 00:05:47,020 bilangan bit yang terdapat mengarang berubah-ubah itu. 118 00:05:47,020 --> 00:05:48,450 >> Tetapi kita boleh meletakkan nilai-nilai di dalamnya. 119 00:05:48,450 --> 00:05:50,740 Setakat ini, kami hanya meletakkan nombor. 120 00:05:50,740 --> 00:05:52,290 Tetapi kita boleh meletakkan kata-kata sebenar. 121 00:05:52,290 --> 00:05:53,420 Kita boleh meletakkan perenggan. 122 00:05:53,420 --> 00:05:54,560 Kita boleh meletakkan imej - 123 00:05:54,560 --> 00:05:57,860 apa-apa, benar-benar, kita boleh mewakili dengan sifar dan orang-orang, kita boleh dimasukkan ke dalam 124 00:05:57,860 --> 00:05:59,820 ini tanggapan tahap yang lebih tinggi pembolehubah a. 125 00:05:59,820 --> 00:06:01,350 >> Jadi agak lurus ke hadapan sana. 126 00:06:01,350 --> 00:06:02,210 Dan itulah salah satu baris. 127 00:06:02,210 --> 00:06:05,340 Tetapi kita dengan cepat berpindah dari line seseorang untuk benar-benar melakukan 128 00:06:05,340 --> 00:06:06,600 sesuatu dengan berubah-ubah itu. 129 00:06:06,600 --> 00:06:10,330 Dan selaras tiga tahun, kami dikemaskini N. Kami incremented N. Dan kita boleh menulis ini 130 00:06:10,330 --> 00:06:11,330 apa-apa bilangan cara. 131 00:06:11,330 --> 00:06:14,460 Tetapi mungkin yang paling jelas adalah hanya untuk mengatakan, set N sama dengan 132 00:06:14,460 --> 00:06:16,440 apa N adalah plus 1. 133 00:06:16,440 --> 00:06:17,740 Jadi itu adalah kenaikan kita. 134 00:06:17,740 --> 00:06:18,740 >> Sementara itu, terdapat gelung. 135 00:06:18,740 --> 00:06:20,720 Dan yang satu ini, juga, mungkin cukup intuitif. 136 00:06:20,720 --> 00:06:24,250 Gelung adalah hanya sesuatu dalam program yang berlaku sekali lagi dan sekali lagi, beberapa 137 00:06:24,250 --> 00:06:25,190 jenis kitaran. 138 00:06:25,190 --> 00:06:29,300 Dan frasa ini penting di sini, bagi setiap, adalah sebenarnya sangat biasa sepanjang 139 00:06:29,300 --> 00:06:32,300 bahasa pengaturcaraan, termasuk yang kita akan melihat dalam kursus ini. 140 00:06:32,300 --> 00:06:35,850 Bila-bila masa anda melihat perkataan, ia biasanya menyampaikan idea bahawa 141 00:06:35,850 --> 00:06:38,410 gelung, sesuatu kitaran, adalah kira-kira berlaku. 142 00:06:38,410 --> 00:06:40,980 >> Tetapi ia adalah diperhatikan satu detail sintaktik lain. 143 00:06:40,980 --> 00:06:44,660 Hakikat bahawa Barisan ketiga terdapat sebenarnya tersusun oleh telah melanda 144 00:06:44,660 --> 00:06:46,920 bar ruang beberapa kali adalah sengaja. 145 00:06:46,920 --> 00:06:49,870 Kerana konvensyen manusia adalah seperti itu, apabila anda melakukan sesuatu yang sekali lagi dan 146 00:06:49,870 --> 00:06:54,860 sekali lagi, dalam gelung, kerana bermula pada baris dua, anda inden apa-apa yang dipunyai oleh 147 00:06:54,860 --> 00:06:58,880 untuk gelung yang hanya untuk membuat jelas bahawa ia adalah garis tiga dan tidak, misalnya, 148 00:06:58,880 --> 00:07:01,910 garis empat atau lima, jika terdapat garisan untuk atau lima, yang 149 00:07:01,910 --> 00:07:03,010 sebahagian daripada yang gelung. 150 00:07:03,010 --> 00:07:07,340 Jadi kasturi ini mudah menyampaikan bahawa idea asas. 151 00:07:07,340 --> 00:07:09,390 >> Jadi kami memohon algoritma ini, sekarang, untuk beberapa contoh. 152 00:07:09,390 --> 00:07:12,620 Dan ini juga, contoh yang mudah dalam dunia sebenar. 153 00:07:12,620 --> 00:07:15,440 Tetapi ia akan menjadi wakil bagaimana anda akan pergi tentang ujian anda 154 00:07:15,440 --> 00:07:17,500 memiliki program semakin kompleks. 155 00:07:17,500 --> 00:07:21,050 Anda cuba senario ini, beberapa wakil input, dan lihat jika anda 156 00:07:21,050 --> 00:07:22,180 mendapatkan output yang dikehendaki. 157 00:07:22,180 --> 00:07:25,090 >> Jadi contoh ini mempunyai dua orang duduk di dalam bilik asrama. 158 00:07:25,090 --> 00:07:27,170 Di sebelah kiri adalah bahawa kod pseudo sama. 159 00:07:27,170 --> 00:07:30,800 Dan ini adalah pukulan skrin yang Langkah terakhir permohonan ini 160 00:07:30,800 --> 00:07:35,270 algoritma input kepada mereka, di mana terdapat dua orang di dalam bilik itu dan, 161 00:07:35,270 --> 00:07:39,190 ingat, seperti yang kita melangkah melalui talian satu, dan dua, dan tiga, dan dua 162 00:07:39,190 --> 00:07:41,000 dan tiga dan dilakukan - 163 00:07:41,000 --> 00:07:44,870 menjelang akhir algoritma itu, kami mempunyai memang dikira dua rakan-rakan yang 164 00:07:44,870 --> 00:07:45,360 di dalam bilik. 165 00:07:45,360 --> 00:07:47,190 >> Jadi kita cuba contoh yang lain. 166 00:07:47,190 --> 00:07:48,990 Dan kita berkata apa jika terdapat sifar orang di dalam bilik itu? 167 00:07:48,990 --> 00:07:50,490 Adakah kod ini masih betul? 168 00:07:50,490 --> 00:07:51,305 Dan sesungguhnya ia. 169 00:07:51,305 --> 00:07:55,240 Ia hanya kebetulan bahawa garis dua dan oleh itu, garis tiga atau 170 00:07:55,240 --> 00:07:56,620 tidak akan melaksanakan. 171 00:07:56,620 --> 00:07:59,790 Mereka tidak akan berlaku sama sekali kerana mereka hanya tidak boleh digunakan jika 172 00:07:59,790 --> 00:08:01,210 terdapat sifar orang di dalam bilik. 173 00:08:01,210 --> 00:08:02,300 >> Tetapi bukan masalah besar. 174 00:08:02,300 --> 00:08:06,620 Line satu dimulakan N kepada sifar, jadi walaupun hanya satu baris ini 175 00:08:06,620 --> 00:08:10,930 program sebenarnya akhirnya menjadi berguna, ia masih menghasilkan jawapan yang betul, seperti yang 176 00:08:10,930 --> 00:08:13,780 ditunjukkan oleh oren sifar di bawah. 177 00:08:13,780 --> 00:08:16,300 Tetapi kami memutuskan bahawa adalah jenis algoritma bodoh. 178 00:08:16,300 --> 00:08:17,060 Ia agak perlahan. 179 00:08:17,060 --> 00:08:19,720 Sesungguhnya, saya boleh melakukan dua, empat, enam, lapan, sepuluh, apabila 180 00:08:19,720 --> 00:08:20,990 mengira orang-orang di dalam bilik. 181 00:08:20,990 --> 00:08:25,030 >> Jadi kita mengagak algoritma ini, pseudokod, untuk mengatakan, kini dalam talian dua, 182 00:08:25,030 --> 00:08:29,710 untuk setiap pasangan orang di dalam bilik, meneruskan, sejajar tiga, kenaikan 183 00:08:29,710 --> 00:08:32,200 oleh dua pada setiap lelaran. 184 00:08:32,200 --> 00:08:35,530 Jadi yang akan bekerja di sini untuk pasangan ini orang-orang di dalam bilik. 185 00:08:35,530 --> 00:08:38,530 >> Tetapi, jika anda mula berfikir tentang ini, dan ia tidak mengambil masa yang lama untuk 186 00:08:38,530 --> 00:08:40,710 sedar, tunggu satu minit ini adalah akan pecah, ia pecah 187 00:08:40,710 --> 00:08:42,679 apa yang mana-mana yang mudah? 188 00:08:42,679 --> 00:08:45,500 Jika ada tiga orang di dalam bilik itu, atau lebih secara amnya, apabila terdapat satu 189 00:08:45,500 --> 00:08:47,660 nombor ganjil orang di bilik, termasuk satu. 190 00:08:47,660 --> 00:08:50,390 Kami akan melepaskan orang itu di sini kerana tidak ada pasangan itu. 191 00:08:50,390 --> 00:08:58,510 Oleh itu, kita dengan cepat ditangani oleh bukan memperkenalkan apa tambahan 192 00:08:58,510 --> 00:09:02,560 membina pengaturcaraan kepada kod pseudo. 193 00:09:02,560 --> 00:09:04,955 >> Jadi keadaan, kita dipanggil , atau cawangan. 194 00:09:04,955 --> 00:09:08,420 Dan ia bertujuan untuk menyampaikan, pandangan, Idea cawangan, garpu di jalan raya 195 00:09:08,420 --> 00:09:11,080 di mana anda boleh melakukan ini atau, mungkin, sesuatu yang lain. 196 00:09:11,080 --> 00:09:15,750 Dan sesungguhnya, kita menangani isu ini dengan menambah baris 4, dengan berkata, benar-benar, sekurang- 197 00:09:15,750 --> 00:09:20,820 akhir sangat, jika seseorang kekal, kemudian pergi ke hadapan dan mengira mereka istimewa. 198 00:09:20,820 --> 00:09:24,460 Jadi anda menyelesaikan kes khas mereka, maka untuk bercakap, supaya sekarang kita boleh mengendalikan 199 00:09:24,460 --> 00:09:27,810 kedua-dua nombor yang lebih daripada orang-orang dan nombor ganjil orang. 200 00:09:27,810 --> 00:09:30,260 >> Sekarang ada apa-apa bilangan cara kita boleh menyatakan ini. 201 00:09:30,260 --> 00:09:33,590 Dan terus-terang, saya boleh telah lebih nit cerewet apabila ia datang kepada pilihan saya 202 00:09:33,590 --> 00:09:35,040 Bahasa Inggeris untuk pseudokod itu. 203 00:09:35,040 --> 00:09:36,970 Tetapi sekurang-kurangnya semangat idea yang disampaikan. 204 00:09:36,970 --> 00:09:40,725 Jika anda menyerahkan kod ini kepada rakan yang tiada dalam CS, atau tidak pernah diambil 205 00:09:40,725 --> 00:09:44,560 CS, kemungkinan mereka dapat memikirkan, diberikan tiga orang di dalam bilik, bagaimana untuk 206 00:09:44,560 --> 00:09:46,870 mengira orang-orang yang berdasarkan atas arahan ini. 207 00:09:46,870 --> 00:09:49,920 Dan itu semua benar-benar kita mahu mencapai dengan pseudokod, entah bagaimana 208 00:09:49,920 --> 00:09:54,300 menyeragamkan bagaimana kita akan kira-kira mewakili idea-idea supaya kita dapat 209 00:09:54,300 --> 00:09:56,670 mula melakukan lebih rumit perkara masih. 210 00:09:56,670 --> 00:09:58,845 >> Jadi yang membawa kita kemudian, hari ini, kepada kod sebenar. 211 00:09:58,845 --> 00:10:01,950 Kami mula program hari ini, walaupun dalam persekitaran yang mesra. 212 00:10:01,950 --> 00:10:05,940 Dan kemudian kita peralihan dengan cepat untuk sintaks lebih batin, tetapi satu yang 213 00:10:05,940 --> 00:10:10,340 anda akan melihat adalah asas yang sama seperti idea-idea yang akan menyaksikan ditunjukkan dengan 214 00:10:10,340 --> 00:10:11,990 bahasa ini lain hari ini. 215 00:10:11,990 --> 00:10:13,920 Ia hanya akan kelihatan sedikit berbeza. 216 00:10:13,920 --> 00:10:16,590 >> Jadi, daripada hanya memanggil kod ini, saya akan menjadi sedikit lebih tepat 217 00:10:16,590 --> 00:10:20,170 dan berkata, selepas ini, apabila menulis program, anda menulis kod sumber. 218 00:10:20,170 --> 00:10:21,990 Ia adalah jenis pseudokod seperti. 219 00:10:21,990 --> 00:10:26,540 Tetapi kita akan melihat ia bukan jenis longgar apabila ia datang untuk memilih perkataan 220 00:10:26,540 --> 00:10:27,310 yang anda gunakan. 221 00:10:27,310 --> 00:10:31,300 Apabila programing dalam bahasa, anda perlu untuk menggunakan kata-kata, frasa, 222 00:10:31,300 --> 00:10:36,020 sintaks, bahawa orang lain telah membuat keputusan mewakili 223 00:10:36,020 --> 00:10:37,240 bahawa bahasa tertentu. 224 00:10:37,240 --> 00:10:38,510 Jadi pseudocodes adalah terpulang kepada anda. 225 00:10:38,510 --> 00:10:42,330 Satu bahasa pengaturcaraan yang sebenar seperti C, seperti yang kita akhirnya akan melihat, adalah 226 00:10:42,330 --> 00:10:43,590 standard oleh orang lain. 227 00:10:43,590 --> 00:10:45,590 >> Jadi bagaimana kita pergi tentang menulis beberapa kod sumber? 228 00:10:45,590 --> 00:10:46,810 Well saya akan pergi hadapan dan melakukan ini. 229 00:10:46,810 --> 00:10:49,100 Saya akan pergi ke hadapan dan membuka tingkap di sini. 230 00:10:49,100 --> 00:10:50,210 Lebih pada minggu ini akan datang. 231 00:10:50,210 --> 00:10:52,300 Tetapi ini adalah satu alat yang dipanggil perkakas CS50. 232 00:10:52,300 --> 00:10:55,480 Saya menjalankan perisian pada saya Mac, walaupun anda boleh melakukan perkara yang sama 233 00:10:55,480 --> 00:11:00,580 pada komputer Windows, yang memberi saya ilusi berjalan yang berbeza 234 00:11:00,580 --> 00:11:03,700 sistem operasi sama sekali hak di sini di tingkap pada Mac saya. 235 00:11:03,700 --> 00:11:06,790 Saya baru sahaja ditayangkan penuh supaya anda tidak benar-benar melihat Mac OS sekarang. 236 00:11:06,790 --> 00:11:08,340 >> Ini adalah satu sistem operasi dipanggil Linux. 237 00:11:08,340 --> 00:11:09,300 Ia amat popular. 238 00:11:09,300 --> 00:11:10,120 Ia adalah sangat cepat. 239 00:11:10,120 --> 00:11:12,950 Ia amat bebas, yang telah menjadikan ia sangat menarik, terutamanya di 240 00:11:12,950 --> 00:11:13,970 dunia komersial. 241 00:11:13,970 --> 00:11:17,200 Dan yang lebih pada itu ke arah akhir semester apabila kita menggunakan Linux agak sedikit 242 00:11:17,200 --> 00:11:21,230 untuk web pengaturcaraan dan tuan rumah laman web sebenar dan projek. 243 00:11:21,230 --> 00:11:24,910 Jadi sekarang, hanya tahu bahawa ini adalah desktop yang bertujuan untuk melihat samar-samar 244 00:11:24,910 --> 00:11:26,750 biasa untuk Windows dan Mac OS. 245 00:11:26,750 --> 00:11:29,110 Ia hanya mempunyai beberapa nama yang berbeza dan ikon untuk perkara-perkara. 246 00:11:29,110 --> 00:11:32,510 Tetapi ini adalah CS50 kononnya perkakas, mesin maya itu, 247 00:11:32,510 --> 00:11:35,310 bermula minggu depan, kamu akan berjalan dalam tetingkap pada 248 00:11:35,310 --> 00:11:36,960 Mac anda sendiri atau PC. 249 00:11:36,960 --> 00:11:39,760 >> Untuk hari ini, saya akan membuka yang paling mudah program. 250 00:11:39,760 --> 00:11:41,110 Ia dipanggil gedit. 251 00:11:41,110 --> 00:11:42,565 Dan ini adalah hanya editor grafik. 252 00:11:42,565 --> 00:11:44,695 Ia adalah jenis seperti Microsoft Perkataan, tetapi mudah. 253 00:11:44,695 --> 00:11:47,110 Ia adalah jenis teks seperti edit atau notepad. 254 00:11:47,110 --> 00:11:50,280 Ia hanya satu program yang sangat mudah dengan yang menulis perkataan pada skrin. 255 00:11:50,280 --> 00:11:54,510 Ia hanya apa yang berlaku jika saya menyimpan fail-fail yang saya buat apabila program ini 256 00:11:54,510 --> 00:11:59,860 dalam lanjutan khas seperti. c, dan bukannya daripada. doc, atau. xls, atau apa sahaja 257 00:11:59,860 --> 00:12:04,190 anda sudah biasa dengan, saya boleh sebenarnya mewujudkan program menggunakan walaupun ini mudah 258 00:12:04,190 --> 00:12:05,130 editor teks. 259 00:12:05,130 --> 00:12:05,770 >> Jadi biarlah saya berbuat demikian. 260 00:12:05,770 --> 00:12:09,330 Biar saya pergi ke hadapan dan menyimpan ini memfailkan pertama sebagai hello.c. 261 00:12:09,330 --> 00:12:12,350 Dan sekali lagi, antara muka pengguna ini akan menjadi biasa kepada anda dengan cepat. 262 00:12:12,350 --> 00:12:14,160 Tetapi untuk sekarang, saya hanya menaip dalam nama fail. 263 00:12:14,160 --> 00:12:17,410 Saya akan menyimpan ke dalam John saya Harvard direktori rumah. 264 00:12:17,410 --> 00:12:20,810 Dan kini saya mempunyai tab ini yang menunjukkan Sesungguhnya saya menyunting 265 00:12:20,810 --> 00:12:23,070 fail yang dipanggil hello.c. 266 00:12:23,070 --> 00:12:24,510 Jadi tiada apa yang terlalu menarik yet. 267 00:12:24,510 --> 00:12:26,000 >> Dan kini ia akan mendapatkan cukup samar. 268 00:12:26,000 --> 00:12:28,370 Saya akan mengezum masuk, hanya supaya ia lebih jelas. 269 00:12:28,370 --> 00:12:35,780 Dan saya akan mula menaip termasuk stdio.h, int utama, tidak sah, terbuka kerinting 270 00:12:35,780 --> 00:12:40,140 menyokong, satu, dua, tiga, empat ruang daripada kasturi, cetak f, untuk mencetak 271 00:12:40,140 --> 00:12:44,450 sesuatu diformat, unquote quote, "Hello, dunia" backslash, n, berhampiran 272 00:12:44,450 --> 00:12:49,640 quote, kurungan tertutup, koma bertitik, memasukkan backspace, backspace, backspace, 273 00:12:49,640 --> 00:12:52,310 backspace, ditutup pendakap kerinting - 274 00:12:52,310 --> 00:12:53,350 Saya telah diprogramkan. 275 00:12:53,350 --> 00:12:57,380 >> Baiklah, jadi ini adalah mudah super program, benar-benar, program yang 276 00:12:57,380 --> 00:12:59,070 sesiapa sahaja bermula pengaturcaraan dengan. 277 00:12:59,070 --> 00:13:02,300 Dan semua ia, untuk semua kerumitan, adalah mencetak pada 278 00:13:02,300 --> 00:13:04,160 skrin, rasa apa? 279 00:13:04,160 --> 00:13:04,910 Hello dunia. 280 00:13:04,910 --> 00:13:07,500 Tetapi ia tidak mencukupi hanya untuk menulis program. 281 00:13:07,500 --> 00:13:08,155 Jadi ini adalah kod. 282 00:13:08,155 --> 00:13:11,300 Ini adalah kod sumber dalam bahasa yang dikenali sebagai c. 283 00:13:11,300 --> 00:13:14,380 Ia disimpan pada masa ini fail yang dipanggil hello.c. 284 00:13:14,380 --> 00:13:16,180 >> Sekarang lihat di bahagian bawah skrin di sini. 285 00:13:16,180 --> 00:13:17,890 Lanjut mengenai perkara ini, sekali lagi, dalam minggu-minggu akan datang. 286 00:13:17,890 --> 00:13:19,570 Tetapi ini adalah apa yang kita akan memanggil tetingkap terminal. 287 00:13:19,570 --> 00:13:21,290 Ia adalah satu berkelip, hitam dan putih segera. 288 00:13:21,290 --> 00:13:24,390 Ia adalah jenis antara muka sekolah lama untuk komputer yang biasanya tidak 289 00:13:24,390 --> 00:13:27,050 menggunakan tetikus atau lain-lain unsur-unsur grafik. 290 00:13:27,050 --> 00:13:28,320 Ia hanya menggunakan papan kekunci anda. 291 00:13:28,320 --> 00:13:30,970 Dan saya boleh menaip arahan di ini berkelip segera. 292 00:13:30,970 --> 00:13:33,820 >> Dan bagi maksud yang pada hari ini, saya hanya akan taip yang berikut - 293 00:13:33,820 --> 00:13:35,610 membuat hello. 294 00:13:35,610 --> 00:13:39,370 Dan program itu, membuat, hanya program itu, dalam dunia sebenar ini 295 00:13:39,370 --> 00:13:40,690 hari, kami akan klik dua kali ke atas. 296 00:13:40,690 --> 00:13:44,580 Tetapi dalam antara muka ini untuk hari ini, kami akan menaip namanya di segera. 297 00:13:44,580 --> 00:13:47,980 membuat hello adalah benar-benar akan membuat saya satu program yang dipanggil hello. 298 00:13:47,980 --> 00:13:51,360 Dan ia akan berbuat demikian dengan melihat fail, hanya dengan 299 00:13:51,360 --> 00:13:53,460 lalai, dipanggil hello.c. 300 00:13:53,460 --> 00:13:57,260 Ia akan menganggap saya mahu program C oleh alam semula jadi bagaimana komputer ini 301 00:13:57,260 --> 00:13:58,230 dikonfigurasi. 302 00:13:58,230 --> 00:13:59,550 >> Jadi saya pergi ke hadapan dan tekan enter. 303 00:13:59,550 --> 00:14:02,050 Saya melihat beberapa output samar, tetapi ini akan menjadi terlalu 304 00:14:02,050 --> 00:14:03,330 biasa tidak lama lagi. 305 00:14:03,330 --> 00:14:06,870 Ini berlaku untuk menjalankan pengkompil, lebih atas bahawa dalam seketika, dipanggil dilafaz. 306 00:14:06,870 --> 00:14:09,080 Tetapi sekarang, saya telah mendapat satu lagi berkelip segera. 307 00:14:09,080 --> 00:14:13,060 Dan saya boleh pergi ke hadapan sekarang dan menaip dot mengurangkan, untuk tidak menarik sebab kita akan 308 00:14:13,060 --> 00:14:14,730 kembali ke minggu depan - 309 00:14:14,730 --> 00:14:15,910 hello. 310 00:14:15,910 --> 00:14:19,650 >> Jadi semua usaha ini setakat ini hanya untuk menulis mudah program itu, 311 00:14:19,650 --> 00:14:22,640 sebaik sahaja saya tekan Enter, adakah itu. 312 00:14:22,640 --> 00:14:24,510 Jadi saya telah menulis program pertama saya. 313 00:14:24,510 --> 00:14:27,500 Jadi saya sengaja poking menyeronokkan di program ini sangat mudah 314 00:14:27,500 --> 00:14:28,540 untuk beberapa sebab. 315 00:14:28,540 --> 00:14:31,990 Satu, ia adalah sukar untuk mendapatkan teruja tentang mengambil kelas jika 316 00:14:31,990 --> 00:14:33,430 ini adalah permainan akhir. 317 00:14:33,430 --> 00:14:37,100 >> Tetapi lebih daripada itu, terdapat banyak gangguan di sini. 318 00:14:37,100 --> 00:14:40,640 Kali pertama yang anda belajar untuk program, untuk orang-orang yang anda kurang selesa, dan 319 00:14:40,640 --> 00:14:43,410 walaupun saya, kembali pada hari, apabila saya mula-mula melihat sesuatu seperti ini - anda boleh jenis 320 00:14:43,410 --> 00:14:46,500 daripada jumlah itu, semua betul, ini adalah dalam dunia cetak hello. 321 00:14:46,500 --> 00:14:47,860 Tetapi ada begitu banyak gangguan. 322 00:14:47,860 --> 00:14:52,110 Terdapat banyak sintaks pada skrin ia mendapat di jalan sangat 323 00:14:52,110 --> 00:14:54,170 idea yang mudah, jika tidak mudah,. 324 00:14:54,170 --> 00:14:56,700 >> Jadi apa yang kita akan lakukan hari ini adalah kami akan diketepikan C dan datang 325 00:14:56,700 --> 00:14:57,630 kembali kepada pada hari Isnin. 326 00:14:57,630 --> 00:15:00,860 Dan kami akan menggunakan grafik bahasa pengaturcaraan yang dipanggil calar. 327 00:15:00,860 --> 00:15:04,470 Ini adalah bahasa pengaturcaraan, yang saya dirujuk kepada pada hari Rabu, yang berlaku 328 00:15:04,470 --> 00:15:08,870 untuk membolehkan kita untuk melakukan apa yang sama barangan tetapi menutup mata, untuk hari ini, 329 00:15:08,870 --> 00:15:12,270 untuk pendakap kerinting, kurungan, yang koma bertitik, dan semua ini bodoh 330 00:15:12,270 --> 00:15:15,680 gangguan yang mendapat di jalan, dalam hari ini pertama, beberapa asas, cukup 331 00:15:15,680 --> 00:15:17,230 idea-idea yang menarik. 332 00:15:17,230 --> 00:15:21,350 >> Jadi ke arah itu, saya akan pergi kembali ke meja saya di sini dan 333 00:15:21,350 --> 00:15:25,890 memperkenalkan anda kepada alternatif kepada yang program, yang akan kelihatan 334 00:15:25,890 --> 00:15:30,790 sedikit sesuatu cahaya ini. 335 00:15:30,790 --> 00:15:33,930 Itulah bagaimana kita akan melaksanakan yang program yang sama hari ini - dua teka-teki 336 00:15:33,930 --> 00:15:37,710 keping itu, apabila dan saling diklik, akan berkata kepada dunia, 337 00:15:37,710 --> 00:15:39,000 hello dunia. 338 00:15:39,000 --> 00:15:41,200 >> Jadi mari kita benar-benar pergi ke sana. 339 00:15:41,200 --> 00:15:44,965 Jadi, saya akan pergi ke hadapan dan membuka laman web yang dikenali sebagai scratch.mit.edu. 340 00:15:44,965 --> 00:15:47,980 341 00:15:47,980 --> 00:15:52,040 Dan ini akan membawa saya ke laman web ini di sini. 342 00:15:52,040 --> 00:15:54,660 Terlebih dahulu, saya telah log masuk ke dalam ini laman web dan masalah pertama yang 343 00:15:54,660 --> 00:15:55,910 akan berjalan anda melalui beberapa langkah-langkah. 344 00:15:55,910 --> 00:15:58,930 Saya akan teruskan dan klik pada folder awal saya di sini. 345 00:15:58,930 --> 00:16:00,720 >> Dan ini akan menunjukkan kepada saya beberapa projek-projek yang saya telah 346 00:16:00,720 --> 00:16:02,570 sebenarnya dicipta terlebih dahulu. 347 00:16:02,570 --> 00:16:05,860 Dan ternyata bahawa ini grafik bahasa pengaturcaraan bukan sahaja akan 348 00:16:05,860 --> 00:16:08,480 untuk memberitahu kami program dengan menarik dan menjatuhkan keping teka-teki, anda 349 00:16:08,480 --> 00:16:09,730 bahkan tidak memerlukan perisian khas. 350 00:16:09,730 --> 00:16:13,190 Ini semua tertanam dalam pelayar supaya yang boleh anda lakukan ini, dalam teori, pada 351 00:16:13,190 --> 00:16:16,810 komputer anda sekarang, sebagai sebahagian dari kamu mungkin, tanpa perlu 352 00:16:16,810 --> 00:16:19,870 perisian seperti perkakas CS50, yang akan datang minggu depan. 353 00:16:19,870 --> 00:16:24,200 >> Jadi saya akan pergi ke sudut atas di sini dan klik pada Buat. 354 00:16:24,200 --> 00:16:27,840 Dan pada masa yang saya akan mendapat kosong melalui skrin yang saya boleh mula 355 00:16:27,840 --> 00:16:30,380 pengaturcaraan dalam grafik persekitaran pengaturcaraan. 356 00:16:30,380 --> 00:16:36,140 Tetapi kali ini, ia akan menjadi lebih, lebih mudah untuk benar-benar berbuat demikian. 357 00:16:36,140 --> 00:16:41,560 Jadi dalam hanya seketika, apabila Wi-Fi bekerjasama, kita kini mempunyai skrin ini. 358 00:16:41,560 --> 00:16:44,870 Jadi lawatan lisan cepat, tetapi saya berani mengatakan, pasti apabila anda menyelam ke dalam 359 00:16:44,870 --> 00:16:46,840 set masalah pertama, anda akan mendapati ini semua sangat 360 00:16:46,840 --> 00:16:48,315 dicapai dan agak intuitif. 361 00:16:48,315 --> 00:16:50,900 Tetapi mari kita gambaran mental hanya untuk seketika. 362 00:16:50,900 --> 00:16:54,620 >> Jadi di bawah ini segera save berkata perubahan, anda kira-kira untuk melihat awal. 363 00:16:54,620 --> 00:16:55,570 Ini adalah bidadari a. 364 00:16:55,570 --> 00:16:56,630 Ia bersifat. 365 00:16:56,630 --> 00:17:00,740 Dan dia hidup pada apa yang kita akan memanggil pentas, ini segi empat tepat yang besar putih pada 366 00:17:00,740 --> 00:17:03,120 yang dia boleh bergerak ke atas, ke bawah, kiri, betul, dan lakukan, benar-benar, 367 00:17:03,120 --> 00:17:04,670 lain-lain jenis tindakan. 368 00:17:04,670 --> 00:17:08,780 >> Sementara itu, di tengah-tengah pengguna ini muka, kami mempunyai sejumlah besar 369 00:17:08,780 --> 00:17:09,750 keping teka-teki. 370 00:17:09,750 --> 00:17:14,060 Dan anda akan melihat bahawa mereka mengatakan perkara-perkara seperti bergerak 10 langkah, berpaling 15 darjah, 371 00:17:14,060 --> 00:17:15,550 titik dalam arah tertentu. 372 00:17:15,550 --> 00:17:17,910 Tetapi ada kategori blok di sini juga. 373 00:17:17,910 --> 00:17:21,410 Jadi, jika saya pergi ke Kelihatan, anda akan melihat bahawa ada kepingan teka-teki yang lain 374 00:17:21,410 --> 00:17:25,530 nampaknya akan memberitahu cit ini bertanya khabar, untuk berfikir, untuk menunjukkan 375 00:17:25,530 --> 00:17:26,780 sendiri, menyembunyikan dirinya. 376 00:17:26,780 --> 00:17:30,830 Jika saya pergi ke Bunyi, ternyata ada cara untuk bermain bunyi seperti meow, 377 00:17:30,830 --> 00:17:32,670 untuk menghentikan semua bunyi, bermain gendang. 378 00:17:32,670 --> 00:17:36,530 >> Jadi, cerita panjang pendek, ada keseluruhannya sekumpulan kepingan teka-teki yang membolehkan anda 379 00:17:36,530 --> 00:17:40,920 untuk memberitahu kucing ini, atau apa-apa bilangan watak-watak yang lain, apa yang perlu dilakukan. 380 00:17:40,920 --> 00:17:43,850 Tetapi untuk membuat ini semua berlaku anda perlukan untuk memulakan pengaturcaraan. 381 00:17:43,850 --> 00:17:48,090 Dan ini kotak besar putih, atau kotak kelabu, pada sebelah kanan, ini adalah di mana 382 00:17:48,090 --> 00:17:50,170 Saya akan benar-benar menarik dan jatuh orang-orang keping teka-teki. 383 00:17:50,170 --> 00:17:54,320 Itu adalah teks kosong saya tingkap yang sama. 384 00:17:54,320 --> 00:17:57,070 >> Jadi, saya akan pergi ke hadapan dan klik Mengawal di tengah-tengah. 385 00:17:57,070 --> 00:17:58,540 Atau sebaliknya, biarlah saya mulakan di bawah Peristiwa. 386 00:17:58,540 --> 00:18:01,530 Di bawah bangku Events, anda akan notis beberapa perkara yang sengaja 387 00:18:01,530 --> 00:18:05,240 melengkung di atas dalam apa-apa cara yang mereka mungkin tidak berpaut pada 388 00:18:05,240 --> 00:18:06,710 atas kepingan teka-teki. 389 00:18:06,710 --> 00:18:10,160 Dan itu kerana mereka Demark permulaan sesuatu program, permulaan 390 00:18:10,160 --> 00:18:11,910 skrip, jadi untuk bercakap. 391 00:18:11,910 --> 00:18:16,290 Jadi jika saya pergi ke hadapan dan tarik, apabila hijau bendera klik di sini, dan kemudian saya 392 00:18:16,290 --> 00:18:18,060 mahu kucing ini untuk mengatakan sesuatu yang pada mulanya. 393 00:18:18,060 --> 00:18:20,510 Jadi saya akan pergi di bawah kelihatan panel. 394 00:18:20,510 --> 00:18:24,060 Dan saya akan pergi ke hadapan dan merebut menyapa blok, dan drag dan drop, 395 00:18:24,060 --> 00:18:27,220 dan melepaskan supaya ia secara automatik saling kunci di sana. 396 00:18:27,220 --> 00:18:28,640 >> Dan kemudian melihat saya boleh klik pada teks. 397 00:18:28,640 --> 00:18:31,960 Dan saya boleh mengatasi ia menjadi lebih tertentu seperti, berkata, hello dunia. 398 00:18:31,960 --> 00:18:36,340 Dan sekarang kita mempunyai program yang saya menuntut adalah bersamaan dengan yang lebih 399 00:18:36,340 --> 00:18:39,670 program batin saya telah melaksanakan C dalam masa yang lalu. 400 00:18:39,670 --> 00:18:43,130 >> Jika saya pergi ke sekarang untuk sebelah kiri, melihat ada tanda berhenti besar 401 00:18:43,130 --> 00:18:44,520 dan bendera hijau besar. 402 00:18:44,520 --> 00:18:46,390 Biar saya mengezum masuk untuk kejelasan. 403 00:18:46,390 --> 00:18:49,390 Dan apabila saya sekarang klik bendera ini hijau, anda mungkin boleh meneka apa ini pertama 404 00:18:49,390 --> 00:18:51,920 program kini akan lakukan. 405 00:18:51,920 --> 00:18:55,420 Jadi ada juga, kami pengaturcaraan, tetapi kita sebenarnya tidak mendapat buntu 406 00:18:55,420 --> 00:18:58,980 dalam beberapa orang sintaktik, butir-butir minit. 407 00:18:58,980 --> 00:19:01,120 >> Tetapi mari kita mencuba sesuatu yang sedikit lebih menarik. 408 00:19:01,120 --> 00:19:04,840 Biar saya pergi ke folder Scratch saya di sini. 409 00:19:04,840 --> 00:19:10,210 Dan sebenarnya, saya jadi biarlah saya membuka program yang berasingan di sini hanya untuk 410 00:19:10,210 --> 00:19:17,830 masa, Memaksimumkan tetingkap ini, Fail Terbuka, dan saya akan pergi ke hari ini 411 00:19:17,830 --> 00:19:18,620 direktori sumber. 412 00:19:18,620 --> 00:19:21,660 Seperti biasa, anda akan mendapati, hari ini dan seterusnya, bahawa semua contoh-contoh hari ini 413 00:19:21,660 --> 00:19:25,225 boleh diakses dalam laman web kursus ini. 414 00:19:25,225 --> 00:19:31,170 >> Dan saya akan pergi ke hadapan di sini dan mengambil sehingga sesuatu yang sedikit berbeza. 415 00:19:31,170 --> 00:19:33,970 Yang satu ini di sini, yang mana Saya memerlukan sukarelawan. 416 00:19:33,970 --> 00:19:36,850 Yang ingin lampu meja hari ini? 417 00:19:36,850 --> 00:19:40,600 OK, bagaimana tentang seseorang sedikit - adakah anda pada akhir? 418 00:19:40,600 --> 00:19:42,124 Ayuh ke bawah. 419 00:19:42,124 --> 00:19:47,230 Kini, anda ingin mengambil bahagian, atau hanya mengatakan bermula dengan lampu meja? 420 00:19:47,230 --> 00:19:48,190 >> Vanessa: [didengar]. 421 00:19:48,190 --> 00:19:48,465 >> DAVID MALAN: OK. 422 00:19:48,465 --> 00:19:49,610 Sangat baik, apa yang anda nama? 423 00:19:49,610 --> 00:19:49,990 Vanessa? 424 00:19:49,990 --> 00:19:50,570 Daud. 425 00:19:50,570 --> 00:19:51,390 Nice untuk bertemu dengan kamu. 426 00:19:51,390 --> 00:19:53,840 Jadi datang dan ini akan Vanessa untuk mengawal saya 427 00:19:53,840 --> 00:19:55,490 papan kekunci untuk seketika. 428 00:19:55,490 --> 00:19:57,850 Dan apa yang saya lakukan di sini, hanya untuk masa ini demi, seperti yang telah saya menyedari 429 00:19:57,850 --> 00:20:01,070 Wi-Fi adalah agak perlahan, Awal, yang persekitaran pengaturcaraan yang kami 430 00:20:01,070 --> 00:20:04,110 menggunakan, juga boleh dimuat turun dan dijalankan pada komputer tempatan anda. 431 00:20:04,110 --> 00:20:06,360 Jadi apa yang saya lakukan sebelum kuliah, dalam kes yang berlaku, adalah saya turun 432 00:20:06,360 --> 00:20:09,120 semua fail yang kita kira-kira untuk bermain dengan supaya mereka boleh menjalankan lebih sedikit 433 00:20:09,120 --> 00:20:10,840 cepat di sini pada komputer riba saya. 434 00:20:10,840 --> 00:20:13,460 Jadi itulah sebabnya sekarang saya melihat antara muka Mac-tertentu. 435 00:20:13,460 --> 00:20:15,510 >> Jadi saya akan pergi ke hadapan dan membuka satu ini. 436 00:20:15,510 --> 00:20:18,400 Saya akan pergi ke hadapan sekarang dan skrin penuh tingkap. 437 00:20:18,400 --> 00:20:21,740 Dan seperti yang anda akan melihat, kita boleh dengan cepat, sebagai pelajar ini lakukan, salah satu 438 00:20:21,740 --> 00:20:26,360 terdahulu anda, pergi dari dunia hello kepada yang lebih lebih menarik 439 00:20:26,360 --> 00:20:27,020 permohonan. 440 00:20:27,020 --> 00:20:28,180 Jadi di sini adalah arahan. 441 00:20:28,180 --> 00:20:29,500 Oh, dan kami mempunyai satu perkara yang lain. 442 00:20:29,500 --> 00:20:31,640 Saya fikir ia akan menjadi seronok, kerana, biasanya, kita akan penggambaran 443 00:20:31,640 --> 00:20:32,440 kamera dengan cara ini. 444 00:20:32,440 --> 00:20:34,100 Saya fikir ia akan menjadi seronok jika, Vanessa, kita dapat melihat dunia 445 00:20:34,100 --> 00:20:35,120 melalui mata anda. 446 00:20:35,120 --> 00:20:36,670 Jadi di sini kita mempunyai beberapa Kaca Google. 447 00:20:36,670 --> 00:20:39,290 >> [Situ menarik nafas terkejut terkejut] 448 00:20:39,290 --> 00:20:41,610 >> DAVID MALAN: Kami hanya akan memberikan dari lampu meja hari ini. 449 00:20:41,610 --> 00:20:43,530 >> [Ketawa] 450 00:20:43,530 --> 00:20:45,260 >> Jadi biarlah saya petunjuk sehingga ini. 451 00:20:45,260 --> 00:20:49,340 Baiklah, jadi menyentuh ini. 452 00:20:49,340 --> 00:20:51,910 OK, Kaca, merakam video. 453 00:20:51,910 --> 00:20:55,700 454 00:20:55,700 --> 00:20:56,950 Baiklah, Vanessa? 455 00:20:56,950 --> 00:21:00,940 456 00:21:00,940 --> 00:21:05,560 Kini, sebagai mengetepikan yang telah mendapat apa-apa kaitan dengan Awal, jika anda melihat 457 00:21:05,560 --> 00:21:08,540 sedikit ke atas dan ke kanan, anda akan melihat kaca literal, dan anda harus 458 00:21:08,540 --> 00:21:09,650 melihat tetingkap segi empat tepat kecil. 459 00:21:09,650 --> 00:21:11,500 Anda harus melihat semua rakan-rakan anda sedang difilemkan sekarang? 460 00:21:11,500 --> 00:21:11,840 Ya. 461 00:21:11,840 --> 00:21:12,340 >> Vanessa: Ya. 462 00:21:12,340 --> 00:21:12,920 >> DAVID MALAN: OK. 463 00:21:12,920 --> 00:21:15,170 Jadi itulah denda. 464 00:21:15,170 --> 00:21:16,660 Kami akan melepaskan rakaman ini kemudian. 465 00:21:16,660 --> 00:21:18,460 Buat masa ini, menumpukan perhatian anda ke skrin di sini. 466 00:21:18,460 --> 00:21:20,990 Dan apa yang anda sebelumnya telah dilakukan adalah meletakkan beberapa arahan pada skrin 467 00:21:20,990 --> 00:21:22,670 hanya dengan menggunakan program cat. 468 00:21:22,670 --> 00:21:25,040 Jadi anda akan, dalam seketika, tekan ruang untuk memulakan. 469 00:21:25,040 --> 00:21:27,790 Dan kemudian beberapa keping teka-teki akan untuk mula bergerak ke atas skrin. 470 00:21:27,790 --> 00:21:30,900 Dan anda mahu untuk memukul butang panah, hanya seperti dalam sebenar DDR, mengikut 471 00:21:30,900 --> 00:21:32,740 dengan perkara-perkara beratur dengan orang-orang anak panah. 472 00:21:32,740 --> 00:21:33,020 >> Vanessa: OK. 473 00:21:33,020 --> 00:21:33,800 >> DAVID MALAN: Anda telah bermain sebelum ini. 474 00:21:33,800 --> 00:21:34,140 >> Vanessa: Yeah. 475 00:21:34,140 --> 00:21:37,330 >> DAVID MALAN: Baiklah, Vanessa, pergi ke hadapan dan mengambil ia jauh. 476 00:21:37,330 --> 00:22:53,082 >> [MUSIC - Kayne Barat, "lebih kuat"] 477 00:22:53,082 --> 00:22:57,080 >> [Tepuk tangan] 478 00:22:57,080 --> 00:22:59,750 >> DAVID MALAN: Jadi mari kita kini mengambil langkah itu. 479 00:22:59,750 --> 00:23:01,230 Jadi jelas, itu permainan akhir. 480 00:23:01,230 --> 00:23:02,880 Permainan akhir bukan dunia hello. 481 00:23:02,880 --> 00:23:05,520 Tetapi anda tidak perlu semestinya melakukan perkara-perkara yang begitu interaktif. 482 00:23:05,520 --> 00:23:06,810 Anda juga boleh melakukan animasi. 483 00:23:06,810 --> 00:23:10,790 Jadi untuk contoh, satu lagi salah satu daripada anda pengganti membuat program ini di sini, 484 00:23:10,790 --> 00:23:14,100 yang memberitahu cerita yang lebih daripada ia dilaksanakan permainan. 485 00:23:14,100 --> 00:23:19,180 Jadi biarlah saya pergi ke hadapan dan membuka di sini program di dalam direktori sumber kami sama 486 00:23:19,180 --> 00:23:20,300 dari hari ini. 487 00:23:20,300 --> 00:23:26,990 Ini panggilan satu, dan mari kita mulakan dengan, kisah cinta cookies. 488 00:23:26,990 --> 00:23:30,750 >> Dan tidak membuat ini terlalu akademik, tetapi, seperti yang anda menonton satu ini, berfikir untuk 489 00:23:30,750 --> 00:23:34,030 diri sendiri yang mereka mudah konsep pengaturcaraan kita telah berbincang 490 00:23:34,030 --> 00:23:34,630 kira-kira setakat ini - 491 00:23:34,630 --> 00:23:39,250 pembolehubah, dan gelung, dan keadaan, tidak sebelumnya anda mungkin menggunakan hanya 492 00:23:39,250 --> 00:23:41,090 untuk melaksanakan beberapa yang visualizations. 493 00:23:41,090 --> 00:23:41,760 Anda lihat di sini. 494 00:23:41,760 --> 00:23:44,118 Jadi saya memberikan A kisah cinta cookies. 495 00:23:44,118 --> 00:24:06,030 >> [MUSIC - HARI HIJAU, "CUTI"] 496 00:24:06,030 --> 00:24:08,022 >> [CRASH] 497 00:24:08,022 --> 00:24:09,272 >> [MUSIC - THE PENYU, "SELAMAT BERSAMA"] 498 00:24:09,272 --> 00:24:58,328 499 00:24:58,328 --> 00:25:00,560 >> DAVID MALAN: Baiklah, jadi, kita mempunyai kisah cinta cookies. 500 00:25:00,560 --> 00:25:01,360 Tetapi di sana - 501 00:25:01,360 --> 00:25:01,755 >> [Tepuk tangan] 502 00:25:01,755 --> 00:25:08,110 >> DAVID MALAN: Baiklah, walaupun di sana, berfikir tentang, kerana mereka pergi dari hati 503 00:25:08,110 --> 00:25:10,410 bahagian bawah ke bahagian atas skrin, ada sebenarnya sedikit 504 00:25:10,410 --> 00:25:11,440 rawak berlaku. 505 00:25:11,440 --> 00:25:14,150 Dan sesungguhnya, kita akan melihat bahawa walaupun dalam mudah persekitaran, seperti 506 00:25:14,150 --> 00:25:18,180 Awal, seperti dalam C, anda boleh menjana nombor rawak, atau ilusi 507 00:25:18,180 --> 00:25:21,110 nombor rawak, supaya permainan adalah sedikit lebih menarik daripada ia mungkin 508 00:25:21,110 --> 00:25:23,390 jika anda mempunyai benar-benar dikodkan segala-galanya. 509 00:25:23,390 --> 00:25:26,360 >> Dalam pergerakan yang anda lihat, terdapat terdapat beberapa jenis tindak balas. 510 00:25:26,360 --> 00:25:28,840 Sebaik sahaja lelaki roti halia menyentuh wanita roti halia, dia 511 00:25:28,840 --> 00:25:30,000 seolah-olah bergerak. 512 00:25:30,000 --> 00:25:33,580 Dan sebagainya, sememangnya, anda boleh melaksanakan, bahasa pengaturcaraan yang paling, tanggapan 513 00:25:33,580 --> 00:25:38,680 peristiwa, di mana jika seseorang menyentuh tangan Sebaliknya, yang boleh mencetuskan beberapa 514 00:25:38,680 --> 00:25:41,270 kod sumber anda untuk sebenarnya melaksanakan. 515 00:25:41,270 --> 00:25:43,740 Anda boleh mendengar apa-apa perkara pada skrin. 516 00:25:43,740 --> 00:25:47,310 >> Jadi mari kita ikuti perjalanan, maka, daripada beberapa blok bangunan yang boleh kita gunakan 517 00:25:47,310 --> 00:25:48,790 untuk mencapai beberapa matlamat ini. 518 00:25:48,790 --> 00:25:51,630 Jadi di sini adalah apa yang kita akan selepas ini memanggil satu kenyataan. 519 00:25:51,630 --> 00:25:55,030 Pernyataan yang berlaku untuk menjadi ungu Awal, sesuatu yang kecil seperti ini, 520 00:25:55,030 --> 00:25:56,120 tetapi itu sewenang-wenangnya. 521 00:25:56,120 --> 00:26:00,140 Pernyataan yang hanya sekeping teka-teki atau, lebih umum, Arahan, bahawa 522 00:26:00,140 --> 00:26:03,370 memberitahu komputer untuk melakukan sesuatu, satu kenyataan. 523 00:26:03,370 --> 00:26:04,680 >> Jadi di sini adalah contoh yang mudah. 524 00:26:04,680 --> 00:26:05,930 Katakanlah hello dunia. 525 00:26:05,930 --> 00:26:08,180 Satu lagi mungkin menunggu satu kedua. 526 00:26:08,180 --> 00:26:10,840 Jadi ini sekeping teka-teki, yang disokong di Awal, kami akan memberitahu anda 527 00:26:10,840 --> 00:26:13,050 watak berhenti seketika untuk beberapa beberapa saat. 528 00:26:13,050 --> 00:26:15,330 Ini juga merupakan satu kenyataan. 529 00:26:15,330 --> 00:26:18,640 >> Di sini akan datang, kami mempunyai satu lagi lebih salah satu yang menarik, bermain meow bunyi, dan 530 00:26:18,640 --> 00:26:21,480 arrow kecil bermakna bahawa dalam Awal, ini adalah satu drop down menu. 531 00:26:21,480 --> 00:26:22,590 Jadi, anda boleh mengimport bunyi. 532 00:26:22,590 --> 00:26:25,095 Anda boleh merakam bunyi dan melakukan lain-lain perkara yang menyeronokkan dalam Scratch. 533 00:26:25,095 --> 00:26:28,450 Dan itu, juga, walaupun, pada akhir hari ini, hanya satu kenyataan. 534 00:26:28,450 --> 00:26:31,250 Tetapi sekarang mari kita memperkenalkan lebih sekeping menarik, yang dikenali sebagai 535 00:26:31,250 --> 00:26:32,630 Ungkapan Boolean. 536 00:26:32,630 --> 00:26:35,180 Modal B, dinamakan selepas rakan-rakan yang bernama bool. 537 00:26:35,180 --> 00:26:39,500 >> Dan ungkapan Boolean hanya sekeping teka-teki atau lebih amnya, yang 538 00:26:39,500 --> 00:26:42,980 sekeping maklumat yang sama ada benar atau palsu - 539 00:26:42,980 --> 00:26:45,830 satu atau sifar, ya atau tidak. 540 00:26:45,830 --> 00:26:48,420 Jadi ia adalah salah satu daripada orang-orang dua bertentangan. 541 00:26:48,420 --> 00:26:52,840 Jadi, satu ungkapan Boolean seperti dalam dunia Scratch kelihatan seperti ini biru 542 00:26:52,840 --> 00:26:53,560 teka-teki sekeping. 543 00:26:53,560 --> 00:26:56,735 Dan ia bertanya soalan, tikus ke bawah, dan yang sama ada boleh, daripada 544 00:26:56,735 --> 00:26:58,430 Sudah tentu, benar atau palsu. 545 00:26:58,430 --> 00:27:01,710 Jadi dengan sekeping teka-teki ini di Awal, baik, anda akan dapat mengesan jika 546 00:27:01,710 --> 00:27:05,490 teka-teki jika tetikus adalah, sebenarnya, yang ditekan oleh manusia berinteraksi 547 00:27:05,490 --> 00:27:06,550 dengan program anda. 548 00:27:06,550 --> 00:27:08,860 >> Yang ini sedikit lebih abstrak, tetapi kedua-dua kotak putih 549 00:27:08,860 --> 00:27:09,740 hanya untuk nombor. 550 00:27:09,740 --> 00:27:12,950 Jadi, anda boleh melakukan perkara-perkara seperti ini adalah nombor kurang daripada yang lain? 551 00:27:12,950 --> 00:27:16,180 Dan jika demikian, calar akan berkelakuan salah satu cara atau yang lain. 552 00:27:16,180 --> 00:27:17,505 Yang ini lebih sedikit grafik. 553 00:27:17,505 --> 00:27:21,840 Ia jika bidadari, jika kucing itu, untuk contoh, sebenarnya menyentuh 554 00:27:21,840 --> 00:27:22,510 penunjuk tetikus. 555 00:27:22,510 --> 00:27:25,780 Jadi, jika anak panah sedikit berlegar lebih kucing, maka ini 556 00:27:25,780 --> 00:27:28,030 sekeping teka-teki yang akan menilai dengan benar. 557 00:27:28,030 --> 00:27:31,870 Ia akan menjadi kenyataan, di mana, jika anda menggunakan ungkapan Boolean ini, seperti yang kita akan 558 00:27:31,870 --> 00:27:36,340 melihat dalam seketika, di cawangan, anda boleh sama ada melakukan ini, atau anda boleh berbuat demikian, 559 00:27:36,340 --> 00:27:39,940 sama seperti kita mempunyai keadaan yang diperiksa, ada seorang lagi lalu 560 00:27:39,940 --> 00:27:40,460 dalam bilik? 561 00:27:40,460 --> 00:27:42,070 Jika demikian, tambah satu. 562 00:27:42,070 --> 00:27:44,430 Jika tidak, jangan bimbang lagi. 563 00:27:44,430 --> 00:27:48,650 >> Jadi ungkapan Boolean juga boleh dan bersama-sama atau ed-ed atau bersama-sama. 564 00:27:48,650 --> 00:27:53,120 Jadi, anda boleh menggabungkan ungkapan Boolean dan mengatakan ini dan ini mesti benar bagi 565 00:27:53,120 --> 00:27:54,710 segala-galanya untuk menjadi kenyataan. 566 00:27:54,710 --> 00:27:56,520 Dan di sini adalah contoh sebuah dunia yang lebih nyata. 567 00:27:56,520 --> 00:28:00,060 Jika anda telah menggunakan CS50 Kursus untuk melakukan kursus membeli-belah, kotak-kotak cek 568 00:28:00,060 --> 00:28:03,520 sana, di mana jika anda memeriksa kotak yang seterusnya kursus, yang akan berkata, ya, 569 00:28:03,520 --> 00:28:07,860 hanya menunjukkan saya kursus yang nilai Q ialah 4.5 atau lebih tinggi. 570 00:28:07,860 --> 00:28:10,610 Jika anda tanda ia, tidak, tidak bimbang tentang itu. 571 00:28:10,610 --> 00:28:13,910 Atau begitu juga, di sebelah kanan, tidak Adakah Konflik Dengan Kursus saya Mengambil, 572 00:28:13,910 --> 00:28:15,650 itu sama ada benar atau palsu. 573 00:28:15,650 --> 00:28:16,715 Ia hanya satu ungkapan Boolean. 574 00:28:16,715 --> 00:28:20,080 Jadi semua masa ini apabila anda telah menggunakan laman web dengan kotak cek, anda hanya 575 00:28:20,080 --> 00:28:23,570 menogol bersamaan Boolean ungkapan di dalam dan luar. 576 00:28:23,570 --> 00:28:25,270 >> Jadi, dalam bentuk apa yang anda gunakan ini? 577 00:28:25,270 --> 00:28:28,820 Nah, dalam Awal, kita akan melihat dalam seketika bahawa terdapat syarat-syarat yang 578 00:28:28,820 --> 00:28:29,560 kelihatan seperti ini. 579 00:28:29,560 --> 00:28:33,130 Dan itulah jenis wajar kerana banyak seperti dalam kod pseudo, kita tersusun 580 00:28:33,130 --> 00:28:38,550 jenis kepingan teka-teki berbentuk-U, bermakna bahawa di dalam apa-apa yang U 581 00:28:38,550 --> 00:28:41,390 akan melaksanakan, atau tidak, bergantung di mana ia adalah. 582 00:28:41,390 --> 00:28:45,310 Jadi, jika ungkapan Boolean, maka apa yang ada di dalamnya akan mendapat dilaksanakan. 583 00:28:45,310 --> 00:28:46,800 >> Sementara itu, terdapat satu jika / lain blok. 584 00:28:46,800 --> 00:28:50,320 Jadi jika anda mahu satu cabang yang berlaku ini cara atau itu, Scratch memberikan kita itu. 585 00:28:50,320 --> 00:28:54,500 Dan dengan logik ini, sekarang, walaupun yang sekeping teka-teki adalah jelas terlalu kecil 586 00:28:54,500 --> 00:28:57,400 baji untuk sesuatu yang lain di dalamnya, kepingan teka-teki awal, mereka 587 00:28:57,400 --> 00:28:58,150 hanya akan berkembang. 588 00:28:58,150 --> 00:29:01,370 Apabila anda seret dan lepaskan ke atas sesuatu, ia hanya akan berkembang untuk memenuhi apa sahaja 589 00:29:01,370 --> 00:29:02,510 yang anda cuba lakukan. 590 00:29:02,510 --> 00:29:07,230 >> Jadi kita boleh mengambil dua perkara-perkara ini dan membuat garpu cara tiga di jalan itu 591 00:29:07,230 --> 00:29:11,300 bahawa anda sama ada melakukan ini atau itu, atau perkara ini lain hanya dengan bersarang mereka 592 00:29:11,300 --> 00:29:12,070 dengan cara itu. 593 00:29:12,070 --> 00:29:14,370 Sudah tentu, jika anda melakukannya juga banyak, ia mula mendapat hodoh. 594 00:29:14,370 --> 00:29:17,660 Tetapi pada ketika itu, anda sebenarnya mungkin tidak pengaturcaraan dengan baik. 595 00:29:17,660 --> 00:29:20,490 Dan sebagainya yang akan berulang Tema juga bahawa gaya. 596 00:29:20,490 --> 00:29:22,790 Betapa manakah sebenarnya format kod anda? 597 00:29:22,790 --> 00:29:24,580 Atau bagaimana anda merekabentuk kod anda? 598 00:29:24,580 --> 00:29:26,430 Tetapi lebih kepada yang di masa depan. 599 00:29:26,430 --> 00:29:27,470 >> Dan sekarang kita mempunyai gelung. 600 00:29:27,470 --> 00:29:30,310 Terdapat gelung selama-lamanya baik di Scratch yang bermaksud bahawa - adakah 601 00:29:30,310 --> 00:29:32,710 apa yang di dalam ini lagi, dan sekali lagi, dan lagi. 602 00:29:32,710 --> 00:29:35,880 Anda boleh menjadi lebih konkrit dan berkata, melakukan perkara yang berikut 10 kali. 603 00:29:35,880 --> 00:29:37,620 Anda juga boleh menggunakan pembolehubah. 604 00:29:37,620 --> 00:29:40,260 Anda boleh datang dengan mana-mana nama dalam bahawa sedikit jatuh bawah dan berkata, memberi saya 605 00:29:40,260 --> 00:29:43,190 ubah dipanggil n dan menetapkan ia sama dengan beberapa nilai. 606 00:29:43,190 --> 00:29:44,910 Dan kemudian anda boleh mempunyai fungsi. 607 00:29:44,910 --> 00:29:46,850 Tetapi yang lebih kepada orang-orang dalam hanya seketika. 608 00:29:46,850 --> 00:29:49,140 >> Izinkan saya kembali kepada saya Menggaru muka. 609 00:29:49,140 --> 00:29:50,970 Dan biarlah saya pergi ke hadapan masa ini. 610 00:29:50,970 --> 00:29:56,660 Dan mari kita pergi ke hadapan dan membuka, katakan, contoh dari - 611 00:29:56,660 --> 00:29:58,740 itulah yang lebih menarik. 612 00:29:58,740 --> 00:30:00,750 Biar saya pergi ke hadapan, dan, sebenarnya, biarlah saya hanya membuat sendiri. 613 00:30:00,750 --> 00:30:01,960 Saya tidak perlu untuk membuka satu ini. 614 00:30:01,960 --> 00:30:03,390 Biar saya pergi ke Fail, New. 615 00:30:03,390 --> 00:30:04,740 Saya akan pergi ke Acara. 616 00:30:04,740 --> 00:30:08,460 Saya akan pergi ke apabila bendera hijau klik, dan saya akan pergi ke Bunyi. 617 00:30:08,460 --> 00:30:11,590 Dan saya akan untuk drag dan drop ini sekeping teka-teki, bermain meow bunyi. 618 00:30:11,590 --> 00:30:12,580 Ia selak bersama-sama. 619 00:30:12,580 --> 00:30:14,327 Dan kini, jika saya klik bendera hijau - 620 00:30:14,327 --> 00:30:16,260 >> [SOUND MEOW] 621 00:30:16,260 --> 00:30:17,500 >> DAVID MALAN: Disanjung. 622 00:30:17,500 --> 00:30:21,560 OK, jadi sekarang mari kita buat sesuatu yang sedikit lebih logik semata-mata untuk menunjukkan bahawa 623 00:30:21,560 --> 00:30:22,760 kita boleh, buat masa sekarang. 624 00:30:22,760 --> 00:30:25,550 Saya akan unlatch ini dari lelaki itu. 625 00:30:25,550 --> 00:30:27,000 Saya akan pergi ke Control. 626 00:30:27,000 --> 00:30:28,770 Dan saya akan merebut syarat. 627 00:30:28,770 --> 00:30:30,600 Jadi, jika sesuatu itu. 628 00:30:30,600 --> 00:30:32,020 Itulah bagaimana ia kelihatan di sana. 629 00:30:32,020 --> 00:30:33,890 Jadi saya memerlukan ungkapan Boolean. 630 00:30:33,890 --> 00:30:38,130 Dan biarlah saya pergi ke hadapan dan berkata, biarlah saya pergi ke Operator. 631 00:30:38,130 --> 00:30:40,270 Saya akan melakukan sesuatu yang sedikit mathy, hanya untuk tendangan. 632 00:30:40,270 --> 00:30:43,600 Saya akan pergi di sini dan berkata, jika sesuatu yang tidak kurang daripada sesuatu yang lain, 633 00:30:43,600 --> 00:30:45,030 pergi ke hadapan dan melakukan sesuatu. 634 00:30:45,030 --> 00:30:46,890 Jadi sekarang, anda tahu apa, blok rawak. 635 00:30:46,890 --> 00:30:51,620 Jadi melihat bagaimana, jika saya berlegar atas ini perkara di sini, yang akan snap di sana. 636 00:30:51,620 --> 00:30:54,090 >> Jadi sekarang, notis, saya mula melakukan sesuatu yang sudah lebih logik 637 00:30:54,090 --> 00:30:54,650 menarik. 638 00:30:54,650 --> 00:30:59,720 Jika nombor rawak antara 1 dan 10 adalah kurang daripada, katakan enam. 639 00:30:59,720 --> 00:31:03,670 Jika saya memilih enam, yang pada asasnya cara, lakukan perkara berikut dengan 50% 640 00:31:03,670 --> 00:31:03,980 kebarangkalian. 641 00:31:03,980 --> 00:31:05,460 Ia seperti Melibas duit syiling. 642 00:31:05,460 --> 00:31:07,330 Sekarang, saya boleh melakukan sesuatu yang bersyarat. 643 00:31:07,330 --> 00:31:10,800 Dan sesuatu yang saya akan lakukan adalah bermain bunyi. 644 00:31:10,800 --> 00:31:14,280 Jadi sekarang, apabila saya klik pada skrin bendera, ia seperti melambung duit syiling. 645 00:31:14,280 --> 00:31:14,610 >> [SOUND MEOW] 646 00:31:14,610 --> 00:31:17,160 >> DAVID MALAN: Ia adalah kepala atau barang kecil di sana. 647 00:31:17,160 --> 00:31:17,920 Mari kita buat sekali lagi. 648 00:31:17,920 --> 00:31:18,860 >> [SOUND MEOW] 649 00:31:18,860 --> 00:31:19,790 >> DAVID MALAN: Heads lagi. 650 00:31:19,790 --> 00:31:20,280 >> [SOUND MEOW] 651 00:31:20,280 --> 00:31:21,500 >> DAVID MALAN: Heads lagi. 652 00:31:21,500 --> 00:31:22,631 Phew, OK. 653 00:31:22,631 --> 00:31:24,720 Ekor masa itu. 654 00:31:24,720 --> 00:31:29,545 Jadi 50% daripada masa itu, jika kita melakukan ini panjang tak terhingga, kita akan mendapat 50% meows 655 00:31:29,545 --> 00:31:32,180 dan 50% senyap. 656 00:31:32,180 --> 00:31:34,850 Jadi di sana, hanya sebuah bangunan asas blok yang membolehkan kita berbuat demikian. 657 00:31:34,850 --> 00:31:37,710 Tetapi ini adalah jenis membosankan bahawa saya mempunyai untuk terus klik butang itu. 658 00:31:37,710 --> 00:31:39,810 Jadi mari kita hanya seret dan membuang semua orang dari sini. 659 00:31:39,810 --> 00:31:42,270 Jika anda mengheret mereka ke tengah-tengah, mereka hanya akan padam sendiri. 660 00:31:42,270 --> 00:31:43,760 >> Biar saya pergi untuk mengawal. 661 00:31:43,760 --> 00:31:46,060 Biar saya pergi untuk selama-lamanya. 662 00:31:46,060 --> 00:31:49,952 Dan kali ini, saya akan melakukan sesuatu minorly menjengkelkan. 663 00:31:49,952 --> 00:31:51,560 >> [Ketawa] 664 00:31:51,560 --> 00:31:53,370 >> DAVID MALAN: Dan biarlah saya pergi hadapan dan melakukan kawalan. 665 00:31:53,370 --> 00:31:57,260 Tunggu kedua, supaya ia tidak terlalu parutan. 666 00:31:57,260 --> 00:31:59,870 >> [SOUND MEOW] 667 00:31:59,870 --> 00:32:00,970 >> DAVID MALAN: Itu bukan semula jadi. 668 00:32:00,970 --> 00:32:01,861 OK. 669 00:32:01,861 --> 00:32:04,510 >> [SOUND MEOW] 670 00:32:04,510 --> 00:32:06,406 >> DAVID MALAN: Dan notis apa yang, baik kira-kira Awal, bagi mereka yang 671 00:32:06,406 --> 00:32:09,210 mempunyai pengalaman programing, anda tidak perlu untuk memulakan dan menghentikan. 672 00:32:09,210 --> 00:32:10,060 Anda tidak perlu untuk menyusun. 673 00:32:10,060 --> 00:32:13,210 Anda hanya mengubahnya, dan program akan menyesuaikan diri secara dinamik. 674 00:32:13,210 --> 00:32:14,620 Jadi ini semakin sedikit menarik. 675 00:32:14,620 --> 00:32:16,930 Tetapi mari kita mengambil satu langkah ke hadapan. 676 00:32:16,930 --> 00:32:19,760 Biar saya pergi ke hadapan dan mendapatkan menghapuskan program itu. 677 00:32:19,760 --> 00:32:23,300 >> [SOUND MEOW] 678 00:32:23,300 --> 00:32:25,520 >> DAVID MALAN: Itulah apa yang kita akan memanggil bug dalam Scratch. 679 00:32:25,520 --> 00:32:26,770 Beliau tidak perlu menyimpan membuat bunyi itu. 680 00:32:26,770 --> 00:32:28,340 Jadi kita kita akan beritahu dia untuk berhenti. 681 00:32:28,340 --> 00:32:30,435 Baiklah, jadi sekarang saya akan pergi ke - 682 00:32:30,435 --> 00:32:32,180 Saya akan memberitahu MIT tahu. 683 00:32:32,180 --> 00:32:35,160 Kami akan pergi ke sini untuk Selama-lamanya. 684 00:32:35,160 --> 00:32:37,240 Dan sekarang, saya mahu melakukan sesuatu lagi dan lagi. 685 00:32:37,240 --> 00:32:38,760 Saya akan pergi ke Control. 686 00:32:38,760 --> 00:32:41,570 >> Dan mari kita lihat, saya akan mengheret jika saya keadaan di sana. 687 00:32:41,570 --> 00:32:42,850 Jadi sekarang notis logik. 688 00:32:42,850 --> 00:32:46,430 Apabila bendera hijau ditekan, melakukan sesuatu yang selama-lamanya, tetapi hanya berbuat demikian 689 00:32:46,430 --> 00:32:48,890 sesuatu jika perkara ini lain benar. 690 00:32:48,890 --> 00:32:51,480 Saya akan pergi ke, mari kita berkata, sensing. 691 00:32:51,480 --> 00:32:54,430 Dan saya akan pergi ke hadapan dan memilih menyentuh dan jatuh di sana. 692 00:32:54,430 --> 00:32:55,930 Itulah ungkapan Boolean. 693 00:32:55,930 --> 00:32:57,740 >> Dan kini, notis, kejatuhan ini menu, terdapat 694 00:32:57,740 --> 00:32:59,050 nilai-nilai yang telah ditetapkan. 695 00:32:59,050 --> 00:33:00,910 Jadi, saya boleh berkata, yang anda menyentuh tepi skrin? 696 00:33:00,910 --> 00:33:03,900 Atau adakah anda menyentuh penunjuk tetikus, anak panah pada skrin? 697 00:33:03,900 --> 00:33:04,620 Jadi saya akan berbuat demikian. 698 00:33:04,620 --> 00:33:08,770 Dan jika demikian, maka saya akan pergi hadapan dan bermain meow bunyi. 699 00:33:08,770 --> 00:33:11,250 Jadi sekarang saya jenis mempunyai permulaan permainan - 700 00:33:11,250 --> 00:33:13,110 permainan comel. 701 00:33:13,110 --> 00:33:14,060 >> [SOUND MEOW] 702 00:33:14,060 --> 00:33:17,250 >> DAVID MALAN: OK, yang comel, permainan kereta. 703 00:33:17,250 --> 00:33:20,770 Biar saya tunggu, katakan, salah satu kedua di sana. 704 00:33:20,770 --> 00:33:24,910 Sekarang bermain lagi, dengan mengklik bendera hijau. 705 00:33:24,910 --> 00:33:27,860 >> [SOUND MEOW] 706 00:33:27,860 --> 00:33:30,460 >> DAVID MALAN: Jadi sekarang ia seperti hastakarya kucing. 707 00:33:30,460 --> 00:33:31,850 >> [SOUND MEOW] 708 00:33:31,850 --> 00:33:34,460 >> DAVID MALAN: Baiklah, sekarang ini yang saya tidak membuat terlebih dahulu. 709 00:33:34,460 --> 00:33:39,250 Sangat lewat, ia mendapat jenis mudah untuk melakukan perkara-perkara bodoh. 710 00:33:39,250 --> 00:33:40,240 Jadi biarlah saya pergi di sini. 711 00:33:40,240 --> 00:33:43,720 Katakan, yang Binatang Kucing. 712 00:33:43,720 --> 00:33:46,600 Mari kita kini dibuka Jangan Binatang Kucing. 713 00:33:46,600 --> 00:33:48,330 Sekarang, jika kita bermain satu ini, anda boleh meneka, jika anda 714 00:33:48,330 --> 00:33:49,650 melihat skrin - 715 00:33:49,650 --> 00:33:51,090 >> [SOUND MEOW] 716 00:33:51,090 --> 00:33:52,170 >> DAVID MALAN: Sekarang, jika saya haiwan kucing 717 00:33:52,170 --> 00:33:55,420 >> [Roar LION'S] 718 00:33:55,420 --> 00:33:57,260 >> DAVID MALAN: Jadi sebenarnya tidak haiwan kucing dalam kes itu. 719 00:33:57,260 --> 00:34:01,350 Jadi sekarang kita hanya perlu satu contoh cawangan yang berlaku dalam dua arah. 720 00:34:01,350 --> 00:34:03,130 Sekarang saya pergi ke hadapan dan membuka satu lagi di sini. 721 00:34:03,130 --> 00:34:07,120 Yang ini, juga, antara sumber kami fail kod untuk hari itu. 722 00:34:07,120 --> 00:34:13,199 Jadi biarlah saya kembali kepada saya Source direktori dan pergi ke, mari kita memilih 723 00:34:13,199 --> 00:34:15,610 lelaki ini di sini dan melihat apa yang berbeza. 724 00:34:15,610 --> 00:34:17,449 >> Wow, semua hak, jadi sekarang ia semakin sedikit lebih kompleks. 725 00:34:17,449 --> 00:34:21,300 Dan sebelum kita melihat apa yang lelaki ini tidak, mari kita cuba untuk membuat kesimpulan, dari program 726 00:34:21,300 --> 00:34:22,219 di sebelah kanan. 727 00:34:22,219 --> 00:34:25,590 Dan kini calar jelas membolehkan kami mempunyai beberapa skrip, pelbagai 728 00:34:25,590 --> 00:34:29,730 program-program yang berkaitan dengan salah satu bidadari, dengan satu watak, dan, nampaknya, 729 00:34:29,730 --> 00:34:31,760 kedua-dua mereka akan berjalan di lockstep. 730 00:34:31,760 --> 00:34:35,570 Kerana kedua-dua program ini bermula dengan apabila bendera hijau klik, ini adalah 731 00:34:35,570 --> 00:34:38,650 membayangkan pada topik yang lebih maju, dengan yang sebahagian daripada anda mungkin biasa, 732 00:34:38,650 --> 00:34:40,580 dikenali sebagai threading, atau multi-threading. 733 00:34:40,580 --> 00:34:44,400 >> Rupa-rupanya, cerita panjang pendek, komputer hari ini pada dasarnya boleh melakukan pelbagai 734 00:34:44,400 --> 00:34:45,270 perkara pada satu masa. 735 00:34:45,270 --> 00:34:48,659 Atau mereka boleh melakukan satu perkara pada satu masa supaya cepat yang anda tidak perasan yang 736 00:34:48,659 --> 00:34:50,150 ia sebenarnya melakukan satu perkara pada satu masa. 737 00:34:50,150 --> 00:34:53,320 Tetapi untuk sekarang, mari kita andaikan bahawa kedua-dua program-program ini akan melaksanakan di 738 00:34:53,320 --> 00:34:54,310 masa yang sama. 739 00:34:54,310 --> 00:34:57,350 Dan notis, kedua-dua daripada mereka mempunyai selama-lamanya teka-teki keping. 740 00:34:57,350 --> 00:35:01,270 Jadi mereka berdua akan terus berjalan sehingga saya memukul tanda berhenti merah. 741 00:35:01,270 --> 00:35:02,100 >> Jadi apa yang mereka akan lakukan? 742 00:35:02,100 --> 00:35:06,030 Pada sebelah kiri, saya nampaknya mengisytiharkan pembolehubah yang dipanggil disenyapkan. 743 00:35:06,030 --> 00:35:09,030 Jadi saya tidak memanggilnya sesuatu seperti membosankan seperti N. saya dipanggil ia disenyapkan ini 744 00:35:09,030 --> 00:35:10,240 masa untuk menyampaikan makna. 745 00:35:10,240 --> 00:35:11,780 Saya menetapkan ia sama dengan sifar. 746 00:35:11,780 --> 00:35:16,200 Mari kita berfikir bahawa sebagai palsu, atau mari kita berfikir bahawa sebagai palsu. 747 00:35:16,200 --> 00:35:17,490 >> Sekarang, selama-lamanya melakukan yang berikut. 748 00:35:17,490 --> 00:35:23,280 Jika bar ruang papan kekunci ini ditekan, maka jika disenyapkan sama dengan sifar, 749 00:35:23,280 --> 00:35:25,930 kemudian menukar disenyapkan kepada satu sama. 750 00:35:25,930 --> 00:35:27,580 Yang lain, yang ditetapkan disenyapkan kepada sifar. 751 00:35:27,580 --> 00:35:30,530 Jadi secara logiknya, walaupun itu adalah satu keseluruhan sekumpulan keping teka-teki itu 752 00:35:30,530 --> 00:35:33,160 hanya berkata, apabila saya terkena palang Angkasa, apa yang perlu saya lakukan untuk berubah-ubah 753 00:35:33,160 --> 00:35:34,750 dipanggil disenyapkan? 754 00:35:34,750 --> 00:35:37,170 Perubahan dari satu kepada sifar, atau sifar kepada satu. 755 00:35:37,170 --> 00:35:37,840 Itu sahaja. 756 00:35:37,840 --> 00:35:40,740 Jadi ia seperti mengubah suis lampu hidup atau mati dan mengingati, dengan 757 00:35:40,740 --> 00:35:42,330 berubah-ubah, yang saya lakukan itu. 758 00:35:42,330 --> 00:35:45,990 >> Sementara itu, pada sebelah kanan, dalam segi orang biasa itu, apa tujuan 759 00:35:45,990 --> 00:35:47,547 skrip di sebelah kanan? 760 00:35:47,547 --> 00:35:48,860 >> PELAJAR: Untuk memainkan bunyi singa laut. 761 00:35:48,860 --> 00:35:52,500 >> DAVID MALAN: Untuk bermain Sea Lion bunyi, jika beliau bukan disenyapkan, oleh 762 00:35:52,500 --> 00:35:53,480 sifat berubah-ubah itu. 763 00:35:53,480 --> 00:35:57,360 Jadi, kita berkongsi negara, jadi untuk bercakap, berkongsi maklumat di kedua-dua 764 00:35:57,360 --> 00:36:00,540 skrip kerana, melihat di sini, kami selama-lamanya melakukan yang berikut. 765 00:36:00,540 --> 00:36:04,620 Jika disenyapkan adalah sifar, jadi jika ia tidak disenyapkan - jika disenyapkan adalah palsu, kemudian memainkan 766 00:36:04,620 --> 00:36:05,980 Lion ini bunyi Sea. 767 00:36:05,980 --> 00:36:09,930 Dan berfikir kepada diri sendiri, hi, hi, hi, untuk dua saat, tunggu sebentar, dan kemudian 768 00:36:09,930 --> 00:36:11,140 lihat lagi. 769 00:36:11,140 --> 00:36:15,150 Jadi, jika kita pergi sekarang di sini ke kiri, di mana lelaki ini adalah, dan tekan 770 00:36:15,150 --> 00:36:16,662 Bendera hijau, 771 00:36:16,662 --> 00:36:30,260 >> [SEA LION BUNYI] 772 00:36:30,260 --> 00:36:31,910 >> DAVID MALAN: Pada peringkat manakah ini dapat benar-benar menjengkelkan? 773 00:36:31,910 --> 00:36:33,440 Kerana ini hanya akan pergi selama-lamanya. 774 00:36:33,440 --> 00:36:36,490 Jadi kadang-kadang, gelung tak terhingga, jadi untuk bercakap, adalah sengaja. 775 00:36:36,490 --> 00:36:41,140 Tetapi dalam kes ini, dengan seberapa segera seperti yang saya memukul bar ruang, dia berhenti. 776 00:36:41,140 --> 00:36:42,800 Kini program itu tidak berhenti. 777 00:36:42,800 --> 00:36:44,760 Ia masih berjalan dalam gelung. 778 00:36:44,760 --> 00:36:46,540 Tetapi jika saya mendapat bar ruang lagi - 779 00:36:46,540 --> 00:36:47,851 >> [SEA LION BUNYI] 780 00:36:47,851 --> 00:36:49,650 >> DAVID MALAN: Dia akan memilih up di mana dia berhenti. 781 00:36:49,650 --> 00:36:53,240 Jadi ada satu cara untuk kita melakukan sesuatu lagi dan lagi tetapi, yang 782 00:36:53,240 --> 00:36:54,920 masa, hanya bersyarat. 783 00:36:54,920 --> 00:36:58,940 Nah, sementara kita dalam urat ini menjalankan perkara lagi dan lagi, izinkan saya 784 00:36:58,940 --> 00:37:01,370 pergi ke satu lagi contoh di sini. 785 00:37:01,370 --> 00:37:04,370 Yang ini kita akan memanggil mengira biri-biri. 786 00:37:04,370 --> 00:37:05,710 >> Dan notis apa yang lelaki ini tidak. 787 00:37:05,710 --> 00:37:08,540 Ini sebenarnya lebih sedikit seperti pseudokod kami bermain dengan pada 788 00:37:08,540 --> 00:37:12,230 Rabu, di mana beliau menyatakan beberapa kaunter, memikirkan ia adalah seperti N lagi, untuk 789 00:37:12,230 --> 00:37:14,030 sifar, beliau selama-lamanya tidak berikut. 790 00:37:14,030 --> 00:37:17,960 Beliau berkata, nilai kaunter untuk satu kedua, menunggu kedua, dan kemudian 791 00:37:17,960 --> 00:37:19,430 perubahan kaunter demi satu. 792 00:37:19,430 --> 00:37:21,570 Dan dalam konteks ini, yang hanya bermakna kenaikan itu. 793 00:37:21,570 --> 00:37:23,250 Jadi dia menambah satu kepadanya. 794 00:37:23,250 --> 00:37:25,830 Jadi, ini adalah benar-benar - 795 00:37:25,830 --> 00:37:27,890 ia tidak cukup apa yang kita fikirkan sebagai mengira biri-biri. 796 00:37:27,890 --> 00:37:33,120 Ia adalah kambing biri-biri yang melakukan pengiraan, selama-lamanya, dari sifar. 797 00:37:33,120 --> 00:37:35,560 >> Jadi kita boleh melakukan perkara yang sama di sana, secara logik. 798 00:37:35,560 --> 00:37:37,750 Tetapi sekarang mari kita cuba untuk membersihkan beberapa perkara. 799 00:37:37,750 --> 00:37:43,440 Biar saya pergi ke hadapan kini menjadi mudah contoh di mana kucing kita hanya akan 800 00:37:43,440 --> 00:37:44,750 mula batuk. 801 00:37:44,750 --> 00:37:48,830 Baiklah, jadi di sini kita mempunyai batuk 0 - 802 00:37:48,830 --> 00:37:50,685 saintis komputer bermula mengira dari 0. 803 00:37:50,685 --> 00:37:53,480 Jadi kucing ini hanya akan batuk tiga kali. 804 00:37:53,480 --> 00:37:54,890 Dan di sini adalah cara saya telah melaksanakan itu. 805 00:37:54,890 --> 00:38:00,130 Apabila bendera hijau diklik, batuk, tunggu, batuk, tunggu, batuk, tunggu. 806 00:38:00,130 --> 00:38:02,470 Dan saya melakukan ini hanya dengan mengheret dan menjatuhkan keping teka-teki. 807 00:38:02,470 --> 00:38:04,740 Atau jika anda mula bermain-main dengan Awal, anda akan melihat anda boleh sebenarnya 808 00:38:04,740 --> 00:38:08,620 salinan keping supaya anda boleh lakukan perkara yang lebih cepat tanpa mengheret 809 00:38:08,620 --> 00:38:10,310 dan menjatuhkan nauseum iklan. 810 00:38:10,310 --> 00:38:12,680 >> Tetapi kita tidak berada di jalan yang terbaik di sini. 811 00:38:12,680 --> 00:38:15,210 Kerana bagaimana saya membuat dia batuk kali keempat? 812 00:38:15,210 --> 00:38:16,790 Well, saya boleh menyelesaikan daripada pergi di sini. 813 00:38:16,790 --> 00:38:19,420 Saya boleh salinan dan kemudian tampal ini di sana. 814 00:38:19,420 --> 00:38:21,740 Bagaimana saya membuat dia batuk masa yang kelima? 815 00:38:21,740 --> 00:38:23,230 Nah, salin dan tampal lagi. 816 00:38:23,230 --> 00:38:24,210 Atau seret drop lagi. 817 00:38:24,210 --> 00:38:26,920 Dan sangat cepat, program ini bermula untuk benar-benar, benar-benar diperlukan, 818 00:38:26,920 --> 00:38:28,880 benar-benar panjang, tetapi benar-benar menarik. 819 00:38:28,880 --> 00:38:30,120 Tetapi ada satu cara untuk membersihkan ini. 820 00:38:30,120 --> 00:38:33,680 Apakah cara yang jelas untuk membersihkan ini? 821 00:38:33,680 --> 00:38:36,280 >> OK, jadi kita boleh benar-benar benar-benar pergi keluar dan apabila anda menekan ruang 822 00:38:36,280 --> 00:38:37,070 bar, telah dia batuk. 823 00:38:37,070 --> 00:38:40,150 Tetapi jika saya hanya mahu melakukan sesuatu berulang-ulang, ingat bahawa kita mempunyai 824 00:38:40,150 --> 00:38:41,310 beberapa kawalan membina. 825 00:38:41,310 --> 00:38:43,800 Biar saya keluar ini daripada cara, pergi di bawah kawalan. 826 00:38:43,800 --> 00:38:47,340 Biar saya hanya melakukan berulang, berkata, tiga kali. 827 00:38:47,340 --> 00:38:49,410 Dan sekarang mari saya mencuri ini keping teka-teki. 828 00:38:49,410 --> 00:38:50,980 Biar saya snap ini di sini. 829 00:38:50,980 --> 00:38:52,400 Biar saya membuang ini jauh sama sekali. 830 00:38:52,400 --> 00:38:55,400 >> Dan sekarang, saya mempunyai yang lebih baik program yang direka. 831 00:38:55,400 --> 00:38:55,920 Mengapa? 832 00:38:55,920 --> 00:39:00,540 Jika saya ingin menukar berapa kali kucing ini batuk, semua saya perlu 833 00:39:00,540 --> 00:39:05,640 lakukan adalah menukar satu berubah-ubah, atau salah satu nilai, lebih daripada tiga, empat, atau 834 00:39:05,640 --> 00:39:06,700 lima atau enam. 835 00:39:06,700 --> 00:39:09,060 Atau saya boleh melakukan sesuatu yang bersyarat, malah, dengan ruang 836 00:39:09,060 --> 00:39:10,320 menghalang jika saya mahu. 837 00:39:10,320 --> 00:39:11,780 >> Jadi ini adalah satu prinsip yang umum. 838 00:39:11,780 --> 00:39:14,950 Sebaik sahaja anda mula menyalin dan menampal kod, sama ada ia adalah di Awal, atau dalam 839 00:39:14,950 --> 00:39:18,340 C, anda melakukan sesuatu salah, yang paling mungkin. 840 00:39:18,340 --> 00:39:21,950 Atau sekurang-kurangnya, sebaik sahaja anda telah melebihi beberapa nombor munasabah salinan dan 841 00:39:21,950 --> 00:39:24,610 Pes, anda mungkin melakukan sesuatu yang salah. 842 00:39:24,610 --> 00:39:26,740 >> Tetapi anda tahu apa? 843 00:39:26,740 --> 00:39:27,590 Saya tidak benar-benar seperti ini. 844 00:39:27,590 --> 00:39:28,980 Ini bukan reka bentuk yang bersih. 845 00:39:28,980 --> 00:39:32,860 Saya ingin terdapat sekeping teka-teki yang dipanggil batuk kerana kemudian saya tidak akan 846 00:39:32,860 --> 00:39:36,100 perlu melaksanakan ini diri saya sendiri, cara fesyen lama, dengan 847 00:39:36,100 --> 00:39:38,220 telah berkata, dan tunggu - 848 00:39:38,220 --> 00:39:40,320 bagaimana jika mereka hanya sekeping teka-teki batuk. 849 00:39:40,320 --> 00:39:41,330 >> Well, saya sebenarnya boleh melakukannya. 850 00:39:41,330 --> 00:39:45,010 Biar saya pergi di bawah lebih blok, klik Buat Block, dan kini saya mendapat ini 851 00:39:45,010 --> 00:39:45,610 tingkap di sini. 852 00:39:45,610 --> 00:39:47,540 Saya akan memanggil batuk perkara ini. 853 00:39:47,540 --> 00:39:49,400 Saya akan teruskan dan klik OK. 854 00:39:49,400 --> 00:39:53,150 Dan kini notis, saya mendapat permulaan baru sekeping itu melengkung di atas. 855 00:39:53,150 --> 00:39:56,590 Dan apa yang saya akan lakukan dengan ini, saya akan hanya mencuri blok-blok. 856 00:39:56,590 --> 00:39:57,800 Saya akan meletakkan mereka di sini. 857 00:39:57,800 --> 00:40:00,490 >> Dan kini, dengan ketiga-tiga keping, saya telah melaksanakan apa yang saya akan memanggil 858 00:40:00,490 --> 00:40:03,530 fungsi atau prosedur, atau sebahagian daripada anda mungkin tahu ia sebagai kaedah. 859 00:40:03,530 --> 00:40:05,050 Sedikit perbezaan antara perkataan. 860 00:40:05,050 --> 00:40:06,950 Tetapi untuk sekarang, mari kita hanya memanggil ini fungsi. 861 00:40:06,950 --> 00:40:08,750 Ini adalah hanya sekeping teka-teki baru. 862 00:40:08,750 --> 00:40:11,000 Kini ia dilaksanakan seperti ini. 863 00:40:11,000 --> 00:40:15,170 >> Tetapi melihat bahawa Scratch telah memberikan kita perwakilan fizikal bahawa keseluruhan 864 00:40:15,170 --> 00:40:16,570 menghalang di sini. 865 00:40:16,570 --> 00:40:21,930 Jadi sekarang, saya hanya boleh tarik ini di sini, berkata, mengulangi tiga kali, dan 866 00:40:21,930 --> 00:40:26,420 apa yang akan berlaku sekarang, apabila saya bermain skrip ini, hanya satu program 867 00:40:26,420 --> 00:40:27,500 sedang berjalan pada satu masa. 868 00:40:27,500 --> 00:40:29,880 Terdapat hanya satu apabila bendera hijau diklik. 869 00:40:29,880 --> 00:40:34,010 Tetapi itu blok ungu dipanggil batuk adalah berkesan memberitahu Awal, setiap 870 00:40:34,010 --> 00:40:38,160 kali anda melihat bahawa sekeping teka-teki, sebenarnya melaksanakan langkah-langkah yang saya 871 00:40:38,160 --> 00:40:40,420 berlaku untuk melaksanakan secara manual. 872 00:40:40,420 --> 00:40:41,410 >> Jadi itulah jenis kemas. 873 00:40:41,410 --> 00:40:44,650 Tetapi sekarang, katakan bahawa saya mengambil keputusan, saya tidak mahu kucing ini hanya untuk batuk. 874 00:40:44,650 --> 00:40:46,660 Saya mahu dia dapat bersin juga. 875 00:40:46,660 --> 00:40:48,905 Nah, bagaimana kita boleh pergi kira-kira melaksanakan bersin? 876 00:40:48,905 --> 00:40:51,310 Well, saya boleh cukup banyak melakukan perkara yang sama. 877 00:40:51,310 --> 00:40:52,690 Saya boleh membuat blok lain. 878 00:40:52,690 --> 00:40:55,940 Saya boleh memanggil bersin ini, klik OK. 879 00:40:55,940 --> 00:40:59,250 >> Kemudian, di sini saya boleh sebenarnya telah, izinkan saya salinan ini - 880 00:40:59,250 --> 00:41:02,850 dan ada di mana anda perlu berasa seperti anda mungkin tidak melakukan sesuatu dalam 881 00:41:02,850 --> 00:41:03,780 cara yang terbaik. 882 00:41:03,780 --> 00:41:06,670 Saya boleh mengatakan sesuatu seperti, achoo, untuk satu kedua. 883 00:41:06,670 --> 00:41:07,440 Tunggu kedua. 884 00:41:07,440 --> 00:41:08,715 Sekarang saya mempunyai satu blok baru yang dikenali sebagai bersin. 885 00:41:08,715 --> 00:41:10,210 Dan sesungguhnya, ada ia. 886 00:41:10,210 --> 00:41:14,010 >> Tetapi ini juga perlu mula rasa - mungkin tidak pada minggu pertama kelas, tetapi 887 00:41:14,010 --> 00:41:15,730 oleh kedua - hanya yang berlebihan sedikit. 888 00:41:15,730 --> 00:41:17,800 Jelas sekali, terdapat beberapa pertindihan di sini. 889 00:41:17,800 --> 00:41:22,090 Jadi biarlah saya mencadangkan, sebaliknya, yang kita menghalusi takrif ini seperti berikut. 890 00:41:22,090 --> 00:41:24,820 >> Biar saya pergi ke menu fail saya. 891 00:41:24,820 --> 00:41:26,090 Saya tidak akan menyelamatkan versi ini. 892 00:41:26,090 --> 00:41:29,080 Saya akan pergi ke salah satu daripada fail premade saya di sini. 893 00:41:29,080 --> 00:41:31,190 Dan saya akan pergi ke hadapan dan membuka batuk 2. 894 00:41:31,190 --> 00:41:32,220 Whoops yang batuk 2. 895 00:41:32,220 --> 00:41:36,900 Biar saya pergi ke hadapan dan membuka batuk 3, yang adalah direktori sumber ini. 896 00:41:36,900 --> 00:41:42,450 Batuk 3 dan notis - oh, saya memberitahu cerita dalam perintah itu salah. 897 00:41:42,450 --> 00:41:45,030 Biar saya pulih daripada cerita ini. 898 00:41:45,030 --> 00:41:48,990 >> Cerita yang saya maksudkan untuk memberitahu berakhir dengan batuk 4 - 899 00:41:48,990 --> 00:41:50,270 ada ia. 900 00:41:50,270 --> 00:41:54,380 Jadi apa jika saya, sebaliknya, menentukan sekeping teka-teki yang lebih besar yang dikenali sebagai 901 00:41:54,380 --> 00:41:57,250 menentukan, berkata-kata n kali. 902 00:41:57,250 --> 00:41:59,930 Bersin hanya, nampaknya, di Awal, achoo. 903 00:41:59,930 --> 00:42:01,680 Jadi kita menyatakan ia sebagai satu perkataan, hanya kerana itulah 904 00:42:01,680 --> 00:42:02,750 kekangan program. 905 00:42:02,750 --> 00:42:07,860 Dan batuk adalah [batuk], tetapi batuk, C-O-U-G-H. Jadi itu hanya dua 906 00:42:07,860 --> 00:42:10,820 perkataan yang berbeza lakukan, pada dasarnya, perkara yang sama. 907 00:42:10,820 --> 00:42:12,820 >> Jadi saya benar-benar boleh membuat blok baru seperti ini. 908 00:42:12,820 --> 00:42:14,220 Saya tidak menggunakan pilihan menu ini sebelum ini. 909 00:42:14,220 --> 00:42:16,960 Tetapi apabila anda klik Buat Block, anda boleh memilih beberapa pilihan. 910 00:42:16,960 --> 00:42:20,900 Dan anda boleh mengatakan bahawa blok ini sebenarnya mengambil beberapa input, sebaliknya 911 00:42:20,900 --> 00:42:24,710 dikenali sebagai hujah, atau parameter, jadi bahawa anda boleh mengubah suai tingkah laku 912 00:42:24,710 --> 00:42:25,520 blok anda. 913 00:42:25,520 --> 00:42:28,780 >> Jadi apa yang saya lakukan masa lalu adalah Saya dipanggil blok ini Katakanlah. 914 00:42:28,780 --> 00:42:30,880 Dan kemudian saya berkata, ia mengambil masa input tali. 915 00:42:30,880 --> 00:42:32,810 Dan kini melihat, secara lalai, ia berkata rentetan 1. 916 00:42:32,810 --> 00:42:35,440 Tali adalah hanya satu perkataan, atau frasa, untuk tujuan kita. 917 00:42:35,440 --> 00:42:37,810 Tetapi saya hanya akan meletakkan beberapa teks pemegang tempat di sana, hanya seperti dalam 918 00:42:37,810 --> 00:42:40,620 laman web, apabila anda melihat nama pengguna, atau kata laluan, dan kemudian ia hilang apabila 919 00:42:40,620 --> 00:42:41,550 anda mula menaip. 920 00:42:41,550 --> 00:42:42,720 Itu semua yang. 921 00:42:42,720 --> 00:42:44,590 >> Dan sekarang saya akan menambah input nombor. 922 00:42:44,590 --> 00:42:47,180 Dan saya akan memanggil n ini - tetapi yang agak sewenang-wenangnya. 923 00:42:47,180 --> 00:42:49,510 Dan kemudian hanya label, hanya untuk membuat blok ini lebih sedikit diri 924 00:42:49,510 --> 00:42:50,570 maksudnya - 925 00:42:50,570 --> 00:42:53,010 kali, itulah yang saya lakukan. 926 00:42:53,010 --> 00:42:56,540 Dan keputusan akhir adalah bahawa saya mendapat blok yang kelihatan seperti ini. 927 00:42:56,540 --> 00:42:58,880 >> Dan kini notis, saya menggunakan blok berulang. 928 00:42:58,880 --> 00:43:03,480 Tetapi bukannya keras kod tiga, saya mengheret dan menjatuhkan n di sana jadi saya 929 00:43:03,480 --> 00:43:05,530 boleh parametrize fungsi. 930 00:43:05,530 --> 00:43:08,590 Saya boleh membuat fungsi ini melakukan sesuatu nombor yang berbeza kali berdasarkan 931 00:43:08,590 --> 00:43:09,410 nilai itu. 932 00:43:09,410 --> 00:43:14,270 >> Dan notis, berkata, ini adalah apa yang saya lakukan di sini, jika saya tarik perkataan, saya boleh katakan tidak 933 00:43:14,270 --> 00:43:17,860 perkataan berkod keras, tetapi apa diluluskan dalam untuk yang kedua. 934 00:43:17,860 --> 00:43:20,200 Sementara itu, bagaimana saya-melaksanakan semula batuk? 935 00:43:20,200 --> 00:43:26,980 Saya bukannya menentukan batuk sebagai batuk berkata n kali. 936 00:43:26,980 --> 00:43:30,480 >> Jadi dalam jangka pendek, saya akan melalui ini dengan cepat, tetapi idea asas adalah sebaik sahaja 937 00:43:30,480 --> 00:43:32,750 kerana anda mula melihat dalam program anda itu, tunggu satu minit, saya telah melakukan 938 00:43:32,750 --> 00:43:36,610 sesuatu yang agak seperti ini sebelum ini, boleh saya beberapa faktor biasa 939 00:43:36,610 --> 00:43:37,090 fungsi? 940 00:43:37,090 --> 00:43:41,090 Bolehkah saya mengurai apa yang saya lakukan ke dalam beberapa idea asas? 941 00:43:41,090 --> 00:43:42,070 Itulah apa yang kami lakukan di sini. 942 00:43:42,070 --> 00:43:44,830 Dan saya telah disusun-perkara ini, visual, di atas satu sama lain 943 00:43:44,830 --> 00:43:47,710 kerana ia adalah bukti bahawa idea bermula dengan binari, pergi ke ASCII, 944 00:43:47,710 --> 00:43:51,530 membuat program grafik, jenis penerapan idea-idea yang semakin kompleks pada 945 00:43:51,530 --> 00:43:52,570 atas satu sama lain. 946 00:43:52,570 --> 00:43:53,730 >> Idea yang sama di sini. 947 00:43:53,730 --> 00:43:56,870 Saya bermula dari scratch, melaksana batuk, maka batuk sedar adalah 948 00:43:56,870 --> 00:43:58,540 benar-benar hanya berkata sesuatu. 949 00:43:58,540 --> 00:44:01,630 Jadi biarlah saya bukannya melaksanakan tanggapan untuk mengatakan sesuatu. 950 00:44:01,630 --> 00:44:05,200 Dan di atas itu, saya boleh melaksanakan achoo atau batuk? 951 00:44:05,200 --> 00:44:07,990 Dan yang boleh kita lakukan lebih seperti varian masih. 952 00:44:07,990 --> 00:44:10,400 >> Jadi dari prinsip asas ini, kita boleh mula melakukan 953 00:44:10,400 --> 00:44:12,180 semakin program kompleks. 954 00:44:12,180 --> 00:44:14,100 Izinkan saya membuka satu ini. 955 00:44:14,100 --> 00:44:18,020 Kami benar-benar boleh mempunyai pelbagai sprites berinteraksi pada skrin sekali gus. 956 00:44:18,020 --> 00:44:23,470 Jika saya pergi ke dalam direktori sumber saya dan merebut salah satu Threads dipanggil, ingat bahawa 957 00:44:23,470 --> 00:44:26,920 thread hanya benar-benar keupayaan dua skrip untuk menjalankan sebelah 958 00:44:26,920 --> 00:44:28,350 sampingan pada masa yang sama. 959 00:44:28,350 --> 00:44:34,490 >> Notis sekarang, mempunyai kedua-dua bidadari burung dan a sprite kucing, kedua-duanya mempunyai 960 00:44:34,490 --> 00:44:35,270 skrip mereka sendiri. 961 00:44:35,270 --> 00:44:37,690 Jadi notis, apabila saya klik kucing, saya mendapatkan ini skrip. 962 00:44:37,690 --> 00:44:39,830 Apabila saya klik burung, Saya mendapatkan ini skrip. 963 00:44:39,830 --> 00:44:42,070 Jadi setiap orang mempunyai program sendiri. 964 00:44:42,070 --> 00:44:46,680 Apabila saya sekarang klik bendera hijau, notis bahawa apa yang program ini tidak boleh 965 00:44:46,680 --> 00:44:54,090 mempunyai kucing, amat perlahan-lahan, mengejar burung. 966 00:44:54,090 --> 00:44:57,120 Tetapi kucing yang mempunyai kelebihan yang mempunyai telah diprogramkan dalam apa-apa cara yang 967 00:44:57,120 --> 00:45:00,540 tidak kira di mana burung adalah, kucing pergi ke arah dia. 968 00:45:00,540 --> 00:45:02,150 >> Kita boleh bermain permainan yang lebih cepat. 969 00:45:02,150 --> 00:45:07,750 Jadi, jika saya pada kucing, melihat bahawa saya menggunakan, katakan bergerak satu langkah. 970 00:45:07,750 --> 00:45:11,680 Mari kita dia bergerak lima langkah di satu masa, jadi lima titik pada satu masa. 971 00:45:11,680 --> 00:45:13,580 Biar saya klik bermain. 972 00:45:13,580 --> 00:45:14,490 >> [Roar LION'S] 973 00:45:14,490 --> 00:45:17,170 >> DAVID MALAN: Baiklah, sekarang kita boleh benar-benar memberikan kucing kelebihan. 974 00:45:17,170 --> 00:45:18,600 10 langkah pada satu masa. 975 00:45:18,600 --> 00:45:20,120 >> [Roar LION'S] 976 00:45:20,120 --> 00:45:22,770 >> DAVID MALAN: Baiklah, maka dengan cepat, ia menjadi satu kelebihan yang sedikit 977 00:45:22,770 --> 00:45:23,280 untuk kucing. 978 00:45:23,280 --> 00:45:25,310 Tetapi saya akan melambai tangan saya pada beberapa butiran. 979 00:45:25,310 --> 00:45:28,240 Tetapi sebab yang jalan yang bermula sedikit berbeza setiap kali 980 00:45:28,240 --> 00:45:29,700 adalah bahawa saya melakukan sedikit rawak. 981 00:45:29,700 --> 00:45:33,700 Saya sebenarnya menunjuk kucing dalam arah yang berbeza berdasarkan di mana saya 982 00:45:33,700 --> 00:45:38,710 mahu dia mula supaya setiap kali permainan, atau animasi, adalah 983 00:45:38,710 --> 00:45:39,760 sedikit berbeza. 984 00:45:39,760 --> 00:45:41,950 >> Kini, izinkan saya memperkenalkan satu lain membina di sini. 985 00:45:41,950 --> 00:45:43,860 Jadi dalam kes ini, kami mempunyai fungsi. 986 00:45:43,860 --> 00:45:46,950 Ada juga akan menjadi sekeping teka-teki dikenali sebagai pelbagai, atau senarai, 987 00:45:46,950 --> 00:45:50,980 yang membolehkan anda untuk menyimpan pelbagai nilai dalam pembolehubah. 988 00:45:50,980 --> 00:45:53,410 Kami melihat benang, dan kini ada Peristiwa. 989 00:45:53,410 --> 00:45:56,330 >> Jadi di sini adalah satu peristiwa menggunakan kedua-dua lelaki di sini. 990 00:45:56,330 --> 00:46:02,490 Dan jika saya membuka fail yang dipanggil Events contoh dari hari ini, kita akan 991 00:46:02,490 --> 00:46:06,940 melihat program yang kelihatan sedikit seperti ini. 992 00:46:06,940 --> 00:46:09,630 Dan kini melihat lelaki ini - 993 00:46:09,630 --> 00:46:11,620 supaya sedar saya mempunyai biru Muppet klik - 994 00:46:11,620 --> 00:46:12,990 dia hanya melakukan yang berikut. 995 00:46:12,990 --> 00:46:15,540 Beliau tidak mempunyai salah seorang daripada mereka hijau kepingan teka-teki bendera. 996 00:46:15,540 --> 00:46:18,620 Beliau mempunyai apabila saya menerima peristiwa - 997 00:46:18,620 --> 00:46:19,970 sehingga beberapa perkataan sewenang-wenangnya. 998 00:46:19,970 --> 00:46:21,590 Saya hanya ditaip sekiranya ada - 999 00:46:21,590 --> 00:46:23,740 dia akan berkata, Polo, selama dua saat. 1000 00:46:23,740 --> 00:46:25,800 >> Jadi orang-orang di antara kamu yang biasa dengan permainan ini mungkin tahu 1001 00:46:25,800 --> 00:46:26,460 di mana ini akan. 1002 00:46:26,460 --> 00:46:29,800 Jika sekarang saya klik pada Muppet oren, program tidak ini. 1003 00:46:29,800 --> 00:46:35,020 Selama-lamanya, jika bar ruang keyboard ditindas, dia akan berkata, Marco, 1004 00:46:35,020 --> 00:46:36,580 selama dua saat pada skrin. 1005 00:46:36,580 --> 00:46:39,590 Tetapi dia juga akan menggunakan ini penjaga menghalang dikenali sebagai siaran. 1006 00:46:39,590 --> 00:46:42,270 Dia akan disiarkan quote unquote, "peristiwa." 1007 00:46:42,270 --> 00:46:47,540 >> Sementara itu, lelaki itu biru, ingat, adalah mendengar untuk unquote quote, "peristiwa." 1008 00:46:47,540 --> 00:46:50,760 Jadi entah bagaimana, sekarang, kita boleh mempunyai dua sprites berinteraksi. 1009 00:46:50,760 --> 00:46:53,790 Dan apabila kita dapat pengaturcaraan web, kemudian dalam jangka masa, begitu juga akan ini 1010 00:46:53,790 --> 00:46:58,320 berfaedah untuk mempunyai laman web anda melakukan sesuatu sebagai tindak balas kepada, 1011 00:46:58,320 --> 00:47:00,130 Contohnya, satu klik keyboard. 1012 00:47:00,130 --> 00:47:02,120 >> Jadi biarlah saya pergi ke hadapan dan memukul bar ruang. 1013 00:47:02,120 --> 00:47:04,020 Orange lelaki kata Marco. 1014 00:47:04,020 --> 00:47:05,840 Blue lelaki berkata Polo. 1015 00:47:05,840 --> 00:47:10,780 Jika saya melakukannya lelaki lagi oren kata Marco, biru lelaki berkata polo. 1016 00:47:10,780 --> 00:47:14,130 Jadi mari kita mengambil langkah satu lagi. 1017 00:47:14,130 --> 00:47:18,790 Kali ini, kami akan pergi, mungkin, hanya beberapa minit di sini. 1018 00:47:18,790 --> 00:47:19,904 Adakah kita mempunyai - 1019 00:47:19,904 --> 00:47:22,380 lampu meja, datang ke atas ke bawah. 1020 00:47:22,380 --> 00:47:24,500 Anda betul-betul di akhir. 1021 00:47:24,500 --> 00:47:25,740 OK, anda berdua boleh datang. 1022 00:47:25,740 --> 00:47:26,990 Kami mempunyai lampu meja untuk semua orang. 1023 00:47:26,990 --> 00:47:28,360 Datang. 1024 00:47:28,360 --> 00:47:30,090 Saya tidak tahu jika kita boleh menyimpan lelucon ini tidak masuk akal sehingga 1025 00:47:30,090 --> 00:47:32,035 semua semester, walaupun. 1026 00:47:32,035 --> 00:47:33,530 Baiklah, datang ke bawah. 1027 00:47:33,530 --> 00:47:40,260 >> Dan dalam masa yang sama, kita mempunyai berikutan contoh untuk tarik sehingga, hanya untuk 1028 00:47:40,260 --> 00:47:45,370 mempercepatkan perkara ini, seperti yang kita mempunyai manifestasi daripada yang lain 1029 00:47:45,370 --> 00:47:48,360 pendahulu anda menggunakan blok bangunan asas yang sama. 1030 00:47:48,360 --> 00:47:48,975 Apa nama anda? 1031 00:47:48,975 --> 00:47:49,240 >> JOHN: John. 1032 00:47:49,240 --> 00:47:49,770 >> DAVID MALAN: John. 1033 00:47:49,770 --> 00:47:50,400 Nice untuk saya anda. 1034 00:47:50,400 --> 00:47:50,650 Dan? 1035 00:47:50,650 --> 00:47:51,250 >> SETZ: Setz. 1036 00:47:51,250 --> 00:47:53,130 >> DAVID MALAN: Setz, baik kepada saya anda. 1037 00:47:53,130 --> 00:47:54,820 John, jika anda ingin datang up pertama, ini adalah tua 1038 00:47:54,820 --> 00:47:55,910 permainan sekolah dinamakan Frogger. 1039 00:47:55,910 --> 00:47:57,530 Anda menggunakan keyboard untuk ini juga. 1040 00:47:57,530 --> 00:48:02,425 Dan matlamatnya adalah untuk mendapatkan di seluruh jalan dan air. 1041 00:48:02,425 --> 00:48:12,700 >> [Frogger MUSIC dan memainkan BUNYI] 1042 00:48:12,700 --> 00:48:14,970 >> DAVID MALAN: Saya minta maaf, tiada lampu meja untuk anda hari ini. 1043 00:48:14,970 --> 00:48:19,110 Baiklah, Setz, akan anda suka untuk datang ke atas? 1044 00:48:19,110 --> 00:48:20,890 Baiklah, mari kita buat sekali lagi. 1045 00:48:20,890 --> 00:48:21,430 >> SETZ: Adakah saya gunakan anak panah? 1046 00:48:21,430 --> 00:48:22,360 >> DAVID MALAN: Hanya kekunci anak panah. 1047 00:48:22,360 --> 00:48:23,624 Atas, bawah, kiri, kanan. 1048 00:48:23,624 --> 00:48:35,700 >> [Frogger MUSIC dan memainkan BUNYI] 1049 00:48:35,700 --> 00:48:37,880 >> DAVID MALAN: Kami akan memanggil mereka hadiah saguhati hari ini, 1050 00:48:37,880 --> 00:48:38,950 kemudian, sangat baik dilakukan. 1051 00:48:38,950 --> 00:48:40,690 Di sini, untuk anda berdua, John dan Setz. 1052 00:48:40,690 --> 00:48:41,940 Tahniah, hak semua. 1053 00:48:41,940 --> 00:48:46,720 1054 00:48:46,720 --> 00:48:50,620 Jadi sekali lagi, kerana permainan ini bermain, berfikir tentang apa yang sedang berlaku? 1055 00:48:50,620 --> 00:48:52,060 >> Satu, ada jelas banyak gerakan. 1056 00:48:52,060 --> 00:48:55,220 Tetapi kita telah melihat bagaimana dengan kucing dan contoh burung, bagaimana anda boleh membuat 1057 00:48:55,220 --> 00:48:58,350 ilusi gerak dengan hanya bergerak beberapa Bilangan piksel lagi dan lagi. 1058 00:48:58,350 --> 00:49:00,280 Dan jika anda mempunyai satu blok selama-lamanya, anda boleh mempunyai ini 1059 00:49:00,280 --> 00:49:02,120 kereta melakukan ini selama-lamanya. 1060 00:49:02,120 --> 00:49:03,720 Kami mempunyai keupayaan untuk mempunyai beberapa rawak. 1061 00:49:03,720 --> 00:49:06,310 Jadi permainan ini tidak perlu sama setiap kali. 1062 00:49:06,310 --> 00:49:09,940 Mereka balak, orang-orang kereta, boleh bermula pada masa sedikit berbeza supaya 1063 00:49:09,940 --> 00:49:12,690 Permainan itu sendiri adalah lebih menarik dengan setiap permainan. 1064 00:49:12,690 --> 00:49:15,320 >> Dan Sementara itu, kita telah melihat keupayaan untuk mendengar bar ruang. 1065 00:49:15,320 --> 00:49:18,830 Tetapi jelas, di Awal, anda juga boleh mendengar atas, bawah, kiri, kanan, dan 1066 00:49:18,830 --> 00:49:20,760 benar-benar mana-mana kekunci pada papan kekunci. 1067 00:49:20,760 --> 00:49:22,200 Dan anda juga boleh melakukan beberapa perkara lain. 1068 00:49:22,200 --> 00:49:24,660 Biar saya pergi ke hadapan dan kembali kepada versi web. 1069 00:49:24,660 --> 00:49:30,280 >> Biar saya pergi ke dalam koleksi kami contoh di sini. 1070 00:49:30,280 --> 00:49:36,120 Dan di bawah Studio saya, video yang adalah, pada asasnya, folder pada 1071 00:49:36,120 --> 00:49:37,780 scratch.mit.edu. 1072 00:49:37,780 --> 00:49:39,710 Kami mempunyai versi web semua projek-projek ini. 1073 00:49:39,710 --> 00:49:42,530 Dan mari kita lihat jika saya boleh mendapatkan saya komputer untuk bekerja di sini. 1074 00:49:42,530 --> 00:49:47,180 Ini ditulis oleh salah seorang daripada rakan-rakan kami di MIT, yang dipanggil Pindah Butterfly. 1075 00:49:47,180 --> 00:49:50,250 >> Dan apabila ini membuka, ini adalah akan sebenarnya menggunakan lebih 1076 00:49:50,250 --> 00:49:51,430 perkakasan komputer saya. 1077 00:49:51,430 --> 00:49:53,325 Awal yang berlaku yang akan dilaksanakan dengan Flash. 1078 00:49:53,325 --> 00:49:56,250 Flash boleh bercakap dengan webcam anda, jika anda mempunyai satu. 1079 00:49:56,250 --> 00:50:00,210 Jadi jika saya pergi ke hadapan dan skrin penuh ini di sini, klik bendera hijau, notis 1080 00:50:00,210 --> 00:50:02,530 bahawa mesej keselamatan Flash ini mengatakan, adakah anda mahu 1081 00:50:02,530 --> 00:50:04,210 membenarkan untuk menggunakan webcam? 1082 00:50:04,210 --> 00:50:05,510 >> Biasanya, anda perlu mungkin mengatakan Halang. 1083 00:50:05,510 --> 00:50:07,180 Tetapi dalam kes ini, kita akan mengatakan membenarkan. 1084 00:50:07,180 --> 00:50:10,430 Kemudian saya akan memberitahu Chrome untuk membolehkan ini juga. 1085 00:50:10,430 --> 00:50:15,010 Dan kini, dalam hanya seketika, anda lihat saya, Ya, saya. 1086 00:50:15,010 --> 00:50:18,154 Dan jika tangan saya naik - 1087 00:50:18,154 --> 00:50:20,390 Saya telah mendapat untuk tidak bergerak saya kepala pada masa yang sama. 1088 00:50:20,390 --> 00:50:21,740 Terdapat juga satu gambaran yang pada skrin. 1089 00:50:21,740 --> 00:50:23,480 Ayuh, di sana kami pergi - 1090 00:50:23,480 --> 00:50:27,616 anda boleh bergerak pada skrin kerana ada juga kepingan teka-teki - oh, anda 1091 00:50:27,616 --> 00:50:31,640 tahu apa itu, ia adalah kerana anda juga melihat skrin projektor di belakang saya. 1092 00:50:31,640 --> 00:50:33,870 Jadi kita mempunyai sedikit terbatas perkara yang berlaku di sana. 1093 00:50:33,870 --> 00:50:36,470 >> Baiklah, jadi saya akan bermain di sini. 1094 00:50:36,470 --> 00:50:37,220 Ada kita pergi. 1095 00:50:37,220 --> 00:50:41,310 Jadi ada juga sekeping teka-teki yang berkata, apabila anda melihat pergerakan di bawah 1096 00:50:41,310 --> 00:50:45,470 salah satu sprites, anda boleh mempunyai ia pergi atas, bawah, kiri, kanan atau sebagainya. 1097 00:50:45,470 --> 00:50:48,950 Oleh itu, kita mempunyai sedikit realiti maya berlaku di sini juga, semua dalam 1098 00:50:48,950 --> 00:50:52,570 batasan pelayar saya, hanya di sini menggunakan webcam saya. 1099 00:50:52,570 --> 00:50:53,980 Jadi apa yang kemudian di kaki langit. 1100 00:50:53,980 --> 00:50:58,350 Set Masalah pertama, kerana anda akan melihat, atau laman web akan pergi ke dalam talian kemudian 1101 00:50:58,350 --> 00:51:01,100 malam ini pada cs50.net, agak banyak akan menjadi terbuka berakhir. 1102 00:51:01,100 --> 00:51:04,410 Dan melaksanakan projek Scratch menarik minat anda, permainan, sebuah 1103 00:51:04,410 --> 00:51:08,350 interaksi, sesuatu seni, dan mencabar diri anda untuk menggunakan mana-mana nombor 1104 00:51:08,350 --> 00:51:09,660 ini keping teka-teki. 1105 00:51:09,660 --> 00:51:11,580 Dan ia boleh menjadi interaktif dengan cara ini. 1106 00:51:11,580 --> 00:51:15,470 Atau ia boleh menjadi sesuatu yang lebih sengaja dibuat untuk memberitahu cerita. 1107 00:51:15,470 --> 00:51:19,200 >> Dan sesungguhnya, yang di mana kita akan berakhir di luar hari ini, dengan contoh terakhir. 1108 00:51:19,200 --> 00:51:21,290 Biar saya pergi ke Scratch tempatan. 1109 00:51:21,290 --> 00:51:25,300 Biar saya pergi ke hadapan dan terbuka ini, dan bermain lepas satu program yang ditulis oleh seorang 1110 00:51:25,300 --> 00:51:29,795 orang terdahulu kamu, iaitu bahawa salah satu di sini. 1111 00:51:29,795 --> 00:51:32,960 1112 00:51:32,960 --> 00:51:35,938 Baik, meningkatkan kelantangan untuk yang satu ini. 1113 00:51:35,938 --> 00:52:53,770 >> [Bermain muzik] 1114 00:52:53,770 --> 00:52:57,255 >> Pencerita: Pada CS50 seterusnya, David menjemput sukarelawan di atas pentas. 1115 00:52:57,255 --> 00:52:58,636 >> DAVID MALAN: Untuk demonstrasi ini, kita akan memerlukan satu sukarela. 1116 00:52:58,636 --> 00:53:01,050 Adakah anda ingin datang ke? 1117 00:53:01,050 --> 00:53:02,300 Apa nama anda? 1118 00:53:02,300 --> 00:53:05,320 1119 00:53:05,320 --> 00:53:06,570 Beralih. 1120 00:53:06,570 --> 00:53:08,394