1 00:00:14,320 --> 00:00:17,970 Jadi itu adalah kenikmatan terbesar saya untuk menyambut Anda semua di sini hari ini 2 00:00:17,970 --> 00:00:20,600 untuk kuliah pertama dari, baik, Pendahuluan 3 00:00:20,600 --> 00:00:22,510 Komputasi dan Pemrograman. 4 00:00:22,510 --> 00:00:29,110 Juga dikenal sebagai CS50 atau baik, CPSC 100, secara resmi di sini di Yale. 5 00:00:29,110 --> 00:00:34,820 >> Jadi kita tidak bisa lebih bersemangat untuk menyambut Anda semua di sini. 6 00:00:34,820 --> 00:00:36,620 Nama saya Patrick Rebeschini. 7 00:00:36,620 --> 00:00:39,180 Aku instruktur kepala untuk kelas. 8 00:00:39,180 --> 00:00:43,600 Saya di sini mewakili kelompok dari sekitar 60 anggota staf 9 00:00:43,600 --> 00:00:46,380 yang akan bekerja dengan Anda sepanjang semester. 10 00:00:46,380 --> 00:00:49,040 Jumlah ini hampir 60 dari kita. 11 00:00:49,040 --> 00:00:52,440 Namun sepanjang yang luar biasa tingkat komitmen 12 00:00:52,440 --> 00:00:56,555 yang kita masukkan ke dalam ini kelas, membuat CS50 kelas 13 00:00:56,555 --> 00:01:00,690 di Yale University yang menawarkan tingkat terbesar dukungan 14 00:01:00,690 --> 00:01:01,960 untuk Anda semua. 15 00:01:01,960 --> 00:01:05,940 Dan kita tidak bisa lebih bangga menawarkan kelas ini di sini lagi. 16 00:01:05,940 --> 00:01:11,380 >> Bahkan, karena Anda akan segera mengalami, CS50 jauh lebih dari sebuah kelas. 17 00:01:11,380 --> 00:01:13,120 Ini adalah komunitas. 18 00:01:13,120 --> 00:01:15,250 Dan Anda akan menjadi bagian Segera komunitas ini. 19 00:01:15,250 --> 00:01:18,730 Ini adalah tahun kedua yang Yale menawarkan kelas ini. 20 00:01:18,730 --> 00:01:21,640 Kami sedang membangun pada ekstrim keberhasilan tahun lalu, di mana 21 00:01:21,640 --> 00:01:24,340 untuk pertama kalinya, di sini di universitas ini, 22 00:01:24,340 --> 00:01:28,930 asisten pembelajaran sarjana diadopsi di dalam kelas. 23 00:01:28,930 --> 00:01:32,650 Semuanya dimulai dengan kelas ini tahun lalu. 24 00:01:32,650 --> 00:01:37,050 >> Jadi seperti yang Anda tahu, kelas diajarkan bersama-sama dengan Harvard University. 25 00:01:37,050 --> 00:01:39,920 Mengajar kursus ini kita relying-- kita bisa 26 00:01:39,920 --> 00:01:44,850 mengandalkan keahlian besar David Malan dan tim Harvard. 27 00:01:44,850 --> 00:01:48,930 Jadi David telah mengajar CS50 untuk baik, 10 tahun sekarang. 28 00:01:48,930 --> 00:01:51,160 Dan setiap tahun ia telah mendorong batas 29 00:01:51,160 --> 00:01:54,210 dan meningkatkan pengalaman kelas. 30 00:01:54,210 --> 00:01:58,940 Sekali lagi, kita tidak bisa lebih senang melanjutkan kerjasama ini dengan mereka. 31 00:01:58,940 --> 00:02:01,840 >> Bahkan, salah satu sebagian menarik, 32 00:02:01,840 --> 00:02:06,560 Saya akan mengatakan menjalankan kelas ini sekarang, baik di Harvard dan di sini di Yale, 33 00:02:06,560 --> 00:02:09,420 adalah benar-benar luar biasa fertilisasi silang 34 00:02:09,420 --> 00:02:13,770 ide, yang bertujuan untuk meningkatkan pengalaman untuk Anda semua belajar. 35 00:02:13,770 --> 00:02:18,130 Sehingga hasil dari luas ini kolaborasi antara dua 36 00:02:18,130 --> 00:02:23,070 universitas, CS50 bangga mengumumkan versi baru tahun ini 37 00:02:23,070 --> 00:02:24,770 dengan perubahan nyata. 38 00:02:24,770 --> 00:02:27,580 David semua akan memberitahu kita tentang mereka sekarang. 39 00:02:27,580 --> 00:02:31,450 Jadi please-- makhluk ini kata, silakan bergabung dengan saya 40 00:02:31,450 --> 00:02:34,220 dan selamat datang untuk memberikan tepuk tangan meriah 41 00:02:34,220 --> 00:02:37,290 untuk menyambut David dan Tim Harvard di sini di Yale. 42 00:02:37,290 --> 00:02:40,032 >> [TEPUK TANGAN] 43 00:02:40,032 --> 00:02:41,882 44 00:02:41,882 --> 00:02:43,247 >> DAVID Malan: Terima kasih. 45 00:02:43,247 --> 00:02:43,746 Terima kasih. 46 00:02:43,746 --> 00:02:46,550 47 00:02:46,550 --> 00:02:51,400 Ini adalah CS50, Harvard University dan pengenalan Yale University 48 00:02:51,400 --> 00:02:53,960 dengan intelektual perusahaan ilmu komputer 49 00:02:53,960 --> 00:02:55,490 dan seni pemrograman. 50 00:02:55,490 --> 00:02:59,640 Dan apa itu artinya bahwa kursus ini akhirnya, adalah tentang pemecahan masalah. 51 00:02:59,640 --> 00:03:01,849 Memang banyak dari Anda mungkin telah keluar dari sekolah tinggi 52 00:03:01,849 --> 00:03:04,931 atau telah menghabiskan beberapa tahun terakhir tanya apa beberapa teman 53 00:03:04,931 --> 00:03:06,380 lakukan tahun lalu atau di kelas-kelas lain. 54 00:03:06,380 --> 00:03:08,449 Namun, kenyataannya adalah, tidak peduli apa yang kita 55 00:03:08,449 --> 00:03:11,740 lakukan pada akhir hari di kelas ini, itu akan menjadi sekitar pemecahan masalah. 56 00:03:11,740 --> 00:03:14,320 >> Dan dengan demikian, mungkin mengambil beberapa kepastian sebenarnya 57 00:03:14,320 --> 00:03:16,770 bahwa 73% dari siswa yang mengambil kelas ini, baik di sini 58 00:03:16,770 --> 00:03:20,235 di Yale serta di Harvard, tidak pernah mengambil kelas CS sebelumnya. 59 00:03:20,235 --> 00:03:22,610 Jadi jika Anda duduk di sini di penonton hari ini bertanya-tanya 60 00:03:22,610 --> 00:03:24,520 mengapa Anda duduk di sini penonton hari ini, 61 00:03:24,520 --> 00:03:26,300 atau mungkin Anda hanya diikuti bersama dengan beberapa teman, 62 00:03:26,300 --> 00:03:28,299 atau mungkin Anda sudah menjadi sedikit penasaran seperti apa 63 00:03:28,299 --> 00:03:30,194 ilmu komputer dan pemrograman, menyadari 64 00:03:30,194 --> 00:03:32,860 bahwa sebagian besar teman sekelas Anda untuk kiri dan ke kanan Anda 65 00:03:32,860 --> 00:03:35,840 sangat banyak yang demografis yang sama. 66 00:03:35,840 --> 00:03:38,120 >> Dan memang, jika kita melihat statistik tahun lalu 67 00:03:38,120 --> 00:03:42,760 dalam tubuh mahasiswa CS50, baik di sini dan di Harvard, 58% dari siswa 68 00:03:42,760 --> 00:03:44,630 menggambarkan diri mereka sebagai kurang nyaman. 69 00:03:44,630 --> 00:03:46,090 9% lebih nyaman. 70 00:03:46,090 --> 00:03:47,699 Dan kemudian 33% adalah suatu tempat di antara. 71 00:03:47,699 --> 00:03:50,240 Dan tidak ada definisi formal apa artinya ember ini. 72 00:03:50,240 --> 00:03:52,335 Anda semacam tahu kau kurang nyaman jika Anda. 73 00:03:52,335 --> 00:03:54,840 Anda merasa sedikit tidak nyaman dengan mungkin berada di kelas. 74 00:03:54,840 --> 00:03:57,840 Anda tidak cukup yakin apakah komputer kelas sains akhirnya untuk Anda, 75 00:03:57,840 --> 00:04:00,009 dan menyadari bahwa Anda di perusahaan yang sangat baik. 76 00:04:00,009 --> 00:04:01,800 Dan memang grading, dan penilaian, 77 00:04:01,800 --> 00:04:04,466 dan umpan balik, dan semua itu struktur dukungan di kelas 78 00:04:04,466 --> 00:04:06,550 akhirnya sangat individual. 79 00:04:06,550 --> 00:04:09,187 Lebih daripada kebanyakan kelas lainnya dengan desain. 80 00:04:09,187 --> 00:04:11,520 Dan memang, yang akhirnya hal di kelas ini tidak 81 00:04:11,520 --> 00:04:14,180 begitu banyak di mana Anda berakhir up relatif terhadap orang lain, 82 00:04:14,180 --> 00:04:18,070 tetapi di mana Anda, dalam seminggu 11 atau terakhir, dan relatif terhadap diri Anda di minggu 83 00:04:18,070 --> 00:04:20,372 0 sini pertama kami. 84 00:04:20,372 --> 00:04:21,330 Jadi apa artinya? 85 00:04:21,330 --> 00:04:24,750 Nah, ini berarti mereka 73% dari mahasiswa tahun terakhir yang tidak pernah mengambil 86 00:04:24,750 --> 00:04:26,917 kelas CS sebelumnya, dengan mulai dari semester mereka 87 00:04:26,917 --> 00:04:29,500 yang berkecimpung dalam bahasa disebut Scratch, yang kita sendiri 88 00:04:29,500 --> 00:04:30,340 akan melihat di sini hari ini. 89 00:04:30,340 --> 00:04:32,190 Dan pada akhir semester yang telah mereka pergi 90 00:04:32,190 --> 00:04:34,700 melalui seluruh daftar ini tantangan. 91 00:04:34,700 --> 00:04:36,399 Dimulai dengan bahasa disebut c. 92 00:04:36,399 --> 00:04:38,190 Menerapkan, apa pada pandangan pertama, akan 93 00:04:38,190 --> 00:04:41,010 menjadi sedikit tantangan bagi beberapa, tapi cukup memuaskan setelah Anda 94 00:04:41,010 --> 00:04:44,510 mendapatkan Super Mario memantul atas dan ke bawah piramida 95 00:04:44,510 --> 00:04:47,005 diimplementasikan, meskipun, hanya dengan sesuatu yang disebut ASCII art. 96 00:04:47,005 --> 00:04:49,380 Menerapkan year-- lalu apa siswa tahun lalu maka 97 00:04:49,380 --> 00:04:53,270 tidak setelah yang menerapkan mereka sendiri cipher Caesar dan cipher vigenere. 98 00:04:53,270 --> 00:04:55,180 Jadi algoritma enkripsi dengan yang Anda bisa 99 00:04:55,180 --> 00:04:58,920 Informasi berebut dan kemudian menguraikan Informasi untuk mengirim pesan rahasia. 100 00:04:58,920 --> 00:05:00,010 Permainan 15. 101 00:05:00,010 --> 00:05:02,260 Jika Anda ingat dari masa kanak-kanak atau mendukung partai, 102 00:05:02,260 --> 00:05:05,000 bahwa permainan plastik kecil di mana Anda bergerak angka atas, bawah, kiri dan kanan 103 00:05:05,000 --> 00:05:07,500 mencoba untuk mendapatkan mereka dalam rangka, benar-benar menerapkan permainan yang 104 00:05:07,500 --> 00:05:09,640 dan memecahkan logika diperlukan di sana. 105 00:05:09,640 --> 00:05:11,640 Dan kemudian kita mencoba-coba forensik tahun lalu. 106 00:05:11,640 --> 00:05:13,810 >> Jadi pada pertengahan semester, siswa yang tidak pernah 107 00:05:13,810 --> 00:05:16,130 digunakan keyboard mereka untuk tujuan ini sebelumnya, 108 00:05:16,130 --> 00:05:19,030 yang menulis perangkat lunak untuk memulihkan, sehingga untuk berbicara, 109 00:05:19,030 --> 00:05:21,420 JPEG atau foto bahwa kita telah sengaja 110 00:05:21,420 --> 00:05:24,430 dihapus dari digital kartu memori dari kamera. 111 00:05:24,430 --> 00:05:28,130 Memulihkan pesan rahasia dari dalam gambar bitmap, 112 00:05:28,130 --> 00:05:30,030 dan jenis seperti lainnya grafis juga. 113 00:05:30,030 --> 00:05:32,770 >> Kami kemudian beralih ke memberikan seluruh kelas kamus. 114 00:05:32,770 --> 00:05:36,330 Hanya file teks yang sangat besar dengan 150.000 kata-kata bahasa Inggris. 115 00:05:36,330 --> 00:05:39,080 Dan semua orang ditantang entah bagaimana membaca, sehingga untuk berbicara, 116 00:05:39,080 --> 00:05:40,780 kata-kata ke dalam memori. 117 00:05:40,780 --> 00:05:42,060 Ke dalam memori komputer. 118 00:05:42,060 --> 00:05:44,310 Dan kemudian menjawab pertanyaan formulir, apakah ini sebuah kata? 119 00:05:44,310 --> 00:05:44,934 Apakah ini sebuah kata? 120 00:05:44,934 --> 00:05:45,580 Apakah ini sebuah kata? 121 00:05:45,580 --> 00:05:47,880 Benar-benar hanya menerapkan pemeriksa ejaan. 122 00:05:47,880 --> 00:05:50,320 Dan kemudian menantang setiap lainnya dengan board-- besar 123 00:05:50,320 --> 00:05:53,040 papan pemimpin untuk melihat siapa yang bisa menggunakan paling sedikit memori, 124 00:05:53,040 --> 00:05:56,470 dalam jumlah sedikit waktu untuk sebenarnya spell check dokumen besar. 125 00:05:56,470 --> 00:05:59,760 >> Kami beralih dari kemudian ke mengimplementasikan web server yang sendiri. 126 00:05:59,760 --> 00:06:04,070 Jadi tidak membuat halaman web dalam bahasa seperti HTML dan CSS, jika Anda terbiasa. 127 00:06:04,070 --> 00:06:06,360 Tapi benar-benar menerapkan server yang 128 00:06:06,360 --> 00:06:09,260 mendengarkan di internet untuk permintaan dari browser 129 00:06:09,260 --> 00:06:11,022 dan kemudian menanggapi permintaan tersebut. 130 00:06:11,022 --> 00:06:13,230 Kemudian menerapkan kita sendiri e-trade seperti website, di mana 131 00:06:13,230 --> 00:06:15,490 siswa bisa membeli dan menjual saham. 132 00:06:15,490 --> 00:06:18,590 Menggambar di hampir real time harga saham dari Yahoo Finance. 133 00:06:18,590 --> 00:06:21,200 Dan memungkinkan siswa untuk melihat bagaimana portofolio mereka berkembang. 134 00:06:21,200 --> 00:06:23,570 Dan akhirnya mash up dari Google News dan Google 135 00:06:23,570 --> 00:06:26,540 Peta dimana siswa dengan istilah dengan istilah akhir 136 00:06:26,540 --> 00:06:30,110 memiliki kemampuan untuk klik, dan bulat, dan pencarian pada peta Google. 137 00:06:30,110 --> 00:06:32,060 Dan kemudian melihat semua artikel berita yang 138 00:06:32,060 --> 00:06:33,940 proksimal ke daerah-daerah tertentu. 139 00:06:33,940 --> 00:06:36,180 Jadi benar-benar pergi dari nol sampai 60. 140 00:06:36,180 --> 00:06:39,420 >> Dan sepanjang jalan memiliki apa yang kita miliki tahun lalu disebut, penambahan hacker. 141 00:06:39,420 --> 00:06:41,211 Itu meningkatkan bar lanjut bagi anda 142 00:06:41,211 --> 00:06:44,390 yang mungkin sangat baik memiliki baik jumlah pengalaman berada di bahwa 9% 143 00:06:44,390 --> 00:06:45,349 lebih nyaman. 144 00:06:45,349 --> 00:06:47,140 Jadi menyadari bahwa ada langit-langit yang sangat tinggi 145 00:06:47,140 --> 00:06:49,200 bahkan dalam mereka tantangan bagi siswa 146 00:06:49,200 --> 00:06:50,660 datang dari latar belakang yang berbeda. 147 00:06:50,660 --> 00:06:52,618 Karena pada akhir hari, kami akhirnya 148 00:06:52,618 --> 00:06:54,910 difokuskan cukup sederhana ini. 149 00:06:54,910 --> 00:06:57,010 >> Tapi apa ini Maksudku, pemecahan masalah? 150 00:06:57,010 --> 00:06:59,100 Jadi mari kita mengusulkan bahwa kami menyaring seperti ini. 151 00:06:59,100 --> 00:07:01,550 Jadi pemecahan masalah adalah benar-benar hanya jenis ini gambar. 152 00:07:01,550 --> 00:07:04,675 Jadi Anda punya masukan untuk beberapa masalah, sesuatu yang Anda benar-benar ingin memecahkan. 153 00:07:04,675 --> 00:07:07,020 Tujuannya adalah untuk mendapatkan output, solusi untuk masalah tersebut. 154 00:07:07,020 --> 00:07:09,950 Dan kemudian di tengah adalah apa yang akan kita sebut kotak hitam. 155 00:07:09,950 --> 00:07:13,970 Anda tidak perlu tahu atau bahkan peduli apa yang di dalam kotak hitam. 156 00:07:13,970 --> 00:07:16,670 Semua yang Anda tahu adalah bahwa ketika Anda makan masukan ke dalamnya, 157 00:07:16,670 --> 00:07:19,890 mudah-mudahan Anda mendapatkan output atau solusi dari itu. 158 00:07:19,890 --> 00:07:22,380 Dan sementara hari ini kita akan melihat baik di input dan output, 159 00:07:22,380 --> 00:07:24,838 kami akan jangka panjang, dan selama Tentu saja dari seluruh semester, 160 00:07:24,838 --> 00:07:26,880 fokus pada apa yang ada di dalam kotak itu. 161 00:07:26,880 --> 00:07:30,040 >> Dan di dalamnya akan berbohong sesuatu yang disebut algoritma. 162 00:07:30,040 --> 00:07:33,300 Petunjuk langkah demi langkah untuk benar-benar memecahkan beberapa masalah. 163 00:07:33,300 --> 00:07:35,090 Tapi apa contoh beberapa masukan? 164 00:07:35,090 --> 00:07:37,840 Jadi mungkin hal yang sederhana di mulai dari setiap tahun sekolah, seseorang 165 00:07:37,840 --> 00:07:39,090 mungkin ingin mengambil hadir. 166 00:07:39,090 --> 00:07:42,030 Jadi kita bisa melakukan satu, dua, tiga, empat, lima, enam, 167 00:07:42,030 --> 00:07:44,010 dan bagaimana saya akan terus melacak informasi tersebut. 168 00:07:44,010 --> 00:07:46,051 Aku mungkin hanya pergi satu, dua, tiga, empat, lima, enam. 169 00:07:46,051 --> 00:07:47,720 Dan hanya menggunakan semacam satu digit. 170 00:07:47,720 --> 00:07:51,210 >> Atau aku benar-benar bisa merekam ini istilah sedikit lebih lama. 171 00:07:51,210 --> 00:07:53,340 Dan bagaimana saya mewakili semua manusia di ruangan ini? 172 00:07:53,340 --> 00:07:54,900 Yah, aku mungkin melakukan sesuatu seperti, OK. 173 00:07:54,900 --> 00:07:56,070 Aku melihat satu orang. 174 00:07:56,070 --> 00:07:56,600 Baiklah. 175 00:07:56,600 --> 00:08:01,180 Saya melihat orang lain, orang ketiga, dan sebagainya. 176 00:08:01,180 --> 00:08:04,070 Tapi tidak ada yang penting orang-orang seperti ini. 177 00:08:04,070 --> 00:08:06,952 Jadi secara harfiah, kebanyakan dari kita jika kita bahkan akan menggambar apa-apa, 178 00:08:06,952 --> 00:08:08,910 mungkin akan pergi satu dua tiga empat, 179 00:08:08,910 --> 00:08:14,240 mungkin mendapatkan sedikit mewah, lima, enam, tujuh, delapan, sembilan, sepuluh dan sebagainya. 180 00:08:14,240 --> 00:08:16,960 >> Dan itu benar-benar sistem yang disebut unary. 181 00:08:16,960 --> 00:08:20,549 Uno, seperti uno menyiratkan satu, di mana Anda hanya memiliki satu huruf dari alfabet. 182 00:08:20,549 --> 00:08:21,840 Anda baru saja tanda pagar ini. 183 00:08:21,840 --> 00:08:24,570 Dan saya, untuk efisiensi, hanya menggambar tanda hash ini, akhirnya 184 00:08:24,570 --> 00:08:25,500 garis lurus. 185 00:08:25,500 --> 00:08:27,666 Tapi aku bisa menarik mereka sebagai tokoh tongkat kecil. 186 00:08:27,666 --> 00:08:29,550 Dimana untuk mewakili satu orang, satu input, 187 00:08:29,550 --> 00:08:32,210 Saya hanya menggambar tongkat Angka atau tanda pagar. 188 00:08:32,210 --> 00:08:33,910 Tapi ini tidak semua yang ekspresif. 189 00:08:33,910 --> 00:08:38,020 >> Jika semua yang saya miliki adalah hash ini tanda, biarkan angka tongkat saja, 190 00:08:38,020 --> 00:08:41,410 bagaimana mungkin saya mewakili sesuatu seperti jumlah 15? 191 00:08:41,410 --> 00:08:43,050 Atau 15 orang di dalam ruangan? 192 00:08:43,050 --> 00:08:48,740 Aku mungkin harus melakukan sesuatu seperti 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 193 00:08:48,740 --> 00:08:51,270 14, 15. 194 00:08:51,270 --> 00:08:52,830 Hanya saja tidak skala yang sangat baik. 195 00:08:52,830 --> 00:08:55,730 Sebagai masukan dapatkan besar, kami membutuhkan sistem yang lebih baik dari ini. 196 00:08:55,730 --> 00:08:57,910 >> Dan ternyata bahwa Sistem yang menggunakan komputer 197 00:08:57,910 --> 00:09:00,510 tidak semua yang berbeda dari apa yang Anda dan saya tahu. 198 00:09:00,510 --> 00:09:03,301 Bahkan, kebanyakan orang di ruangan ini, bahkan jika Anda termasuk orang yang kurang 199 00:09:03,301 --> 00:09:06,300 nyaman, tidak perlu tahu bagaimana Mac atau PC benar-benar bekerja, 200 00:09:06,300 --> 00:09:09,810 Anda mungkin pernah mendengar setidaknya, bahwa di bawah tenda adalah 0 dan 1. 201 00:09:09,810 --> 00:09:11,390 disebut sistem biner. 202 00:09:11,390 --> 00:09:15,340 Jadi memang, komputer memiliki lebih dari hanya tanda hash dalam kosa kata mereka, 203 00:09:15,340 --> 00:09:17,450 tapi tidak sebanyak dari kosakata seperti kita manusia. 204 00:09:17,450 --> 00:09:19,210 >> Memang, kita manusia tidak menggunakan biner. 205 00:09:19,210 --> 00:09:21,160 Bi berarti 2, 0 dan 1. 206 00:09:21,160 --> 00:09:24,140 Tapi desimal, deca berarti 10, 0 sampai 9. 207 00:09:24,140 --> 00:09:27,660 Jadi kita memiliki lebih banyak ekspresif kemampuan di dunia manusia normal kita. 208 00:09:27,660 --> 00:09:31,720 Tapi aku berpendapat bahwa sistem ini, biner, dan desimal, dan segala sesuatu 209 00:09:31,720 --> 00:09:35,290 di antara dan di luar, yang sebenarnya semua cukup akrab. 210 00:09:35,290 --> 00:09:39,650 Misalnya, pertimbangkan contoh ini di sini, 123. 211 00:09:39,650 --> 00:09:43,850 Jadi ini benar-benar, tentu saja, nomor yang kita kenal sebagai 123. 212 00:09:43,850 --> 00:09:47,160 Tapi semua saya hanya menggambar hanya ini pola simbol, mesin terbang sehingga untuk berbicara. 213 00:09:47,160 --> 00:09:49,100 Semacam bentuk di papan kapur. 214 00:09:49,100 --> 00:09:52,951 >> Tapi mengapa kita segera dan intuitif memahami ini sebagai 123? 215 00:09:52,951 --> 00:09:54,700 Nah, jika Anda seperti saya di sekolah dasar, 216 00:09:54,700 --> 00:09:59,920 Anda mungkin tahu bahwa ini adalah kolom 1s, ini adalah kolom 10s, 217 00:09:59,920 --> 00:10:01,330 ini adalah kolom 100s. 218 00:10:01,330 --> 00:10:02,860 Dan kenapa begitu berguna? 219 00:10:02,860 --> 00:10:06,440 Nah, itu aritmatika sederhana Anda sekarang lakukan untuk mendapatkan dari pola simbol 220 00:10:06,440 --> 00:10:08,940 untuk nomor kita memahami secara intuitif. 221 00:10:08,940 --> 00:10:14,160 Adalah apa, 100 kali 1, dan kemudian 10 kali 2, dan 1 kali 3, 222 00:10:14,160 --> 00:10:17,860 yang tentu saja hanya 100, dan ini adalah 20, dan ini adalah tiga. 223 00:10:17,860 --> 00:10:19,740 Dan jika kita menambahkan mereka together-- ah. 224 00:10:19,740 --> 00:10:23,880 Jadi di situlah letak semacam penalaran balik mengapa set simbol 225 00:10:23,880 --> 00:10:26,550 berarti sesuatu yang nyata dan numerik. 226 00:10:26,550 --> 00:10:32,030 >> Nah, komputer melakukan hal yang sama persis, tapi mereka hanya bisa menghitung setinggi satu. 227 00:10:32,030 --> 00:10:34,400 Sedangkan saya bisa menghitung setinggi tiga. 228 00:10:34,400 --> 00:10:37,380 Dan pada kenyataannya, jika saya terus saya bisa pergi setinggi sembilan dalam sistem ini. 229 00:10:37,380 --> 00:10:40,430 Komputer hanya memiliki angka nol dan orang-orang dalam alfabet mereka. 230 00:10:40,430 --> 00:10:41,410 >> Jadi apa artinya? 231 00:10:41,410 --> 00:10:46,900 Yah, itu hanya berarti bahwa jika komputer ingin mewakili, mengatakan angka 0, 232 00:10:46,900 --> 00:10:51,300 mungkin menggunakan tiga characters-- tiga huruf abjad sehingga untuk berbicara, 233 00:10:51,300 --> 00:10:53,050 itulah bagaimana komputer mewakili 0. 234 00:10:53,050 --> 00:10:54,620 Jadi tidak semua yang menakutkan sejauh ini. 235 00:10:54,620 --> 00:10:56,450 Ini persis apa yang kita manusia lakukan. 236 00:10:56,450 --> 00:10:59,410 Dan pada kenyataannya, kebanyakan dari kita hanya akan mengabaikan nol terkemuka pula. 237 00:10:59,410 --> 00:11:01,640 >> Sebuah komputer, jika ingin untuk menyimpan nomor 1, 238 00:11:01,640 --> 00:11:03,330 ternyata akan melakukan hal ini. 239 00:11:03,330 --> 00:11:05,630 Dan komputer untuk menyimpan nomor 2 tidak 240 00:11:05,630 --> 00:11:09,280 akan melakukan sistem unary, yang saya singgung sebelumnya. 241 00:11:09,280 --> 00:11:11,360 Ini benar-benar akan melakukan hal ini. 242 00:11:11,360 --> 00:11:13,570 Dan ini mungkin di mana pola dimulai 243 00:11:13,570 --> 00:11:15,570 menjadi kurang jelas bagi kebanyakan orang. 244 00:11:15,570 --> 00:11:18,580 Itu 2, ini adalah 3. 245 00:11:18,580 --> 00:11:21,600 Anehnya, ini sekarang 4. 246 00:11:21,600 --> 00:11:24,120 Dan sekarang itu benar-benar tampaknya mungkin samar, 247 00:11:24,120 --> 00:11:26,762 tapi tidak jika kita mempertimbangkan apa biner benar-benar berarti. 248 00:11:26,762 --> 00:11:28,720 Ini berarti Anda memiliki dua huruf abjad Anda. 249 00:11:28,720 --> 00:11:31,940 Jadi dua karakter yang mungkin untuk setiap placeholder. 250 00:11:31,940 --> 00:11:35,970 >> Jadi yang benar-benar berarti kita akan membutuhkan tempat 1s, atau tempat 2s, 251 00:11:35,970 --> 00:11:40,800 tempat 4s dan kemudian 8, dan 16, 32, dan 64. 252 00:11:40,800 --> 00:11:42,290 Dan apa bedanya di sana? 253 00:11:42,290 --> 00:11:47,150 Seperti ini 1, 2, 4, 8, 16, 32, 64. 254 00:11:47,150 --> 00:11:50,690 Dan sebelum kami memiliki 110, 100.000, 10.000. 255 00:11:50,690 --> 00:11:53,170 Apa kesamaan di sana? 256 00:11:53,170 --> 00:11:54,940 Dan apa pola? 257 00:11:54,940 --> 00:11:55,505 Ya. 258 00:11:55,505 --> 00:11:57,380 SISWA: Powers of 2 bukannya kekuatan 10. 259 00:11:57,380 --> 00:11:57,660 DAVID Malan: Ya. 260 00:11:57,660 --> 00:11:59,290 Kekuatan dari 2 bukannya kekuatan 10. 261 00:11:59,290 --> 00:12:02,160 Dan jadi jika saya ingin tetap akan, 8, 16 dan begitu forth-- 262 00:12:02,160 --> 00:12:05,822 tetapi jika Anda memiliki semacam ini dari petunjuk, sekarang sistem biner 263 00:12:05,822 --> 00:12:07,280 sebenarnya cukup sederhana. 264 00:12:07,280 --> 00:12:10,910 Mengapa pola ini 0 ini di dunia komputer 0? 265 00:12:10,910 --> 00:12:14,910 Nah karena itu 4 kali 0, 2 kali 0, 1 kali 0 dan Anda mendapatkan 0. 266 00:12:14,910 --> 00:12:16,650 >> Mengapa ini nomor 1? 267 00:12:16,650 --> 00:12:20,070 alasan yang sama, tetapi sekarang kita memiliki 1 dalam 1 kolom. 268 00:12:20,070 --> 00:12:21,840 Mengapa ini 2? 269 00:12:21,840 --> 00:12:24,450 Kami memiliki 1 di kolom 2s. 270 00:12:24,450 --> 00:12:30,190 Dan bagaimana kemudian melakukan saya mewakili mengatakan, angka 7 dalam biner? 271 00:12:30,190 --> 00:12:31,324 Mengatakan lebih keras. 272 00:12:31,324 --> 00:12:32,170 >> SISWA: Tiga 1s. 273 00:12:32,170 --> 00:12:33,086 >> DAVID Malan: Tiga 1s. 274 00:12:33,086 --> 00:12:37,110 Jadi 1, 1, 1 karena kita hanya perlu 4 ditambah 2 ditambah 1 memberi saya 7. 275 00:12:37,110 --> 00:12:37,610 Baiklah. 276 00:12:37,610 --> 00:12:40,410 Jadi dari sana bagaimana kita mewakili 8 dengan 3 placeholder? 277 00:12:40,410 --> 00:12:43,310 278 00:12:43,310 --> 00:12:43,922 Ya. 279 00:12:43,922 --> 00:12:45,070 >> SISWA: 1, 0, 0, 0. 280 00:12:45,070 --> 00:12:46,970 >> DAVID Malan: Ya 1, 0, 0, 0. 281 00:12:46,970 --> 00:12:49,380 Namun mungkin, aku agak dari teknis perlu 282 00:12:49,380 --> 00:12:52,380 untuk menambahkan placeholder lain untuk papan. 283 00:12:52,380 --> 00:12:55,480 Jika saya ingin cocok dengan saya memang perlu melakukan sesuatu seperti ini. 284 00:12:55,480 --> 00:12:58,990 Jadi saya benar-benar perlu menggunakan sekarang kolom 8s, dan itu baik-baik saja. 285 00:12:58,990 --> 00:13:02,680 Tetapi hal yang aneh dalam komputasi adalah bahwa itu akan biaya kita sesuatu. 286 00:13:02,680 --> 00:13:04,390 Anda membutuhkan lebih banyak RAM di komputer Anda sekarang. 287 00:13:04,390 --> 00:13:06,348 Anda membutuhkan lebih banyak memori karena Anda perlu sesuatu 288 00:13:06,348 --> 00:13:09,650 fisik untuk menyimpan bahwa bit tambahan, sehingga untuk berbicara. 289 00:13:09,650 --> 00:13:10,700 Digit biner. 290 00:13:10,700 --> 00:13:13,260 Dan memang semua yang terjadi di sini, seperti sistem desimal, 291 00:13:13,260 --> 00:13:17,380 jika kita terus menambahkan nomor naik dan naik dan atas, kita pergi ke 5 sampai 6 untuk 7 sampai 8 292 00:13:17,380 --> 00:13:19,330 itu seperti membawa 1, secara harfiah. 293 00:13:19,330 --> 00:13:21,940 Dan kemudian segala sesuatu yang lain kembali ke nol. 294 00:13:21,940 --> 00:13:25,870 >> Tapi bagaimana kita benar-benar mewakili hal-hal ini secara fisik di komputer? 295 00:13:25,870 --> 00:13:29,380 Nah, di akhir hari, satu-satunya masukan fisik pergi ke komputer saya 296 00:13:29,380 --> 00:13:33,630 di sini adalah kabel listrik ini, sehingga listrik atau elektron dari dinding. 297 00:13:33,630 --> 00:13:36,920 Dan bagaimana saya dapatkan dari sesuatu fisik seperti itu untuk benar-benar 298 00:13:36,920 --> 00:13:40,630 mewakili ide seperti ini sebagai gantinya. 299 00:13:40,630 --> 00:13:41,930 >> Nah, apa yang bisa kita lakukan? 300 00:13:41,930 --> 00:13:45,560 Kita bisa menganggap bahwa, oke, mungkin jika mengalir listrik 301 00:13:45,560 --> 00:13:47,420 Aku bisa menyimpannya dan berpegang pada itu. 302 00:13:47,420 --> 00:13:49,250 Dan jika saya memegang beberapa listrik, 303 00:13:49,250 --> 00:13:51,700 yang hanya akan sewenang-wenang mewakili 1. 304 00:13:51,700 --> 00:13:53,997 Dan jika saya tarik steker dan tidak ada di sana, 305 00:13:53,997 --> 00:13:56,330 Anda tahu bahwa hanya akan untuk sewenang-wenang mewakili 0. 306 00:13:56,330 --> 00:13:57,700 >> Jadi, jika ada sesuatu yang ada, 1. 307 00:13:57,700 --> 00:13:59,280 Jika tidak ada di sana, 0. 308 00:13:59,280 --> 00:14:01,420 Atau Anda bisa membuat ini sedikit lebih visual. 309 00:14:01,420 --> 00:14:02,704 Berikut adalah 0. 310 00:14:02,704 --> 00:14:05,370 Tidak ada yang berlangsung menarik di sekitar bagian belakang ponsel saya. 311 00:14:05,370 --> 00:14:08,690 Tapi jika saya membiarkan sedikit bit listrik mengalir, 312 00:14:08,690 --> 00:14:11,490 meskipun itu agak cerah di sini, senter saya melanjutkan. 313 00:14:11,490 --> 00:14:15,840 Jadi aku menyimpan muatan dan ergo, ponsel ini sekarang merupakan 1. 314 00:14:15,840 --> 00:14:17,700 Jadi 0 1. 315 00:14:17,700 --> 00:14:23,630 >> Jadi dengan 1 iPhone seberapa tinggi saya bisa menghitung menggunakan pendekatan semacam ini? 316 00:14:23,630 --> 00:14:24,490 Saya bermaksud 1. 317 00:14:24,490 --> 00:14:25,900 Ini tidak semua yang menarik. 318 00:14:25,900 --> 00:14:27,170 Jadi apa lagi yang bisa kita lakukan? 319 00:14:27,170 --> 00:14:31,180 Nah mari kita lihat, adalah siapa pun di mereka telepon sekarang bahwa saya bisa meminjam? 320 00:14:31,180 --> 00:14:33,800 Siapapun yang memiliki telepon dengan senter built in? 321 00:14:33,800 --> 00:14:34,969 Bolehkah saya pinjam? 322 00:14:34,969 --> 00:14:36,010 Aku tidak membutuhkannya dibuka. 323 00:14:36,010 --> 00:14:36,510 Baiklah. 324 00:14:36,510 --> 00:14:37,150 Terima kasih. 325 00:14:37,150 --> 00:14:37,780 Biarkan aku meminjam ini. 326 00:14:37,780 --> 00:14:38,279 Baiklah. 327 00:14:38,279 --> 00:14:45,570 Jadi jika saya sekarang gulir ke atas dan di sini, apa yang saya mewakili sekarang? 328 00:14:45,570 --> 00:14:46,070 Ya. 329 00:14:46,070 --> 00:14:49,350 Jadi itu adalah tiga karena ini adalah di kolom 1s, ini adalah di kolom 2s. 330 00:14:49,350 --> 00:14:50,480 Jadi 1 ditambah 2 adalah 3. 331 00:14:50,480 --> 00:14:53,410 Dan kemudian jika kita mencoba untuk mendapatkan benar-benar creative-- oh, terima kasih. 332 00:14:53,410 --> 00:14:54,690 Sangat preemptive. 333 00:14:54,690 --> 00:14:55,560 Baiklah. 334 00:14:55,560 --> 00:14:57,100 Saya sekarang memiliki tiga iPhone. 335 00:14:57,100 --> 00:14:58,810 Baiklah. 336 00:14:58,810 --> 00:15:02,500 >> Dan sekarang ini-- aku tidak akan melakukan lebih jauh dari ini. 337 00:15:02,500 --> 00:15:04,380 Apa yang saya mewakili sekarang? 338 00:15:04,380 --> 00:15:05,090 Hanya tujuh. 339 00:15:05,090 --> 00:15:08,000 Tapi aku butuh fisik lebih banyak memori dalam kasus ini. 340 00:15:08,000 --> 00:15:08,920 Tapi itu semua itu. 341 00:15:08,920 --> 00:15:12,870 Anda bisa memikirkan apa yang terjadi on-- terima you-- dalam ponsel Anda 342 00:15:12,870 --> 00:15:16,240 sebagai hanya menjadi sebuah saklar yang yang diaktifkan dan dinonaktifkan. 343 00:15:16,240 --> 00:15:18,350 >> Dan jika Anda pernah mendengar kata transistor. 344 00:15:18,350 --> 00:15:21,312 Atau jika Anda pernah mendengar pemasaran berbicara Intel dalam, 345 00:15:21,312 --> 00:15:24,270 yang berbicara dengan jenis hardware yang ada di dalam komputer Anda. 346 00:15:24,270 --> 00:15:26,707 Intel membuat CPU, central processing unit, 347 00:15:26,707 --> 00:15:28,790 yang seperti otak dalam komputer Anda. 348 00:15:28,790 --> 00:15:30,640 Dan CPU ini dan hal yang mereka terhubung 349 00:15:30,640 --> 00:15:32,740 memiliki banyak dan banyak switch kecil. 350 00:15:32,740 --> 00:15:36,440 Jutaan, milyaran switch yang dapat menjadi on atau off. 351 00:15:36,440 --> 00:15:38,840 >> Jadi komputer, untungnya, seperti Mac dan PC kita, 352 00:15:38,840 --> 00:15:43,830 dapat mengandalkan cara lebih tinggi dari 7 atau 8 karena mereka memiliki cara yang lebih dari tiga 353 00:15:43,830 --> 00:15:44,660 atau empat bit. 354 00:15:44,660 --> 00:15:48,140 Cara yang lebih dari setara dengan tiga senter yang kami baru saja. 355 00:15:48,140 --> 00:15:52,110 Tapi sekarang ini mulai mendapatkan cukup menarik cepat. 356 00:15:52,110 --> 00:15:55,810 Jika saya sekarang ingin benar-benar dapat untuk melakukan sesuatu yang lebih menarik, 357 00:15:55,810 --> 00:16:00,340 Saya ingin bisa melompat untuk sesuatu seperti ini. 358 00:16:00,340 --> 00:16:03,604 >> Jadi ASCII, itu tidak benar-benar berguna akronim, tetapi American Standard Kode 359 00:16:03,604 --> 00:16:04,770 Informasi Interchange. 360 00:16:04,770 --> 00:16:07,450 Ini hanya berarti, beberapa tahun lalu kita manusia memutuskan, 361 00:16:07,450 --> 00:16:10,724 Anda tahu apa yang kita ingin dapat melakukan lebih dengan komputer dari sekedar angka. 362 00:16:10,724 --> 00:16:12,890 Kami tidak ingin mereka hanya menjadi kalkulator mahal, 363 00:16:12,890 --> 00:16:16,730 kami ingin dapat melakukan hal-hal seperti pengolah kata, meskipun sangat sederhana. 364 00:16:16,730 --> 00:16:20,030 Kemudian kami memiliki email dan media lain seperti itu. 365 00:16:20,030 --> 00:16:23,700 >> Dan dunia memutuskan beberapa tahun lalu menurut sistem ASCII ini, 366 00:16:23,700 --> 00:16:24,770 kamu tahu apa? 367 00:16:24,770 --> 00:16:26,970 Dalam jenis tertentu program setiap kali Anda 368 00:16:26,970 --> 00:16:30,649 lihat setara dengan nomor 65, seperti pola bit. 369 00:16:30,649 --> 00:16:32,440 Dan kita bisa melakukan matematika di sini di papan. 370 00:16:32,440 --> 00:16:34,450 Pola bit yang mewakili 65. 371 00:16:34,450 --> 00:16:37,240 Jangan menganggapnya sebagai 65 dalam desimal. 372 00:16:37,240 --> 00:16:41,620 Anggap saja sebagai sewenang-wenang, tapi global, secara konsisten sebagai ibukota 373 00:16:41,620 --> 00:16:42,201 SEBUAH. 374 00:16:42,201 --> 00:16:43,950 Dan kemudian dunia memutuskan, Anda tahu apa? 375 00:16:43,950 --> 00:16:45,630 Mari kita pola lain bit. 376 00:16:45,630 --> 00:16:47,770 Dan jika kita pernah melihat nomor 66, mari kita 377 00:16:47,770 --> 00:16:50,573 berasumsi bahwa itu adalah modal B. Fast forward ke H 378 00:16:50,573 --> 00:16:55,510 dan saya, jika Anda melihat 72 atau 73, yang harus menjadi H dan I, masing-masing. 379 00:16:55,510 --> 00:16:57,780 Dan jadi selama seluruh dunia setuju atas ini. 380 00:16:57,780 --> 00:17:01,342 Sehingga ketika Anda menerima email, atau Anda akan mendapatkan file pada USB stick, 381 00:17:01,342 --> 00:17:03,800 atau sesuatu seperti itu-- saat Anda melihat bahwa pola bit, 382 00:17:03,800 --> 00:17:06,980 Anda tahu bahwa itu harus ini surat atau surat lainnya. 383 00:17:06,980 --> 00:17:08,620 >> Tapi itu konteks tertentu, benar. 384 00:17:08,620 --> 00:17:12,250 Program email mungkin menafsirkan hal ini sebagai karakter, 385 00:17:12,250 --> 00:17:15,760 tapi kalkulator grafik atau kalkulator mungkin mewakili atau menafsirkan 386 00:17:15,760 --> 00:17:18,370 hal-hal ini, tentu saja, seperti surat-surat. 387 00:17:18,370 --> 00:17:21,610 >> Jadi dengan mengatakan bahwa, sedikit ulasan cepat. 388 00:17:21,610 --> 00:17:25,440 Ini mungkin tiga karakter e-mail yang telah dikirim kepada saya. 389 00:17:25,440 --> 00:17:27,990 Di bawah tenda itu semua di 0 dan 1, Tapi kami tidak peduli. 390 00:17:27,990 --> 00:17:31,580 Kita akan mulai abstrak di atas 0 dan 1 untuk huruf. 391 00:17:31,580 --> 00:17:36,830 Dan jika saya melihat pola 0s dan 1s yang benar-benar mewakili 72, hint, hint, 73, 392 00:17:36,830 --> 00:17:38,866 dan kemudian 33, apa pesannya? 393 00:17:38,866 --> 00:17:40,348 >> SISWA: [tidak terdengar] 394 00:17:40,348 --> 00:17:42,639 DAVID Malan: Jadi jika Anda berpikir kembali beberapa saat yang lalu, HI 395 00:17:42,639 --> 00:17:47,210 adalah pesan saya mencoba untuk berkomunikasi di sini karena H adalah 72, 396 00:17:47,210 --> 00:17:50,925 Aku adalah 73, dan sekarang 33-- Anda tidak akan tentu tahu ini sebelumnya, 397 00:17:50,925 --> 00:17:53,800 tapi ternyata jika Anda benar-benar melihat lebih banyak dari grafik dan sistem 398 00:17:53,800 --> 00:17:56,800 bahwa manusia disepakati tahun lalu, itu hanya tanda seru. 399 00:17:56,800 --> 00:18:01,590 Dan memang, ada pola simbol dan angka untuk setiap karakter 400 00:18:01,590 --> 00:18:03,849 bahwa Anda mungkin memiliki pada keyboard Anda. 401 00:18:03,849 --> 00:18:04,389 >> Baiklah. 402 00:18:04,389 --> 00:18:05,660 Mari abstrak lanjut. 403 00:18:05,660 --> 00:18:09,380 Jika kita tidak ingin hanya memiliki hal-hal seperti angka dan huruf, 404 00:18:09,380 --> 00:18:11,420 kita benar-benar ingin menerapkan grafis. 405 00:18:11,420 --> 00:18:13,351 Nah, jika Anda sudah pernah mendengar akronim RGB. 406 00:18:13,351 --> 00:18:15,559 Ini jenis tanggal sekarang, tapi itu masih jenis ada. 407 00:18:15,559 --> 00:18:17,380 RGB adalah merah, hijau, biru. 408 00:18:17,380 --> 00:18:19,380 Dan itu hanya sebuah sistem mengatakan, Anda tahu apa, 409 00:18:19,380 --> 00:18:21,650 mari kita gunakan tiga set bit. 410 00:18:21,650 --> 00:18:25,280 Satu set 8 bit, satu set dari 8 bit, dan set 8 bit. 411 00:18:25,280 --> 00:18:27,710 Dan mari kita gunakan mereka bit untuk menyimpan berapa banyak kita merah 412 00:18:27,710 --> 00:18:31,430 inginkan pada layar kami, berapa banyak hijau kita inginkan pada layar kami, 413 00:18:31,430 --> 00:18:34,070 dan berapa banyak biru yang kita inginkan di layar kami. 414 00:18:34,070 --> 00:18:37,860 Dan ini hanya berarti bahwa jika Anda memiliki lot-- sejumlah besar untuk merah, 415 00:18:37,860 --> 00:18:39,200 itu berarti memberi saya banyak merah. 416 00:18:39,200 --> 00:18:41,658 Jika Anda memiliki jumlah yang besar untuk hijau, memberi saya banyak hijau. 417 00:18:41,658 --> 00:18:44,660 Dan jika Anda memiliki hanya sedikit biru atau sejumlah kecil seperti 33, 418 00:18:44,660 --> 00:18:45,960 memberi saya sedikit biru. 419 00:18:45,960 --> 00:18:49,720 Dan jika Anda kebetulan untuk menggabungkan tiga besaran, sehingga untuk berbicara, 420 00:18:49,720 --> 00:18:53,160 Anda mendapatkan ini-- Anda hampir tidak dapat melihat pada proyektor di sini, tapi ini keruh 421 00:18:53,160 --> 00:18:54,630 warna kuning atau coklat. 422 00:18:54,630 --> 00:18:58,590 >> Tapi ini mengatakan, menggunakan bahwa Pola 8 ditambah 8 plus plus 8-- 423 00:18:58,590 --> 00:19:01,710 bahwa pola 24 bit adalah bagaimana komputer akan 424 00:19:01,710 --> 00:19:06,460 toko yang warna kuning dalam satu kecil dot pixel pada layar. 425 00:19:06,460 --> 00:19:10,570 Jadi kita telah pergi dari 0s dan 1s ke desimal angka untuk huruf abjad. 426 00:19:10,570 --> 00:19:13,680 Atau lebih menarik, titik-titik berwarna. 427 00:19:13,680 --> 00:19:16,200 >> Nah, apa yang tentu saja kemudian datang berikutnya? 428 00:19:16,200 --> 00:19:19,040 Nah, apa gambar yang Anda lihat di Facebook atau mendapatkan dalam email? 429 00:19:19,040 --> 00:19:20,172 Atau sejenisnya? 430 00:19:20,172 --> 00:19:22,130 Apa definisi teknis dari suatu gambar? 431 00:19:22,130 --> 00:19:25,090 432 00:19:25,090 --> 00:19:27,710 Ya. 433 00:19:27,710 --> 00:19:31,270 Apa adalah gambar yang terdiri dari jika Anda terlihat benar-benar dekat di layar Anda? 434 00:19:31,270 --> 00:19:31,770 Ya. 435 00:19:31,770 --> 00:19:33,186 Ini hanya sekelompok seluruh piksel. 436 00:19:33,186 --> 00:19:35,220 Bahkan, jika Anda mengambil Anda laptop mungkin nanti, 437 00:19:35,220 --> 00:19:37,180 dan terlihat benar-benar erat di itu-- tergantung 438 00:19:37,180 --> 00:19:40,370 bagaimana mahal laptop tersebut dan seberapa tinggi kualitas layar, 439 00:19:40,370 --> 00:19:43,480 Anda mungkin sangat baik melihat semua titik-titik kecil di layar. 440 00:19:43,480 --> 00:19:45,890 >> Dan titik-titik atau piksel, yang berarti ada 441 00:19:45,890 --> 00:19:49,810 24 bit mewakili setiap pixel dalam foto yang Anda lihat di Facebook, 442 00:19:49,810 --> 00:19:52,049 atau bahwa Anda hanya mengambil pada iPhone Anda baru-baru ini. 443 00:19:52,049 --> 00:19:54,090 Dan itulah bagaimana kita mendapatkan untuk hal-hal seperti grafis. 444 00:19:54,090 --> 00:19:55,120 Nah, apa video? 445 00:19:55,120 --> 00:19:58,660 Sebuah video hanya satu set grafis terbang oleh layar lagi 446 00:19:58,660 --> 00:19:59,780 dan lagi dan lagi. 447 00:19:59,780 --> 00:20:04,080 Dan video benar-benar, hanya pola bit yang mewakili grid, baris 448 00:20:04,080 --> 00:20:06,880 dan kolom titik, terbang dengan gambar layar, 449 00:20:06,880 --> 00:20:09,240 setelah gambar, setelah gambar, alias 450 00:20:09,240 --> 00:20:10,650 Film. 451 00:20:10,650 --> 00:20:12,340 Jadi itu saja untuk input dan output. 452 00:20:12,340 --> 00:20:14,420 >> Semua yang kita miliki sekarang adalah asumsi bahwa, Anda 453 00:20:14,420 --> 00:20:17,190 tahu apa, jika kita ingin komputer untuk mewakili informasi, 454 00:20:17,190 --> 00:20:18,560 kami memiliki sistem untuk melakukannya. 455 00:20:18,560 --> 00:20:20,780 Kita bisa melakukannya dengan 0s dan 1s pada akhir hari. 456 00:20:20,780 --> 00:20:23,160 Tapi kita bisa abstrak, sehingga untuk berbicara, di atas itu 457 00:20:23,160 --> 00:20:25,140 sehingga untuk mewakili lebih hal yang menarik. 458 00:20:25,140 --> 00:20:28,790 Dan di sini di dalam CS50, dan di ilmu komputer lebih umum, 459 00:20:28,790 --> 00:20:31,250 kita sekarang berdiri di atas bahu dari semua orang yang 460 00:20:31,250 --> 00:20:33,530 datang sebelum kita yang mengetahuinya. 461 00:20:33,530 --> 00:20:38,170 Dan sekarang hanya berasumsi bahwa komputer dapat mewakili input dan output. 462 00:20:38,170 --> 00:20:41,140 >> Tapi sekarang mari kita benar-benar melakukan sesuatu dengan mereka. 463 00:20:41,140 --> 00:20:44,850 Jadi algoritma hanya satu set instruksi, langkah demi langkah, 464 00:20:44,850 --> 00:20:46,340 untuk memecahkan beberapa masalah. 465 00:20:46,340 --> 00:20:48,730 Dan apa yang mungkin salah satu masalah tersebut menjadi. 466 00:20:48,730 --> 00:20:52,440 Jadi ini adalah sekolah tua teknologi, buku telepon. 467 00:20:52,440 --> 00:20:55,534 Dan dalam buku telepon adalah sejumlah nama dan nomor. 468 00:20:55,534 --> 00:20:57,700 Dan nama-nama umumnya diurutkan berdasarkan abjad. 469 00:20:57,700 --> 00:21:01,310 >> Jadi jika saya ingin menemukan seseorang di buku telepon ini seperti Mike Smith, 470 00:21:01,310 --> 00:21:02,930 apa manusia biasa akan lakukan? 471 00:21:02,930 --> 00:21:06,000 Nah, Anda hanya bisa membuka itu, melihat halaman pertama. 472 00:21:06,000 --> 00:21:07,390 Saya tidak melihat Mike Smith. 473 00:21:07,390 --> 00:21:09,740 Beralih ke halaman kedua, Saya tidak melihat Mike Smith. 474 00:21:09,740 --> 00:21:11,830 Dan hanya terus dan pergi. 475 00:21:11,830 --> 00:21:14,397 Apakah langkah ini demi langkah pendekatan yang benar? 476 00:21:14,397 --> 00:21:17,380 477 00:21:17,380 --> 00:21:18,310 Ya. 478 00:21:18,310 --> 00:21:20,080 Ini semacam bodoh, benar. 479 00:21:20,080 --> 00:21:21,646 Ini tidak efisien, tepat. 480 00:21:21,646 --> 00:21:24,520 Karena itu akan mengambil selamanya untuk sampai ke Mike, tapi itu benar. 481 00:21:24,520 --> 00:21:26,620 Karena jika Mike di sini Aku memang akan menemukannya. 482 00:21:26,620 --> 00:21:29,030 >> Jadi apa yang sedikit lebih orang yang wajar lakukan? 483 00:21:29,030 --> 00:21:32,180 Mereka mungkin masih membuka ke depan, dan mungkin terbang melalui buku telepon 484 00:21:32,180 --> 00:21:33,250 dua halaman pada satu waktu. 485 00:21:33,250 --> 00:21:34,840 Dua, empat, enam, delapan. 486 00:21:34,840 --> 00:21:36,830 Aku tidak bisa benar-benar secara fisik melakukannya dengan sangat baik. 487 00:21:36,830 --> 00:21:39,560 Tapi dalam teori, ini harus dua kali lebih cepat, dua halaman sekaligus. 488 00:21:39,560 --> 00:21:41,152 Apakah algoritma ini benar? 489 00:21:41,152 --> 00:21:43,252 >> SISWA: [tidak terdengar] 490 00:21:43,252 --> 00:21:44,460 DAVID Malan: Belum tentu. 491 00:21:44,460 --> 00:21:44,960 Baik. 492 00:21:44,960 --> 00:21:46,112 Mengapa peringatan itu? 493 00:21:46,112 --> 00:21:50,020 >> SISWA: Karena dia bisa berada di satu dari halaman yang Anda melompat-lompat. 494 00:21:50,020 --> 00:21:50,770 DAVID Malan: Ya. 495 00:21:50,770 --> 00:21:52,260 Jadi bahkan jika saya lebih dekat dan lebih dekat. 496 00:21:52,260 --> 00:21:56,150 Bagaimana jika dia hanya sengaja, oleh bad keberuntungan, terjepit di antara dua halaman 497 00:21:56,150 --> 00:21:57,290 bahwa aku terbang di atas? 498 00:21:57,290 --> 00:21:59,920 499 00:21:59,920 --> 00:22:01,730 Jadi kita perlu untuk memperbaiki ini. 500 00:22:01,730 --> 00:22:03,590 Kami benar-benar harus kemudian berkata, tunggu sebentar, 501 00:22:03,590 --> 00:22:06,240 mungkin jika kita pergi terlalu jauh, mungkin jika kita memukul bagian T, 502 00:22:06,240 --> 00:22:09,670 untuk T datang setelah Smith, maka kita harus setidaknya dua kali lipat kembali setidaknya satu halaman. 503 00:22:09,670 --> 00:22:12,630 Jadi diperbaiki, tetapi ada masalah bersyarat sana. 504 00:22:12,630 --> 00:22:16,159 Jadi itu dua kali lebih cepat, tetapi Anda mungkin harus ganda kembali hanya sedikit. 505 00:22:16,159 --> 00:22:19,200 Tapi tidak ada di kamarnya, bahkan jika Anda tidak benar-benar menggunakan buku telepon lagi, 506 00:22:19,200 --> 00:22:20,740 akan mulai dari awal. 507 00:22:20,740 --> 00:22:23,317 Apa yang akan kamu lakukan mencari Mike Smith? 508 00:22:23,317 --> 00:22:24,900 Anda akan pergi kira-kira ke S. 509 00:22:24,900 --> 00:22:26,820 Atau jika Anda tidak benar-benar memiliki lembar contekan di atas kertas, 510 00:22:26,820 --> 00:22:28,365 Anda akan pergi setidaknya kira-kira ke tengah. 511 00:22:28,365 --> 00:22:30,220 Dan tentunya tidak untuk bagian depan buku. 512 00:22:30,220 --> 00:22:31,130 Anda akan melihat ke bawah. 513 00:22:31,130 --> 00:22:33,770 Dan matematis Anda mungkin akan melihat bagian M, yang 514 00:22:33,770 --> 00:22:34,890 kira-kira di tengah. 515 00:22:34,890 --> 00:22:36,848 Dan kemudian Anda akan menyadari, apa yang benar? 516 00:22:36,848 --> 00:22:37,968 Dimana Mike? 517 00:22:37,968 --> 00:22:39,170 >> SISWA: [tidak terdengar] 518 00:22:39,170 --> 00:22:39,920 DAVID Malan: Ya. 519 00:22:39,920 --> 00:22:41,530 Jadi dia lebih di sisi ini. 520 00:22:41,530 --> 00:22:42,710 Dan apa yang dapat Anda lakukan? 521 00:22:42,710 --> 00:22:48,870 Nah, baik secara kiasan dan harfiah Anda dapat merobek masalah dalam setengah sekali? 522 00:22:48,870 --> 00:22:54,260 Dan kemudian tahu bahwa Anda dapat membuang ini setengah dari masalah pergi. 523 00:22:54,260 --> 00:22:58,170 Dan sekarang kami pergi dengan fundamental masalah yang sama, tapi itu setengah besar. 524 00:22:58,170 --> 00:22:59,920 Dan jadi sekarang apa set instruksi? 525 00:22:59,920 --> 00:23:01,753 Apa algoritma untuk menemukan Mike Smith? 526 00:23:01,753 --> 00:23:03,030 Ini hal yang sama persis. 527 00:23:03,030 --> 00:23:05,750 >> Sekarang ini terjadi menjadi M bagian dan ini adalah bagian Z, 528 00:23:05,750 --> 00:23:08,650 tapi fundamental Rumus masih sama. 529 00:23:08,650 --> 00:23:10,800 Pergi kira-kira ke tengah, melihat ke bawah, oh, darn it. 530 00:23:10,800 --> 00:23:13,160 Sekarang aku di bagian T, Saya sudah terlalu jauh. 531 00:23:13,160 --> 00:23:16,640 Tapi di sini juga bisa Anda menerapkan logika yang sama. 532 00:23:16,640 --> 00:23:19,189 Lemparan setengah dari masalah pergi dan sekarang kami 533 00:23:19,189 --> 00:23:21,230 kiri dengan masalah yang seperempat dari ukuran. 534 00:23:21,230 --> 00:23:28,140 Dan kita bisa mengulang, dan kita bisa mengulang, dan kita bisa mengulang sampai teoritis 535 00:23:28,140 --> 00:23:32,190 hanya ada satu halaman yang tersisa di yang Mike baik atau tidak. 536 00:23:32,190 --> 00:23:34,014 >> Jadi apa yang begitu kuat tentang ide ini? 537 00:23:34,014 --> 00:23:35,680 Maksudku setelah semua, itu cukup intuitif. 538 00:23:35,680 --> 00:23:37,390 Tidak ada yang akan mulai di mulai dari buku telepon 539 00:23:37,390 --> 00:23:39,320 dan flip 1.000 halaman untuk menemukan Mike Smith. 540 00:23:39,320 --> 00:23:42,319 Kebanyakan orang di ruangan ini akan untuk melakukan kira-kira seperti itu algoritma 541 00:23:42,319 --> 00:23:43,220 menyimpan untuk merobek tersebut. 542 00:23:43,220 --> 00:23:45,480 >> Dan jadi mengapa kita melakukan itu? 543 00:23:45,480 --> 00:23:47,810 Nah, pertimbangkan efisiensi. 544 00:23:47,810 --> 00:23:51,500 Simak saja berapa banyak lebih baik ini algoritma adalah dengan memecahnya 545 00:23:51,500 --> 00:23:52,890 menjadi beberapa bagian. 546 00:23:52,890 --> 00:23:53,980 Jadi apa yang saya pertama kali lakukan? 547 00:23:53,980 --> 00:23:55,389 Aku mengambil buku telepon. 548 00:23:55,389 --> 00:23:57,180 Dan seorang ilmuwan komputer, dan programmer, 549 00:23:57,180 --> 00:24:00,090 lebih umum ternyata, akan mulai menghitung segala sesuatu di 0. 550 00:24:00,090 --> 00:24:00,610 >> Mengapa? 551 00:24:00,610 --> 00:24:03,240 Nah, itu sedikit aneh bahwa kita manusia menghitung, umumnya, 552 00:24:03,240 --> 00:24:04,400 mulai dari satu. 553 00:24:04,400 --> 00:24:08,110 Karena apa jumlah terkecil kita dapat dengan jelas mewakili berdasarkan 554 00:24:08,110 --> 00:24:09,930 bahkan pada matematika sekolah dasar lama kita? 555 00:24:09,930 --> 00:24:12,400 Nah, itu 0, apakah itu dalam desimal atau biner. 556 00:24:12,400 --> 00:24:14,900 Dan Anda akan melihat di dunia komputasi dan pemrograman, 557 00:24:14,900 --> 00:24:17,620 khusus, kita mulai menghitung segala sesuatu dari 0. 558 00:24:17,620 --> 00:24:19,690 >> Jadi saya mengangkat telepon buku langkah 0. 559 00:24:19,690 --> 00:24:21,924 Aku akan membuka ke tengah buku telepon. 560 00:24:21,924 --> 00:24:23,840 Dan itu memang ekspresi apa yang saya lakukan. 561 00:24:23,840 --> 00:24:25,900 Dan kemudian langkah kedua adalah melihat nama-nama. 562 00:24:25,900 --> 00:24:29,110 Langkah ketiga adalah sedikit berbeda secara konseptual. 563 00:24:29,110 --> 00:24:30,600 Saya bertanya pada diri sendiri pertanyaan. 564 00:24:30,600 --> 00:24:33,610 Jika Smith adalah salah satu nama, Aku akan membuat keputusan. 565 00:24:33,610 --> 00:24:36,550 Jika dia antara nama-nama, maka aku akan menelepon Mike. 566 00:24:36,550 --> 00:24:39,590 Dan aku akan membuat keputusan berdasarkan informasi itu. 567 00:24:39,590 --> 00:24:44,100 >> Namun, jika tidak, jika Smith adalah sebelumnya dalam buku ke kiri, 568 00:24:44,100 --> 00:24:48,200 Aku akan membuka ke tengah dari kiri setengah dari buku. 569 00:24:48,200 --> 00:24:51,674 Dan kemudian inilah kepandaian itu, Aku akan kembali ke langkah dua. 570 00:24:51,674 --> 00:24:53,590 Aku akan mengurutkan dari berdiri di atas bahu saya sendiri 571 00:24:53,590 --> 00:24:55,110 dan hanya mengulang pekerjaan terakhir saya lakukan. 572 00:24:55,110 --> 00:24:58,062 Tapi pekerjaan yang tersisa adalah kurang, dan kurang, dan kurang. 573 00:24:58,062 --> 00:24:59,270 Tapi masih akan bekerja. 574 00:24:59,270 --> 00:25:02,110 Tetapi jika Mike, sebaliknya, adalah kemudian dalam buku ke kanan, 575 00:25:02,110 --> 00:25:04,980 Aku akan membuka ke tengah dari kanan setengah dari buku, 576 00:25:04,980 --> 00:25:07,240 kemudian kembali ke langkah dua. 577 00:25:07,240 --> 00:25:09,330 >> Tapi sebenarnya ada skenario keempat. 578 00:25:09,330 --> 00:25:13,336 Mike baik di sini, atau di sini, atau di sini, or-- 579 00:25:13,336 --> 00:25:14,152 >> SISWA: Tidak ada. 580 00:25:14,152 --> 00:25:15,110 DAVID Malan: Tidak ada. 581 00:25:15,110 --> 00:25:18,580 Dan memang, jika kita tidak mengantisipasi Skenario keempat dan terakhir ini 582 00:25:18,580 --> 00:25:21,510 program kami mungkin kereta atau cacat dalam beberapa cara. 583 00:25:21,510 --> 00:25:25,020 Lain, berhenti dalam kasus yang kami belum menemukan Mike sama sekali. 584 00:25:25,020 --> 00:25:27,720 Dan memang, jika Anda pernah melihat gantung komputer Anda, atau semua 585 00:25:27,720 --> 00:25:30,490 dari sebuah kata tiba-tiba atau beberapa lainnya Program hanya berhenti tiba-tiba, 586 00:25:30,490 --> 00:25:32,614 dan kadang-kadang error engkau Pesan secara harfiah itu. 587 00:25:32,614 --> 00:25:34,070 Program ini berhenti tiba-tiba. 588 00:25:34,070 --> 00:25:35,570 Hal ini dapat untuk sejumlah alasan. 589 00:25:35,570 --> 00:25:38,120 Tapi kadang-kadang sesuatu yang sederhana seperti ini. 590 00:25:38,120 --> 00:25:40,440 Programmer manusia yang menulis perangkat lunak yang 591 00:25:40,440 --> 00:25:43,610 tidak menyadari bahwa, oh, ada sebagainya hal yang benar-benar bisa terjadi. 592 00:25:43,610 --> 00:25:46,480 Dan jika Anda tidak menulis kode untuk menangkap bahwa skenario keempat, 593 00:25:46,480 --> 00:25:51,342 memang tak terduga kadang-kadang apa komputer mungkin benar-benar dilakukan. 594 00:25:51,342 --> 00:25:53,050 Sekarang mari kita sebut sebuah Beberapa hal-hal ini. 595 00:25:53,050 --> 00:25:55,465 Jadi dalam kuning sini, saya memiliki istilah disorot 596 00:25:55,465 --> 00:25:57,590 yang selanjutnya kita hanya akan memanggil fungsi. 597 00:25:57,590 --> 00:26:00,700 Fungsi di dunia pemrograman seperti tindakan, 598 00:26:00,700 --> 00:26:01,850 laporan tindakan. 599 00:26:01,850 --> 00:26:05,720 Jadi mengambil, terbuka untuk, terlihat di, panggilan, terbuka, terbuka, berhenti. 600 00:26:05,720 --> 00:26:09,350 Itu fungsi, prosedur, tindakan, sejumlah sinonim 601 00:26:09,350 --> 00:26:10,184 akan bekerja dengan baik. 602 00:26:10,184 --> 00:26:11,850 Sekarang apa hal-hal ini sekarang warna kuning? 603 00:26:11,850 --> 00:26:14,210 Jika yang lain, jika lain, jika lain, ini adalah apa 604 00:26:14,210 --> 00:26:16,500 kita akan memanggil kondisi dalam pemrograman, 605 00:26:16,500 --> 00:26:19,270 atau cabang, keputusan poin, jika Anda mau. 606 00:26:19,270 --> 00:26:22,759 Tapi bagaimana Anda tahu mana garpu di jalan untuk mengambil, sehingga untuk berbicara? 607 00:26:22,759 --> 00:26:24,550 Kita perlu menyoroti istilah ke kanan 608 00:26:24,550 --> 00:26:27,570 ada, yang ini ya, tidak ada pertanyaan. 609 00:26:27,570 --> 00:26:29,040 Pertanyaan-pertanyaan benar salah. 610 00:26:29,040 --> 00:26:30,880 Smith antara nama-nama? 611 00:26:30,880 --> 00:26:32,190 Smith di awal buku? 612 00:26:32,190 --> 00:26:33,260 Smith kemudian dalam buku? 613 00:26:33,260 --> 00:26:35,490 Ini adalah pertanyaan untuk yang ada ya, atau tidak, 614 00:26:35,490 --> 00:26:42,110 atau ekuivalen benar, atau salah, atau ekuivalen, satu atau nol jawaban. 615 00:26:42,110 --> 00:26:44,260 >> Dan sementara ada hanya satu potongan terakhir. 616 00:26:44,260 --> 00:26:45,940 Ini di sini memiliki apa efek? 617 00:26:45,940 --> 00:26:48,230 Apakah atau tidak Anda program sebelumnya, bagaimana akan Anda 618 00:26:48,230 --> 00:26:51,030 menjelaskan apa langkah tujuh dan 10 lakukan? 619 00:26:51,030 --> 00:26:54,110 620 00:26:54,110 --> 00:26:55,027 Apa katamu? 621 00:26:55,027 --> 00:26:56,110 SISWA: Sebuah langkah rekursif. 622 00:26:56,110 --> 00:26:56,980 DAVID Malan: Sebuah langkah rekursif. 623 00:26:56,980 --> 00:26:58,000 Ya, pada dasarnya. 624 00:26:58,000 --> 00:27:00,384 Secara teknis berulang di sini jika Anda terbiasa. 625 00:27:00,384 --> 00:27:01,550 Tapi kita akan kembali ke itu. 626 00:27:01,550 --> 00:27:03,930 Tapi itu melakukan sesuatu yang jelas. 627 00:27:03,930 --> 00:27:06,370 Sekali lagi, itu menginduksi siklus, lingkaran, kanan. 628 00:27:06,370 --> 00:27:08,770 Anda benar-benar akan kembali ke beberapa langkah sebelumnya. 629 00:27:08,770 --> 00:27:12,592 Dan memang, ini akan mengimplementasikan beberapa jenis siklus. 630 00:27:12,592 --> 00:27:15,050 Tapi Anda tidak akan mendapatkan terjebak dalam ini tanpa henti, benar. 631 00:27:15,050 --> 00:27:19,290 Karena jika Anda terus-menerus memeriksa adalah Mike di sini, atau ke kiri, atau tidak di sini, 632 00:27:19,290 --> 00:27:21,360 akhirnya dia tidak akan berada di sana. 633 00:27:21,360 --> 00:27:24,590 Dan Anda hanya bisa berhenti sama sekali sesuai yang baris terakhir. 634 00:27:24,590 --> 00:27:25,834 >> Jadi itu untuk kosa kata. 635 00:27:25,834 --> 00:27:28,250 Dan ini adalah apa yang kita akan umumnya memanggil kode pseudo. 636 00:27:28,250 --> 00:27:29,570 Ini bukan bahasa yang sebenarnya. 637 00:27:29,570 --> 00:27:32,405 Ini hanya sangat singkat bahasa Inggris, tetapi berkomunikasi titik. 638 00:27:32,405 --> 00:27:33,780 Tidak ada struktur formal sini. 639 00:27:33,780 --> 00:27:35,738 Anda hanya menggunakan itu beberapa kata-kata, tetapi kata-kata yang jelas 640 00:27:35,738 --> 00:27:37,870 yang Anda bisa untuk berkomunikasi ide Anda. 641 00:27:37,870 --> 00:27:40,580 >> Sekarang bagaimana yang baik adalah algoritma yang dan berapa banyak lebih baik itu? 642 00:27:40,580 --> 00:27:43,570 Yah, kita tidak perlu masuk ke dalam spesifik dari nomor atau apa pun 643 00:27:43,570 --> 00:27:44,069 seperti itu. 644 00:27:44,069 --> 00:27:46,300 Tapi kita bisa melihat bentuk dari solusi ini. 645 00:27:46,300 --> 00:27:50,194 Jadi jika kita hanya menarik beberapa petak xy di sini pada sumbu horisontal di sini. 646 00:27:50,194 --> 00:27:51,860 Mari kita sebut ukuran masalah. 647 00:27:51,860 --> 00:27:55,540 Dan seorang ilmuwan komputer akan biasanya menggunakan n sebagai variabel sini. 648 00:27:55,540 --> 00:27:59,690 Jadi n halaman, atau n orang di dalam ruangan, atau apa pun yang Anda mencoba untuk menghitung. 649 00:27:59,690 --> 00:28:03,039 >> Dan kemudian pada sumbu vertikal pada kiri, itu akan menjadi waktu untuk menyelesaikan. 650 00:28:03,039 --> 00:28:05,330 Jadi berapa banyak detik melakukannya membawa saya untuk menemukan Mike Smith? 651 00:28:05,330 --> 00:28:06,621 Atau berapa banyak langkah yang dibutuhkan? 652 00:28:06,621 --> 00:28:08,100 Berapa banyak berubah halaman yang dibutuhkan? 653 00:28:08,100 --> 00:28:11,370 Jadi itulah berapa biaya saya dalam waktu untuk memecahkan masalah. 654 00:28:11,370 --> 00:28:15,030 Dan kami mungkin menarik pertama algoritma kemiringan, jika Anda mau, 655 00:28:15,030 --> 00:28:16,910 hanya sebagai garis lurus ini dalam warna merah. 656 00:28:16,910 --> 00:28:18,450 Dan saya akan menyebutnya n. 657 00:28:18,450 --> 00:28:19,117 >> Mengapa n? 658 00:28:19,117 --> 00:28:20,950 Mengapa hanya satu ini untuk satu hubungan? 659 00:28:20,950 --> 00:28:22,700 Nah, jika Verizon atau apapun perusahaan telepon 660 00:28:22,700 --> 00:28:25,130 menambahkan satu halaman lagi untuk buku telepon tahun depan, 661 00:28:25,130 --> 00:28:28,370 yang mungkin mendorong Mike satu Langkah lebih dekat ke akhir, 662 00:28:28,370 --> 00:28:29,950 tergantung di mana halaman itu. 663 00:28:29,950 --> 00:28:32,380 Dan efeknya mungkin hanya dengan menambahkan satu detik lebih. 664 00:28:32,380 --> 00:28:33,520 Atau satu halaman gilirannya. 665 00:28:33,520 --> 00:28:34,970 Satu untuk satu rasio. 666 00:28:34,970 --> 00:28:37,410 >> Sebaliknya, algoritma kedua. 667 00:28:37,410 --> 00:28:41,406 Berapa cepat adalah bahwa secara intuitif? 668 00:28:41,406 --> 00:28:42,780 Di mana aku pergi dua halaman pada satu waktu? 669 00:28:42,780 --> 00:28:43,664 Ya. 670 00:28:43,664 --> 00:28:44,497 >> SISWA: [tidak terdengar] 671 00:28:44,497 --> 00:28:47,255 672 00:28:47,255 --> 00:28:48,080 >> DAVID Malan: Ya. 673 00:28:48,080 --> 00:28:49,220 Jadi itu akan menjadi dua kali lebih cepat. 674 00:28:49,220 --> 00:28:51,344 Dan kami akan menarik bahwa di sini tergantung pada skala. 675 00:28:51,344 --> 00:28:54,220 Ini masih merupakan garis lurus, tetapi lebih rendah dari garis merah. 676 00:28:54,220 --> 00:28:56,410 Karena untuk beberapa nomor halaman, jika dibutuhkan 677 00:28:56,410 --> 00:28:58,360 Anda ini banyak langkah dengan algoritma pertama, 678 00:28:58,360 --> 00:29:00,570 itu akan membawa Anda setengah karena banyak langkah dengan kedua. 679 00:29:00,570 --> 00:29:02,770 Dan garis kuning menggambarkan algoritma kedua 680 00:29:02,770 --> 00:29:03,990 hanya akan berada di bawah itu. 681 00:29:03,990 --> 00:29:07,250 >> Tapi apa benar-benar kuat adalah untuk berpikir tentang ketiga dan terakhir, 682 00:29:07,250 --> 00:29:10,480 dan luar biasa paling intuitif algoritma, yang memiliki bentuk ini. 683 00:29:10,480 --> 00:29:12,720 Secara teknis kita sebut ini kurva logaritmik. 684 00:29:12,720 --> 00:29:14,309 Log basis 2 dari n dalam kasus ini. 685 00:29:14,309 --> 00:29:15,600 Tapi itu tidak terlalu penting. 686 00:29:15,600 --> 00:29:19,140 Yang penting benar-benar adalah fundamental bentuk yang berbeda yang telah. 687 00:29:19,140 --> 00:29:22,810 Dan Anda dapat mempertimbangkan betapa jauh lebih pendek baris ini benar-benar 688 00:29:22,810 --> 00:29:24,620 adalah dalam jangka panjang. 689 00:29:24,620 --> 00:29:25,870 Itu terus meningkat. 690 00:29:25,870 --> 00:29:27,620 Itu tidak merata dengan sempurna. 691 00:29:27,620 --> 00:29:34,030 Tapi itu tumbuh pernah jadi jauh lebih lambat sebagai masalah akan lebih besar dan lebih besar. 692 00:29:34,030 --> 00:29:36,710 Dan Anda bisa memikirkan itu ini way-- jika Verizon tidak hanya 693 00:29:36,710 --> 00:29:40,410 menambahkan satu halaman tahun depan, tetapi ganda jumlah halaman dalam buku telepon, 694 00:29:40,410 --> 00:29:42,740 algoritma pertama mungkin mengambil dua kali lebih banyak langkah. 695 00:29:42,740 --> 00:29:45,360 Jika itu 1.000 halaman ini tahun, 2.000 halaman tahun depan, 696 00:29:45,360 --> 00:29:47,180 Mike mungkin bahwa jauh lebih jauh. 697 00:29:47,180 --> 00:29:49,380 Jadi 1.000 langkah tambahan untuk menemukannya. 698 00:29:49,380 --> 00:29:51,610 Algoritma kedua mungkin hanya 500 lebih 699 00:29:51,610 --> 00:29:55,490 langkah-langkah untuk menemukan dia karena sekali lagi, Aku terbang melalui itu dua sekaligus. 700 00:29:55,490 --> 00:29:56,950 >> Tapi bagaimana algoritma ketiga? 701 00:29:56,950 --> 00:29:59,010 Jika Verizon menggandakan ukuran buku telepon 702 00:29:59,010 --> 00:30:02,620 tahun depan dari 1.000 ke 2.000 halaman, berapa banyak langkah lebih 703 00:30:02,620 --> 00:30:05,540 adalah algoritma ketiga saya akan mengambil? 704 00:30:05,540 --> 00:30:06,630 Ya, itu hanya satu. 705 00:30:06,630 --> 00:30:08,600 Dan itu ide yang kuat. 706 00:30:08,600 --> 00:30:12,780 Anda dapat mengambil 1.000 halaman gigitan keluar dari masalah yang sekaligus. 707 00:30:12,780 --> 00:30:14,510 Dan jika Anda mempertimbangkan skenario konyol, 708 00:30:14,510 --> 00:30:17,320 tapi itu semacam berbicara kepada kekuatan semacam ini intuition-- 709 00:30:17,320 --> 00:30:21,494 jika buku telepon memiliki, seperti, empat miliar halaman, terasa seperti masalah yang sangat besar. 710 00:30:21,494 --> 00:30:23,410 Dan memang, itu mungkin membawa saya empat miliar halaman 711 00:30:23,410 --> 00:30:26,549 ternyata untuk menemukan Mike Smith dalam kasus dengan algoritma pertama. 712 00:30:26,549 --> 00:30:28,840 Tapi berapa banyak langkah kan mengambil dalam algoritma ketiga 713 00:30:28,840 --> 00:30:31,585 untuk menemukan Mike antara empat miliar lembar kertas? 714 00:30:31,585 --> 00:30:34,865 715 00:30:34,865 --> 00:30:36,240 Jadi empat miliar merobek setengah. 716 00:30:36,240 --> 00:30:37,220 Anda mendapatkan dua miliar. 717 00:30:37,220 --> 00:30:42,810 Kemudian satu miliar, maka 500 juta, 250 juta, 125 million-- tetapi 718 00:30:42,810 --> 00:30:44,780 terasa seperti ini akan memakan waktu cukup lama. 719 00:30:44,780 --> 00:30:47,340 Saya mungkin perlu 32 jari untuk menghitung tinggi itu. 720 00:30:47,340 --> 00:30:51,340 Tapi itu memang sebagai sedikitnya 32 air mata halaman. 721 00:30:51,340 --> 00:30:54,060 Anda dapat pergi dari empat miliar untuk satu halaman pemisah 722 00:30:54,060 --> 00:30:57,030 jumlah asli halaman dalam setengah 32 kali 723 00:30:57,030 --> 00:30:59,290 sampai kau pergi dengan Hanya saja halaman. 724 00:30:59,290 --> 00:31:01,320 >> Sekarang, tentu saja, aku curang di sini. 725 00:31:01,320 --> 00:31:06,470 Ini bukan berarti bahwa kita hanya menjadi semacam bodoh sekali dengan dua yang pertama 726 00:31:06,470 --> 00:31:07,470 algoritma. 727 00:31:07,470 --> 00:31:11,500 Saya kecurangan dalam arti, atau benar-benar aku memanfaatkan asumsi. 728 00:31:11,500 --> 00:31:15,610 Apa yang benar tentang buku telepon dalam bentuk aslinya yang memungkinkan 729 00:31:15,610 --> 00:31:17,450 saya bahkan menggunakan algoritma ketiga? 730 00:31:17,450 --> 00:31:18,110 Ya? 731 00:31:18,110 --> 00:31:19,360 AUDIENCE: Itu menurut abjad. 732 00:31:19,360 --> 00:31:21,130 DAVID Malan: Itu abjad, bukan? 733 00:31:21,130 --> 00:31:23,500 Kalau hanya di acak order, ini adalah pemborosan 734 00:31:23,500 --> 00:31:24,880 waktu, seluruh percakapan ini. 735 00:31:24,880 --> 00:31:27,500 Saya harus melihat setiap Halaman jika itu secara acak 736 00:31:27,500 --> 00:31:30,350 untuk menemukan Mike Smith sebelum saya dapat menyimpulkan dia ada atau tidak. 737 00:31:30,350 --> 00:31:32,880 Dan sudut kami telah dipotong adalah bahwa saya memiliki 738 00:31:32,880 --> 00:31:35,752 diasumsikan bahwa orang lain di hal ini melakukan pekerjaan untuk saya. 739 00:31:35,752 --> 00:31:38,460 Dan sehingga akhirnya mengundang pertanyaan, baik, tunggu sebentar. 740 00:31:38,460 --> 00:31:41,284 Bagaimana Anda menyortir 1.000 halaman nama dan nomor? 741 00:31:41,284 --> 00:31:43,200 Itu benar-benar berbeda masalah, sesuatu 742 00:31:43,200 --> 00:31:44,574 kami akan kembali di masa depan. 743 00:31:44,574 --> 00:31:48,130 Tetapi ketika Anda berpikir tentang website seperti Facebook dan Google untuk Gmail 744 00:31:48,130 --> 00:31:50,450 dan hal-hal seperti Google indeks pencarian sendiri, 745 00:31:50,450 --> 00:31:53,800 ketika Anda memiliki jutaan atau miliaran potongan data yang disimpan hari ini, 746 00:31:53,800 --> 00:31:56,660 searching-- dan belum lagi menyortir mereka problems-- 747 00:31:56,660 --> 00:31:59,450 pada akhirnya merupakan tantangan tersendiri. 748 00:31:59,450 --> 00:32:02,250 Dan memang, ini maka adalah hanya salah satu tantangan 749 00:32:02,250 --> 00:32:03,460 bahwa kita akan melihat. 750 00:32:03,460 --> 00:32:05,590 >> Jadi sekarang mari kita sejenak dan lihatlah CS50 751 00:32:05,590 --> 00:32:09,082 sendiri dan memberikan rasa apa yang ada di toko semester ini. 752 00:32:09,082 --> 00:32:11,540 Memang, jika Anda belum melakukannya, jangan lihat URL ini. 753 00:32:11,540 --> 00:32:13,880 Dan seperti Patrick disinggung untuk, tahun ini kita 754 00:32:13,880 --> 00:32:17,130 membuat investasi yang signifikan semua lebih mendukung program ini 755 00:32:17,130 --> 00:32:20,170 Struktur dalam hal TA dan CA, jam kantor, 756 00:32:20,170 --> 00:32:23,520 ketersediaan bagian, dan bahan digital online, juga. 757 00:32:23,520 --> 00:32:27,489 Memang, dalam hal kursus ini kuliah, kami di sini hari ini. 758 00:32:27,489 --> 00:32:29,780 Dan harapan ini tahun resmi tentu saja 759 00:32:29,780 --> 00:32:32,370 yang hadir untuk hari ini, tentu saja ini kuliah terakhir, dan tentu saja 760 00:32:32,370 --> 00:32:35,161 kira-kira di tengah-tengah semester dengan setiap ceramah di antara 761 00:32:35,161 --> 00:32:37,280 tersedia umumnya pada hari Jumat sore 762 00:32:37,280 --> 00:32:40,240 online, baik untuk mahasiswa Yale dan mahasiswa Harvard tahun ini. 763 00:32:40,240 --> 00:32:42,090 Memang, salah satu Perubahan mendasar adalah 764 00:32:42,090 --> 00:32:44,310 bahwa kita mengadopsi di Harvard paradigma yang sangat banyak 765 00:32:44,310 --> 00:32:46,570 seperti yang kami lakukan di sini terakhir tahun dan sekarang tahun ini, 766 00:32:46,570 --> 00:32:50,300 sehingga sama, kita masih syuting paling kuliah kursus di Cambridge 767 00:32:50,300 --> 00:32:52,900 tapi membuat mereka tersedia sebelumnya daripada yang kita miliki di masa lalu 768 00:32:52,900 --> 00:32:55,540 sehingga orang-orang dari you-- jika Anda ingin, misalnya, 769 00:32:55,540 --> 00:32:58,400 mendapatkan kepala mulai pada bahan pada akhir pekan pertama agak 770 00:32:58,400 --> 00:33:02,000 dari akhir pekan kedua, Anda akan memiliki akses ke jenis-jenis bahan, 771 00:33:02,000 --> 00:33:06,561 dicari, embeddable, hyperlinkable ke sumber daya terkait semua sebelumnya. 772 00:33:06,561 --> 00:33:09,560 Dalam hal topik, untuk memberikan rasa trajectory-- kursus ini 773 00:33:09,560 --> 00:33:12,365 dan beberapa hal ini mungkin jargon untuk sekarang, tapi tidak lama, yakinlah. 774 00:33:12,365 --> 00:33:15,010 Kita akan mulai hari ini, akhirnya, dengan melihat satu pemrograman 775 00:33:15,010 --> 00:33:16,260 bahasa yang disebut Scratch. 776 00:33:16,260 --> 00:33:19,380 Kami akan transisi setelahnya minggu depan untuk sesuatu yang disebut C 777 00:33:19,380 --> 00:33:22,140 dan kemudian melihat bangunan lainnya blok untuk memecahkan masalah, 778 00:33:22,140 --> 00:33:26,230 hal yang disebut array dan algoritma, bagaimana kita menggunakan memori untuk keuntungan kami 779 00:33:26,230 --> 00:33:28,326 dan kelemahan, dan hal-hal seperti struktur data, 780 00:33:28,326 --> 00:33:31,200 dan kemudian menuju ujung ekor kelas melihat mesin belajar 781 00:33:31,200 --> 00:33:33,410 dan melihat yang lain bahasa disebut Python, 782 00:33:33,410 --> 00:33:37,460 bagaimana web bekerja, bagaimana internet semakin umumnya bekerja, protokol seperti HTTP, 783 00:33:37,460 --> 00:33:40,950 bahasa untuk database seperti SQL, JavaScript untuk web, 784 00:33:40,950 --> 00:33:43,000 dan akhirnya mengikat semua orang bersama-sama. 785 00:33:43,000 --> 00:33:44,708 >> Dan memang, di akhir hari, Anda 786 00:33:44,708 --> 00:33:50,250 tidak akan belajar di Scratch kelas ini atau C atau Python atau SQL atau JavaScript. 787 00:33:50,250 --> 00:33:53,560 Anda malah akan lebih umum belajar ilmu komputer dan dasar-dasar 788 00:33:53,560 --> 00:33:55,790 daripadanya, dan Anda akan belajar bagaimana program 789 00:33:55,790 --> 00:33:58,800 di sejumlah ini bahasa di sepanjang jalan. 790 00:33:58,800 --> 00:34:00,970 Jadi memang, salah satu tujuan kursus pada akhirnya 791 00:34:00,970 --> 00:34:04,160 adalah untuk melepas semua kursus ini roda-roda dengan minggu-minggu akhir 792 00:34:04,160 --> 00:34:06,710 sehingga setelah ini, Anda bisa kembali ke fields-- Anda sendiri 793 00:34:06,710 --> 00:34:08,510 apakah itu atau tidak ilmu komputer 794 00:34:08,510 --> 00:34:12,290 atau rekayasa, di alam ilmu, seni, humaniora, atau beyond-- 795 00:34:12,290 --> 00:34:14,720 dan membawa beberapa ini ide saja dan bidang ini 796 00:34:14,720 --> 00:34:17,400 ide-ide dan praktis keterampilan untuk domain Anda sendiri 797 00:34:17,400 --> 00:34:19,480 dalam rangka memecahkan masalah di dalamnya. 798 00:34:19,480 --> 00:34:22,990 >> Apa yang kita akan lakukan di sini sementara di sebagian Kamis setelah hari ini 799 00:34:22,990 --> 00:34:26,160 adalah dengan kepala kursus terkemuka apa yang akan kita sebut walkthrough 800 00:34:26,160 --> 00:34:27,620 masalah set kursus ini. 801 00:34:27,620 --> 00:34:29,610 Jadi setiap minggu ketika kita telah masalah set, kami akan 802 00:34:29,610 --> 00:34:32,900 berjalan melalui di lokasi seperti ini tantangan kursus ini, 803 00:34:32,900 --> 00:34:35,582 menawarkan beberapa tips dan trik dan teknik desain. 804 00:34:35,582 --> 00:34:37,540 Tapi jika Anda tidak mampu untuk membuat orang-orang secara pribadi, 805 00:34:37,540 --> 00:34:39,760 menyadari mereka sama sumber daya akan tertanam 806 00:34:39,760 --> 00:34:41,590 oleh salah satu saja yang mengajar asisten 807 00:34:41,590 --> 00:34:43,860 dalam masalah set sendiri, juga. 808 00:34:43,860 --> 00:34:47,124 >> Masalahnya set tahun ini, tidak seperti tahun lalu, berdasarkan umpan balik, 809 00:34:47,124 --> 00:34:48,540 masih akan dirilis pada hari Jumat. 810 00:34:48,540 --> 00:34:51,310 Tapi bukannya karena berikutnya Jumat, 811 00:34:51,310 --> 00:34:55,079 sehingga memberikan Anda hanya tujuh hari, efektif akan jatuh tempo 10 hari kemudian. 812 00:34:55,079 --> 00:34:57,620 Dan memang, ini akan berarti bahwa mereka akan tumpang tindih dengan akhir pekan. 813 00:34:57,620 --> 00:34:59,369 Tapi kami berharap tahun ini terutama ini akan 814 00:34:59,369 --> 00:35:02,320 memungkinkan siswa untuk lebih mengakomodasi pasang surut dalam jadwal mereka, 815 00:35:02,320 --> 00:35:05,040 apakah itu akademisi atau ekstrakurikuler atau atletik 816 00:35:05,040 --> 00:35:06,280 atau musim ujian tengah semester. 817 00:35:06,280 --> 00:35:10,060 Anda dapat front load atau back-beban minggu Anda berfokus pada CS50 berdasarkan 818 00:35:10,060 --> 00:35:12,400 pada beban saja sebenarnya minggu Anda sendiri. 819 00:35:12,400 --> 00:35:14,990 >> Masalahnya menetapkan sendiri akan mencakup berbagai bahasa, 820 00:35:14,990 --> 00:35:17,990 meskipun kami akan fokus terutama awal di C 821 00:35:17,990 --> 00:35:23,040 sebelum kita fokus sesudahnya lebih tinggi tingkat, lebih bahasa web-centric. 822 00:35:23,040 --> 00:35:25,970 Dan kemudian beberapa FAQ di sini- Anda harus mengambil kelas seperti CS50 823 00:35:25,970 --> 00:35:26,900 sebagai tahun pertama? 824 00:35:26,900 --> 00:35:27,970 Jadi benar-benar. 825 00:35:27,970 --> 00:35:30,470 Dan memang, itu tidak tentu sesuatu 826 00:35:30,470 --> 00:35:34,440 Anda harus menunda sampai Anda telah memotong gigi Anda pada jenis lain kelas. 827 00:35:34,440 --> 00:35:36,290 Melainkan, pertimbangkan bahwa bagi banyak siswa, 828 00:35:36,290 --> 00:35:39,040 termasuk saya sendiri kembali pada hari, ini adalah bidang yang sangat asing, 829 00:35:39,040 --> 00:35:40,997 terutama jika Anda tidak pernah mengambil CSA AP 830 00:35:40,997 --> 00:35:42,580 atau sesuatu seperti itu di sekolah tinggi. 831 00:35:42,580 --> 00:35:44,705 Tapi menyadari bahwa sejak awal, apakah itu kursus ini 832 00:35:44,705 --> 00:35:47,900 atau pengantar saja lain, sekarang memang waktu terbaik, 833 00:35:47,900 --> 00:35:52,082 Saya pikir, untuk menemukan beberapa jalan baru atau beberapa kepentingan akademis baru, juga. 834 00:35:52,082 --> 00:35:55,040 Dan kemudian mengambil dengan courses-- lainnya sehingga salah satu perbedaan kunci di sini 835 00:35:55,040 --> 00:35:57,906 dibandingkan Harvard adalah bahwa kita hanya mengambil empat program per semester 836 00:35:57,906 --> 00:35:59,030 di Harvard untuk beberapa alasan. 837 00:35:59,030 --> 00:36:01,494 Dan kalian benar-benar menarik off sekitar 36 kursus di total 838 00:36:01,494 --> 00:36:04,410 selama empat tahun Anda, yang berarti umumnya empat atau lima 839 00:36:04,410 --> 00:36:05,040 kelas. 840 00:36:05,040 --> 00:36:08,367 Dan saya pikir itu cukup adil untuk mengatakan dan untuk melepaskan CS50, dengan desain, adalah 841 00:36:08,367 --> 00:36:10,700 mungkin bukan jenis kelas bahwa Anda harus biasanya 842 00:36:10,700 --> 00:36:13,680 mengambil dengan empat lainnya kursus untuk total lima 843 00:36:13,680 --> 00:36:16,249 karena psets yang oleh desain yang cukup intensif. 844 00:36:16,249 --> 00:36:18,040 Memang, aku juga belajar ini kembali pada hari. 845 00:36:18,040 --> 00:36:21,110 Saya tidak akan menjelaskan CS50 dan ilmu komputer, pemrograman 846 00:36:21,110 --> 00:36:24,477 sebagai begitu banyak keras seperti itu hanya memakan waktu. 847 00:36:24,477 --> 00:36:26,560 Ini bukan jenis hal di mana setelah makan malam, Anda 848 00:36:26,560 --> 00:36:28,310 dapat kembali ke asrama Anda kamar, duduk, dan mulai 849 00:36:28,310 --> 00:36:29,710 berfokus pada pset yang berpikir, baiklah, 850 00:36:29,710 --> 00:36:31,340 Aku akan bang keluar malam ini dan kemudian bergerak 851 00:36:31,340 --> 00:36:33,000 pada subjek berikutnya pada hari berikutnya. 852 00:36:33,000 --> 00:36:34,450 Kadang-kadang Anda hanya menabrak dinding. 853 00:36:34,450 --> 00:36:35,690 Anda memiliki bug dalam kode Anda. 854 00:36:35,690 --> 00:36:37,900 Anda tidak perlu tahu bagaimana memecahkan beberapa masalah. 855 00:36:37,900 --> 00:36:41,670 Dan salah satu fitur kunci dari pemrograman untuk diriku sendiri untuk hari ini 856 00:36:41,670 --> 00:36:44,480 adalah Anda hanya jenis perlu mengambil langkah mundur kadang-kadang, tidur di atasnya 857 00:36:44,480 --> 00:36:47,870 atau berpikir tentang itu selama kursus dari joging atau kegiatan lainnya, 858 00:36:47,870 --> 00:36:49,240 dan kemudian kembali ke segar. 859 00:36:49,240 --> 00:36:50,930 Dan Anda hanya perlu jendela ini waktu. 860 00:36:50,930 --> 00:36:52,910 >> Dan memang, itulah sebabnya kami telah diperpanjang jumlah waktu 861 00:36:52,910 --> 00:36:55,710 tersedia untuk set masalah tahun ini dan juga, per URL yang 862 00:36:55,710 --> 00:36:57,950 Saya memasang sebelumnya untuk Apa yang baru semester ini, 863 00:36:57,950 --> 00:37:00,950 dipangkas masalah set sehingga mereka secara fundamental tidak kurang ketat, 864 00:37:00,950 --> 00:37:03,741 dan takeaways yang tidak kalah, tapi ada banyak hal yang kurang depan, 865 00:37:03,741 --> 00:37:07,630 sebuah kerja keras jauh lebih sedikit yang perlu Anda lakukan di depan setiap masalah set, 866 00:37:07,630 --> 00:37:10,680 Anda akan melihat, sebelum Anda dapat benar-benar menyelam ke dalam daging itu. 867 00:37:10,680 --> 00:37:13,500 Jadi menyadari bahwa mereka dan lainnya perubahan di cakrawala 868 00:37:13,500 --> 00:37:16,490 untuk lebih mengakomodasi siswa, tapi akhirnya memastikan 869 00:37:16,490 --> 00:37:18,860 bahwa takeaways yang memang setinggi mungkin. 870 00:37:18,860 --> 00:37:21,330 Jadi sementara lebih banyak pekerjaan daripada mungkin dalam kelas yang khas, 871 00:37:21,330 --> 00:37:25,120 kami berharap bahwa hasil untuk Anda dan takeaways untuk Anda 872 00:37:25,120 --> 00:37:27,490 dan keterampilan dan ide-ide dengan yang Anda keluar 873 00:37:27,490 --> 00:37:29,921 adalah semua lebih menarik sebagai hasilnya. 874 00:37:29,921 --> 00:37:32,420 Dan untuk mendapatkan Anda there-- dan ini adalah salah satu takeaways kunci, 875 00:37:32,420 --> 00:37:35,470 sebagai Patrick disinggung earlier-- adalah struktur dukungan kursus ini. 876 00:37:35,470 --> 00:37:39,720 Jadi tidak hanya CS50 memiliki salah satu staf saja terbesar di kampus. 877 00:37:39,720 --> 00:37:41,750 Ini juga memiliki salah satu kebanyakan sarjana. 878 00:37:41,750 --> 00:37:43,700 Memang, CS50 tahun lalu adalah kelas pertama 879 00:37:43,700 --> 00:37:45,366 memiliki staf pengajar sarjana. 880 00:37:45,366 --> 00:37:48,570 Dan bukti kesuksesan itu lakukan sekarang banyak program lain dalam Yale CS 881 00:37:48,570 --> 00:37:49,500 memiliki itu, juga. 882 00:37:49,500 --> 00:37:52,906 Dan bagi siswa, khususnya, akan TA ini dan tentu saja asisten 883 00:37:52,906 --> 00:37:55,030 menjadi pendukung keseluruhan jaringan sumber daya dukungan, 884 00:37:55,030 --> 00:37:58,250 di antara mereka bagian atau tilawah, peluang mingguan 885 00:37:58,250 --> 00:38:01,674 untuk berdiskusi lebih intim dan ulasan tentang materi yang ditargetkan 886 00:38:01,674 --> 00:38:04,590 untuk trek yang berbeda, untuk siswa kurang nyaman, lebih nyaman, 887 00:38:04,590 --> 00:38:05,720 atau suatu tempat di antara. 888 00:38:05,720 --> 00:38:08,886 Ini akan mengikuti ketersediaan ceramah oleh beberapa hari setiap minggu 889 00:38:08,886 --> 00:38:09,970 pada hari Senin dan Selasa. 890 00:38:09,970 --> 00:38:11,970 Dan kemudian kantor hours-- satu-satu peluang 891 00:38:11,970 --> 00:38:15,490 bantuan dari kursus CA dan TA akan pada hari Rabu dan Kamis 892 00:38:15,490 --> 00:38:18,400 dan Minggu di beberapa kali, yang semuanya 893 00:38:18,400 --> 00:38:22,180 akan diposting di website saja ini, bahkan lebih dari tahun lalu, juga. 894 00:38:22,180 --> 00:38:25,501 >> Tapi apa kunci untuk CS50, jika tidak diakui sedikit tidak biasa, 895 00:38:25,501 --> 00:38:27,750 adalah budaya saja yang kita sudah mencoba untuk menumbuhkan, 896 00:38:27,750 --> 00:38:30,672 baik di Cambridge selama bertahun-tahun dan sekarang yang paling baru di New Haven. 897 00:38:30,672 --> 00:38:33,130 Dan pada kenyataannya, datang ini Sabtu, jika Anda belum pernah mendengar, 898 00:38:33,130 --> 00:38:36,410 adalah CS50 Puzzle Day, yang memiliki tidak ada hubungannya dengan ilmu komputer 899 00:38:36,410 --> 00:38:39,430 tapi seluruhnya dirancang untuk mengirim pesan bahwa ilmu komputer 900 00:38:39,430 --> 00:38:40,665 tentang pemecahan masalah. 901 00:38:40,665 --> 00:38:43,540 Dan memang, jika Anda ingin pasangan dengan satu atau dua atau tiga teman 902 00:38:43,540 --> 00:38:46,150 dan membentuk tim untuk CS50 Teka-teki Day, kita lihat 903 00:38:46,150 --> 00:38:48,010 di iklan yang di jalan keluar. 904 00:38:48,010 --> 00:38:51,582 Dan tiga jam dari pizza dan teka-teki dan hadiah menanti. 905 00:38:51,582 --> 00:38:53,290 Dan memang, untuk pertama kalinya tahun ini, 906 00:38:53,290 --> 00:38:54,873 tidak akan diselenggarakan bersama-sama dengan Harvard. 907 00:38:54,873 --> 00:38:57,530 Ini akan berada di sini secara independen di Yale. 908 00:38:57,530 --> 00:38:59,815 Sehingga mengawasi keluar untuk mereka jika Anda belum. 909 00:38:59,815 --> 00:39:02,440 Kebanyakan setiap hari Jumat di semester kita mencoba untuk membuat kelas besar 910 00:39:02,440 --> 00:39:06,710 merasa kecil dan membawa beberapa 50 siswa untuk makan siang dengan staf kursus ini, 911 00:39:06,710 --> 00:39:08,730 dengan alumni, teman dari industri untuk berbicara 912 00:39:08,730 --> 00:39:12,630 tentang seperti apa hidup ini setelah kelas seperti CS50 dan selama musim panas 913 00:39:12,630 --> 00:39:14,250 dan setelah lulus. 914 00:39:14,250 --> 00:39:16,280 Sehingga mengawasi keluar untuk undangan itu. 915 00:39:16,280 --> 00:39:17,988 Untuk pertama kalinya pernah tahun ini akan kita 916 00:39:17,988 --> 00:39:21,420 tahan pertama CS50 coding kontes, opsional opt-in kesempatan 917 00:39:21,420 --> 00:39:25,580 mid-semester, setelah kita semua memiliki beberapa enam atau tujuh minggu pemrograman 918 00:39:25,580 --> 00:39:30,100 di C di bawah ikat pinggang mereka untuk bersaing, jika Anda akan jadi choose-- lagi 919 00:39:30,100 --> 00:39:32,460 pada teams-- mencoba memecahkan banyak tantangan 920 00:39:32,460 --> 00:39:36,160 yang Anda bisa dalam pemrograman dengan teman dari Anda terhadap orang lain. 921 00:39:36,160 --> 00:39:38,850 >> Dan menuju ekor semester akan kita charter beberapa bus, 922 00:39:38,850 --> 00:39:40,850 benar-benar menghabiskan beberapa waktu di Cambridge, jika Anda lebih 923 00:39:40,850 --> 00:39:43,460 ingin bergabung dengan kami, untuk disebut-CS50 hackathon. 924 00:39:43,460 --> 00:39:44,600 Pada 19:00 kami akan mulai. 925 00:39:44,600 --> 00:39:45,970 Sekitar 9, kita akan memiliki pizza. 926 00:39:45,970 --> 00:39:47,650 Sekitar 01:00, kita akan memiliki burrito. 927 00:39:47,650 --> 00:39:50,550 Dan ada yang masih terjaga di perjalanan pulang naik bus sekitar 05:00, 928 00:39:50,550 --> 00:39:54,070 kami akan menghentikan off untuk pancake di IHOP di jalan home-- 929 00:39:54,070 --> 00:39:57,540 kesempatan 12 jam membenamkan diri dengan teman sekelas dan staf 930 00:39:57,540 --> 00:39:59,950 dalam tugas akhir kursus ini, yang merupakan kesempatan 931 00:39:59,950 --> 00:40:01,870 untuk pergi jauh melampaui Masalah set saja ini 932 00:40:01,870 --> 00:40:05,950 dan desain dan melaksanakan sebagian besar sesuatu yang menarik bagi Anda, 933 00:40:05,950 --> 00:40:09,170 yang pada akhirnya akan tampil di sini di Commons. 934 00:40:09,170 --> 00:40:12,510 Pertama adil yang pernah CS50 terakhir tahun, pameran akhir-semester 935 00:40:12,510 --> 00:40:15,460 atau perayaan apa yang semua orang di kelas telah dicapai, 936 00:40:15,460 --> 00:40:19,810 terutama yang, sekali lagi, yang pergi dari tidak ada sesuatu, dari nol sampai 60, 937 00:40:19,810 --> 00:40:22,450 tidak memiliki latar belakang sebelumnya dan menunjukkan, pada akhirnya, 938 00:40:22,450 --> 00:40:26,960 sesuatu untuk seluruh kampus dan, jika online, dunia untuk melihat, juga. 939 00:40:26,960 --> 00:40:30,780 >> Sekarang, ini di sini hanya beberapa dari TA dan CA yang membuat CS50 mungkin. 940 00:40:30,780 --> 00:40:33,034 Izinkan saya untuk mengundang dari para anggota staf 941 00:40:33,034 --> 00:40:35,700 yang ada di sini untuk datang di atas panggung, serta kepala kursus ini, 942 00:40:35,700 --> 00:40:38,785 menawarkan beberapa kata-kata inspirasi, juga. 943 00:40:38,785 --> 00:41:03,138 944 00:41:03,138 --> 00:41:03,950 >> ANDI: Hi, guys. 945 00:41:03,950 --> 00:41:05,290 Bisakah kalian mendengarku? 946 00:41:05,290 --> 00:41:10,260 Terima kasih untuk bergabung dengan kami dalam hal ini indah, hujan Kamis sore. 947 00:41:10,260 --> 00:41:11,010 Nama saya Andi. 948 00:41:11,010 --> 00:41:12,070 Aku junior di Berkeley. 949 00:41:12,070 --> 00:41:17,250 Dan bersama dengan Stelios dan musim panas, kami akan mengajar tiga kepala Anda 950 00:41:17,250 --> 00:41:19,277 asisten untuk tahun yang akan datang ini. 951 00:41:19,277 --> 00:41:21,110 Jadi, saya kira, menunjukkan hands-- berapa banyak dari Anda 952 00:41:21,110 --> 00:41:26,680 tidak punya niat untuk menjadi seorang CS utama atau benar-benar menyelam dalam-dalam 953 00:41:26,680 --> 00:41:29,930 dalam ilmu komputer sebagai utama di sini? 954 00:41:29,930 --> 00:41:30,520 Mengagumkan. 955 00:41:30,520 --> 00:41:32,730 Itu brilian. 956 00:41:32,730 --> 00:41:35,850 >> Jadi aku benar-benar urusan global dan ilmu kognitif utama. 957 00:41:35,850 --> 00:41:37,780 Aku benar-benar datang ke Yale dengan maksud 958 00:41:37,780 --> 00:41:42,199 tidak pernah harus melihat pada Jumlah lagi dalam hidup saya. 959 00:41:42,199 --> 00:41:44,990 Ketika saya datang ke Yale, ini adalah sesuatu yang tidak pernah di radar saya. 960 00:41:44,990 --> 00:41:46,460 Saya ingin belajar tentang puisi. 961 00:41:46,460 --> 00:41:48,500 Saya ingin belajar tentang urusan luar negeri. 962 00:41:48,500 --> 00:41:50,510 Saya ingin belajar tentang gambar cat air. 963 00:41:50,510 --> 00:41:53,360 Ya, kami menawarkan kelas pada gambar cat air. 964 00:41:53,360 --> 00:41:57,340 >> Tapi aku tidak pernah benar-benar tertarik dalam apa pun STEM terkait. 965 00:41:57,340 --> 00:41:59,620 Tapi kemudian lebih tua saya punya, semakin saya menyadari 966 00:41:59,620 --> 00:42:03,340 bahwa setiap bidang yang benar-benar dalam beberapa rasa mempekerjakan ilmu komputer, 967 00:42:03,340 --> 00:42:05,700 atau jika tidak ilmu komputer, komputasi. 968 00:42:05,700 --> 00:42:08,300 Bahkan, untuk global saya urusan proyek batu penjuru, 969 00:42:08,300 --> 00:42:12,020 kita menggunakan data analisis untuk menganalisis serangan teroris 970 00:42:12,020 --> 00:42:13,680 untuk Boko Haram di Nigeria. 971 00:42:13,680 --> 00:42:17,510 Dan seperti yang Anda lihat, terlepas apa utama Anda akhirnya mengejar 972 00:42:17,510 --> 00:42:21,640 atau apa minat Anda di sini di Yale adalah, pemrograman dan dasar-dasar 973 00:42:21,640 --> 00:42:24,130 apa pun keterampilan super berguna. 974 00:42:24,130 --> 00:42:29,840 Dan CS50 benar-benar baik dilengkapi untuk jenis meminjamkan banyak sumber daya 975 00:42:29,840 --> 00:42:32,060 Anda, terlepas dari bagaimana Anda nyaman 976 00:42:32,060 --> 00:42:34,590 atau bagaimana tertarik Anda dalam mengejar kelas. 977 00:42:34,590 --> 00:42:37,290 >> Musim panas akan berbicara sedikit sedikit tentang apa yang kalian 978 00:42:37,290 --> 00:42:39,635 akan belajar tentang tahun ini. 979 00:42:39,635 --> 00:42:40,510 SUMMER: Hi, semua orang. 980 00:42:40,510 --> 00:42:41,320 Aku Musim Panas Wu. 981 00:42:41,320 --> 00:42:43,090 Aku junior di Morse. 982 00:42:43,090 --> 00:42:48,100 Dan aku benar-benar mulai sebagai mahasiswa CS50 sendiri. 983 00:42:48,100 --> 00:42:51,460 Jadi tiga tahun lalu, aku berada di tahun kesenjangan. 984 00:42:51,460 --> 00:42:53,940 Aku tidak pernah mengambil CS kelas di sekolah tinggi, 985 00:42:53,940 --> 00:42:57,800 tapi saya pikir bahwa dalam waktu luang saya, itu akan keren untuk belajar bagaimana kode. 986 00:42:57,800 --> 00:43:02,610 Jadi saya melakukan pencarian Google cepat, mencari apa yang tersedia secara online, 987 00:43:02,610 --> 00:43:06,990 dan melihat video ini dengan Muppets dan DJ dan website keren. 988 00:43:06,990 --> 00:43:09,450 Aku seperti, saya ingin belajar bagaimana untuk melakukan itu. 989 00:43:09,450 --> 00:43:14,690 >> Jadi saya mengambil kursus, dan saya hanya jatuh cinta dengan hal itu. 990 00:43:14,690 --> 00:43:20,410 Tapi aku ingat begitu cemburu pada anak-anak yang bisa menghadiri hackathon ini, 991 00:43:20,410 --> 00:43:24,610 menghadiri Puzzle Day, menghadiri kantor jam, mendapatkan bantuan dari TA secara pribadi. 992 00:43:24,610 --> 00:43:27,410 Dan jadi saya tidak pernah membayangkan bahwa saya akan mendapatkan kesempatan 993 00:43:27,410 --> 00:43:30,640 untuk di sini terlibat dalam kursus yang pertama kali 994 00:43:30,640 --> 00:43:33,630 saya tertarik komputer ilmu pengetahuan dan adalah alasan mengapa 995 00:43:33,630 --> 00:43:35,690 Saya ilmu komputer besar hari ini. 996 00:43:35,690 --> 00:43:39,290 Jadi saya akan memperingatkan Anda, kelas ini akan meregangkan Anda. 997 00:43:39,290 --> 00:43:41,120 Ini akan menantang Anda. 998 00:43:41,120 --> 00:43:43,910 Tapi itu juga akan mengajarkan cara untuk melakukan hal-hal 999 00:43:43,910 --> 00:43:45,506 bahwa Anda tidak pernah membayangkan Anda bisa. 1000 00:43:45,506 --> 00:43:49,330 1001 00:43:49,330 --> 00:43:52,160 >> Stelios: Hi, semua orang. 1002 00:43:52,160 --> 00:43:53,510 Nama saya Stelios. 1003 00:43:53,510 --> 00:43:58,240 Saya seorang junior di Branford Perguruan tinggi dan besar CS. 1004 00:43:58,240 --> 00:44:01,640 Saya juga dari Athena, Yunani. 1005 00:44:01,640 --> 00:44:03,830 aku benar benar melihat kedepan untuk memenuhi semua Anda, 1006 00:44:03,830 --> 00:44:09,010 mengobrol dengan Anda di bagian, di jam kantor, di Jumat siang. 1007 00:44:09,010 --> 00:44:11,250 Saya sangat bersemangat karena kami telah menempatkan begitu banyak usaha 1008 00:44:11,250 --> 00:44:14,650 dalam menciptakan dukungan yang unik struktur untuk kalian semua 1009 00:44:14,650 --> 00:44:19,170 untuk membuat pengalaman Anda dengan kursus yang terbaik mungkin. 1010 00:44:19,170 --> 00:44:22,640 Dan saya berharap bahwa meskipun sebagian besar Anda mungkin tidak mengambil CS 1011 00:44:22,640 --> 00:44:27,310 Tentu saja sebelumnya, saya berharap itu CS50 untuk Anda adalah apa yang memicu minat 1012 00:44:27,310 --> 00:44:30,260 untuk lebih mengejar komputer ilmu di masa depan, 1013 00:44:30,260 --> 00:44:33,270 seperti yang telah dilakukan dengan begitu banyak orang di masa lalu. 1014 00:44:33,270 --> 00:44:36,740 Jadi terima kasih untuk menjadi di sini, senang melihat Anda. 1015 00:44:36,740 --> 00:44:38,487 Jason Hirschhorn. 1016 00:44:38,487 --> 00:44:39,820 JASON Hirschhorn: Hi, semua orang. 1017 00:44:39,820 --> 00:44:41,700 Nama saya Jason Hirschhorn. 1018 00:44:41,700 --> 00:44:43,050 Saya tinggal di Silliman. 1019 00:44:43,050 --> 00:44:46,910 Dan aku pergi ke Harvard sebagai undergrad dan mengambil jurusan IPS 1020 00:44:46,910 --> 00:44:48,870 dan juga mempelajari ilmu komputer. 1021 00:44:48,870 --> 00:44:53,100 Dan salah satu peran utama saya di sini adalah untuk mendukung staf ini indah 1022 00:44:53,100 --> 00:44:54,630 karena mereka mendukung Anda semua. 1023 00:44:54,630 --> 00:44:56,410 Bahkan, hal ini tidak semua dari mereka. 1024 00:44:56,410 --> 00:45:01,230 Ada 55 mahasiswa dan lulusan di sini untuk mendukung Anda semua. 1025 00:45:01,230 --> 00:45:04,420 Dan aku yakin salah satu yang terbaik bagian saja untuk Anda 1026 00:45:04,420 --> 00:45:08,080 semua semakin untuk bekerja dengan mereka, mengenal mereka, 1027 00:45:08,080 --> 00:45:12,389 mendapatkan untuk melihat mereka, baik dalam CS50 dan di luar CS50 semester ini 1028 00:45:12,389 --> 00:45:13,680 dan bagi banyak semester yang akan datang. 1029 00:45:13,680 --> 00:45:16,770 Jadi mudah-mudahan Anda akan mengambil Tentu saja karena mudah-mudahan Anda 1030 00:45:16,770 --> 00:45:21,060 bisa berinteraksi dengan Staf indah kita di atas panggung. 1031 00:45:21,060 --> 00:45:24,977 >> SPEAKER: Nah, biarkan aku menyelesaikan dengan mengatakan itu akan menyenangkan. 1032 00:45:24,977 --> 00:45:26,810 DAVID Malan: Yah, terima kasih kepada tim kami seluruh. 1033 00:45:26,810 --> 00:45:29,610 Izinkan saya untuk meredupkan lampu dan memungkinkan lagi dari tim kami, 1034 00:45:29,610 --> 00:45:32,890 baik dari Cambridge dan New Haven, untuk menyapa sebagai orang-orang mengajukan off. 1035 00:45:32,890 --> 00:45:36,130 Dan setelah itu akan kita transisi ke yang pertama dari keterlibatan program kami 1036 00:45:36,130 --> 00:45:37,584 dengan bahasa ini disebut Scratch. 1037 00:45:37,584 --> 00:45:38,500 Jadi terima kasih untuk tim. 1038 00:45:38,500 --> 00:45:40,770 Mari kita meredupkan lampu dan mendengar dari beberapa orang lain. 1039 00:45:40,770 --> 00:45:44,207 >> [TEPUK TANGAN] 1040 00:45:44,207 --> 00:45:45,680 1041 00:45:45,680 --> 00:45:48,140 >> [VIDEO PEMUTARAN] 1042 00:45:48,140 --> 00:45:53,210 >> -The Misi CS50 adalah untuk membuat Anda lebih nyaman dengan cara yang sama sekali baru 1043 00:45:53,210 --> 00:45:54,947 berpikir, pola pikir komputasi ini. 1044 00:45:54,947 --> 00:45:56,780 -itu Membuat ilmu komputer menarik, yang 1045 00:45:56,780 --> 00:46:00,241 adalah sesuatu yang saya tidak benar-benar menyadari mungkin sampai aku mengambil kelas. 1046 00:46:00,241 --> 00:46:00,990 -I Seperti, whoa. 1047 00:46:00,990 --> 00:46:04,120 Aku benar-benar menerjemahkan pikiran saya ke dalam komputer sekarang. 1048 00:46:04,120 --> 00:46:07,970 >> -bahkan Jika Anda tidak memiliki latar belakang dalam ilmu komputer atau pengalaman, 1049 00:46:07,970 --> 00:46:10,140 ini sebenarnya adalah kelas untuk Anda. 1050 00:46:10,140 --> 00:46:12,250 >> -Jadi Saya pasti ingin siswa saya hanya 1051 00:46:12,250 --> 00:46:14,350 mendapatkan bersemangat tentang ilmu komputer. 1052 00:46:14,350 --> 00:46:17,187 Tidak hanya pemrograman, tapi berpikir seperti seorang ilmuwan komputer 1053 00:46:17,187 --> 00:46:19,270 adalah benar-benar apa yang saya ingin mencoba untuk mengajar mahasiswa saya. 1054 00:46:19,270 --> 00:46:21,560 >> -CS50 Sulit dan bermanfaat. 1055 00:46:21,560 --> 00:46:22,592 >> -Sebuah pengalaman. 1056 00:46:22,592 --> 00:46:23,456 >> -Extravaganza. 1057 00:46:23,456 --> 00:46:26,350 >> -Ini Yang membawa kita ke tingkat berikutnya. 1058 00:46:26,350 --> 00:46:28,850 >> [MUSIC PLAYING] 1059 00:46:28,850 --> 00:46:32,167 >> -The TF adalah, saya pikir, darah kehidupan dari kursus. 1060 00:46:32,167 --> 00:46:34,560 >> -Saya Bersemangat untuk memiliki siswa saya, saya membantu 1061 00:46:34,560 --> 00:46:38,027 memiliki momen aha untuk mewujudkan apa yang mereka benar-benar mencoba 1062 00:46:38,027 --> 00:46:39,610 yang harus dilakukan, untuk mengetahui bagaimana melakukan pset a. 1063 00:46:39,610 --> 00:46:41,438 >> -CS50 Pasti kursus keras. 1064 00:46:41,438 --> 00:46:43,960 Tapi seperti yang lain Tentu saja benar-benar di Yale, 1065 00:46:43,960 --> 00:46:45,759 memiliki besar seperti, komunitas yang mendukung. 1066 00:46:45,759 --> 00:46:47,550 -Anda Benar-benar tidak perlu tahu apa-apa 1067 00:46:47,550 --> 00:46:49,341 tentang coding untuk bisa untuk mengambil kursus. 1068 00:46:49,341 --> 00:46:52,270 -itu Menakjubkan untuk menonton seberapa jauh orang datang dalam satu semester. 1069 00:46:52,270 --> 00:46:55,610 >> -Anda Tidak sendirian duduk di kamar Anda belajar kode, 1070 00:46:55,610 --> 00:46:57,170 tapi itu lebih dari sekedar kelas. 1071 00:46:57,170 --> 00:46:58,044 Itu adalah pengalaman. 1072 00:46:58,044 --> 00:47:02,500 -Cara terbaik untuk belajar konsep dan untuk memproses mereka adalah dengan mengajarkan orang lain. 1073 00:47:02,500 --> 00:47:04,033 >> -Apa Adalah perpecahan telepon? 1074 00:47:04,033 --> 00:47:06,934 >> [MUSIC PLAYING] 1075 00:47:06,934 --> 00:47:08,080 >> -dan Ini CS50. 1076 00:47:08,080 --> 00:47:10,810 >> [MUSIC PLAYING] 1077 00:47:10,810 --> 00:47:11,720 1078 00:47:11,720 --> 00:47:12,380 >> -Ini Adalah CS50. 1079 00:47:12,380 --> 00:47:13,446 >> -Got Masalah? 1080 00:47:13,446 --> 00:47:14,852 Merobeknya di setengah. 1081 00:47:14,852 --> 00:47:15,804 >> [MUSIC PLAYING] 1082 00:47:15,804 --> 00:47:18,184 >> Membuangnya. 1083 00:47:18,184 --> 00:47:19,520 >> DAVID Malan: Baiklah. 1084 00:47:19,520 --> 00:47:23,190 Jadi mari kita tackle-- dalam sedikit bit, kebetulan, itu 1085 00:47:23,190 --> 00:47:25,270 menjadi tradisi ini untuk beberapa alasan selama 10 tahun 1086 00:47:25,270 --> 00:47:27,260 untuk melayani kue di mulai dan akhir CS50. 1087 00:47:27,260 --> 00:47:30,800 Jadi menunggu Anda di akhir hari ini, selain silabus, 1088 00:47:30,800 --> 00:47:34,270 akan ada beberapa kue juga, dan staf saja untuk menyapa. 1089 00:47:34,270 --> 00:47:37,110 Tapi sekarang, mari kita transisi ke pertama bahasa kita, di mana 1090 00:47:37,110 --> 00:47:40,970 kami akan menghabiskan benar-benar hanya seminggu dan satu Masalah ditetapkan pada domain ini, Scratch. 1091 00:47:40,970 --> 00:47:43,160 Dan Anda akan menemukan jika Anda sudah diprogram sebelumnya, banyak 1092 00:47:43,160 --> 00:47:46,280 dari ide-ide dan kemungkinan yang akrab bagi Anda. 1093 00:47:46,280 --> 00:47:48,160 Tapi Anda akan menemukan bahwa itu menyenangkan sepanjang jalan 1094 00:47:48,160 --> 00:47:51,201 untuk mencari tahu persis bagaimana untuk menerjemahkan beberapa ide Anda sudah tahu 1095 00:47:51,201 --> 00:47:53,852 lingkungan tertentu untuk benar-benar mengesankan keluarga Anda 1096 00:47:53,852 --> 00:47:57,060 dan teman-teman dengan pekerjaan Anda, yang dapat online, jika Anda memilih demikian, sesudahnya. 1097 00:47:57,060 --> 00:47:58,851 >> Dan jika Anda tidak memiliki pengalaman sebelumnya dan 1098 00:47:58,851 --> 00:48:01,540 antara mayoritas siswa kurang nyaman, 1099 00:48:01,540 --> 00:48:05,320 menyadari bahwa banyak ide kita hanya dieksplorasi dengan hal-hal reality-- 1100 00:48:05,320 --> 00:48:07,970 seperti buku telepon dan kehadiran dan forth-- menerjemahkan 1101 00:48:07,970 --> 00:48:12,280 cukup baik untuk komputer, tapi tidak jika Anda menggunakan, 1102 00:48:12,280 --> 00:48:13,710 awalnya, bahasa seperti ini. 1103 00:48:13,710 --> 00:48:16,290 Jadi ini adalah program yang ditulis dalam bahasa disebut C. 1104 00:48:16,290 --> 00:48:18,590 Dan kita akan menghabiskan cukup sedikit waktu di C, akhirnya. 1105 00:48:18,590 --> 00:48:22,560 Tapi kemungkinan besar, ini akan terlihat sedikit samar kepada Anda pada pandangan pertama. 1106 00:48:22,560 --> 00:48:25,760 Bahkan, ada banyak aneh sintaks, kurung, kurung sudut, 1107 00:48:25,760 --> 00:48:27,422 kurung kurawal, kutipan, dan titik koma. 1108 00:48:27,422 --> 00:48:29,880 Dan memang, jika Anda menyelam ke pemrograman untuk pertama kalinya 1109 00:48:29,880 --> 00:48:33,420 melihat dan mencoba untuk membuat hal-hal seperti ini, jujur, Anda mendapatkan begitu terperosok 1110 00:48:33,420 --> 00:48:36,500 begitu sering hanya bodoh minutia yang tidak ada 1111 00:48:36,500 --> 00:48:38,240 intelektual yang menarik tentang hal itu. 1112 00:48:38,240 --> 00:48:40,980 >> Tapi bayangkan jika Anda bisa membuat program-- sama yang, 1113 00:48:40,980 --> 00:48:46,200 Anda mungkin jenis menyimpulkan, mungkin cetakan "Halo, dunia" entah bagaimana. 1114 00:48:46,200 --> 00:48:49,850 Kita bisa menyaring ide yang sama ke hanya dua potongan puzzle, jika Anda mau. 1115 00:48:49,850 --> 00:48:52,850 Memang, Scratch menarik karena itu bahasa grafis ini. 1116 00:48:52,850 --> 00:48:56,110 Anda dapat drag dan drop ini potongan teka-teki yang hanya interlock 1117 00:48:56,110 --> 00:48:57,940 apakah masuk akal logis untuk melakukannya. 1118 00:48:57,940 --> 00:48:59,830 Dan di Scratch, kita akan segera melihat, ini adalah 1119 00:48:59,830 --> 00:49:03,460 bagaimana Anda akan menerapkan bahwa sama Program, dengan hanya dua potongan teka-teki 1120 00:49:03,460 --> 00:49:05,420 yang cukup banyak melakukan apa yang mereka katakan. 1121 00:49:05,420 --> 00:49:08,870 >> Tapi kita akan melihat dalam beberapa saat bahwa beberapa dari blok bangunan yang kita singgung 1122 00:49:08,870 --> 00:49:12,140 untuk awal dan beberapa lagi adalah semua yang akhirnya akan membentuk 1123 00:49:12,140 --> 00:49:13,460 beberapa program kami yang paling awal. 1124 00:49:13,460 --> 00:49:15,460 Kita akan memiliki hal-hal seperti functions-- hanya 1125 00:49:15,460 --> 00:49:18,034 tindakan yang melakukan sesuatu, seperti menyapa, dunia. 1126 00:49:18,034 --> 00:49:20,200 Kita akan memiliki loop, hal yang menyebabkan siklus 1127 00:49:20,200 --> 00:49:23,210 lagi dan lagi, sama seperti kita melakukan beberapa saat yang lalu dengan pencarian 1128 00:49:23,210 --> 00:49:24,110 untuk Mike Smith. 1129 00:49:24,110 --> 00:49:27,190 Variabel, seperti dalam aljabar, jika Anda memiliki x atau y, yang dapat menyimpan nomor. 1130 00:49:27,190 --> 00:49:29,940 Nah, dalam program, Anda benar-benar bisa menyimpan lebih dari sekedar angka. 1131 00:49:29,940 --> 00:49:34,290 Anda dapat menyimpan kata-kata dan kalimat dan grafis dan hal-hal lain masih. 1132 00:49:34,290 --> 00:49:37,530 ekspresi Boolean, hanya questions-- ya atau tidak, benar atau salah. 1133 00:49:37,530 --> 00:49:40,680 Kondisi, pengambilan keputusan berdasarkan pada jawaban ya / tidak. 1134 00:49:40,680 --> 00:49:43,890 >> Dan hal itu lebih menarik seperti array dan benang dan acara 1135 00:49:43,890 --> 00:49:46,100 dan sejumlah lainnya fitur, tapi semua yang 1136 00:49:46,100 --> 00:49:48,670 peta sangat baik untuk sangat blok ramah seperti ini. 1137 00:49:48,670 --> 00:49:52,736 Ini akan menjadi fungsi, potongan puzzle ungu yang hanya mengatakan 1138 00:49:52,736 --> 00:49:54,717 apa namanya is-- dalam kasus ini, mengatakan. 1139 00:49:54,717 --> 00:49:56,550 Dan kemudian sering, ada kotak putih yang Anda 1140 00:49:56,550 --> 00:49:58,550 dapat mengetik atau tarik beberapa nilai dalam. 1141 00:49:58,550 --> 00:50:01,370 Dan itulah yang umumnya disebut argumen atau parameter. 1142 00:50:01,370 --> 00:50:04,110 Ini adalah cara mengubah perilaku default teka-teki 1143 00:50:04,110 --> 00:50:07,530 sepotong atau fungsi sehingga tidak sesuatu yang khusus untuk Anda seperti mengatakan, 1144 00:50:07,530 --> 00:50:12,570 halo, dunia atau Halo, Andy atau Halo, Jason atau beberapa kalimat lain sebagai gantinya. 1145 00:50:12,570 --> 00:50:15,830 >> Jika Anda ingin mengatakan bahwa lot-- harfiah forever-- 1146 00:50:15,830 --> 00:50:18,142 Anda dapat mengambil lain potongan puzzle yang disebut selamanya 1147 00:50:18,142 --> 00:50:20,100 dan hanya terjepit tersebut dua bersama-sama seperti ini. 1148 00:50:20,100 --> 00:50:24,090 Dan bahwa loop, seperti gambar menunjukkan, berarti hanya menyapa, dunia selamanya, 1149 00:50:24,090 --> 00:50:25,810 lagi dan lagi dan lagi. 1150 00:50:25,810 --> 00:50:28,840 Atau, jika Anda hanya ingin melakukan itu jumlah terbatas kali, seperti 50 kali, 1151 00:50:28,840 --> 00:50:32,050 ada akan menjadi teka-teki lain buah untuk itu-- ulangi 50 kali. 1152 00:50:32,050 --> 00:50:34,190 >> Sementara itu, jika Anda ingin memiliki variabel 1153 00:50:34,190 --> 00:50:36,090 dalam bahasa ini kita sekitar untuk bermain dengan, 1154 00:50:36,090 --> 00:50:37,880 Anda dapat menggunakan blok oranye seperti ini. 1155 00:50:37,880 --> 00:50:40,750 Dan variabel ini saya sewenang-wenang disebut i untuk integer. 1156 00:50:40,750 --> 00:50:42,290 Dan aku hanya mengatur itu sama dengan 0. 1157 00:50:42,290 --> 00:50:44,780 Dan jadi mungkin saya, dalam hal ini case-- ini variable-- 1158 00:50:44,780 --> 00:50:46,630 merupakan skor seseorang dalam sebuah permainan. 1159 00:50:46,630 --> 00:50:49,680 Anda mulai dari nol, dan setiap kali Anda membuat tujuan atau sesuatu seperti itu, 1160 00:50:49,680 --> 00:50:51,270 Anda mendapatkan satu poin tambahan. 1161 00:50:51,270 --> 00:50:52,830 >> Anda dapat mengajukan pertanyaan di Scratch. 1162 00:50:52,830 --> 00:50:55,390 Jika kita drag dan drop puzzle potongan di saat seperti ini, 1163 00:50:55,390 --> 00:50:58,470 Anda dapat mengajukan pertanyaan seperti, baik, adalah saya kurang dari 50? 1164 00:50:58,470 --> 00:51:00,060 Mungkin Anda perlu 50 poin untuk menang. 1165 00:51:00,060 --> 00:51:01,893 Dan jadi ini akan menjadi pertanyaan Anda akan bertanya. 1166 00:51:01,893 --> 00:51:04,030 Atau, lebih umum, Anda bisa katakan adalah x kurang dari y, 1167 00:51:04,030 --> 00:51:05,780 di mana ada dua variabel yang terlibat? 1168 00:51:05,780 --> 00:51:08,320 Sekarang, yang satu ini banyak lebih besar pada pandangan pertama, 1169 00:51:08,320 --> 00:51:11,470 tapi benar-benar tidak semua yang lebih kompleks. 1170 00:51:11,470 --> 00:51:15,390 >> Ini hanya kombinasi kondisi dan variabel 1171 00:51:15,390 --> 00:51:19,370 dan ekspresi Boolean untuk bertanya tiga questions-- adalah x kurang dari y? 1172 00:51:19,370 --> 00:51:20,660 Jika demikian, katakan demikian. 1173 00:51:20,660 --> 00:51:22,170 Katakanlah, x kurang dari y. 1174 00:51:22,170 --> 00:51:26,571 Yang lain, jika x lebih besar dari y, lain x harus sama dengan y. 1175 00:51:26,571 --> 00:51:29,070 Dan sedangkan dengan Mike Smith, ada empat skenario, di sini 1176 00:51:29,070 --> 00:51:32,270 dalam dunia angka, x adalah baik kurang dari, lebih besar dari, atau sama dengan. 1177 00:51:32,270 --> 00:51:34,531 Semua yang kita miliki adalah tiga garpu di jalan. 1178 00:51:34,531 --> 00:51:36,530 Dan kemudian ada yang lebih menarik potongan teka-teki seperti ini 1179 00:51:36,530 --> 00:51:39,613 untuk hal-hal seperti array, di mana kami akan dapat menyimpan informasi. 1180 00:51:39,613 --> 00:51:43,590 Kita akan melihat blok yang memungkinkan kita untuk melaksanakan beberapa benang, 1181 00:51:43,590 --> 00:51:46,620 Fitur lain kita akan menggunakan, dan kemudian juga sesuatu yang disebut peristiwa. 1182 00:51:46,620 --> 00:51:49,390 Tapi sebelum kita mendapatkan itu titik dan membuat bahkan, 1183 00:51:49,390 --> 00:51:52,000 akhirnya, kebiasaan kami sendiri potongan puzzle, mari kita 1184 00:51:52,000 --> 00:51:53,950 benar-benar membuka program itu sendiri. 1185 00:51:53,950 --> 00:51:54,860 >> Jadi ini adalah Scratch. 1186 00:51:54,860 --> 00:51:57,490 Ini tersedia di scratch.mit.edu. 1187 00:51:57,490 --> 00:51:59,650 Dan Anda dipersilakan untuk bermain sekarang atau nanti, juga. 1188 00:51:59,650 --> 00:52:01,330 Hal ini terjadi untuk menjadi versi offline. 1189 00:52:01,330 --> 00:52:03,129 Bagi orang-orang yang tidak tentu memiliki internet besar, 1190 00:52:03,129 --> 00:52:04,962 Anda dapat men-download software yang sama, juga. 1191 00:52:04,962 --> 00:52:07,460 Dan ada benar-benar hanya tiga komponen perangkat lunak ini. 1192 00:52:07,460 --> 00:52:10,860 Di sudut kiri atas layar adalah semacam panggung 1193 00:52:10,860 --> 00:52:13,800 bahwa Scratch, yang secara default tampak seperti kucing, tinggal di dalam. 1194 00:52:13,800 --> 00:52:16,799 Dia bisa bergerak ke atas, bawah, kiri, dan kanan dan melakukan sejumlah hal-hal lain, 1195 00:52:16,799 --> 00:52:20,520 dan dapat melihat sejumlah cara berdasarkan pada kostum yang Anda tetapkan untuk dirinya. 1196 00:52:20,520 --> 00:52:22,980 Tapi ini adalah apa yang akan kita sebut sprite, semacam karakter. 1197 00:52:22,980 --> 00:52:25,429 Dan Anda dapat memiliki beberapa karakter, seperti yang kita akan segera melihat. 1198 00:52:25,429 --> 00:52:30,060 >> Di tengah sekarang semua teka-teki ini potongan dan kategori atau palet 1199 00:52:30,060 --> 00:52:30,900 daripadanya. 1200 00:52:30,900 --> 00:52:32,429 Jadi sekarang, saya mengklik Motion. 1201 00:52:32,429 --> 00:52:35,900 Dan jadi aku melihat semua gerak-terkait potongan puzzle atau blok, 1202 00:52:35,900 --> 00:52:37,950 sehingga fungsi yang memiliki hubungannya dengan naik, 1203 00:52:37,950 --> 00:52:39,950 bawah, kiri, atau kanan atau beberapa operasi lain. 1204 00:52:39,950 --> 00:52:43,790 Tetapi jika saya mengklik Looks, Anda bisa melihat hal-hal seperti blok katakanlah 1205 00:52:43,790 --> 00:52:45,084 bahwa kita melihat beberapa saat yang lalu. 1206 00:52:45,084 --> 00:52:48,250 Dan jika saya klik pada Control, Anda akan melihat hal-hal seperti berulang dan selamanya 1207 00:52:48,250 --> 00:52:50,410 dan jika blok yang kami melihat beberapa saat yang lalu. 1208 00:52:50,410 --> 00:52:51,670 >> Dan Anda akan menemukan bahwa kita hanya akan menggaruk 1209 00:52:51,670 --> 00:52:53,750 permukaan beberapa teka-teki potongan, 1210 00:52:53,750 --> 00:52:55,833 tapi itu semua cukup intuitif dan titik dan klik. 1211 00:52:55,833 --> 00:52:58,219 Memang, Scratch dirancang untuk siswa yang lebih muda 1212 00:52:58,219 --> 00:53:00,730 untuk membantu memberi mereka outlet untuk berpikir kreatif. 1213 00:53:00,730 --> 00:53:03,040 Dan belum luar biasa, itu batu loncatan indah 1214 00:53:03,040 --> 00:53:07,020 untuk persis ide kita akan mengeksplorasi di C dan Python dan JavaScript, 1215 00:53:07,020 --> 00:53:07,719 demikian juga. 1216 00:53:07,719 --> 00:53:11,960 >> Di sisi kanan, akhirnya, di sini adalah ini, yang disebut daerah skrip. 1217 00:53:11,960 --> 00:53:15,750 Dan ini hanya batu tulis kosong dengan yang Anda mulai menulis sebuah program. 1218 00:53:15,750 --> 00:53:16,897 Dan aku akan hal itu. 1219 00:53:16,897 --> 00:53:19,980 Sekarang, saya kebetulan tahu di mana hal-hal yang karena saya sudah melakukan ini beberapa kali. 1220 00:53:19,980 --> 00:53:22,710 Tapi aku tahu bahwa di bawah kategori Events, 1221 00:53:22,710 --> 00:53:25,520 ada blok di sini-ini ketika bendera hijau diklik. 1222 00:53:25,520 --> 00:53:28,790 Dan perhatikan jika saya zoom out dan kembali ke sini di atas panggung, 1223 00:53:28,790 --> 00:53:31,190 kehidupan awal dalam ini sedikit dunia persegi panjang, 1224 00:53:31,190 --> 00:53:33,920 atas yang hijau bendera dan tanda berhenti merah. 1225 00:53:33,920 --> 00:53:36,180 Jadi pergi dan berhenti, masing-masing. 1226 00:53:36,180 --> 00:53:38,710 >> Dan jadi apa yang ingin saya lakukan ketika bendera hijau diklik? 1227 00:53:38,710 --> 00:53:40,900 Nah, biarkan aku pergi ke yang Tampak kategori. 1228 00:53:40,900 --> 00:53:43,357 Dan biarkan aku pergi ke depan dan drag dan drop ini. 1229 00:53:43,357 --> 00:53:45,940 Dan perhatikan segera karena mendapat dekat, mereka semacam magnet. 1230 00:53:45,940 --> 00:53:48,489 Jadi jika sekarang saya pasrah, terkunci bersama-sama bagus dan bersih. 1231 00:53:48,489 --> 00:53:51,030 Dan aku akan pergi ke depan dan mengatakan sesuatu seperti halo, dunia 1232 00:53:51,030 --> 00:53:52,190 selama dua detik. 1233 00:53:52,190 --> 00:53:56,730 Mari saya zoom out dan klik sekarang bendera hijau, dan mengatakan, halo, dunia. 1234 00:53:56,730 --> 00:53:57,230 Baiklah. 1235 00:53:57,230 --> 00:53:58,460 Jadi itu semua baik dan bagus. 1236 00:53:58,460 --> 00:53:59,900 Tidak semua yang menarik. 1237 00:53:59,900 --> 00:54:01,340 Mari membuatnya menjadi lebih manis sedikit. 1238 00:54:01,340 --> 00:54:03,494 Dan aku tahu bahwa di muka, Scratch terjadi 1239 00:54:03,494 --> 00:54:05,160 untuk datang dengan beberapa hal yang lucu seperti ini. 1240 00:54:05,160 --> 00:54:07,720 Jadi bermain meow suara sampai selesai. 1241 00:54:07,720 --> 00:54:09,531 Jadi mari kita lakukan ini. 1242 00:54:09,531 --> 00:54:10,380 >> [MEONG] 1243 00:54:10,380 --> 00:54:11,819 >> Ah, itu menggemaskan. 1244 00:54:11,819 --> 00:54:12,860 Dan jika saya klik again-- 1245 00:54:12,860 --> 00:54:14,920 >> [MEONG] 1246 00:54:14,920 --> 00:54:15,460 >> Dan lagi. 1247 00:54:15,460 --> 00:54:16,740 >> [MEONG] 1248 00:54:16,740 --> 00:54:18,760 >> Tapi aku tetap harus menghidupkan kembali Scratch. 1249 00:54:18,760 --> 00:54:20,010 Tapi saya bisa lebih baik dari ini. 1250 00:54:20,010 --> 00:54:23,060 Kenapa tidak aku hanya menyeret tiga ini. 1251 00:54:23,060 --> 00:54:24,821 Dan sekarang sudah tiga kali menggemaskan. 1252 00:54:24,821 --> 00:54:26,264 >> [MENGEONG] 1253 00:54:26,264 --> 00:54:28,190 >> OK, sebenarnya, itu sedikit menyeramkan. 1254 00:54:28,190 --> 00:54:31,020 Jadi kita perlu sesuatu di antara sana. 1255 00:54:31,020 --> 00:54:33,870 Jika saya pergi ke Control, sepertinya sebenarnya ada blok menunggu. 1256 00:54:33,870 --> 00:54:36,994 Dan perhatikan jika saya membawa lebih there-- dan biarkan aku membuat ini lebih besar sedikit. 1257 00:54:36,994 --> 00:54:38,780 Jika saya melayang-layang, itu akan untuk masuk ke tempatnya. 1258 00:54:38,780 --> 00:54:41,660 Jadi tunggu satu detik, tunggu satu detik. 1259 00:54:41,660 --> 00:54:43,170 Mari kita memukul bendera hijau lagi. 1260 00:54:43,170 --> 00:54:46,330 >> [MENGEONG] 1261 00:54:46,330 --> 00:54:47,695 1262 00:54:47,695 --> 00:54:50,660 >> OK, sedikit lebih alami, tetapi tidak sangat efisien. 1263 00:54:50,660 --> 00:54:54,300 Jadi ini benar jika program saya Tujuan itu meow tiga kali. 1264 00:54:54,300 --> 00:54:56,410 Tapi itu tidak sangat dirancang dengan baik. 1265 00:54:56,410 --> 00:54:57,740 Aku agak memotong beberapa sudut. 1266 00:54:57,740 --> 00:54:58,730 Aku punya sedikit malas. 1267 00:54:58,730 --> 00:55:05,620 Apa yang terasa like-- apa yang harus saya tampaknya telah dilakukan buruk, akan Anda katakan? 1268 00:55:05,620 --> 00:55:07,197 Ya? 1269 00:55:07,197 --> 00:55:08,030 Ya, di tengah. 1270 00:55:08,030 --> 00:55:11,208 1271 00:55:11,208 --> 00:55:13,083 AUDIENCE: Digunakan lebih memori dari yang Anda butuhkan untuk 1272 00:55:13,083 --> 00:55:15,005 karena Anda menggunakan begitu banyak garis yang berbeda. 1273 00:55:15,005 --> 00:55:16,380 DAVID Malan: Ya, jadi lebih banyak garis. 1274 00:55:16,380 --> 00:55:19,190 Dan itu tidak harus menjadi memori, meskipun itu bisa dilihat sebagai cara itu. 1275 00:55:19,190 --> 00:55:20,898 Tapi itu definitely-- ada redundansi. 1276 00:55:20,898 --> 00:55:23,440 Dan aku benar-benar jenis diseret dan menjatuhkan hal yang sama. 1277 00:55:23,440 --> 00:55:26,564 Dan jika Anda jenis extrapolate-- jika itu tidak jelas di sini-baik, bagaimana akan 1278 00:55:26,564 --> 00:55:27,910 Saya meow 30 kali? 1279 00:55:27,910 --> 00:55:31,450 Saya akan drag dan drop, seperti, 30 pasang lebih dari potongan-potongan puzzle. 1280 00:55:31,450 --> 00:55:32,890 Dan pasti, ada cara yang lebih baik. 1281 00:55:32,890 --> 00:55:34,056 Dan kami telah melihat cara yang lebih baik. 1282 00:55:34,056 --> 00:55:36,870 Apa yang intuitif akan menjadi cara yang lebih baik? 1283 00:55:36,870 --> 00:55:37,890 Ya, hanya menggunakan satu lingkaran. 1284 00:55:37,890 --> 00:55:38,810 Tidak ada copy dan paste. 1285 00:55:38,810 --> 00:55:40,790 Dan memang, kapan ini semester jika Anda mulai 1286 00:55:40,790 --> 00:55:43,890 menemukan diri Anda menyeret dan menjatuhkan, atau benar-benar menyalin dan paste, 1287 00:55:43,890 --> 00:55:47,050 kebiasaan berbahaya untuk masuk ke dalam karena ini tidak hanya sangat dipertahankan. 1288 00:55:47,050 --> 00:55:49,740 Misalnya, jika saya ingin mengubah suara untuk sesuatu yang lain, 1289 00:55:49,740 --> 00:55:52,826 Saya harus mengubahnya sekarang di tiga lokasi bukan hanya satu. 1290 00:55:52,826 --> 00:55:54,575 Karena memang, jika saya mematahkan away-- ini aku 1291 00:55:54,575 --> 00:55:56,170 hanya akan memisahkan seperti itu. 1292 00:55:56,170 --> 00:56:01,900 Mari saya ambil mengulang blok, dan kemudian klik tiga, ketik tiga, 1293 00:56:01,900 --> 00:56:04,015 melemparkan beberapa ini pergi dengan hanya melepaskan. 1294 00:56:04,015 --> 00:56:05,890 Dan kemudian menyadarinya tidak terlihat seperti itu cocok, 1295 00:56:05,890 --> 00:56:08,139 tapi magnetis, itu akan untuk tidak hanya patah tempat 1296 00:56:08,139 --> 00:56:09,510 tetapi tumbuh sesuai bentuk. 1297 00:56:09,510 --> 00:56:10,310 Jadi itu bagus. 1298 00:56:10,310 --> 00:56:11,530 Dan jika saya klik bermain. 1299 00:56:11,530 --> 00:56:13,870 >> [MENGEONG] 1300 00:56:13,870 --> 00:56:14,370 1301 00:56:14,370 --> 00:56:15,620 Sangat bagus. 1302 00:56:15,620 --> 00:56:16,126 Baiklah. 1303 00:56:16,126 --> 00:56:18,500 Dan sekarang sangat mudah untuk mengubah, juga, karena saya hanya bisa 1304 00:56:18,500 --> 00:56:20,670 mengubah satu nomor dalam satu tempat. 1305 00:56:20,670 --> 00:56:22,500 Tapi ini juga, tidak semua yang menarik. 1306 00:56:22,500 --> 00:56:25,350 Mari kita benar-benar memiliki Scratch tidak meow, tapi bergerak. 1307 00:56:25,350 --> 00:56:32,680 Biarkan aku pergi ke Gerak dan bergerak 10 langkah dalam of-- whoops, biarkan aku memperbaiki hal ini. 1308 00:56:32,680 --> 00:56:37,460 Biarkan aku memilikinya bergerak 10 steps-- sebenarnya, jangan jangan ulangi. 1309 00:56:37,460 --> 00:56:40,670 Mari saya ambil blok kontrol, dan lakukan hal berikut selamanya. 1310 00:56:40,670 --> 00:56:42,720 Selamanya, bergerak 10 langkah. 1311 00:56:42,720 --> 00:56:45,070 Dan klik Play. 1312 00:56:45,070 --> 00:56:45,600 >> BAIK. 1313 00:56:45,600 --> 00:56:46,740 Jadi untungnya, ia berhenti. 1314 00:56:46,740 --> 00:56:49,710 Jika tidak, anak-anak akan sangat marah ketika mereka semacam kehilangan kucing mereka. 1315 00:56:49,710 --> 00:56:52,720 Tapi setidaknya aku dapat menyeret dia kembali ke layar. 1316 00:56:52,720 --> 00:56:56,177 Tapi ini tidak semua yang besar permainan atau animasi. 1317 00:56:56,177 --> 00:56:58,260 Akan lebih baik jika mungkin ia memantul dari tepi. 1318 00:56:58,260 --> 00:57:00,020 Jadi apa yang kita lakukan? 1319 00:57:00,020 --> 00:57:04,302 Apa konstruk yang kita perlu memiliki Scratch memutuskan untuk bangkit, menurut Anda, 1320 00:57:04,302 --> 00:57:06,010 bahkan jika Anda belum pernah terlihat Scratch sebelumnya? 1321 00:57:06,010 --> 00:57:06,593 Ya, di belakang. 1322 00:57:06,593 --> 00:57:08,359 AUDIENCE: Anda perlu jika blok atau jika-maka. 1323 00:57:08,359 --> 00:57:10,650 DAVID Malan: Yeah, sehingga beberapa jenis jika blok atau jika-maka. 1324 00:57:10,650 --> 00:57:12,275 Jadi sebenarnya, kita memiliki salah satu dari ini di sini. 1325 00:57:12,275 --> 00:57:14,500 Jadi if-- jadi biar mendapatkan menyingkirkan gerakan. 1326 00:57:14,500 --> 00:57:16,070 Biarkan aku memperbesar jadi lebih besar. 1327 00:57:16,070 --> 00:57:16,890 Jadi bagaimana ini. 1328 00:57:16,890 --> 00:57:21,920 Selamanya, jika Sensing-- kita sudah tidak melihat ini sebelumnya. 1329 00:57:21,920 --> 00:57:23,160 Aku butuh ekspresi Boolean. 1330 00:57:23,160 --> 00:57:25,970 Dan ternyata jika menyentuh apa? 1331 00:57:25,970 --> 00:57:29,030 Jika menyentuh tepi, apa yang ingin saya lakukan? 1332 00:57:29,030 --> 00:57:32,030 Nah, jika saya kembali ke Gerak, Ternyata, oh, aku bisa berbalik. 1333 00:57:32,030 --> 00:57:33,350 Biarkan aku tarik ini di sini. 1334 00:57:33,350 --> 00:57:36,430 Mengapa saya tidak pergi ke depan dan berbalik 180 derajat? 1335 00:57:36,430 --> 00:57:38,190 >> Dan sekarang, saya hanya bergerak di akhir. 1336 00:57:38,190 --> 00:57:40,500 Saya bisa menempatkan gerakan di awal atau akhir. 1337 00:57:40,500 --> 00:57:44,452 Tapi secara logis, setiap kali saya pindah, saya ingin memeriksa, saya menyentuh tepi? 1338 00:57:44,452 --> 00:57:45,410 Apakah saya menyentuh tepi? 1339 00:57:45,410 --> 00:57:46,490 Apakah saya menyentuh tepi? 1340 00:57:46,490 --> 00:57:49,200 Sehingga secara logika saya berbalik jika demikian. 1341 00:57:49,200 --> 00:57:51,190 Jadi mari kita tekan tombol play. 1342 00:57:51,190 --> 00:57:52,030 >> BAIK. 1343 00:57:52,030 --> 00:57:53,910 Jadi itu sedikit kereta, sehingga untuk berbicara. 1344 00:57:53,910 --> 00:57:56,560 Dan bug hanya kesalahan dalam sebuah program komputer. 1345 00:57:56,560 --> 00:57:57,800 Tapi setidaknya itu bekerja. 1346 00:57:57,800 --> 00:57:59,420 Dan pada kenyataannya, saya bisa masuk di sini. 1347 00:57:59,420 --> 00:58:03,130 Dan biarkan aku membuatnya tidak 10 langkah di waktu, tapi ini semua animasi. 1348 00:58:03,130 --> 00:58:05,310 Ini semua kartun atau bahkan film adalah. 1349 00:58:05,310 --> 00:58:07,110 Mari saya bergerak 20 langkah pada satu waktu. 1350 00:58:07,110 --> 00:58:11,200 Jadi 20 kali lebih banyak hal-hal yang terjadi sekali, atau dua kali lebih banyak, dalam hal ini. 1351 00:58:11,200 --> 00:58:12,600 Dan dia bergerak lebih cepat. 1352 00:58:12,600 --> 00:58:15,150 Mari saya mengubah ke 30. 1353 00:58:15,150 --> 00:58:17,450 100. 1354 00:58:17,450 --> 00:58:19,406 1.000. 1355 00:58:19,406 --> 00:58:20,530 Dan itu akan benar-benar cepat. 1356 00:58:20,530 --> 00:58:22,190 Dan ini is-- ya, OK. 1357 00:58:22,190 --> 00:58:24,130 >> Jadi sekarang kita hanya bermain-main dengan itu. 1358 00:58:24,130 --> 00:58:24,954 OK, jadi kereta. 1359 00:58:24,954 --> 00:58:26,620 Tapi kita bisa menyeretnya keluar dari jalan di sini. 1360 00:58:26,620 --> 00:58:28,286 Tapi kita bisa membuat lebih menyenangkan dengan ini, juga. 1361 00:58:28,286 --> 00:58:30,710 Bagaimana ini-- dia terbalik. 1362 00:58:30,710 --> 00:58:32,800 Tapi ternyata Scratch-- dan ada sebenarnya, 1363 00:58:32,800 --> 00:58:35,510 Aku harus melepaskan, tidak ada akademis nilai untuk apa yang saya lakukan. 1364 00:58:35,510 --> 00:58:40,200 Tapi kalau aku membuka mikrofon, mari kita menghentikannya dan melakukan sesuatu seperti ini. 1365 00:58:40,200 --> 00:58:41,960 Aduh! 1366 00:58:41,960 --> 00:58:42,884 >> [TERTAWA] 1367 00:58:42,884 --> 00:58:45,200 1368 00:58:45,200 --> 00:58:45,990 >> Itu menggemaskan. 1369 00:58:45,990 --> 00:58:46,740 Terima kasih. 1370 00:58:46,740 --> 00:58:50,850 Sekarang, ini adalah apa suaraku Sepertinya ketika saya berteriak aduh. 1371 00:58:50,850 --> 00:58:52,630 Saya tidak berpikir kami menangkap tawa Anda. 1372 00:58:52,630 --> 00:58:53,280 Itu OK. 1373 00:58:53,280 --> 00:58:56,550 Mari saya simpan ini sebagai "Aduh." 1374 00:58:56,550 --> 00:58:57,915 Mari kita simpan ini sebagai "Aduh". 1375 00:58:57,915 --> 00:58:59,410 Dan sekarang kita akan kembali ke Script. 1376 00:58:59,410 --> 00:59:01,660 Dan sekarang saya need-- mari kita lihat, Suara. 1377 00:59:01,660 --> 00:59:03,160 Oh, bermain aduh suara. 1378 00:59:03,160 --> 00:59:08,180 Jadi jika saya menyentuh tepi, biarkan aku pertama bermain Aduh, dan kemudian berbalik. 1379 00:59:08,180 --> 00:59:10,191 Dan sekarang mari kita menempatkan dia di tengah. 1380 00:59:10,191 --> 00:59:14,754 >> [MENGATAKAN "ADUH"] 1381 00:59:14,754 --> 00:59:15,740 >> Dua kali lebih cepat. 1382 00:59:15,740 --> 00:59:20,660 1383 00:59:20,660 --> 00:59:21,830 >> BAIK. 1384 00:59:21,830 --> 00:59:23,780 Tapi itu benar-benar melakukan apa yang saya katakan. 1385 00:59:23,780 --> 00:59:27,580 Jadi itu sebenarnya benar, itu hanya sedikit mengganggu cepat. 1386 00:59:27,580 --> 00:59:30,330 Jadi mari kita tambahkan sesuatu lebih menarik untuk ini. 1387 00:59:30,330 --> 00:59:32,950 Mari saya benar-benar membuka salah satu yang saya buat di muka, 1388 00:59:32,950 --> 00:59:38,560 tepat disebut Pet yang Kucing, yang melakukan hal ini. 1389 00:59:38,560 --> 00:59:40,340 Berikut script di sini. 1390 00:59:40,340 --> 00:59:44,510 Apa ini akan lakukan dalam hal bahasa Inggris? 1391 00:59:44,510 --> 00:59:45,820 Apa ini dirancang untuk melakukan? 1392 00:59:45,820 --> 00:59:47,900 Ya, mari kita pergi some-- ya? 1393 00:59:47,900 --> 00:59:49,665 >> AUDIENCE: Bila Anda pet kucing, mengeong. 1394 00:59:49,665 --> 00:59:52,290 DAVID Malan: Ya, jadi ketika Anda pet kucing, itu akan meow. 1395 00:59:52,290 --> 00:59:55,452 Jadi dengan kata lain, sekarang ada loop selamanya diam, dikombinasikan 1396 00:59:55,452 --> 00:59:57,660 dengan kondisi, dikombinasikan dengan ekspresi Boolean, 1397 00:59:57,660 --> 01:00:00,140 dikombinasikan dengan pasangan fungsi, efeknya 1398 01:00:00,140 --> 01:00:02,610 yang, setelah saya bermain program ini, ada 1399 01:00:02,610 --> 01:00:06,820 terjadi sampai aku memindahkan kursor lebih dekat dan lebih dekat dan lebih dekat dan-- 1400 01:00:06,820 --> 01:00:08,029 >> [MEONG] 1401 01:00:08,029 --> 01:00:09,320 Maka itu seperti membelai kucing. 1402 01:00:09,320 --> 01:00:11,210 [MEONG] 1403 01:00:11,210 --> 01:00:14,270 Hanya sekali Anda benar-benar memindahkan kursor di atasnya. 1404 01:00:14,270 --> 01:00:19,964 Sekarang, saya juga melecut tidak pet kucing, yang melakukan hal ini sebagai gantinya. 1405 01:00:19,964 --> 01:00:21,350 >> [MENGEONG] 1406 01:00:21,350 --> 01:00:23,485 >> Jadi dia hanya terus mengeong. 1407 01:00:23,485 --> 01:00:24,455 >> [MENGEONG] 1408 01:00:24,455 --> 01:00:27,705 >> Tapi kalau aku terlalu close-- 1409 01:00:27,705 --> 01:00:29,645 >> [MENGEONG] 1410 01:00:29,645 --> 01:00:32,080 >> [MENGAUM] 1411 01:00:32,080 --> 01:00:33,590 >> Jadi bagaimana ini bekerja? 1412 01:00:33,590 --> 01:00:35,880 Sekarang aku hanya memiliki dua arah pertigaan jalan. 1413 01:00:35,880 --> 01:00:38,930 Jika menyentuh pointer mouse, kemudian memutar suara singa. 1414 01:00:38,930 --> 01:00:41,950 Lain hanya memutar suara meong, dan kemudian menunggu tiga detik sehingga 1415 01:00:41,950 --> 01:00:43,880 bahwa itu semacam melakukan sangat tenang menunggu. 1416 01:00:43,880 --> 01:00:44,380 Baiklah. 1417 01:00:44,380 --> 01:00:47,290 Jadi itu menggabungkan beberapa ide masih. 1418 01:00:47,290 --> 01:00:50,870 Mari kita lihat contoh ini Aku melecut disebut benang. 1419 01:00:50,870 --> 01:00:54,020 Dan yang satu ini pada dasarnya berbeda karena leverage 1420 01:00:54,020 --> 01:00:56,070 fitur dari banyak bahasa pemrograman disebut 1421 01:00:56,070 --> 01:00:59,970 benang, kemampuan program untuk harfiah melakukan dua hal secara bersamaan. 1422 01:00:59,970 --> 01:01:03,600 Memang, hari ini jika Anda menggunakan Google Docs atau Microsoft Word, 1423 01:01:03,600 --> 01:01:09,620 dan dokumen Anda terus-menerus menjadi mantra-diperiksa bahkan saat Anda jenis usaha-- atau Anda 1424 01:01:09,620 --> 01:01:11,580 tekan Command-P atau Control-P dan sesuatu cetak, 1425 01:01:11,580 --> 01:01:13,380 itu mencetak sementara Anda terus mengetik. 1426 01:01:13,380 --> 01:01:16,680 Program hari ini memang bisa melakukan beberapa hal sekaligus, sama seperti di Scratch 1427 01:01:16,680 --> 01:01:17,180 sini. 1428 01:01:17,180 --> 01:01:20,400 >> Jadi di sini, saya punya dua sprite sekarang, burung dan kucing. 1429 01:01:20,400 --> 01:01:22,780 Dan jika saya klik pada masing-masing karakter-karakter satu per satu, 1430 01:01:22,780 --> 01:01:25,590 Saya melihat sekarang burung script di kanan atas. 1431 01:01:25,590 --> 01:01:27,270 Sekarang aku melihat kucing. 1432 01:01:27,270 --> 01:01:28,540 Burung, kucing. 1433 01:01:28,540 --> 01:01:30,270 Jadi masing-masing memiliki naskah mereka sendiri. 1434 01:01:30,270 --> 01:01:32,700 Tapi perhatikan, apa yang potongan puzzle jangan mereka berdua mulai dengan? 1435 01:01:32,700 --> 01:01:34,260 Ketika bendera hijau diklik. 1436 01:01:34,260 --> 01:01:36,890 Dan burung, ketika bendera hijau diklik. 1437 01:01:36,890 --> 01:01:40,870 Jadi ketika saya klik bendera hijau, baik dari orang script atau program 1438 01:01:40,870 --> 01:01:42,759 akan berjalan secara paralel. 1439 01:01:42,759 --> 01:01:45,800 Dan Anda akan melihat bahwa burung adalah hanya tanpa berpikir memantul dari tepi. 1440 01:01:45,800 --> 01:01:50,890 kucing jelas telah diprogram dengan keuntungan strategis. 1441 01:01:50,890 --> 01:01:52,704 Dan-- 1442 01:01:52,704 --> 01:01:53,490 >> [MENGAUM] 1443 01:01:53,490 --> 01:01:53,821 1444 01:01:53,821 --> 01:01:54,320 Baiklah. 1445 01:01:54,320 --> 01:01:57,340 Jadi kucing menangkap burung dalam kasus ini. 1446 01:01:57,340 --> 01:01:58,390 Mengapa demikian? 1447 01:01:58,390 --> 01:02:03,310 Nah, pemberitahuan pertama kami hanya memiliki burung hanya tanpa berpikir akan 1448 01:02:03,310 --> 01:02:05,120 ke lokasi awal ini, dan kemudian selamanya, 1449 01:02:05,120 --> 01:02:06,774 jika tidak menyentuh kucing, hanya bergerak. 1450 01:02:06,774 --> 01:02:08,190 Dan jika Anda berada di tepi, bangkit. 1451 01:02:08,190 --> 01:02:08,870 Dan hanya bergerak. 1452 01:02:08,870 --> 01:02:10,286 Dan jika Anda berada di tepi, bangkit. 1453 01:02:10,286 --> 01:02:12,840 Tapi kucing itu, sementara itu, memiliki beberapa logika tambahan 1454 01:02:12,840 --> 01:02:18,250 yang mengatakan ini-- pertama, hanya begitu bahwa ini bukan sepenuhnya bias 1455 01:02:18,250 --> 01:02:21,191 terhadap burung, melihat bahwa aku sudah menggunakan potongan puzzle hijau ada 1456 01:02:21,191 --> 01:02:22,690 yang benar-benar mengambil nomor acak. 1457 01:02:22,690 --> 01:02:26,179 Sebuah fitur dari banyak bahasa adalah untuk memberikan Anda nomor acak atau pseudorandom. 1458 01:02:26,179 --> 01:02:29,220 Jadi dalam hal ini, kucing awalnya memilih nomor acak antara, seperti, 1459 01:02:29,220 --> 01:02:31,727 90 derajat dan 180 derajat, pada dasarnya, sehingga 1460 01:02:31,727 --> 01:02:33,310 bahwa ada sedikit varian. 1461 01:02:33,310 --> 01:02:37,000 Dan kemudian selamanya, jika menyentuh burung, memutar suara singa. 1462 01:02:37,000 --> 01:02:38,754 Jika tidak, hanya menunjuk ke arah burung. 1463 01:02:38,754 --> 01:02:39,670 Mengarah ke burung. 1464 01:02:39,670 --> 01:02:44,199 Titik menuju burung, yang merupakan potongan puzzle tersendiri dalam hal ini. 1465 01:02:44,199 --> 01:02:45,740 Nah, kita bisa melakukan satu hal lain di sini. 1466 01:02:45,740 --> 01:02:49,820 Mari saya membuka program acara di sini. 1467 01:02:49,820 --> 01:02:53,520 Dan di sini kita lagi memiliki dua sprite, yang terlihat seperti dua boneka ini di sini. 1468 01:02:53,520 --> 01:02:55,710 Dan apa yang menarik di sini adalah ini. 1469 01:02:55,710 --> 01:02:59,140 Jeruk pria memiliki ini mengatur potongan puzzle sini. 1470 01:02:59,140 --> 01:03:01,700 Selamanya melakukan following-- yang jika spasi ditekan, 1471 01:03:01,700 --> 01:03:05,430 kemudian berkata, Marco, dan kemudian disiarkan sebuah acara. 1472 01:03:05,430 --> 01:03:09,460 Dan sementara itu, pria biru di sini memiliki ini-- ketika Anda menerima acara, 1473 01:03:09,460 --> 01:03:10,540 mengatakan Polo. 1474 01:03:10,540 --> 01:03:12,850 Jadi ternyata di Scratch dan dalam bahasa lain, 1475 01:03:12,850 --> 01:03:15,830 ada cara untuk dua program atau dua skrip, dalam hal ini, 1476 01:03:15,830 --> 01:03:20,310 untuk bergaul sehingga ketika saya memukul spasi, katanya Marco. 1477 01:03:20,310 --> 01:03:23,539 Dan yang lain mendengar itu, sehingga untuk berbicara, dan mengatakan Polo di respon. 1478 01:03:23,539 --> 01:03:26,080 Sehingga Anda dapat menulis program yang benar-benar berinteraksi dengan cara ini. 1479 01:03:26,080 --> 01:03:28,630 Dan jika saya melakukan ini sebagai gantinya, Aku bahkan dapat menambahkan variabel, 1480 01:03:28,630 --> 01:03:31,287 hanya menggunakan satu sprite dalam kasus ini. 1481 01:03:31,287 --> 01:03:32,578 Yang ini sangat menjengkelkan. 1482 01:03:32,578 --> 01:03:36,174 >> [SEAL BARKING] 1483 01:03:36,174 --> 01:03:37,100 1484 01:03:37,100 --> 01:03:42,490 >> Sekarang, pemberitahuan di sebelah kanan kita punya beberapa logika tambahan di sini. 1485 01:03:42,490 --> 01:03:45,146 Bagaimana cara menghentikan segel ini dari menggonggong? 1486 01:03:45,146 --> 01:03:48,320 >> [SEAL BARKING] 1487 01:03:48,320 --> 01:03:52,830 1488 01:03:52,830 --> 01:03:55,630 >> Sepertinya di kanan sisi adalah apa yang bermain suara. 1489 01:03:55,630 --> 01:03:58,500 Tapi itu hanya memainkan terdengar jika apa yang benar? 1490 01:03:58,500 --> 01:04:03,390 Jika orange variable-- block-- diredam adalah nol. 1491 01:04:03,390 --> 01:04:07,916 Bagaimana cara mengubah diredam menjadi 1, berarti benar, membuat ini diredam? 1492 01:04:07,916 --> 01:04:12,455 Rupanya, script lain, saya bisa tekan space bar, dan sekarang ia berhenti. 1493 01:04:12,455 --> 01:04:15,080 Jadi kita dapat memiliki pergaulan ini di script, juga, 1494 01:04:15,080 --> 01:04:18,349 dengan hanya berbagi variabel di dua seperti ini. 1495 01:04:18,349 --> 01:04:19,890 Sekarang, ini tidak semua yang menarik. 1496 01:04:19,890 --> 01:04:24,360 Mari kita pergi ke depan dan melakukan hal ini dan menggabungkan banyak ide-ide ini dengan program ini 1497 01:04:24,360 --> 01:04:25,940 sini. 1498 01:04:25,940 --> 01:04:28,100 Sebelum kita melakukan itu, meskipun, bagaimana sekitar satu relawan? 1499 01:04:28,100 --> 01:04:30,558 Biarkan aku mengambil tekanan off dari saya karena saya tidak benar-benar 1500 01:04:30,558 --> 01:04:31,280 memainkan game ini. 1501 01:04:31,280 --> 01:04:33,030 Mari kita memiliki seseorang yang kita belum pernah melihat sebelumnya. 1502 01:04:33,030 --> 01:04:36,420 Anda harus nyaman datang di atas panggung di sini, di depan kamera. 1503 01:04:36,420 --> 01:04:37,430 OK, datang ke atas. 1504 01:04:37,430 --> 01:04:38,130 Sangat berani. 1505 01:04:38,130 --> 01:04:39,052 Siapa namamu? 1506 01:04:39,052 --> 01:04:39,962 >> IDRIS: Idris. 1507 01:04:39,962 --> 01:04:40,753 DAVID Malan: Maaf? 1508 01:04:40,753 --> 01:04:41,196 IDRIS: Idris. 1509 01:04:41,196 --> 01:04:42,670 DAVID Malan: Idris, senang bertemu Anda. 1510 01:04:42,670 --> 01:04:43,170 Ayo up. 1511 01:04:43,170 --> 01:04:45,630 Dan sekarang, di ponsel Anda sendiri telepon, Anda bermain Pokemon GO? 1512 01:04:45,630 --> 01:04:46,567 >> IDRIS: No. 1513 01:04:46,567 --> 01:04:47,400 DAVID Malan: Benarkah? 1514 01:04:47,400 --> 01:04:48,104 IDRIS: Ya. 1515 01:04:48,104 --> 01:04:48,770 DAVID Malan: OK. 1516 01:04:48,770 --> 01:04:49,020 Baiklah. 1517 01:04:49,020 --> 01:04:49,978 Senang bertemu dengan mu. 1518 01:04:49,978 --> 01:04:50,820 Ayo sini. 1519 01:04:50,820 --> 01:04:51,950 Aku tidak baik. 1520 01:04:51,950 --> 01:04:55,380 Jadi kita akan mencari tahu bersama bagaimana bermain ini, yang seseorang benar-benar 1521 01:04:55,380 --> 01:05:00,140 pergi dan diimplementasikan dalam Scratch dengan mengubah kucing untuk dasarnya 1522 01:05:00,140 --> 01:05:02,260 yang berbeda karakter semua bersama-sama. 1523 01:05:02,260 --> 01:05:04,870 Dan jika saya fullscreen ini di sini, kita akan 1524 01:05:04,870 --> 01:05:06,860 untuk melihat pertandingan berikut bersama-sama. 1525 01:05:06,860 --> 01:05:09,560 Masih memuat, masih loading. 1526 01:05:09,560 --> 01:05:10,270 Ayolah. 1527 01:05:10,270 --> 01:05:12,590 Biarkan aku melakukan ini. 1528 01:05:12,590 --> 01:05:14,520 Ayolah. 1529 01:05:14,520 --> 01:05:17,200 Game ini begitu besar bahwa itu jatuh. 1530 01:05:17,200 --> 01:05:18,980 Bersiap. 1531 01:05:18,980 --> 01:05:22,390 Coba ini sekali lagi. 1532 01:05:22,390 --> 01:05:23,710 Ayolah. 1533 01:05:23,710 --> 01:05:24,211 Baiklah. 1534 01:05:24,211 --> 01:05:26,840 1535 01:05:26,840 --> 01:05:27,430 >> Di sana kami pergi. 1536 01:05:27,430 --> 01:05:27,929 BAIK. 1537 01:05:27,929 --> 01:05:29,330 bendera hijau. 1538 01:05:29,330 --> 01:05:30,190 Jadi di sini kita pergi. 1539 01:05:30,190 --> 01:05:30,950 >> [MUSIC PLAYING] 1540 01:05:30,950 --> 01:05:32,510 >> Pilih tingkat menengah di sini. 1541 01:05:32,510 --> 01:05:34,200 Klik pria biru di sana. 1542 01:05:34,200 --> 01:05:34,700 Baiklah. 1543 01:05:34,700 --> 01:05:37,860 Dan Anda dapat menggunakan panah keys-- atas, bawah, kiri, kanan. 1544 01:05:37,860 --> 01:05:42,150 Sekarang, mari kita pertimbangkan seperti yang kita lakukan ini-- dan kemudian pergi setelah karakter di sana. 1545 01:05:42,150 --> 01:05:42,650 Ya. 1546 01:05:42,650 --> 01:05:45,786 Dan sekarang klik dia dengan mouse. 1547 01:05:45,786 --> 01:05:46,693 Oh ya. 1548 01:05:46,693 --> 01:05:47,193 Pindah. 1549 01:05:47,193 --> 01:05:47,662 Di mana panah? 1550 01:05:47,662 --> 01:05:48,131 Di sini Anda pergi. 1551 01:05:48,131 --> 01:05:48,600 Jadi klik di sana. 1552 01:05:48,600 --> 01:05:48,840 Ya. 1553 01:05:48,840 --> 01:05:49,340 Baiklah. 1554 01:05:49,340 --> 01:05:56,008 Jadi sekarang, aku diberitahu Anda memiliki bola Poke, bahwa jika klik, itu akan melakukan itu. 1555 01:05:56,008 --> 01:05:57,932 Sangat bagus. 1556 01:05:57,932 --> 01:06:00,390 Dalam berlatih untuk hari ini, saya menemukan versi game 1557 01:06:00,390 --> 01:06:01,760 sebenarnya tidak terlalu sulit. 1558 01:06:01,760 --> 01:06:07,650 Jadi jika Anda ingin pergi lagi di sini, berjalan ke bola Poke ini. 1559 01:06:07,650 --> 01:06:08,780 Dan kemudian pergi mengambil hak. 1560 01:06:08,780 --> 01:06:11,200 Coba klik pada itu. 1561 01:06:11,200 --> 01:06:13,120 Oh, sebenarnya, itu toko, rupanya. 1562 01:06:13,120 --> 01:06:14,170 OK begitu dekat itu. 1563 01:06:14,170 --> 01:06:15,150 Tidak pernah melakukan itu sebelumnya. 1564 01:06:15,150 --> 01:06:16,566 Mungkin pergi ke hal ini di sini. 1565 01:06:16,566 --> 01:06:17,460 Oh, di sana Anda pergi. 1566 01:06:17,460 --> 01:06:18,910 Tunggu, ada satu di sana. 1567 01:06:18,910 --> 01:06:20,412 Oh, ada lagi. 1568 01:06:20,412 --> 01:06:21,285 BAIK. 1569 01:06:21,285 --> 01:06:21,785 Turun. 1570 01:06:21,785 --> 01:06:23,210 Ya, klik. 1571 01:06:23,210 --> 01:06:24,635 >> OK, itu sangat lucu. 1572 01:06:24,635 --> 01:06:27,485 1573 01:06:27,485 --> 01:06:28,810 OK, sangat baik dilakukan. 1574 01:06:28,810 --> 01:06:30,010 Game ini tidak terlalu sulit. 1575 01:06:30,010 --> 01:06:30,510 BAIK. 1576 01:06:30,510 --> 01:06:32,150 Selamat. 1577 01:06:32,150 --> 01:06:34,720 Di sini, kita memiliki CS50 stres bola untuk Anda. 1578 01:06:34,720 --> 01:06:37,680 Tapi mempertimbangkan untuk sesaat apa beberapa takeaways yang ada. 1579 01:06:37,680 --> 01:06:39,263 Lebih mudah daripada permainan yang sebenarnya, rupanya. 1580 01:06:39,263 --> 01:06:41,809 Tapi semua kita telah pergi di sini adalah karakter 1581 01:06:41,809 --> 01:06:44,100 yang mungkin memiliki beberapa jenis loop yang terkait dengan itu. 1582 01:06:44,100 --> 01:06:44,590 Ini bukan kucing. 1583 01:06:44,590 --> 01:06:45,860 Itu karakter ini sebagai gantinya. 1584 01:06:45,860 --> 01:06:49,052 Dan bahwa loop hanya terus mengatakan, jika panah ditekan, 1585 01:06:49,052 --> 01:06:51,260 jika panah bawah ditekan, jika panah kiri ditekan atau kanan 1586 01:06:51,260 --> 01:06:53,960 panah ditekan, bergerak ke atas atau bawah atau kiri atau kanan. 1587 01:06:53,960 --> 01:06:57,870 Atau jika ada potongan puzzle lain di sana yang mengatakan saat menyentuh sprite lain, 1588 01:06:57,870 --> 01:07:01,320 saat menyentuh salah satu karakter untuk bola Poke, jika menyentuh, 1589 01:07:01,320 --> 01:07:02,440 kemudian melakukan hal ini. 1590 01:07:02,440 --> 01:07:04,800 >> Jadi semua ide kita sudah telah menggunakan sejauh benar-benar 1591 01:07:04,800 --> 01:07:09,130 hanya dapat diterapkan dalam khusus ini konteks untuk memainkan game ini, juga. 1592 01:07:09,130 --> 01:07:13,580 Biarkan aku pergi ke depan dan tarik naik satu lain di sini, sebenarnya. 1593 01:07:13,580 --> 01:07:17,060 Biarkan aku pergi ke depan dan tarik up, katakanlah, ini. 1594 01:07:17,060 --> 01:07:18,540 Ini adalah sesuatu yang kita remix. 1595 01:07:18,540 --> 01:07:20,329 Dibuat oleh salah satu dari kami siswa di Cambridge, 1596 01:07:20,329 --> 01:07:23,370 dan kemudian saya pergi melalui dan berubah cukup banyak setiap contoh Harvard 1597 01:07:23,370 --> 01:07:25,580 untuk Yale saat ini. 1598 01:07:25,580 --> 01:07:27,870 Apakah seseorang ingin bersaing dengan Ivies 1599 01:07:27,870 --> 01:07:31,650 sini akumulasi lain semua ide-ide ini? 1600 01:07:31,650 --> 01:07:32,662 Ayo turun, ya. 1601 01:07:32,662 --> 01:07:33,370 Siapa namamu? 1602 01:07:33,370 --> 01:07:34,190 >> DINA: Dina. 1603 01:07:34,190 --> 01:07:35,015 >> DAVID Malan: Adina? 1604 01:07:35,015 --> 01:07:35,380 >> DINA: Dina. 1605 01:07:35,380 --> 01:07:36,410 >> DAVID Malan: Dina, datang di bawah. 1606 01:07:36,410 --> 01:07:37,320 Baiklah, Dina. 1607 01:07:37,320 --> 01:07:40,780 Jadi game ini semakin sulit dan sulit, karena dalam game ini, 1608 01:07:40,780 --> 01:07:43,970 ada variabel yang digunakan juga yang terus-menerus melacak 1609 01:07:43,970 --> 01:07:45,930 apa tingkat Anda berada dalam permainan. 1610 01:07:45,930 --> 01:07:47,120 Jadi senang bertemu Anda. 1611 01:07:47,120 --> 01:07:48,250 Datang kemari. 1612 01:07:48,250 --> 01:07:51,460 Dan tujuan di sini adalah untuk memilah dari membuat jalan Anda melalui labirin 1613 01:07:51,460 --> 01:07:52,710 bahwa siswa ini dilaksanakan. 1614 01:07:52,710 --> 01:07:55,334 >> Dan hanya untuk mengatur panggung, masing-masing dari foto-foto ini di layar 1615 01:07:55,334 --> 01:07:57,222 adalah sprite sendiri, karakter sendiri. 1616 01:07:57,222 --> 01:07:59,680 Jadi ini adalah oleh kucing default, namun siswa mengubah mereka 1617 01:07:59,680 --> 01:08:01,480 untuk berbagai logo Ivies sini. 1618 01:08:01,480 --> 01:08:04,370 Dan kemudian Anda akan melihat bahwa hanya dengan menggunakan kondisi dan loop 1619 01:08:04,370 --> 01:08:06,848 dan fungsi dan lebih, Anda mendapatkan ini. 1620 01:08:06,848 --> 01:08:07,478 >> [MUSIC PLAYING] 1621 01:08:07,478 --> 01:08:09,228 [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1622 01:08:09,228 --> 01:08:13,060 1623 01:08:13,060 --> 01:08:14,018 >> Ya oke. 1624 01:08:14,018 --> 01:08:17,371 1625 01:08:17,371 --> 01:08:20,110 Ya, terus berjalan. 1626 01:08:20,110 --> 01:08:21,180 tingkat pertama ini sangat mudah. 1627 01:08:21,180 --> 01:08:22,554 Anda hanya harus pergi ke sana. 1628 01:08:22,554 --> 01:08:25,644 Tapi sekali lagi, pertimbangkan, ini hanyalah sebuah lingkaran mendengarkan panah keys-- 1629 01:08:25,644 --> 01:08:26,560 atas bawah kiri kanan. 1630 01:08:26,560 --> 01:08:28,320 Dan sekarang blok penginderaan. 1631 01:08:28,320 --> 01:08:29,345 Sangat bagus. 1632 01:08:29,345 --> 01:08:32,600 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1633 01:08:32,600 --> 01:08:40,340 1634 01:08:40,340 --> 01:08:41,288 >> Sangat bagus. 1635 01:08:41,288 --> 01:08:44,550 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1636 01:08:44,550 --> 01:08:55,540 1637 01:08:55,540 --> 01:08:56,430 >> Sangat bagus. 1638 01:08:56,430 --> 01:08:57,975 Cukup mudah, Crimson. 1639 01:08:57,975 --> 01:08:59,060 Baiklah. 1640 01:08:59,060 --> 01:09:00,250 Levels-- uh-oh. 1641 01:09:00,250 --> 01:09:02,380 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1642 01:09:02,380 --> 01:09:04,980 1643 01:09:04,980 --> 01:09:07,150 >> Dan lagi, di ini tiga puncak Harvard, 1644 01:09:07,150 --> 01:09:10,334 Anda hanya memiliki logika mengatakan jika di tepi, bounce. 1645 01:09:10,334 --> 01:09:13,238 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1646 01:09:13,238 --> 01:09:14,690 1647 01:09:14,690 --> 01:09:17,651 >> OK, apa yang Anda lakukan adalah lebih menarik daripada mengapa. 1648 01:09:17,651 --> 01:09:18,150 Sangat bagus. 1649 01:09:18,150 --> 01:09:18,810 Sangat bagus. 1650 01:09:18,810 --> 01:09:20,270 Uh oh. 1651 01:09:20,270 --> 01:09:23,350 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1652 01:09:23,350 --> 01:09:26,005 1653 01:09:26,005 --> 01:09:27,630 Saya pikir Anda harus mengorbankan diri sendiri. 1654 01:09:27,630 --> 01:09:30,372 [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1655 01:09:30,372 --> 01:09:30,872 Cepat! 1656 01:09:30,872 --> 01:09:34,848 1657 01:09:34,848 --> 01:09:38,824 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1658 01:09:38,824 --> 01:09:44,288 1659 01:09:44,288 --> 01:09:44,788 Bagus. 1660 01:09:44,788 --> 01:09:52,240 1661 01:09:52,240 --> 01:09:52,740 Itu OK. 1662 01:09:52,740 --> 01:09:53,770 Anda akan mendapatkannya. 1663 01:09:53,770 --> 01:09:56,304 Ya ya! 1664 01:09:56,304 --> 01:09:58,256 Sangat bagus. 1665 01:09:58,256 --> 01:10:01,184 >> [Bersorak] 1666 01:10:01,184 --> 01:10:02,160 1667 01:10:02,160 --> 01:10:05,576 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1668 01:10:05,576 --> 01:10:09,480 1669 01:10:09,480 --> 01:10:10,940 >> Bagus! 1670 01:10:10,940 --> 01:10:14,370 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1671 01:10:14,370 --> 01:10:39,050 1672 01:10:39,050 --> 01:10:39,550 Mengerti. 1673 01:10:39,550 --> 01:10:41,510 Ayolah! 1674 01:10:41,510 --> 01:10:43,470 Kedua tingkat terakhir. 1675 01:10:43,470 --> 01:10:46,900 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1676 01:10:46,900 --> 01:10:49,588 1677 01:10:49,588 --> 01:10:50,580 >> Baiklah. 1678 01:10:50,580 --> 01:10:54,052 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1679 01:10:54,052 --> 01:11:00,992 1680 01:11:00,992 --> 01:11:01,492 Iya nih. 1681 01:11:01,492 --> 01:11:06,230 1682 01:11:06,230 --> 01:11:08,020 baik penggunaan variabel di sini. 1683 01:11:08,020 --> 01:11:09,770 [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1684 01:11:09,770 --> 01:11:10,770 Iya nih. 1685 01:11:10,770 --> 01:11:14,743 [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1686 01:11:14,743 --> 01:11:16,707 1687 01:11:16,707 --> 01:11:17,689 Bagus. 1688 01:11:17,689 --> 01:11:21,126 [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1689 01:11:21,126 --> 01:11:23,581 1690 01:11:23,581 --> 01:11:24,570 Tidak apa-apa. 1691 01:11:24,570 --> 01:11:25,770 Kita harus sampai ke akhir. 1692 01:11:25,770 --> 01:11:26,270 Sana. 1693 01:11:26,270 --> 01:11:27,010 Oh! 1694 01:11:27,010 --> 01:11:29,980 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1695 01:11:29,980 --> 01:11:32,160 1696 01:11:32,160 --> 01:11:34,866 >> Mungkin menjalankan terlambat hari ini, tapi itu akan menjadi sia-sia. 1697 01:11:34,866 --> 01:11:38,200 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1698 01:11:38,200 --> 01:11:39,640 1699 01:11:39,640 --> 01:11:42,520 >> Kamu bisa melakukannya! 1700 01:11:42,520 --> 01:11:43,480 Ya! 1701 01:11:43,480 --> 01:11:46,278 >> [Bersorak] 1702 01:11:46,278 --> 01:11:47,230 1703 01:11:47,230 --> 01:11:50,086 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1704 01:11:50,086 --> 01:11:51,470 >> Yang satu ini benar-benar sulit. 1705 01:11:51,470 --> 01:11:54,070 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1706 01:11:54,070 --> 01:11:57,458 1707 01:11:57,458 --> 01:11:59,000 >> Kami akan memberikan dua kehidupan yang lebih. 1708 01:11:59,000 --> 01:11:59,968 Bisakah kamu melakukannya? 1709 01:11:59,968 --> 01:12:03,356 >> [MUSIC - MC HAMMER, "U TIDAK BISA MENYENTUH  INI"] 1710 01:12:03,356 --> 01:12:06,744 1711 01:12:06,744 --> 01:12:07,244 >> Baiklah. 1712 01:12:07,244 --> 01:12:09,160 Bagaimana dengan bulat besar tepuk tangan tetap. 1713 01:12:09,160 --> 01:12:10,800 Anda sampai ke kedua tingkat terakhir. 1714 01:12:10,800 --> 01:12:11,723 Terima kasih. 1715 01:12:11,723 --> 01:12:14,964 >> [TEPUK TANGAN] 1716 01:12:14,964 --> 01:12:15,890 1717 01:12:15,890 --> 01:12:19,600 >> Jadi ini hanya untuk mengatakan berapa banyak Anda dapat Anda lakukan dengan hal-hal ini. 1718 01:12:19,600 --> 01:12:21,892 Dan menyadari juga, bahwa ketika potongan puzzle tidak exist-- 1719 01:12:21,892 --> 01:12:24,891 dan memang, ini akan menjadi salah satu kekuasaan dengan masalah pertama 1720 01:12:24,891 --> 01:12:27,080 set dan beyond-- adalah untuk benar-benar membuat Anda sendiri. 1721 01:12:27,080 --> 01:12:28,860 Dan ini hanya potongan dari salah satu contoh 1722 01:12:28,860 --> 01:12:30,230 Anda akan dapat bermain dengan online, di mana 1723 01:12:30,230 --> 01:12:33,380 jika Anda tidak memiliki built ke Scratch sesuatu seperti sepotong batuk puzzle, 1724 01:12:33,380 --> 01:12:35,470 Anda benar-benar dapat membuatnya sendiri. 1725 01:12:35,470 --> 01:12:37,387 >> Dan semua ini dan lebih menanti. 1726 01:12:37,387 --> 01:12:39,470 Dan hanya untuk melukis akhir gambar memang apa 1727 01:12:39,470 --> 01:12:43,120 depan di toko untuk kelas untuk Anda, didasarkan pada beberapa gambar dari teman sekelas 1728 01:12:43,120 --> 01:12:46,970 terakhir, izinkan saya untuk meredupkan lampu untuk terakhir kalinya dan menampilkan CS50. 1729 01:12:46,970 --> 01:12:49,580 1730 01:12:49,580 --> 01:12:53,038 >> [MUSIC PLAYING] 1731 01:12:53,038 --> 01:14:38,210 1732 01:14:38,210 --> 01:14:38,860 >> Baiklah. 1733 01:14:38,860 --> 01:14:41,540 Itu saja untuk CS50. 1734 01:14:41,540 --> 01:14:44,964 Kue sekarang disajikan. 1735 01:14:44,964 --> 01:14:50,610 1736 01:14:50,610 --> 01:14:53,960 >> [MUSIC PLAYING] 1737 01:14:53,960 --> 01:15:07,624