1 00:00:00,000 --> 00:00:03,290 >> [Bermain muzik] 2 00:00:03,290 --> 00:00:04,989 3 00:00:04,989 --> 00:00:06,280 JASON Hirschhorn: OK, semua orang. 4 00:00:06,280 --> 00:00:07,460 Selamat datang ke Bahagian. 5 00:00:07,460 --> 00:00:10,840 Ini adalah CS50, sangat kami seksyen super pertama. 6 00:00:10,840 --> 00:00:13,700 Seperti yang anda semua tahu, minggu depan bahagian tetap akan bermula, 7 00:00:13,700 --> 00:00:15,580 tetapi minggu ini kita semua bersama-sama. 8 00:00:15,580 --> 00:00:17,730 >> Terdapat diri saya sendiri. 9 00:00:17,730 --> 00:00:18,840 Nama saya Jason. 10 00:00:18,840 --> 00:00:20,630 Saya adalah seorang pensyarah dalam bidang Sains Komputer. 11 00:00:20,630 --> 00:00:23,910 Kami mempunyai Andi, siapa kepala TA CS50. 12 00:00:23,910 --> 00:00:27,630 Dan Scaz, Profesor Brian Scassellati, dia seorang profesor dalam bidang Sains Komputer. 13 00:00:27,630 --> 00:00:30,970 >> Kami adalah kepala-kepala CS50 di Yale. 14 00:00:30,970 --> 00:00:34,992 Anda sentiasa boleh e-mel kami heads@cs50.yale.edu. 15 00:00:34,992 --> 00:00:35,950 Kami akan berada di kuliah. 16 00:00:35,950 --> 00:00:37,547 Kami akan berada di waktu pejabat. 17 00:00:37,547 --> 00:00:40,130 Jika ada apa-apa yang pernah kita boleh lakukan untuk anda, apa sahaja yang anda perlukan, 18 00:00:40,130 --> 00:00:42,610 berasa bebas untuk menghubungi kami. 19 00:00:42,610 --> 00:00:44,140 >> Jadi apa yang kita akan lakukan hari ini? 20 00:00:44,140 --> 00:00:47,790 Atau sebelum itu, apa yang datang minggu ini? 21 00:00:47,790 --> 00:00:52,620 Jadi waktu pejabat adalah Isnin, Selasa, Rabu dan Khamis, jam 8:00 hingga 11:00. 22 00:00:52,620 --> 00:00:54,770 Ada jadual di laman web. 23 00:00:54,770 --> 00:00:57,830 >> Bahagian, seperti yang saya sebutkan, bermula minggu depan. 24 00:00:57,830 --> 00:01:01,390 Dan anda akan mengetahui minggu ini apa kalanya seksyen anda, apa hari ini, 25 00:01:01,390 --> 00:01:03,350 dan yang TA anda. 26 00:01:03,350 --> 00:01:08,610 >> Set Masalah 1 adalah kerana pada hari Khamis pada tengah hari, Jumaat pada tengah hari dengan hari yang lewat. 27 00:01:08,610 --> 00:01:10,817 Ya, anda mempunyai sembilan hari lewat. 28 00:01:10,817 --> 00:01:12,150 Dan terdapat sembilan set masalah. 29 00:01:12,150 --> 00:01:14,320 Dan hanya boleh menggunakan satu sehari lewat setiap set masalah. 30 00:01:14,320 --> 00:01:17,930 Ya, pada hakikatnya, semua masalah set adalah disebabkan Jumaat di tengah hari. 31 00:01:17,930 --> 00:01:18,550 Itu sahaja. 32 00:01:18,550 --> 00:01:20,400 Semua yang butiran adalah pada sukatan pelajaran. 33 00:01:20,400 --> 00:01:22,360 >> Setiap hari Jumaat, kami mempunyai makan tengah hari. 34 00:01:22,360 --> 00:01:25,230 Kami suka untuk membuat ini besar tentu merasa sedikit lebih kecil. 35 00:01:25,230 --> 00:01:26,580 Jadi, anda dialu-alukan untuk RSVP. 36 00:01:26,580 --> 00:01:30,050 Makan tengah hari percuma dengan rakan-rakan rakan-rakan dan kakitangan. 37 00:01:30,050 --> 00:01:34,120 cs50.yale.edu/rsvp. 38 00:01:34,120 --> 00:01:36,940 >> Semua perkara-perkara yang Saya mempunyai pada skrin, 39 00:01:36,940 --> 00:01:43,330 dan banyak lagi, anda boleh mencari cs50.yale.edu atau cs50.harvard.edu, jika anda pergi ke Harvard 40 00:01:43,330 --> 00:01:46,800 dan menonton dalam talian ini. 41 00:01:46,800 --> 00:01:50,240 >> Juga di laman-laman web, terdapat satu tan sumber untuk anda. 42 00:01:50,240 --> 00:01:54,610 Setiap kuliah bukan sahaja mempunyai video kuliah, tetapi juga menyatakan. 43 00:01:54,610 --> 00:01:58,184 Seseorang akan menonton kuliah dan mengambil nota untuk anda. 44 00:01:58,184 --> 00:02:00,100 Jadi anda hanya boleh membayar perhatian semasa kuliah, 45 00:02:00,100 --> 00:02:03,970 atau anda boleh menggunakan nota mereka / kami nota untuk menambah nota anda sendiri. 46 00:02:03,970 --> 00:02:04,987 >> Terdapat slaid dalam talian. 47 00:02:04,987 --> 00:02:07,320 Sumber itu code-- segala-galanya Daud pergi ke atas dalam kuliah, 48 00:02:07,320 --> 00:02:09,979 atau Scaz pergi lebih kuliah, yang Kod sumber boleh didapati dalam talian 49 00:02:09,979 --> 00:02:11,750 juga, kerana seperti saya, yang disebut video. 50 00:02:11,750 --> 00:02:14,257 >> Bahagian, begitu juga, semua akan difilemkan. 51 00:02:14,257 --> 00:02:15,840 Semua orang-orang slaid akan disediakan. 52 00:02:15,840 --> 00:02:18,190 Semua kod yang akan disediakan untuk anda. 53 00:02:18,190 --> 00:02:22,440 Terdapat seluar pendek di laman web di mana Kakitangan CS50 menghabiskan lima hingga 10 54 00:02:22,440 --> 00:02:24,130 minit melalui topik untuk anda. 55 00:02:24,130 --> 00:02:26,750 Sebahagian daripada mereka yang anda telah pun dihadapi dalam set masalah. 56 00:02:26,750 --> 00:02:30,430 >> Waktu pejabat, seperti yang saya nyatakan, Isnin melalui Khamis, 8:00 hingga 11:00. 57 00:02:30,430 --> 00:02:32,600 CS50 Kajian adalah sumber yang hebat. 58 00:02:32,600 --> 00:02:37,100 Terdapat masalah amalan, slaid sampel, pepijat dikenali 59 00:02:37,100 --> 00:02:40,920 bahawa pelajar suka untuk menjalankan ke dalam, untuk dasarnya setiap kita topik 60 00:02:40,920 --> 00:02:42,650 akan meliputi dalam kursus ini. 61 00:02:42,650 --> 00:02:46,350 >> Dan akhirnya, pada slaid ini sekurang-kurangnya, Reference50 62 00:02:46,350 --> 00:02:49,690 yang memberi anda maklumat pada semua fungsi C 63 00:02:49,690 --> 00:02:53,160 anda boleh pernah mungkin berharap untuk digunakan dan banyak, banyak lagi. 64 00:02:53,160 --> 00:02:55,690 >> Sekali lagi, yang dot dot dot di bahagian bawah skrin 65 00:02:55,690 --> 00:02:59,990 adalah untuk menunjukkan bahawa ada juga lebih banyak sumber di kedua-dua laman web: 66 00:02:59,990 --> 00:03:04,270 cs50.yale.edu, cs50.harvard.edu. 67 00:03:04,270 --> 00:03:05,840 >> Jadi, apa yang kita lakukan hari ini? 68 00:03:05,840 --> 00:03:08,970 Well, pertama saya akan memberi anda melihat sumber. 69 00:03:08,970 --> 00:03:10,010 Sudah lakukan yang itu. 70 00:03:10,010 --> 00:03:11,590 Lihatlah kepada kami. 71 00:03:11,590 --> 00:03:16,430 >> Sekarang, kita akan pergi ke jenis data dan pengendali dalam C. 72 00:03:16,430 --> 00:03:19,990 Kemudian Andi akan datang di sini dan pergi ke perpustakaan di C, Printf (), 73 00:03:19,990 --> 00:03:24,570 fungsi yang anda sudah biasa atau cepat akan menjadi sangat 74 00:03:24,570 --> 00:03:25,530 biasa. 75 00:03:25,530 --> 00:03:27,810 Dan anda juga akan pergi ke atas conditional dan gelung. 76 00:03:27,810 --> 00:03:30,900 >> Dan kemudian akhirnya, Scaz akan pergi ke ID CS50. 77 00:03:30,900 --> 00:03:34,250 Jika anda belum merpati di sudah dalam Set Masalah 1, 78 00:03:34,250 --> 00:03:37,060 serta bagaimana untuk menggunakan terminal dan berguna arahan 79 00:03:37,060 --> 00:03:42,280 dan kemudian memberikan beberapa demo dan amalan pengekodan ID CS50. 80 00:03:42,280 --> 00:03:45,130 >> Sebelum saya melompat masuk ke ini kandungan di sebelah ini, 81 00:03:45,130 --> 00:03:46,770 adakah sesiapa mempunyai apa-apa soalan setakat ini? 82 00:03:46,770 --> 00:03:53,190 83 00:03:53,190 --> 00:03:54,030 Yang besar. 84 00:03:54,030 --> 00:03:54,950 OKAY. 85 00:03:54,950 --> 00:03:55,810 Menukar gear. 86 00:03:55,810 --> 00:03:58,760 >> [PERUBAHAN GEAR] 87 00:03:58,760 --> 00:04:03,070 >> Itu adalah saya beralih gear dalam kereta manual. 88 00:04:03,070 --> 00:04:10,920 Jadi jenis data dalam C, anda tidak boleh hanya mempunyai x berubah-ubah dan ia berada di baris 10, 89 00:04:10,920 --> 00:04:17,170 integer, mungkin nombor 1, pada baris 20, nombor perpuluhan 10.5, 90 00:04:17,170 --> 00:04:20,500 dan kemudian pasangan baris kemudian tali, Saya suka CS50. 91 00:04:20,500 --> 00:04:25,052 >> Dalam C, pembolehubah hanya boleh satu perkara, dan satu perkara sahaja. 92 00:04:25,052 --> 00:04:26,510 Dan supaya anda perlu memberikan mereka jenis. 93 00:04:26,510 --> 00:04:28,780 Dan di atas kapal ini, kita mempunyai senarai jenis. 94 00:04:28,780 --> 00:04:32,000 Terdapat aksara, yang berdiri untuk watak. 95 00:04:32,000 --> 00:04:36,850 Jadi, itu satu huruf A, B, C, D. Itu juga boleh menjadi ruang, 96 00:04:36,850 --> 00:04:40,290 atau yang juga boleh menjadi watak talian baru. 97 00:04:40,290 --> 00:04:45,030 >> Terdapat bilangan bulat, yang hanya nombor, keseluruhan numbers-- atau integer 98 00:04:45,030 --> 00:04:47,130 rather-- tetapi tiada perpuluhan. 99 00:04:47,130 --> 00:04:49,790 >> Untuk perpuluhan, kami mempunyai nombor titik terapung. 100 00:04:49,790 --> 00:04:53,200 Nombor titik terapung adalah nombor dengan perpuluhan. 101 00:04:53,200 --> 00:04:58,160 >> Maka ada Roh meronta-ronta, yang integer dasarnya lebih lama. 102 00:04:58,160 --> 00:05:01,160 Anda akan melihat bahawa yang lama adalah 8 manakala int ialah 4. 103 00:05:01,160 --> 00:05:02,640 Saya akan mendapat itu dalam satu saat. 104 00:05:02,640 --> 00:05:07,390 Ini kerana longs boleh menyimpan walaupun lebih integer daripada int boleh menyimpan. 105 00:05:07,390 --> 00:05:10,100 Double adalah apungan panjang. 106 00:05:10,100 --> 00:05:12,460 >> Dan akhirnya, kami mempunyai tali, yang merupakan jenis yang 107 00:05:12,460 --> 00:05:14,430 bahawa anda mungkin telah digunakan sebelum ini. 108 00:05:14,430 --> 00:05:21,100 Jika anda termasuk hashtag # includeCS50.h dalam fail sumber anda, 109 00:05:21,100 --> 00:05:23,170 maka anda boleh menggunakan jenis tali. 110 00:05:23,170 --> 00:05:25,560 Ia tidak benar-benar dibina ke C. 111 00:05:25,560 --> 00:05:27,760 >> Terdapat beberapa jenis yang lain. 112 00:05:27,760 --> 00:05:32,900 Tetapi ini adalah orang-orang yang utama dengan yang akan anda gunakan dan hadapi. 113 00:05:32,900 --> 00:05:36,210 C sebagai, sekali lagi saya nyatakan, setiap variable-- ia 114 00:05:36,210 --> 00:05:38,620 hanya boleh satu jenis dan satu jenis sahaja. 115 00:05:38,620 --> 00:05:42,890 Ini kerana C adalah statik bahasa bertaip, yang bertentangan 116 00:05:42,890 --> 00:05:45,780 ke bahasa dinamik ditaip di mana jika anda membuat pembolehubah 117 00:05:45,780 --> 00:05:50,081 anda boleh mengubah apa yang disimpan dalam ia seperti yang anda pergi dalam program anda. 118 00:05:50,081 --> 00:05:52,580 Di sini di sebelah kanan sampingan, saya mempunyai saiz yang berbeza 119 00:05:52,580 --> 00:05:57,440 ini jenis data dalam bait. 120 00:05:57,440 --> 00:05:59,710 Jadi watak adalah 1 bait. 121 00:05:59,710 --> 00:06:01,250 Itulah 8 bit. 122 00:06:01,250 --> 00:06:05,530 Dan ini bermakna kerana 8 bit ada lapan 0 dan 1s. 123 00:06:05,530 --> 00:06:08,280 Kami melihat orang-orang demo dalam yang pertama minggu dengan yang mentol binari. 124 00:06:08,280 --> 00:06:15,680 >> Dengan 8 bit atau 1 bait, kita boleh mewakili nombor dari 0 hingga 255. 125 00:06:15,680 --> 00:06:16,180 Betul. 126 00:06:16,180 --> 00:06:18,770 Jika semua 8 bit 0 itulah 0. 127 00:06:18,770 --> 00:06:23,640 Jika bit pertama adalah 1, itu jumlah satu, dan sebagainya, semua jalan sehingga 255. 128 00:06:23,640 --> 00:06:28,290 Dan itulah sebabnya untuk watak-watak yang anda boleh mempunyai dasarnya sehingga 255 daripada mereka, 129 00:06:28,290 --> 00:06:31,210 tetapi itu perkara untuk meliputi semua watak-watak kita perlu menggunakan. 130 00:06:31,210 --> 00:06:38,060 >> Untuk integer, anda boleh mempunyai 0 dan maka anda mempunyai 2 hingga 32 tolak 1. 131 00:06:38,060 --> 00:06:40,340 Mereka adalah bagaimana banyak pilihan anda ada untuk integer. 132 00:06:40,340 --> 00:06:44,780 >> Untuk yang lama, anda mempunyai 0 2 hingga 64 tolak 1. 133 00:06:44,780 --> 00:06:48,860 Jadi, anda mempunyai banyak, banyak, lebih banyak pilihan untuk Roh meronta-ronta. 134 00:06:48,860 --> 00:06:54,220 >> Strings, itu adalah satu tanda tanya kerana itu adalah satu cliffhanger untuk masa lain. 135 00:06:54,220 --> 00:06:55,000 Yeah. 136 00:06:55,000 --> 00:06:56,350 Saya boleh memberitahu semua orang yang di tepi tempat duduk mereka, 137 00:06:56,350 --> 00:06:57,450 seperti apa itu tanda tanya? 138 00:06:57,450 --> 00:06:58,390 Ia cliffhanger. 139 00:06:58,390 --> 00:07:02,340 Kami akhirnya akan meliputi saiz tali dan bercakap lebih lanjut mengenai tali. 140 00:07:02,340 --> 00:07:04,692 Kerana tali sebenarnya salah satu roda latihan 141 00:07:04,692 --> 00:07:06,400 kita memakai pada yang demikian tentu pada permulaan 142 00:07:06,400 --> 00:07:09,700 dan kemudian mengambil kira kemudian pada, kerana tali dalam C 143 00:07:09,700 --> 00:07:13,320 sebenarnya petunjuk kepada barisan watak. 144 00:07:13,320 --> 00:07:15,810 Tetapi sekali lagi, itu adalah satu Cliffhanger untuk masa lain. 145 00:07:15,810 --> 00:07:18,890 Sebelum saya meneruskan sebarang pertanyaan, komen, kebimbangan mengenai slaid ini? 146 00:07:18,890 --> 00:07:25,800 147 00:07:25,800 --> 00:07:26,630 >> OKAY. 148 00:07:26,630 --> 00:07:30,330 Saya perlu menjadi Penerang hebat. 149 00:07:30,330 --> 00:07:33,210 Juga apabila anda pengaturcaraan, anda akan menggunakan operator ini. 150 00:07:33,210 --> 00:07:36,730 Tanda-tanda benar-benar mudah yang boleh melakukan mudah operasi, yang mana anda mungkin 151 00:07:36,730 --> 00:07:38,340 sudah sangat biasa. 152 00:07:38,340 --> 00:07:42,580 >> Sebagai contoh, di sebelah kanan sebelah, kita lihat tambah. 153 00:07:42,580 --> 00:07:44,640 Untuk menambah, anda hanya melakukan tanda Plus. 154 00:07:44,640 --> 00:07:46,850 Dan supaya anda mungkin mempunyai dua pembolehubah x dan y. 155 00:07:46,850 --> 00:07:48,810 Anda boleh melakukan x + y dalam kod anda. 156 00:07:48,810 --> 00:07:52,790 Mungkin anda mahu supaya- mengatakan anda mempunyai nombor 7 dan 3, 157 00:07:52,790 --> 00:07:55,780 Anda ingin simpan yang dalam sejumlah pembolehubah dipanggil. 158 00:07:55,780 --> 00:08:03,010 Anda boleh melakukan int untuk jenis, ruang Kesimpulannya, nama pembolehubah, = 7 + 3; 159 00:08:03,010 --> 00:08:05,780 >> Apa yang akan bahawa kedai dalam jumlah? 160 00:08:05,780 --> 00:08:07,190 Sesiapa sahaja? 161 00:08:07,190 --> 00:08:09,270 Jika saya mempunyai dalam jumlah = 7 + 3. 162 00:08:09,270 --> 00:08:10,437 Apa yang akan disimpan di dalam jumlah? 163 00:08:10,437 --> 00:08:11,520 Anda hanya boleh menjerit keluar. 164 00:08:11,520 --> 00:08:12,120 PENONTON: 10. 165 00:08:12,120 --> 00:08:12,995 >> JASON Hirschhorn: 10! 166 00:08:12,995 --> 00:08:14,870 Itu betul-betul betul. 167 00:08:14,870 --> 00:08:19,520 Bagaimana pula dalam jumlah = 7 - 3, Saya hanya menggunakan bahawa tanda sengkang. 168 00:08:19,520 --> 00:08:20,871 Apa yang akan disimpan? 169 00:08:20,871 --> 00:08:21,370 PENONTON: 4. 170 00:08:21,370 --> 00:08:22,203 JASON Hirschhorn: 4. 171 00:08:22,203 --> 00:08:25,770 Sum mungkin nama yang salah untuk berubah-ubah itu, tetapi 4 akan disimpan. 172 00:08:25,770 --> 00:08:31,890 >> Untuk membiak dalam C, gunakan sedikit Watak Star, anda tidak menggunakan x. 173 00:08:31,890 --> 00:08:35,990 Untuk membahagikan, gunakan Hadapan Tidak Slash simbol bahagian ini. 174 00:08:35,990 --> 00:08:39,580 Dan untuk modulo, menggunakan simbol Peratus. 175 00:08:39,580 --> 00:08:47,900 >> Jadi katakan saya mahu melihat int z = 7% 3, apa yang akan disimpan di dalam z? 176 00:08:47,900 --> 00:08:51,250 Jadi, yang pada asasnya bertanya apakah modulo lakukan? 177 00:08:51,250 --> 00:08:52,750 Adakah sesiapa tahu apa modulo tidak? 178 00:08:52,750 --> 00:08:53,940 Yeah. 179 00:08:53,940 --> 00:08:54,870 y 4. 180 00:08:54,870 --> 00:08:56,120 SPEAKER 1: Ia bakinya. 181 00:08:56,120 --> 00:08:58,369 JASON Hirschhorn: Ia adalah baki apabila anda membahagi. 182 00:08:58,369 --> 00:09:02,790 Jadi 7 dibahagikan dengan 3 adalah 2 baki 1. 183 00:09:02,790 --> 00:09:04,690 Jadi 1 akan disimpan. 184 00:09:04,690 --> 00:09:06,970 >> Anda melakukan penolakan, tetapi itulah bagaimana ia berfungsi. 185 00:09:06,970 --> 00:09:09,140 Itulah yang pengendali modulo tidak. 186 00:09:09,140 --> 00:09:12,360 Ia mengambil sebilangan membahagikan oleh nombor lain dan pulangan kepada anda 187 00:09:12,360 --> 00:09:14,590 bakinya. 188 00:09:14,590 --> 00:09:19,770 Jadi sekali lagi, 7% 3 memberikan anda 1, kerana 7 dibahagikan dengan 3 adalah 2 baki 1, 189 00:09:19,770 --> 00:09:21,650 dan mengembalikan bakinya. 190 00:09:21,650 --> 00:09:24,470 >> Bagaimana pula mari kita kembali ke atas satu langkah itu tanda bahagi. 191 00:09:24,470 --> 00:09:29,194 Jika saya 7 / dibahagikan dengan 3 tidak sesiapa tahu apa yang akan kembali? 192 00:09:29,194 --> 00:09:30,090 >> SPEAKER 2: 2. 193 00:09:30,090 --> 00:09:32,240 >> JASON Hirschhorn: Mengapa 2 dan tidak 2,333? 194 00:09:32,240 --> 00:09:34,560 >> SPEAKER 2: Saya rasa ia memotong kira selepas seluruh nombor. 195 00:09:34,560 --> 00:09:36,310 JASON Hirschhorn: Jadi yang betul-betul betul. 196 00:09:36,310 --> 00:09:39,880 Dalam C, jika anda melakukan pembahagian dua integer 7 dibahagikan dengan 3, 197 00:09:39,880 --> 00:09:43,430 ia mendapat jawapan yang dalam kes ini 2,3333 selama-lamanya 198 00:09:43,430 --> 00:09:47,080 dan ia mendapati bahawa titik perpuluhan dan pancungan segala-galanya di luar selepas perpuluhan 199 00:09:47,080 --> 00:09:49,240 dan ia hanya mengembalikan anda 2. 200 00:09:49,240 --> 00:09:51,120 >> Jadi jika saya 8 dibahagikan dengan 3. 201 00:09:51,120 --> 00:09:54,010 Yang sebenarnya, kita tahu bahawa untuk kembali 2,666, 202 00:09:54,010 --> 00:09:57,050 tetapi ia pancungan semua yang turun di perpuluhan, truncates itu semua, 203 00:09:57,050 --> 00:09:58,640 dan hanya kembali kepada anda 2. 204 00:09:58,640 --> 00:10:02,090 Jadi 6 dibahagikan dengan 3, 7 dibahagikan dengan 3, 8 dibahagikan dengan 3, 205 00:10:02,090 --> 00:10:04,840 semua akan kembali kepada anda 2. 206 00:10:04,840 --> 00:10:08,770 >> Kawan atau musuh, atau meraba-raba, bagaimana saya benar-benar boleh mendapatkan 207 00:10:08,770 --> 00:10:10,790 jawapan penuh jika saya mahu perpuluhan itu? 208 00:10:10,790 --> 00:10:13,120 209 00:10:13,120 --> 00:10:13,620 Yeah. 210 00:10:13,620 --> 00:10:14,152 Teruskan. 211 00:10:14,152 --> 00:10:15,110 SPEAKER 3: Gunakan apungan? 212 00:10:15,110 --> 00:10:16,942 JASON Hirschhorn: Apa yang kamu maksudkan? 213 00:10:16,942 --> 00:10:19,786 SPEAKER 3 oleh karena kamu berkata apungan adalah untuk nombor [didengar] 214 00:10:19,786 --> 00:10:22,900 215 00:10:22,900 --> 00:10:23,900 JASON Hirschhorn: Betul. 216 00:10:23,900 --> 00:10:26,100 Jadi, yang betul-betul betul. 217 00:10:26,100 --> 00:10:28,440 7 adalah bilangan bulat. 218 00:10:28,440 --> 00:10:31,690 Tetapi jika saya mahu menghidupkan yang kepada beberapa titik terapung, 219 00:10:31,690 --> 00:10:34,674 Saya perlu menyimpan yang sebagai 7.0 kerana komputer 220 00:10:34,674 --> 00:10:37,090 adalah benar-benar stupid-- kita melihat bahawa dengan PB dan J example-- 221 00:10:37,090 --> 00:10:38,930 ia hanya akan melakukan perkara apa yang anda beritahu. 222 00:10:38,930 --> 00:10:40,846 >> Jadi, jika anda menulis 7, fikir itu integer. 223 00:10:40,846 --> 00:10:43,640 Jika anda menulis 7.0, walaupun kita tahu perkara-perkara yang setara, 224 00:10:43,640 --> 00:10:45,550 ia merawat yang seperti terapung nombor titik. 225 00:10:45,550 --> 00:10:50,441 Jadi, jika anda lakukan 7,0 dibahagikan dengan 3, atau dibahagikan dengan 3.0, 226 00:10:50,441 --> 00:10:52,440 ia akan berkata, OK, sekarang kita sedang berurusan dengan pelampung. 227 00:10:52,440 --> 00:10:57,514 Aku akan kembali kepada anda 2.333333 selama-lamanya. 228 00:10:57,514 --> 00:10:59,930 Tetapi tidak benar-benar selama-lamanya, kerana kerana kita juga melihat di kuliah, 229 00:10:59,930 --> 00:11:03,350 nombor-nombor titik terapung tidak betul-betul tepat. 230 00:11:03,350 --> 00:11:05,940 >> Jadi jika anda mahu perpuluhan itu, atau sebahagian daripada perpuluhan itu, 231 00:11:05,940 --> 00:11:08,090 maka anda perlu use-- salah seorang daripada mereka telah menjadi nombor titik terapung 232 00:11:08,090 --> 00:11:11,048 dan komputer perlu memahami bahawa ini adalah satu titik terapung anda 233 00:11:11,048 --> 00:11:13,350 menguruskan, tidak integer. 234 00:11:13,350 --> 00:11:16,760 Mana-mana soalan di atas meja yang di sebelah kanan, setakat ini? 235 00:11:16,760 --> 00:11:22,650 Atau sebelah tangan kiri anda, anda kiri, sebelah kiri anda. 236 00:11:22,650 --> 00:11:23,264 Yeah. 237 00:11:23,264 --> 00:11:23,972 SPEAKER 4: Betul. 238 00:11:23,972 --> 00:11:26,216 Sebab sama suka tetap integer, anda akan 239 00:11:26,216 --> 00:11:30,230 write-- akan anda perlu menulis terapung? 240 00:11:30,230 --> 00:11:31,920 >> JASON Hirschhorn: Yeah demikian. 241 00:11:31,920 --> 00:11:34,400 Nah, jika anda ingin membuat pembolehubah itulah apungan, 242 00:11:34,400 --> 00:11:37,020 anda perlu berkata apungan z sama sesuatu. 243 00:11:37,020 --> 00:11:37,640 >> SPEAKER 4: OK. 244 00:11:37,640 --> 00:11:41,950 >> JASON Hirschhorn: Tetapi jika saya mahu melakukan 7 dibahagikan dengan 3 dan mendapat perpuluhan itu, 245 00:11:41,950 --> 00:11:48,540 Saya akan melakukan apungan z = 7.0 / 3.0; dan yang memberi aku tempat yang terapung 246 00:11:48,540 --> 00:11:49,273 nombor. 247 00:11:49,273 --> 00:11:50,000 >> SPEAKER 4: OK. 248 00:11:50,000 --> 00:11:56,370 >> JASON Hirschhorn: Jika saya lakukan sesuatu seperti int z = 7/3, 249 00:11:56,370 --> 00:12:00,856 yang memberi aku integer, kerana mereka adalah semua integer. 250 00:12:00,856 --> 00:12:01,730 Adakah ini masuk akal? 251 00:12:01,730 --> 00:12:02,320 >> SPEAKER 4: Ya. 252 00:12:02,320 --> 00:12:02,950 >> JASON Hirschhorn: OK. 253 00:12:02,950 --> 00:12:03,450 Yang besar. 254 00:12:03,450 --> 00:12:06,030 Sebarang pertanyaan lain mengenai jadual yang? 255 00:12:06,030 --> 00:12:07,220 Betul ke? 256 00:12:07,220 --> 00:12:08,380 Saya sangat teruja. 257 00:12:08,380 --> 00:12:09,120 OKAY. 258 00:12:09,120 --> 00:12:13,910 >> Jadi beberapa perkara yang anda akan menggunakan, sering kali dalam keadaan atau gelung, 259 00:12:13,910 --> 00:12:17,580 adalah jenis operators-- jenis ungkapan Boolean. 260 00:12:17,580 --> 00:12:23,140 Dan seperti yang kita belajar, == adalah apa yang anda gunakan untuk memeriksa jika dua perkara yang sama. 261 00:12:23,140 --> 00:12:28,170 >> Jadi di sini saya memeriksa jika x == y, mari kita lagi menganggap bahawa x adalah 7 dan y ialah 3. 262 00:12:28,170 --> 00:12:33,220 Jadi, jika saya menulis 7 == 3, apa yang akan kembali kepada saya? 263 00:12:33,220 --> 00:12:34,220 Adakah itu benar atau salah? 264 00:12:34,220 --> 00:12:35,275 >> PENONTON: Palsu. 265 00:12:35,275 --> 00:12:36,150 JASON Hirschhorn: OK. 266 00:12:36,150 --> 00:12:37,370 Saya rasa seperti semua orang boleh mendapatkan satu ini. 267 00:12:37,370 --> 00:12:39,054 Jadi semua orang, apa yang akan yang kembali? 268 00:12:39,054 --> 00:12:39,720 PENONTON: Palsu. 269 00:12:39,720 --> 00:12:40,130 JASON Hirschhorn: Palsu. 270 00:12:40,130 --> 00:12:40,850 Yang besar. 271 00:12:40,850 --> 00:12:41,930 7 tidak sama 3. 272 00:12:41,930 --> 00:12:44,530 Jadi 7 == 3 akan kembali palsu. 273 00:12:44,530 --> 00:12:50,746 Anda mempunyai tanda tidak sama, jadi jika saya diperiksa 7! = 3, apa yang akan yang kembali? 274 00:12:50,746 --> 00:12:51,370 PENONTON: Benar. 275 00:12:51,370 --> 00:12:52,650 JASON Hirschhorn: Benar. 276 00:12:52,650 --> 00:12:53,200 Sangat baik. 277 00:12:53,200 --> 00:12:55,990 Somebody sangat tegas dalam belakang dan menghargai bahawa. 278 00:12:55,990 --> 00:12:59,070 Kemudian anda mempunyai kurang daripada operator, kurang daripada atau sama dengan operator, 279 00:12:59,070 --> 00:13:01,990 lebih besar daripada pengendali, lebih besar daripada atau sama dengan operator. 280 00:13:01,990 --> 00:13:03,490 >> Jadi satu lagi kewarasan cek. 281 00:13:03,490 --> 00:13:05,660 Jika saya mempunyai 7 adalah lebih besar daripada atau sama dengan 3. 282 00:13:05,660 --> 00:13:06,966 Apa yang akan kembali? 283 00:13:06,966 --> 00:13:07,692 >> PENONTON: Benar. 284 00:13:07,692 --> 00:13:08,650 JASON Hirschhorn: Benar. 285 00:13:08,650 --> 00:13:10,050 Ya. 286 00:13:10,050 --> 00:13:13,290 Bahawa bilik belakang, tepi belakang dari bilik, yang hebat. 287 00:13:13,290 --> 00:13:16,240 Anda boleh menggabungkan kedua- Ungkapan jika anda suka, dan juga, 288 00:13:16,240 --> 00:13:21,880 dengan logik DAN yang && Atau logik OR yang || 289 00:13:21,880 --> 00:13:22,800 ||. 290 00:13:22,800 --> 00:13:25,785 Dan sekarang anda boleh menguji dua perkara together-- Adakah itu lucu? 291 00:13:25,785 --> 00:13:28,250 Mengapa yang lucu? 292 00:13:28,250 --> 00:13:35,200 >> Jadi, jika saya mahu, saya boleh katakan adalah 7 lebih besar daripada 3 DAN 2 adalah kurang daripada 4? 293 00:13:35,200 --> 00:13:37,090 Nah, jika 7 adalah lebih besar daripada 3, yang benar. 294 00:13:37,090 --> 00:13:38,400 2 adalah kurang daripada 4, itu benar. 295 00:13:38,400 --> 00:13:41,140 Jadi semua ini akan kembali benar. 296 00:13:41,140 --> 00:13:45,130 >> Jika saya diuji 7 adalah lebih besar daripada 3 dan- Saya hanya memilih nombor rawak sini-- 297 00:13:45,130 --> 00:13:47,340 4 adalah kurang daripada 2, baik, itu palsu. 298 00:13:47,340 --> 00:13:49,610 Jadi benar dan make palsu palsu. 299 00:13:49,610 --> 00:13:54,520 Dan anda boleh pergi pada dan anda menggabungkan sebagai banyak keadaan bersama-sama seperti yang anda suka. 300 00:13:54,520 --> 00:14:00,000 >> Adakah sesiapa mempunyai sebarang pertanyaan, komen, kebimbangan setakat ini? 301 00:14:00,000 --> 00:14:03,862 Dan saya melihat ada di antara kamu mengambil gambar saya dalam skrin, yang saya menghargai. 302 00:14:03,862 --> 00:14:05,070 Mudah-mudahan, ia tidak Snapchat. 303 00:14:05,070 --> 00:14:06,417 Mudah-mudahan, ia adalah untuk nota anda. 304 00:14:06,417 --> 00:14:08,500 Tetapi semua ini akan boleh didapati dalam talian. 305 00:14:08,500 --> 00:14:11,210 Jadi, anda tidak perlu mengambil gambar ini. 306 00:14:11,210 --> 00:14:15,150 Seperti yang saya nyatakan, segala-galanya boleh didapati dalam talian untuk anda. 307 00:14:15,150 --> 00:14:15,650 OKAY. 308 00:14:15,650 --> 00:14:17,980 Saya kira-kira untuk mendapatkan pentas telah hampir tiba, begitu juga sesiapa 309 00:14:17,980 --> 00:14:20,350 mahu berkata apa-apa sebelum itu berlaku? 310 00:14:20,350 --> 00:14:21,080 Soalan? 311 00:14:21,080 --> 00:14:21,680 >> [Interposing SUARA] 312 00:14:21,680 --> 00:14:22,250 >> JASON Hirschhorn: Oh, berhenti. 313 00:14:22,250 --> 00:14:23,290 Anda lelaki yang terlalu baik. 314 00:14:23,290 --> 00:14:23,790 OKAY. 315 00:14:23,790 --> 00:14:26,520 Saya akan menandakan keluar. 316 00:14:26,520 --> 00:14:27,240 Jom. 317 00:14:27,240 --> 00:14:29,570 >> ANDI PENG: Kami akan lakukan perubahan mic janggal sekarang. 318 00:14:29,570 --> 00:14:32,280 >> JASON Hirschhorn: Saya akan mengambil ini di luar. 319 00:14:32,280 --> 00:14:33,946 ANDI PENG: Menghargai sokongan, guys. 320 00:14:33,946 --> 00:14:42,250 321 00:14:42,250 --> 00:14:43,180 Bolehkah anda mendengar saya? 322 00:14:43,180 --> 00:14:43,930 Adakah itu baik? 323 00:14:43,930 --> 00:14:44,760 Perfect. 324 00:14:44,760 --> 00:14:45,630 Indah. 325 00:14:45,630 --> 00:14:47,490 Biar saya tuck yang masuk. 326 00:14:47,490 --> 00:14:49,100 OKAY. 327 00:14:49,100 --> 00:14:54,140 Jadi, saya hendak dilakukan seperti gergasi maklumat membuang pada anda semua sekarang. 328 00:14:54,140 --> 00:14:57,370 Dan tidak ada kebimbangan apa pun jika anda tidak mengikuti setiap baris sedikit daripada apa yang 329 00:14:57,370 --> 00:14:58,812 Saya akan menunjukkan kepada anda. 330 00:14:58,812 --> 00:15:00,770 Sebagai Jason berkata, segala-galanya adalah dalam talian. 331 00:15:00,770 --> 00:15:03,780 Hanya kita akan cuba untuk memperkenalkan semua orang untuk konsep-konsep 332 00:15:03,780 --> 00:15:05,270 dalam beberapa siri kuliah ini. 333 00:15:05,270 --> 00:15:06,582 Jadi hanya mengikuti bersama-sama. 334 00:15:06,582 --> 00:15:09,540 Jangan bimbang jika anda tidak memahami segala-galanya; Walau bagaimanapun, jika pada bila-bila 335 00:15:09,540 --> 00:15:12,820 anda rasa yang hilang, meningkatkan anda tangan, kita akan berhenti, tidak ada kebimbangan. 336 00:15:12,820 --> 00:15:15,060 Sejuk. 337 00:15:15,060 --> 00:15:19,270 >> Jadi saya fikir sesuatu yang David mempunyai sudah jenis yang disebut dalam kuliah 338 00:15:19,270 --> 00:15:23,240 dan Jason telah sejenis dirujuk untuk hari ini adalah apa perpustakaan adalah. 339 00:15:23,240 --> 00:15:27,510 Jadi dalam pengaturcaraan, kita ada perkara-perkara ini dipanggil perpustakaan. 340 00:15:27,510 --> 00:15:29,690 Di mana, pada dasarnya, semua mereka hanya satu set 341 00:15:29,690 --> 00:15:32,610 fungsi, iaitu pada dasarnya hanya kod itu 342 00:15:32,610 --> 00:15:35,070 telah ditulis oleh orang lain yang kita semua boleh 343 00:15:35,070 --> 00:15:36,410 penggunaan dalam program kami. 344 00:15:36,410 --> 00:15:38,790 >> Jadi bagaimana yang normal kerja perpustakaan, bukan? 345 00:15:38,790 --> 00:15:40,030 Anda memasuki pintu perpustakaan. 346 00:15:40,030 --> 00:15:41,890 Anda mempunyai semua ini buku anda boleh menarik keluar 347 00:15:41,890 --> 00:15:44,590 dan anda boleh mengakses maklumat dalam buku tersebut. 348 00:15:44,590 --> 00:15:45,840 Perkara yang sama dalam pengaturcaraan. 349 00:15:45,840 --> 00:15:48,820 >> Anda mempunyai perpustakaan yang telah pun telah ditulis oleh orang lain. 350 00:15:48,820 --> 00:15:51,530 Dan cara yang anda boleh, sebagai pengaturcara atau seorang pelajar, 351 00:15:51,530 --> 00:15:55,780 boleh mendapat akses kepada perpustakaan yang adalah melalui hashtag # include. 352 00:15:55,780 --> 00:15:59,720 >> Sebagai contoh, dalam C kita mempunyai tiga C-- paling 353 00:15:59,720 --> 00:16:03,420 biasa digunakan tiga C standard libraries-- perpustakaan input / output, 354 00:16:03,420 --> 00:16:05,540 perpustakaan tali, dan perpustakaan matematik. 355 00:16:05,540 --> 00:16:07,610 >> Jadi dalam pertama anda pasangan set masalah, 356 00:16:07,610 --> 00:16:10,940 mereka akan menjadi tiga bahawa anda terutamanya menggunakan. 357 00:16:10,940 --> 00:16:14,610 Jadi seperti Daud sudah dijelaskan dalam kuliah, 358 00:16:14,610 --> 00:16:17,460 Saya standard / O, atau input perpustakaan standard / output 359 00:16:17,460 --> 00:16:18,620 tidak tepat itu. 360 00:16:18,620 --> 00:16:23,530 Ia membolehkan anda, kod anda, untuk input apa-apa dari pengguna dan output yang 361 00:16:23,530 --> 00:16:25,960 ke skrin, pada dasarnya mencetaknya ke skrin. 362 00:16:25,960 --> 00:16:29,990 >> Dan sebagainya bila-bila masa anda menggunakan mana-mana fungsi, contohnya fungsi printf () yang 363 00:16:29,990 --> 00:16:33,319 kita akan pergi ke slaid seterusnya, pastikan untuk memasukkan standard I / O 364 00:16:33,319 --> 00:16:36,360 perpustakaan atau lain anda tidak akan dapat menggunakan fungsi printf (). 365 00:16:36,360 --> 00:16:39,110 Kerana anda, kerana pengaturcara pernah benar-benar menulis fungsi itu, 366 00:16:39,110 --> 00:16:41,840 anda hanya menggunakan seseorang kod lain dalam kod anda sendiri. 367 00:16:41,840 --> 00:16:43,620 >> Adakah ini semua orang masuk akal? 368 00:16:43,620 --> 00:16:44,520 Sejuk. 369 00:16:44,520 --> 00:16:48,530 >> Dan kemudian kita dasarnya mendapatkan ke perpustakaan string.h dan math.h yang 370 00:16:48,530 --> 00:16:52,970 perpustakaan, h hanya melambangkan perpustakaan, perpustakaan lain yang anda akan akhirnya 371 00:16:52,970 --> 00:16:55,310 akan menggunakan dalam kod anda. 372 00:16:55,310 --> 00:16:57,620 >> Walau bagaimanapun, bagi tujuan perpustakaan ini, kami juga 373 00:16:57,620 --> 00:17:01,170 ada-- daripada class-- ini kami juga mempunyai apa yang dipanggil perpustakaan CS50, 374 00:17:01,170 --> 00:17:05,270 cs50.h, di mana kita, untuk semakan anda telah mencipta 375 00:17:05,270 --> 00:17:07,369 banyak fungsi yang penting dan berguna. 376 00:17:07,369 --> 00:17:09,550 Supaya programmer anda sebagai boleh piggyback off 377 00:17:09,550 --> 00:17:14,470 apa yang kita sudah ditulis supaya ini fungsi ini disediakan untuk anda 378 00:17:14,470 --> 00:17:15,599 untuk kegunaan anda. 379 00:17:15,599 --> 00:17:18,359 >> Saya akan meliputi beberapa fungsi biasa digunakan, 380 00:17:18,359 --> 00:17:20,839 tetapi tahu bahawa ini adalah semua talian googleable. 381 00:17:20,839 --> 00:17:24,904 Jangan ragu, tarik ke atas perpustakaan CS50 dan maka anda mempunyai segala fungsi yang ada. 382 00:17:24,904 --> 00:17:25,828 Yeah. 383 00:17:25,828 --> 00:17:28,140 >> SPEAKER 5: Oleh itu, jika anda tidak menggunakan perisian yang 384 00:17:28,140 --> 00:17:29,916 yang diberikan kepada kami oleh kelas, adakah itu 385 00:17:29,916 --> 00:17:32,698 bermakna kita akan mempunyai untuk memuat turun dan mencari header ini memfailkan diri kita dan memberitahu 386 00:17:32,698 --> 00:17:33,840 komputer di mana ia? 387 00:17:33,840 --> 00:17:34,320 >> ANDI PENG: Soalan yang hebat. 388 00:17:34,320 --> 00:17:34,820 Tepat sekali. 389 00:17:34,820 --> 00:17:38,194 Jadi ia seperti jika anda tidak hadir secara fizikal di sebuah perpustakaan, 390 00:17:38,194 --> 00:17:40,360 tidak ada cara untuk anda untuk benar-benar pergi dan mengaksesnya. 391 00:17:40,360 --> 00:17:42,589 Jadi perkara yang sama dengan pengaturcaraan dalam C, anda 392 00:17:42,589 --> 00:17:45,880 perlu memastikan bahawa anda menggunakan kami perkakas kerana perpustakaan sudah 393 00:17:45,880 --> 00:17:47,270 dimasukkan ke dalamnya. 394 00:17:47,270 --> 00:17:50,020 Dan kemudian apabila anda hashtag #include, perpustakaan di sana. 395 00:17:50,020 --> 00:17:50,520 Yeah. 396 00:17:50,520 --> 00:17:51,920 Soalan yang baik. 397 00:17:51,920 --> 00:17:53,461 Semua orang yang baik? 398 00:17:53,461 --> 00:17:53,960 Sejuk. 399 00:17:53,960 --> 00:17:56,371 400 00:17:56,371 --> 00:17:56,870 Baiklah. 401 00:17:56,870 --> 00:17:59,330 Jadi, kita akan untuk memukul, pada dasarnya, apa yang 402 00:17:59,330 --> 00:18:01,620 Fungsi pertama yang kita sebagai pengaturcara adalah 403 00:18:01,620 --> 00:18:03,900 akan menggunakan dalam kod kami. 404 00:18:03,900 --> 00:18:05,690 Ini dipanggil fungsi printf (). 405 00:18:05,690 --> 00:18:08,450 Jadi, printf () fungsi, seperti yang saya telah telah berkata dalam slaid yang lalu, 406 00:18:08,450 --> 00:18:11,830 termasuk dalam standard I / O, input standard / output, perpustakaan. 407 00:18:11,830 --> 00:18:16,470 >> Jadi pastikan apa sahaja yang anda using-- oh, saya merebut laser pointer-- 408 00:18:16,470 --> 00:18:18,660 apabila anda menggunakan fungsi printf (), 409 00:18:18,660 --> 00:18:21,790 anda perlu termasuk standard I / O perpustakaan atau yang lain, apabila anda menyusun, 410 00:18:21,790 --> 00:18:23,760 anda akan mendapat ralat kerana komputer akan menjadi seperti, 411 00:18:23,760 --> 00:18:26,140 oh saya tidak tahu di mana printf () adalah, anda tidak memberitahu saya di mana printf () 412 00:18:26,140 --> 00:18:26,830 adalah. 413 00:18:26,830 --> 00:18:30,150 Well printf () termasuk dalam Saya standard / O, jadi apabila anda menggunakan printf (), 414 00:18:30,150 --> 00:18:32,960 pastikan anda mempunyai yang talian atas kod anda. 415 00:18:32,960 --> 00:18:36,040 >> Jadi, sebagai contoh, printf () di sini adalah fungsi. 416 00:18:36,040 --> 00:18:40,260 Semua ia adalah mencetak sesuatu dalam kurungan kepada pengguna. 417 00:18:40,260 --> 00:18:44,840 Adakah sesiapa ingin mengambil tikaman apa baris ini kod kanan 418 00:18:44,840 --> 00:18:46,420 di sini akan mencetak? 419 00:18:46,420 --> 00:18:48,730 Oleh itu, jawapan yang pada skrin. 420 00:18:48,730 --> 00:18:50,480 Sesiapa sahaja? 421 00:18:50,480 --> 00:18:51,380 >> VERDI: Bahagian bawah. 422 00:18:51,380 --> 00:18:53,510 >> ANDI PENG: Verdi, mengapa tidak anda pergi hadapan dan berkata keseluruhan kenyataan itu? 423 00:18:53,510 --> 00:18:55,718 >> VERDI: Hello, nama saya Andi, dan saya berumur 20 tahun. 424 00:18:55,718 --> 00:18:57,270 ANDI PENG: Ah, indah. 425 00:18:57,270 --> 00:19:00,240 Jadi dalam baris ini kita akan mencetak, Hello, nama saya adalah Andi, 426 00:19:00,240 --> 00:19:04,280 dan saya berumur 20 tahun, yang adalah sebenarnya satu kenyataan yang benar. 427 00:19:04,280 --> 00:19:05,090 >> Sintaksis. 428 00:19:05,090 --> 00:19:08,830 Jadi beberapa isu sintaksis yang anda semua ingin memastikan anda tahu. 429 00:19:08,830 --> 00:19:09,360 Sebut harga. 430 00:19:09,360 --> 00:19:13,170 Tanda petik memberitahu komputer bahawa segala-galanya di dalam 431 00:19:13,170 --> 00:19:14,850 akan dicetak. 432 00:19:14,850 --> 00:19:16,620 >> Segala-galanya di dalam tin hanya menjadi betul-betul bagaimana 433 00:19:16,620 --> 00:19:19,920 anda taip, kecuali biasanya pada akhirnya, 434 00:19:19,920 --> 00:19:23,610 kita akan ingin memasukkan yang hash-- oh sorry-- a n sengkang. 435 00:19:23,610 --> 00:19:24,640 Jadi dash n. 436 00:19:24,640 --> 00:19:28,884 >> Adakah sesiapa yang mahu mengambil tekaan apa yang tidak kepada kod kami? 437 00:19:28,884 --> 00:19:29,465 Yeah. 438 00:19:29,465 --> 00:19:30,840 SPEAKER 6: meletakkan ia pada baris baru. 439 00:19:30,840 --> 00:19:31,650 ANDI PENG: Tepat sekali. 440 00:19:31,650 --> 00:19:34,660 Jadi semua ini tidak adalah membenarkan apa sahaja yang berlaku 441 00:19:34,660 --> 00:19:37,520 selepas ini, selepas kenyataan ini, untuk dicetak kepada barisan baru. 442 00:19:37,520 --> 00:19:40,030 Supaya apabila anda menulis anda kod anda tidak secara rawak mempunyai perkara-perkara 443 00:19:40,030 --> 00:19:41,738 tacked ke akhir yang anda tidak mahu. 444 00:19:41,738 --> 00:19:43,700 Semua yang mendapat kemas dicetak satu baris 445 00:19:43,700 --> 00:19:46,870 dan kemudian kita bermula pada baris berikut. 446 00:19:46,870 --> 00:19:50,970 >> Adakah sesiapa ingat apa yang koma bertitik tidak apabila kita pengekodan? 447 00:19:50,970 --> 00:19:54,580 448 00:19:54,580 --> 00:19:55,330 Yeah. 449 00:19:55,330 --> 00:19:55,740 >> SPEAKER 7: Penyata. 450 00:19:55,740 --> 00:19:56,010 >> ANDI PENG: Maaf? 451 00:19:56,010 --> 00:19:57,100 >> SPEAKER 7: Adakah ia berakhir kenyataan itu? 452 00:19:57,100 --> 00:19:57,766 >> ANDI PENG: Ya. 453 00:19:57,766 --> 00:20:02,670 Jadi, dalam C, atau apa-apa pengaturcaraan bahasa, koma bertitik 454 00:20:02,670 --> 00:20:04,640 menandakan akhir garis pengaturcaraan. 455 00:20:04,640 --> 00:20:09,240 Jadi, sebagai contoh, dalam bahasa Inggeris kita gunakan tempoh berkata, oh ini adalah akhir ayat. 456 00:20:09,240 --> 00:20:12,857 Dalam pengaturcaraan, perkara yang sama, kita mempunyai koma bertitik untuk menandakan akhir baris. 457 00:20:12,857 --> 00:20:14,690 Sering kali, apabila anda bermula untuk program, 458 00:20:14,690 --> 00:20:17,150 anda akan menyedari bahawa anda lupa untuk menambah koma bernoktah 459 00:20:17,150 --> 00:20:19,400 dan kemudian anda cuba untuk menjalankan anda kod dan ia tidak berfungsi. 460 00:20:19,400 --> 00:20:21,520 Dan anda seperti, Ah, saya tidak tahu mengapa, ia perlu bekerja. 461 00:20:21,520 --> 00:20:24,394 >> Kemungkinan anda mungkin terlupa yang koma bertitik atau pendakap atau sesuatu 462 00:20:24,394 --> 00:20:25,020 di suatu tempat. 463 00:20:25,020 --> 00:20:27,740 Jadi, yang penting untuk diingati. 464 00:20:27,740 --> 00:20:29,627 Sejuk. 465 00:20:29,627 --> 00:20:31,960 Baiklah, mengangkat tangan, bagaimana ramai orang di sini yang pernah 466 00:20:31,960 --> 00:20:37,210 diambil AP Sains Komputer atau diprogramkan di Jawa sebelum ini, yang pernah? 467 00:20:37,210 --> 00:20:37,710 OKAY. 468 00:20:37,710 --> 00:20:38,210 Indah. 469 00:20:38,210 --> 00:20:41,340 Itu tidak akan diguna pakai itu, tetapi di Jawa, anda 470 00:20:41,340 --> 00:20:44,960 mempunyai sesuatu yang dipanggil System.out.println yang tidak wujud dalam C. 471 00:20:44,960 --> 00:20:49,927 >> Jadi, dalam C, setiap kali anda ingin menambah dalam pembolehubah 472 00:20:49,927 --> 00:20:51,760 ke dalam apa sahaja yang anda mahu mencetak, ada 473 00:20:51,760 --> 00:20:54,620 sintaks tertentu kita akan gunakan. 474 00:20:54,620 --> 00:20:56,520 Yang dipanggil placeholding-- dasarnya 475 00:20:56,520 --> 00:21:01,180 kita menambah ruang letak di tempat daripada integer atau pembolehubah 476 00:21:01,180 --> 00:21:02,580 yang kita ingin cetak. 477 00:21:02,580 --> 00:21:07,430 >> Jadi seperti yang anda semua boleh lihat kita telah menyertakan tandukan perpustakaan baru memfailkan sini. 478 00:21:07,430 --> 00:21:09,130 Perpustakaan CS50. 479 00:21:09,130 --> 00:21:13,160 Dan yang terkandung dalam perpustakaan CS50 adalah fungsi yang sama kita akan menggunakan 480 00:21:13,160 --> 00:21:15,610 dalam perjalanan kami dipanggil GetInt (). 481 00:21:15,610 --> 00:21:21,830 >> Ada sesiapa mahu mengambil tikaman di apa GetInt () mungkin boleh lakukan. 482 00:21:21,830 --> 00:21:22,830 >> PENONTON: [didengar] 483 00:21:22,830 --> 00:21:23,550 >> ANDI PENG: Maaf. 484 00:21:23,550 --> 00:21:24,370 Tidak boleh mendengar anda. 485 00:21:24,370 --> 00:21:25,511 Maddie, sesiapa. 486 00:21:25,511 --> 00:21:27,260 Maddie: Oh, ia meminta anda integer. 487 00:21:27,260 --> 00:21:28,051 ANDI PENG: Tepat sekali. 488 00:21:28,051 --> 00:21:30,670 Jadi fungsi ini, satu lagi fungsi yang sudah 489 00:21:30,670 --> 00:21:33,690 telah ditulis oleh orang lain yang kita boleh memanggil sekarang. 490 00:21:33,690 --> 00:21:38,000 Semua itu adalah mendorong anda, pengguna, untuk memasukkan apa sahaja yang anda mahu sebagai kod 491 00:21:38,000 --> 00:21:41,850 sedang berjalan dan ia menyimpan whatever-- dalam kes ini kami GetInt () - ing, 492 00:21:41,850 --> 00:21:44,060 jadi ini bermakna kami mendapatkan bilangan bulat. 493 00:21:44,060 --> 00:21:46,150 >> Dan kita akan menyimpan bahawa dalam integer lain 494 00:21:46,150 --> 00:21:48,900 yang kita baru sahaja dibuat dipanggil umur. 495 00:21:48,900 --> 00:21:51,500 Yang masuk akal untuk semua orang? 496 00:21:51,500 --> 00:21:52,190 Sejuk. 497 00:21:52,190 --> 00:21:56,400 >> Jadi sekarang kita telah simpan integer ini, yang kami telah diminta daripada pengguna, 498 00:21:56,400 --> 00:22:00,010 dalam pembolehubah ini, kami telah dijadikan dari jenis int dipanggil umur, 499 00:22:00,010 --> 00:22:03,720 kita boleh teruskan dan tempat bahawa dalam printf kami () fungsi. 500 00:22:03,720 --> 00:22:08,970 Jadi sintaks yang biasanya untuk printf () adalah yang mana sahaja dalam fizikal sebenar anda 501 00:22:08,970 --> 00:22:14,410 talian yang anda mahu termasuk integer itu, anda lakukan simbol yang di sana, 502 00:22:14,410 --> 00:22:17,800 simbol peratus, dengan jenis pembolehubah yang anda inginkan. 503 00:22:17,800 --> 00:22:20,090 >> Jadi, dalam usia kes ini adalah integer. 504 00:22:20,090 --> 00:22:25,030 Jadi, anda akan untuk memasukkan % i kerana ia adalah bilangan bulat. 505 00:22:25,030 --> 00:22:26,860 Dan kemudian selepas anda pernyataan, anda akan 506 00:22:26,860 --> 00:22:30,370 untuk melakukan koma dan menamakan pembolehubah. 507 00:22:30,370 --> 00:22:33,420 >> Jadi di sini, kita akan mencetak keluar, Hello, nama saya adalah Andi, 508 00:22:33,420 --> 00:22:35,730 dan saya berumur tahun kosong. 509 00:22:35,730 --> 00:22:38,890 Hashta-- atau, sorry--, umur dengan apa sahaja yang saya input. 510 00:22:38,890 --> 00:22:42,790 Jadi jika saya input 20 untuk GetInt saya () di sini, 511 00:22:42,790 --> 00:22:44,500 ia akan mencetak perkara yang sama. 512 00:22:44,500 --> 00:22:47,990 Tetapi, jika saya mahu input sesuatu lain, seperti mungkin 40 atau 45, 513 00:22:47,990 --> 00:22:50,800 maka anda akan melihat yang mencerminkan sewajarnya dalam kod. 514 00:22:50,800 --> 00:22:52,886 >> Jadi ini adalah satu contoh sesuatu di mana 515 00:22:52,886 --> 00:22:55,260 ia mencetak keluar dan kelihatan anda seolah-olah ia adalah perkara yang sama, 516 00:22:55,260 --> 00:22:57,593 tetapi di bawah bonet komputer ada sebenarnya 517 00:22:57,593 --> 00:22:59,560 perkara yang sangat berbeza berlaku. 518 00:22:59,560 --> 00:23:00,060 Sejuk. 519 00:23:00,060 --> 00:23:02,760 520 00:23:02,760 --> 00:23:03,260 Baiklah. 521 00:23:03,260 --> 00:23:06,940 Jadi apa jika kita mahu beberapa pembolehubah? 522 00:23:06,940 --> 00:23:08,290 Cukup mudah. 523 00:23:08,290 --> 00:23:09,150 Benda yang sama. 524 00:23:09,150 --> 00:23:11,930 Kami juga mempunyai fungsi baru di sini dipanggil GetString (), 525 00:23:11,930 --> 00:23:15,380 juga termasuk dalam perpustakaan CS50, bahawa semua yang dilakukan adalah meminta pengguna 526 00:23:15,380 --> 00:23:18,120 untuk rentetan, iaitu hanya satu set aksara, 527 00:23:18,120 --> 00:23:19,810 jadi seperti hukuman atau seperti nama. 528 00:23:19,810 --> 00:23:25,470 >> Jadi dalam kes ini, kita akan mempunyai dua ruang letak% s untuk rentetan dan% i 529 00:23:25,470 --> 00:23:26,750 untuk integer. 530 00:23:26,750 --> 00:23:29,190 Dan kami akan mengikuti dengan kedua-dua pembolehubah 531 00:23:29,190 --> 00:23:32,670 kita mahu dimasukkan, dalam perintah itu bahawa mereka muncul dalam ayat. 532 00:23:32,670 --> 00:23:35,471 Jadi, sebagai contoh, nama saya kosong, saya mahu nama di sana, 533 00:23:35,471 --> 00:23:36,970 jadi saya akan mempunyai nama yang pertama. 534 00:23:36,970 --> 00:23:39,637 Dan kemudian selepas itu, saya ingin umur, mahu mempunyai umur kedua. 535 00:23:39,637 --> 00:23:42,720 Dan jadi jika saya mahu input, Hello, Andi nama saya, dan saya berumur 20 tahun. 536 00:23:42,720 --> 00:23:46,370 Jika saya diinput Andi dan 20, Perkara yang tepat sama akan mencetak; 537 00:23:46,370 --> 00:23:51,134 Walau bagaimanapun, sekarang kita telah mendapat dua disimpan pembolehubah nama serta int. 538 00:23:51,134 --> 00:23:51,634 Yeah. 539 00:23:51,634 --> 00:23:54,124 >> SPEAKER 8: Adakah ia dapat berjalan jika anda dihidupkan 540 00:23:54,124 --> 00:23:55,620 menamakan dan umur pada akhir itu? 541 00:23:55,620 --> 00:23:55,840 >> ANDI PENG: Ya. 542 00:23:55,840 --> 00:23:57,006 Itulah soalan yang benar-benar baik. 543 00:23:57,006 --> 00:23:59,520 Jadi cerita panjang pendek, tidak. 544 00:23:59,520 --> 00:24:03,070 Oleh kerana nama dan age-- apa jenis pembolehubah adalah nama? 545 00:24:03,070 --> 00:24:03,950 >> SPEAKER 8: String. 546 00:24:03,950 --> 00:24:05,440 >> ANDI PENG: Dan apa jenis pembolehubah umur? 547 00:24:05,440 --> 00:24:06,231 >> SPEAKER 8: Integer. 548 00:24:06,231 --> 00:24:10,290 ANDI PENG: Jadi di sini kita mempunyai pemegang tempat yang untuk tali dan integer, bukan? 549 00:24:10,290 --> 00:24:13,350 Jadi jika anda adalah untuk menukar ini, komputer tidak akan tahu. 550 00:24:13,350 --> 00:24:16,250 Ia akan menyemak tali, dan jika anda cuba untuk memberikan int, 551 00:24:16,250 --> 00:24:18,083 ia akan menjadi seperti tunggu saya keliru, anda 552 00:24:18,083 --> 00:24:21,100 memberitahu saya saya perlu mengumpukkan memori untuk int. 553 00:24:21,100 --> 00:24:23,760 Dan di sini, apabila ia menjangka integer 554 00:24:23,760 --> 00:24:25,640 dan anda memberikan nama dan rentetan sebaliknya, 555 00:24:25,640 --> 00:24:28,931 ia juga akan menjadi sangat mengelirukan, ia tidak akan berjalan dengan cara yang anda memerlukannya. 556 00:24:28,931 --> 00:24:35,280 Jadi di sini, menamakan dan sintaks adalah sangat penting untuk menjalankan kod. 557 00:24:35,280 --> 00:24:37,991 Semua orang yang baik? 558 00:24:37,991 --> 00:24:38,490 Yeah. 559 00:24:38,490 --> 00:24:39,476 Maddie. 560 00:24:39,476 --> 00:24:44,620 >> Maddie: Di sini, saya tahu kita telah melihat contoh-contoh di dalam kelas, di mana mereka meminta 561 00:24:44,620 --> 00:24:46,950 Berapa umur anda, apakah nama anda. 562 00:24:46,950 --> 00:24:50,250 Di sini, yang akan ia doesn't-- jika kita menjalankan kod ini, 563 00:24:50,250 --> 00:24:51,750 ia tidak akan meminta untuk itu? 564 00:24:51,750 --> 00:24:54,740 Tetapi anda akan sama input dua nombor dan kemudian ia akan berjalan seperti itu? 565 00:24:54,740 --> 00:24:55,781 >> ANDI PENG: Ya, betul-betul. 566 00:24:55,781 --> 00:24:58,250 Jadi, jika anda mahu untuk ia paparan, sila masukkan umur anda, 567 00:24:58,250 --> 00:25:01,100 anda hanya boleh menambah fungsi printf () yang mengatakan, Sila masukkan umur anda, 568 00:25:01,100 --> 00:25:01,600 di atasnya. 569 00:25:01,600 --> 00:25:02,711 Itu satu soalan yang baik. 570 00:25:02,711 --> 00:25:03,210 Yeah. 571 00:25:03,210 --> 00:25:07,964 >> SPEAKER 9: Jadi, sudah akan termasuk dalam GetInt () [didengar]. 572 00:25:07,964 --> 00:25:09,380 ANDI PENG: Tidak, ia sebenarnya tidak. 573 00:25:09,380 --> 00:25:11,809 Jadi semua ini tidak adalah hanya meminta skrin kosong 574 00:25:11,809 --> 00:25:13,100 kepada pengguna untuk input sesuatu. 575 00:25:13,100 --> 00:25:17,420 Jika anda mahu, jika anda mahu untuk mencetak sesuatu yang memberitahu pengguna seperti, 576 00:25:17,420 --> 00:25:21,110 sila berikan saya umur anda, maka anda perlu printf () yang diri sendiri. 577 00:25:21,110 --> 00:25:23,789 Oleh kerana semua orang menggunakan ini fungsi untuk perkara yang berbeza, 578 00:25:23,789 --> 00:25:26,080 anda boleh menyimpan umur, anda boleh menyimpan alamat, 579 00:25:26,080 --> 00:25:28,060 anda boleh menyimpan nombor telefon. 580 00:25:28,060 --> 00:25:31,190 Dan supaya ia benar-benar sehingga kegunaan individu lelaki anda 581 00:25:31,190 --> 00:25:34,390 untuk apa yang anda mahu ia katakan. 582 00:25:34,390 --> 00:25:34,890 Yeah. 583 00:25:34,890 --> 00:25:38,236 >> SPEAKER 10: Jadi, hanya untuk menjelaskan, di mana adakah anda input nama dan umur 584 00:25:38,236 --> 00:25:43,020 supaya ia muncul di tempat% s? 585 00:25:43,020 --> 00:25:44,320 >> ANDI PENG: Seperti pada pengguna? 586 00:25:44,320 --> 00:25:47,165 >> SPEAKER 10: Ya, seperti bagaimana saya membuat kitab itu di mana saya meletakkan Andi, 587 00:25:47,165 --> 00:25:48,350 dan di mana saya meletakkan 20? 588 00:25:48,350 --> 00:25:48,640 >> ANDI PENG: Ya. 589 00:25:48,640 --> 00:25:50,250 Jadi jika anda adalah untuk benar-benar menjalankan kod ini, 590 00:25:50,250 --> 00:25:52,875 Saya tidak benar-benar menjalankan kod, ini adalah hanya di sini sekarang. 591 00:25:52,875 --> 00:25:56,910 Jika saya menjalankan kod, saya akan menyusun kod, membuat fail, 592 00:25:56,910 --> 00:26:00,760 menjalankan kod, dan kemudian ada akan hanya menjadi dua ruang bagi saya untuk input itu. 593 00:26:00,760 --> 00:26:01,260 Yeah. 594 00:26:01,260 --> 00:26:03,843 Kalian akan melihat apabila anda bermain main dengan kod ini sendiri. 595 00:26:03,843 --> 00:26:05,760 596 00:26:05,760 --> 00:26:09,645 >> Baiklah kita akan bergerak ke dalam seksyen seterusnya apa 597 00:26:09,645 --> 00:26:11,610 kita akan meliputi hari ini. 598 00:26:11,610 --> 00:26:13,980 Kami akan pergi ke atas apa kenyataan bersyarat berada. 599 00:26:13,980 --> 00:26:16,500 Jadi, jika anda semua masih ingat dan ingat dari kuliah, 600 00:26:16,500 --> 00:26:19,210 kenyataan bersyarat, semua mereka adalah adalah satu set 601 00:26:19,210 --> 00:26:24,010 arahan untuk komputer dalam yang jika keadaan tertentu adalah benar, 602 00:26:24,010 --> 00:26:27,470 anda melaksanakan kod di di dalam keadaan itu. 603 00:26:27,470 --> 00:26:30,101 >> Jadi pada dasarnya Scratch-- tema besar dari hari ini 604 00:26:30,101 --> 00:26:32,850 adalah bahawa anda semua sudah semua dilihat logik di sebalik segala-galanya 605 00:26:32,850 --> 00:26:34,020 bahawa kita meliputi. 606 00:26:34,020 --> 00:26:36,190 Dan semua yang kita lakukan adalah menterjemahkan sesuatu 607 00:26:36,190 --> 00:26:39,090 itu adalah sangat intuitif dalam Awal, dan keras pengekodan 608 00:26:39,090 --> 00:26:41,950 ke dalam sintaks kita akan menggunakan untuk kelas yang C. 609 00:26:41,950 --> 00:26:47,550 Jadi secara logiknya, semua blok ini adalah ialah sekeping kod di sana. 610 00:26:47,550 --> 00:26:49,995 Yeah. 611 00:26:49,995 --> 00:26:50,900 OKAY. 612 00:26:50,900 --> 00:26:55,290 >> Kami juga masuk ke dalam lagi jika ... kenyataan yang hanya lapisan ditambah 613 00:26:55,290 --> 00:26:59,120 kerumitan kepada jika kenyataan itu mana komputer mengambil melihat ini 614 00:26:59,120 --> 00:27:04,260 dan melihat, jika keadaan ini benar, adakah apa sahaja yang di dalam kedua-dua kurungan, 615 00:27:04,260 --> 00:27:08,470 else-- supaya jenis seperti lalai jika ia tidak memenuhi condition-- yang melakukan ini. 616 00:27:08,470 --> 00:27:10,120 Ia seperti garpu di jalan raya. 617 00:27:10,120 --> 00:27:14,400 Jika ia hujan di luar, saya meletakkan pada jaket hujan, apa-apa lagi 618 00:27:14,400 --> 00:27:16,330 lagi yang saya tidak memakai jaket hujan. 619 00:27:16,330 --> 00:27:18,400 >> Adakah logik yang masuk akal untuk semua orang? 620 00:27:18,400 --> 00:27:21,031 Sejuk. 621 00:27:21,031 --> 00:27:21,530 Baiklah. 622 00:27:21,530 --> 00:27:24,970 Jadi seperti contoh yang keras ini yang kita akan lihat dalam C 623 00:27:24,970 --> 00:27:28,890 jika saya mahu mencipta pembolehubah dipanggil jam kerja rumah. 624 00:27:28,890 --> 00:27:32,050 Dan jika waktu kerja rumah adalah kurang daripada lima, saya berkata Kehidupan adalah besar. 625 00:27:32,050 --> 00:27:33,070 Ianya indah. 626 00:27:33,070 --> 00:27:36,450 Bagaimanapun, berkata perjuangan tersebut real-- iaitu apa yang kita semua pada hari Isnin ini 627 00:27:36,450 --> 00:27:39,337 petang sehingga Sains Hill, mungkin melakukan hak sekarang-- 628 00:27:39,337 --> 00:27:40,170 PENONTON: [LAUGHING] 629 00:27:40,170 --> 00:27:42,510 ANDI PENG: Mereka cara kita akan, terima kasih untuk itu. 630 00:27:42,510 --> 00:27:46,180 Cara kita akan Hardcode ini dalam C adalah jika- mari kita andaikan 631 00:27:46,180 --> 00:27:49,920 kita sudah mempunyai pembolehubah jenis int dipanggil jam kerja rumah di sini. 632 00:27:49,920 --> 00:27:53,870 Jika waktu kerja rumah adalah kurang daripada lima printf (), Life hebat. 633 00:27:53,870 --> 00:27:57,330 Ingat menyimpan / n kerana anda mahu barisan baru selepas. 634 00:27:57,330 --> 00:27:59,660 Cetak yang lain, perjuangan ini adalah benar. 635 00:27:59,660 --> 00:28:03,720 >> Adakah semua orang memahami bagaimana Saya beralih dari blok ini 636 00:28:03,720 --> 00:28:07,610 ke dalam blok ini kod? 637 00:28:07,610 --> 00:28:08,110 Sejuk. 638 00:28:08,110 --> 00:28:11,030 639 00:28:11,030 --> 00:28:11,840 Baiklah. 640 00:28:11,840 --> 00:28:15,930 >> Oleh sebab itu kita akan lihat pada pelbagai kenyataan Jika sama sekali. 641 00:28:15,930 --> 00:28:18,140 Jadi mari kita mengambil alih Tujuan program ini 642 00:28:18,140 --> 00:28:20,870 adalah kita meminta pengguna untuk gred. 643 00:28:20,870 --> 00:28:24,450 Kami segera menggunakan GetInt () yang gred, dan mereka input nilai, 644 00:28:24,450 --> 00:28:27,700 dan anda mahu untuk dipaparkan jenis gred yang mereka ada. 645 00:28:27,700 --> 00:28:30,730 >> Jadi jika saya untuk mereka bentuk program, saya bermakna biasanya dalam semua mata kita, 646 00:28:30,730 --> 00:28:35,490 90-100 adalah A, 80-90 ialah B, dan sebagainya dan sebagainya. 647 00:28:35,490 --> 00:28:39,040 Apa yang salah dengan ini sekeping kod bahawa ia bukan 648 00:28:39,040 --> 00:28:41,393 melakukan apa yang saya mahu ia lakukan. 649 00:28:41,393 --> 00:28:41,892 Yeah. 650 00:28:41,892 --> 00:28:45,100 >> SPEAKER 11: Mereka mempunyai had yang lebih rendah, tetapi mereka tidak mempunyai had atas. 651 00:28:45,100 --> 00:28:46,280 >> ANDI PENG: Tepat sekali. 652 00:28:46,280 --> 00:28:47,950 Adakah semua orang mendengar apa yang dia katakan? 653 00:28:47,950 --> 00:28:50,200 Terdapat akan menjadi atas had, tetapi tiada had yang lebih rendah. 654 00:28:50,200 --> 00:28:52,540 Maaf, cara lain di sekeliling, had yang lebih rendah, tiada had atas. 655 00:28:52,540 --> 00:28:55,090 Jadi yang ingin anda mengambil tikaman di berkata 656 00:28:55,090 --> 00:28:58,945 apa yang akan dicetak di atas ini skrin jika saya menjalankan kod ini. 657 00:28:58,945 --> 00:28:59,820 SPEAKER 11: Ralat? 658 00:28:59,820 --> 00:29:01,140 ANDI PENG: Ralat? 659 00:29:01,140 --> 00:29:02,740 Tekaan besar, tidak berapa betul. 660 00:29:02,740 --> 00:29:05,465 Adakah sesiapa mempunyai tikaman yang lain? 661 00:29:05,465 --> 00:29:06,640 Ya, Harun. 662 00:29:06,640 --> 00:29:10,099 >> AARON: Jika anda masukkan ke dalam sesuatu yang lebih besar daripada 90, 663 00:29:10,099 --> 00:29:11,640 ia akan menunjukkan semua gred anda dapat. 664 00:29:11,640 --> 00:29:13,640 Ia akan menunjukkan kepada anda mendapat A, anda mendapat B, anda mendapat C. 665 00:29:13,640 --> 00:29:13,870 >> ANDI PENG: Ya. 666 00:29:13,870 --> 00:29:14,840 Itu betul-betul betul. 667 00:29:14,840 --> 00:29:17,820 Jadi, yang akan menjadi indah. 668 00:29:17,820 --> 00:29:21,781 Walau bagaimanapun, mereka saling eksklusif, saya fikir. 669 00:29:21,781 --> 00:29:23,280 Jika saya berjalan ini sekeping kod. 670 00:29:23,280 --> 00:29:26,200 Kemudian mari kita hanya mengatakan, saya diinput gred 95. 671 00:29:26,200 --> 00:29:30,360 Jadi 95 kini disimpan di dalam yang int dipanggil gred. 672 00:29:30,360 --> 00:29:33,610 >> Dan sebagainya C adalah bahasa yang yang berjalan sehingga atas ke bawah, 673 00:29:33,610 --> 00:29:36,000 supaya ia akan sentiasa melarikan diri hingga ke bawah. 674 00:29:36,000 --> 00:29:39,420 Jadi ia akan datang ke sini, dibaca jika gred adalah lebih besar daripada atau sama dengan 90, 675 00:29:39,420 --> 00:29:42,850 printf () anda mendapat A. Great, saya mempunyai 95, itu lebih besar daripada 90. 676 00:29:42,850 --> 00:29:44,866 Ia akan mencetak, Saya mendapat A. Ia akan 677 00:29:44,866 --> 00:29:48,850 untuk mengambil lihat ini jika, ia akan berkata, dengan baik 95 adalah juga lebih besar daripada 80, 678 00:29:48,850 --> 00:29:52,970 ia akan mencetak anda juga mendapat Got a tanda B seru, dan sebagainya dan sebagainya 679 00:29:52,970 --> 00:29:53,690 sebagainya. 680 00:29:53,690 --> 00:29:55,890 >> Jadi seperti yang kita semua dapat lihat, ini adalah bug yang sama 681 00:29:55,890 --> 00:30:00,760 yang mungkin berlaku apabila kita menulis kod untuk melihat keluar untuk. 682 00:30:00,760 --> 00:30:05,430 Sesiapa sahaja, apa-apa soalan mengenai mengapa yang sedang berlaku? 683 00:30:05,430 --> 00:30:05,930 Yang besar. 684 00:30:05,930 --> 00:30:08,920 685 00:30:08,920 --> 00:30:09,440 OKAY. 686 00:30:09,440 --> 00:30:12,110 >> Jadi bagaimana kita menetapkan ini, adalah jelas persoalan seterusnya logik. 687 00:30:12,110 --> 00:30:16,290 Nah, kita mempunyai ini indah perkara yang dipanggil jika pun jika lain 688 00:30:16,290 --> 00:30:18,010 jika kenyataan yang lain. 689 00:30:18,010 --> 00:30:22,230 Jadi, anda boleh lihat, jika anda mahu untuk menukar masalah itu, 690 00:30:22,230 --> 00:30:25,260 anda mahu membuat setiap satu daripada keadaan saling eksklusif, 691 00:30:25,260 --> 00:30:26,860 anda akan menambah lagi ... jika kenyataan. 692 00:30:26,860 --> 00:30:30,068 >> Dan ini daripada course-- memikirkan mereka sebagai tangga, atau seperti anak tangga pada ladder-- 693 00:30:30,068 --> 00:30:34,050 anda boleh menambah seberapa banyak ini kerana anda mahu seberapa banyak syarat yang anda mahu. 694 00:30:34,050 --> 00:30:36,790 Jadi di sini, jika saya diinput gred menjadi 95. 695 00:30:36,790 --> 00:30:39,479 Jika gred adalah lebih besar daripada 95, printf (), saya mendapat A. Besar. 696 00:30:39,479 --> 00:30:42,020 Ia akan melihat lagi ... jika dan ia akan tahu, Oh tidak, 697 00:30:42,020 --> 00:30:43,750 Saya telah pun dilaksanakan yang pertama lagi. 698 00:30:43,750 --> 00:30:47,020 Saya know-- atau jika- pertama yang saya tahu bahawa Saya tidak perlu melihat mana-mana 699 00:30:47,020 --> 00:30:48,920 kerana salah seorang daripada mereka telah pun benar. 700 00:30:48,920 --> 00:30:50,410 Jadi ia akan bermula dari atas ke bawah. 701 00:30:50,410 --> 00:30:53,650 Sebaik sahaja yang pertama adalah benar, maka ia akan melangkau ke atas semua yang lain 702 00:30:53,650 --> 00:30:54,675 daripada ... IFS lain. 703 00:30:54,675 --> 00:30:55,550 Adakah ini masuk akal? 704 00:30:55,550 --> 00:30:57,841 Jadi, dengan cara ini, anda perlu peringkat semakan 705 00:30:57,841 --> 00:31:01,090 dan sebaik sahaja salah seorang daripada mereka adalah palsu, lain juga, mereka tidak akan turut memeriksa. 706 00:31:01,090 --> 00:31:03,577 707 00:31:03,577 --> 00:31:04,076 Sejuk. 708 00:31:04,076 --> 00:31:07,680 709 00:31:07,680 --> 00:31:08,180 Baiklah. 710 00:31:08,180 --> 00:31:11,180 >> Jadi ini adalah satu contoh yang lain semacam kenyataan bersyarat 711 00:31:11,180 --> 00:31:15,250 kita lihat kurang kerap, tetapi kita akan melihat mereka dan menggunakannya. 712 00:31:15,250 --> 00:31:18,120 Dan mereka sering lebih berkesan bagi kes-kes tertentu. 713 00:31:18,120 --> 00:31:20,020 Oleh itu, kita mempunyai apa yang dipanggil kenyataan suis. 714 00:31:20,020 --> 00:31:25,140 Jadi sebelum kita meliputi apa yang lagi satu pernyataan, jika ... kenyataan yang lain. 715 00:31:25,140 --> 00:31:27,790 Di sini, kita mempunyai apa yang dipanggil kenyataan suis. 716 00:31:27,790 --> 00:31:31,100 >> Oleh itu, apabila kita menggunakan suis kenyataan adalah kunci? 717 00:31:31,100 --> 00:31:34,090 Jadi, dalam satu kenyataan suis, anda biasanya, biasanya, sebenarnya anda 718 00:31:34,090 --> 00:31:38,010 hanya boleh integer input untuk anda pembolehubah yang anda memeriksa. 719 00:31:38,010 --> 00:31:42,390 Jadi, jika saya mahu untuk memeriksa untuk melihat jika number-- tertentu contohnya 720 00:31:42,390 --> 00:31:43,720 gred, jika saya mendapat 90. 721 00:31:43,720 --> 00:31:48,190 Saya mahu ia melihat jika itu A, B, atau C. saya boleh mempunyai kes di sini. 722 00:31:48,190 --> 00:31:50,840 Walau bagaimanapun, mana-mana yang mempunyai malar lain. 723 00:31:50,840 --> 00:31:53,170 >> Jadi, dalam hal ini, kenyataan suis hanya boleh 724 00:31:53,170 --> 00:31:55,290 menyemak kesamaan bagi dua nombor. 725 00:31:55,290 --> 00:31:57,242 Ia tidak memeriksa apa-apa lagi. 726 00:31:57,242 --> 00:31:59,950 Jadi, itu sesuatu yang sangat berhati-hati apabila anda menggunakan ini. 727 00:31:59,950 --> 00:32:04,810 Jadi di sini, jika saya mahu untuk memeriksa untuk melihat jika gred saya 90 adalah sama dengan 90 atau 80 728 00:32:04,810 --> 00:32:08,500 atau 70 atau 60, dan kemudian cetak gred yang sama, 729 00:32:08,500 --> 00:32:11,420 Saya akan dapat menulis bahawa dalam satu kenyataan suis. 730 00:32:11,420 --> 00:32:15,120 >> Jadi ia akan datang ke sini, cek adalah integer ini sama dengan malar ini? 731 00:32:15,120 --> 00:32:17,030 Jika tidak, ia akan skip. 732 00:32:17,030 --> 00:32:19,880 Adakah ia sama dengan yang berterusan dua, dan sebagainya dan sebagainya, 733 00:32:19,880 --> 00:32:22,390 sehingga anda memukul lalai, jika seorang pun daripada mereka adalah sama. 734 00:32:22,390 --> 00:32:24,590 Sebaik sahaja salah seorang daripada mereka bakal menjadi sama, 735 00:32:24,590 --> 00:32:27,040 ia akan melakukan ini baris kod dan rehat. 736 00:32:27,040 --> 00:32:30,990 Maksudnya ia akan melanda yang berlari, memecahkan, dan hanya benar-benar skip 737 00:32:30,990 --> 00:32:32,240 ke bahagian bawah kod. 738 00:32:32,240 --> 00:32:37,550 Dalam erti kata bahawa jenis jadi fungsi seperti jika lain jika lain jika kenyataan. 739 00:32:37,550 --> 00:32:40,830 >> Jadi di sini adalah konkrit contoh untuk anda semua. 740 00:32:40,830 --> 00:32:46,140 Jadi mari kita andaikan bahawa saya mahu mencipta pembolehubah yang dipanggil tahun diasaskan. 741 00:32:46,140 --> 00:32:50,230 Dan saya ingin meminta pengguna untuk input tahun yang sekolah mereka ditubuhkan. 742 00:32:50,230 --> 00:32:53,300 Jadi saya boleh membuat kenyataan suis di sini. 743 00:32:53,300 --> 00:32:56,650 Dan mari kita hanya mengatakan, saya input 1636. 744 00:32:56,650 --> 00:33:01,120 >> Kod ini di sini akan melihat suis tahun ditubuhkan yang bersamaan 1.636. 745 00:33:01,120 --> 00:33:03,940 Ia akan melihat kes 1636, oh mereka adalah sama, 746 00:33:03,940 --> 00:33:06,230 printf () Sekiranya tidak anda menjadi di sekolah ke utara? 747 00:33:06,230 --> 00:33:08,770 Kerana kita menganggap mereka tidak pergi di sini jika mereka pergi ke Harvard, 748 00:33:08,770 --> 00:33:10,380 memecahkan dan melangkau ke akhir. 749 00:33:10,380 --> 00:33:14,090 >> Jika saya input 1701, yang Saya menganggap kita semua akan input, 750 00:33:14,090 --> 00:33:17,500 ia akan melangkau kes ini, datang turun ke kes dua iaitu 1701, 751 00:33:17,500 --> 00:33:19,660 dan cetak Selamat datang ke Yale! 752 00:33:19,660 --> 00:33:21,360 Break, melangkau ke akhir. 753 00:33:21,360 --> 00:33:25,130 Yang lain anda mungkin mengambil kursus ini dalam talian di mana case-- menggerunkan dialu-alukan 754 00:33:25,130 --> 00:33:29,020 untuk Yale-- ia akan pergi ke cetak lalai, Hello Internet! 755 00:33:29,020 --> 00:33:29,870 Dan pecah. 756 00:33:29,870 --> 00:33:30,466 Yeah. 757 00:33:30,466 --> 00:33:32,090 >> SPEAKER 12: Bolehkah anda menggunakan lagi bukan lalai di sana? 758 00:33:32,090 --> 00:33:34,550 >> ANDI PENG: Tidak, kerana cara bahawa fungsi ini keseluruhan 759 00:33:34,550 --> 00:33:39,170 suis dibina, sintaks anda perlu menggunakan kes kes lalai. 760 00:33:39,170 --> 00:33:42,400 Ia seperti jika lain jika, ini salah ia kes kes lalai. Yeah. 761 00:33:42,400 --> 00:33:45,650 SPEAKER 13: Anda mungkin sudah berkata demikian, tetapi boleh anda mempunyai lebih daripada dua kes? 762 00:33:45,650 --> 00:33:48,066 ANDI PENG: Ya, anda boleh mempunyai banyak kes-kes yang anda mahu. 763 00:33:48,066 --> 00:33:50,050 Anggaplah ia sebagai hanya suka tak terhingga menambah pada. 764 00:33:50,050 --> 00:33:52,396 >> SPEAKER 14: Jika anda dihidupkan 1701 dengan 1636, 765 00:33:52,396 --> 00:33:54,187 itu tidak benar-benar membuat hak perbezaan? 766 00:33:54,187 --> 00:33:55,770 Ia hanya akan memeriksa untuk itu. 767 00:33:55,770 --> 00:33:56,900 >> ANDI PENG: Itu satu soalan yang benar-benar baik. 768 00:33:56,900 --> 00:33:58,880 Dan kita akan menyentuh ini kemudian, tetapi hanya 769 00:33:58,880 --> 00:34:01,160 tahu bahawa suis kenyataan ini infinitely-- ia 770 00:34:01,160 --> 00:34:03,536 lebih cekap daripada ia dan jika lain jika kerana ia beroperasi 771 00:34:03,536 --> 00:34:06,660 menggunakan berlainan jenis fungsi yang membolehkan anda, pada dasarnya, hanya 772 00:34:06,660 --> 00:34:08,790 melompat terus ke Sekiranya anda perlu berada di. 773 00:34:08,790 --> 00:34:10,547 Yeah. 774 00:34:10,547 --> 00:34:11,255 SPEAKER 14: Cool. 775 00:34:11,255 --> 00:34:11,754 Terima kasih. 776 00:34:11,754 --> 00:34:12,526 ANDI PENG: Ya 777 00:34:12,526 --> 00:34:16,687 >> SPEAKER 14: Dan anda tidak boleh melakukan kes-kes seperti dan lebih besar daripada. 778 00:34:16,687 --> 00:34:17,270 ANDI PENG: No. 779 00:34:17,270 --> 00:34:19,860 Jadi, itulah apa yang mengehadkan tentang kenyataan suis adalah bahawa anda mempunyai 780 00:34:19,860 --> 00:34:21,564 untuk mempunyai pemalar sahaja, hanya bilangan bulat. 781 00:34:21,564 --> 00:34:22,064 Yeah. 782 00:34:22,064 --> 00:34:25,179 783 00:34:25,179 --> 00:34:25,820 OKAY. 784 00:34:25,820 --> 00:34:28,659 >> Jadi ini adalah sesuatu yang anda seorang lelaki akan menghadapi kurang kerap daripada, 785 00:34:28,659 --> 00:34:32,280 tetapi saya hanya mahu memperkenalkannya dalam kes. 786 00:34:32,280 --> 00:34:36,210 Kami ada di sini apa yang dipanggil pengendali pertigaan. 787 00:34:36,210 --> 00:34:39,370 Di mana pada dasarnya, ia hanya seperti seorang jika kenyataan yang dikumpulkan ke dalam satu baris. 788 00:34:39,370 --> 00:34:42,630 Di sini, saya akan pergi ke baris seterusnya, yang halaman seterusnya, kerana lebih mudah untuk melihat. 789 00:34:42,630 --> 00:34:44,860 >> Oleh itu, kita semua telah melihat hak ini? 790 00:34:44,860 --> 00:34:46,110 Ini adalah agak mudah untuk diikuti. 791 00:34:46,110 --> 00:34:51,290 Jika saya mahu membuat pembolehubah yang dipanggil rentetan bernama s, jika sebilangan 792 00:34:51,290 --> 00:34:54,770 Saya memberikan kurang daripada 100, saya ingin gunakan rendah untuk tali, 793 00:34:54,770 --> 00:34:57,240 lagi yang saya mahu memberi yang tinggi. 794 00:34:57,240 --> 00:35:01,370 >> Ini di sini adalah melakukan perkara yang sama mereka lapan baris kod lakukan. 795 00:35:01,370 --> 00:35:03,600 Jadi di sini saya ingin membuat rentetan berubah-ubah. 796 00:35:03,600 --> 00:35:08,520 Dan ini adalah keadaan yang Saya memeriksa, jika nombor adalah kurang daripada 100, 797 00:35:08,520 --> 00:35:12,750 maka anda memberikan nilai rendah, lagi yang memberikan nilai yang tinggi. 798 00:35:12,750 --> 00:35:15,802 >> Ini slaid akan berada dalam talian, tidak ada kebimbangan jika anda semua tidak mendapat ini ke bawah. 799 00:35:15,802 --> 00:35:18,510 Ini adalah cara yang lebih mudah, yang lebih cara yang berkesan kod bertulis. 800 00:35:18,510 --> 00:35:21,290 801 00:35:21,290 --> 00:35:21,810 OKAY. 802 00:35:21,810 --> 00:35:25,190 >> Jadi sekarang kita akan masukkan apa, bagi kebanyakan orang 803 00:35:25,190 --> 00:35:28,660 seperti seorang yang sangat, sangat mengelirukan Perkara yang perlu difikirkan pada mulanya. 804 00:35:28,660 --> 00:35:30,226 Bahagian gelung. 805 00:35:30,226 --> 00:35:32,600 Jadi hari ini, kita akan bercakap kira-kira tiga jenis gelung. 806 00:35:32,600 --> 00:35:34,890 Kita akan mulakan dengan seketika gelung, kemudian bercakap tentang do manakala gelung, 807 00:35:34,890 --> 00:35:36,740 dan kemudian bercakap tentang untuk gelung. 808 00:35:36,740 --> 00:35:40,010 >> Jadi pada dasarnya, untuk lebih pelajar visual di luar sana, 809 00:35:40,010 --> 00:35:44,410 kita ada, pada dasarnya, grafik yang gambaran apa gelung sementara tidak. 810 00:35:44,410 --> 00:35:48,290 Jadi dalam pengaturcaraan, anda akan bermula dan masukkan gelung pada titik tertentu. 811 00:35:48,290 --> 00:35:49,470 Anda menyemak syarat. 812 00:35:49,470 --> 00:35:52,165 Dan jika keadaan ini benar, anda melaksanakan kod di dalam. 813 00:35:52,165 --> 00:35:53,790 Dan anda kembali sekitar dan anda menyemak. 814 00:35:53,790 --> 00:35:57,190 Jika ia masih benar anda terus berjalan kod ini di sekeliling dan sekitar dalam gelung. 815 00:35:57,190 --> 00:36:00,970 >> Walau bagaimanapun, yang kedua keadaan menjadi palsu, 816 00:36:00,970 --> 00:36:02,739 anda akan memecahkan dan menamatkan gelung. 817 00:36:02,739 --> 00:36:05,030 Dan ini pada dasarnya adalah sintaks anda akan digunakan. 818 00:36:05,030 --> 00:36:08,250 Walaupun keadaan tertentu adalah benar melakukan ini, jika ia tidak benar, 819 00:36:08,250 --> 00:36:12,920 anda akan melangkau ke akhir dan bergerak ke hadapan dengan program anda. 820 00:36:12,920 --> 00:36:13,690 OKAY. 821 00:36:13,690 --> 00:36:17,250 >> Adakah sesiapa yang mempunyai contoh kepada apa yang mungkin berpotensi berlaku 822 00:36:17,250 --> 00:36:19,160 jika saya cuba untuk menjalankan ini sekeping kod? 823 00:36:19,160 --> 00:36:22,470 Dengan cara ini, SAJ-- itulah Scaz, Andi, Jason-- kami akan menandatangani e-mel kami, 824 00:36:22,470 --> 00:36:24,830 Cinta, SAJ. 825 00:36:24,830 --> 00:36:25,573 Itulah kita. 826 00:36:25,573 --> 00:36:26,500 OKAY. 827 00:36:26,500 --> 00:36:29,829 >> Sesiapa yang mempunyai contoh, atau mempunyai idea mengenai apa ini akan mencetak? 828 00:36:29,829 --> 00:36:30,870 Jenis soalan helah. 829 00:36:30,870 --> 00:36:34,550 830 00:36:34,550 --> 00:36:39,380 Jadi di sini, ingat syarat kita memeriksa Sedangkan benar. 831 00:36:39,380 --> 00:36:42,840 Oleh itu, sambil ini adalah benar, ia proses penerbitan, saya suka SAJ! 832 00:36:42,840 --> 00:36:48,460 Adakah terdapat mana-mana tempat di mana kita akan menukar ini kepada apa-apa sebaliknya? 833 00:36:48,460 --> 00:36:49,050 Tidak, bukan? 834 00:36:49,050 --> 00:36:51,470 >> Jadi di sini, kami mempunyai dihadapi apa yang mungkin 835 00:36:51,470 --> 00:36:54,310 akan mengganggu banyak program anda, gelung tak terhingga. 836 00:36:54,310 --> 00:36:56,268 Anda akan mendapati bahawa jika anda menjalankan ini sekeping kod, 837 00:36:56,268 --> 00:36:58,160 ia hanya akan menyimpan percetakan, saya suka SAJ! 838 00:36:58,160 --> 00:37:00,701 Walaupun kami menghargai sokongan, kita tidak mahu komputer anda 839 00:37:00,701 --> 00:37:02,910 crash kerana anda menjaga percetakan Saya suka SAJ! 840 00:37:02,910 --> 00:37:05,320 >> Oleh itu, sila, sila, mengelakkan gelung tak terhingga 841 00:37:05,320 --> 00:37:07,320 kerana ia tidak akan untuk menilai kepada palsu 842 00:37:07,320 --> 00:37:08,780 dan anda tidak akan untuk meninggalkan gelung. 843 00:37:08,780 --> 00:37:10,530 Dan anda akan disedut dalam selama-lamanya. 844 00:37:10,530 --> 00:37:13,000 Sejuk. 845 00:37:13,000 --> 00:37:13,694 OKAY. 846 00:37:13,694 --> 00:37:15,610 Jenis kedua gelung kita akan bercakap tentang hari ini 847 00:37:15,610 --> 00:37:17,580 adalah do manakala gelung, lakukan semasa gelung. 848 00:37:17,580 --> 00:37:20,580 Dan ia dipanggil do manakala gelung kerana anda mempunyai tugasan dan seketika. 849 00:37:20,580 --> 00:37:24,390 Jadi ini adalah agak serupa dengan seketika gelung, tetapi sedikit berbeza. 850 00:37:24,390 --> 00:37:27,620 Di sini, anda akan lakukan apa sahaja yang di dalam ini 851 00:37:27,620 --> 00:37:29,747 manakala keadaan tertentu adalah benar. 852 00:37:29,747 --> 00:37:32,580 Jadi jika saya C dan komputer saya berlari ke ini sekeping kod, 853 00:37:32,580 --> 00:37:33,880 Saya lihat di bahagian atas. 854 00:37:33,880 --> 00:37:36,890 Saya pergi ke C, saya katakan melakukan perkara ini. 855 00:37:36,890 --> 00:37:40,550 Dan kemudian saya memeriksa, selama ini adalah benar, saya perlu mengulanginya. 856 00:37:40,550 --> 00:37:42,750 Tetapi selama ini adalah palsu, maka saya bergerak ke hadapan 857 00:37:42,750 --> 00:37:44,700 dan saya tidak pernah kembali ke gelung itu lagi. 858 00:37:44,700 --> 00:37:48,360 >> Bolehkah sesiapa mengambil menikam apa perbezaan 859 00:37:48,360 --> 00:37:52,130 antara gelung ini dan satu kita yang hanya kelihatan di adalah praktikal. 860 00:37:52,130 --> 00:37:52,717 Yeah. 861 00:37:52,717 --> 00:37:55,050 SPEAKER 15: Keadaan ini datang selepas bukannya sebelum ini? 862 00:37:55,050 --> 00:37:55,841 ANDI PENG: Tepat sekali. 863 00:37:55,841 --> 00:37:57,984 Lalu beliau berkata keadaan datang selepas itu, bukan sebelumnya. 864 00:37:57,984 --> 00:38:00,400 Akhirnya, perbezaan antara ini dan gelung sementara 865 00:38:00,400 --> 00:38:03,597 adalah bahawa anda hanya akan melakukan apa sahaja yang di dalam ini tanpa mengira 866 00:38:03,597 --> 00:38:06,430 sama ada atau tidak keadaan anda benar, dan kemudian memeriksa keadaan. 867 00:38:06,430 --> 00:38:08,304 Jadi dalam kes ini, anda always-- dengan cara ini, 868 00:38:08,304 --> 00:38:11,240 anda sentiasa memastikan apa sahaja yang di dalam berjalan sekurang-kurangnya 869 00:38:11,240 --> 00:38:14,230 sekali sebelum memeriksa untuk melihat jika anda mahu untuk menjalankan lagi. 870 00:38:14,230 --> 00:38:18,040 >> Dan di sini adalah satu contoh bila kita akan menggunakannya. 871 00:38:18,040 --> 00:38:22,570 Jadi, sebagai contoh, jika saya mahu mempunyai pembolehubah jenis int bernama umur, 872 00:38:22,570 --> 00:38:25,640 dan saya mahu meminta pengguna untuk umur mereka, 873 00:38:25,640 --> 00:38:27,910 Saya akan melakukan printf () Apakah umur awak? 874 00:38:27,910 --> 00:38:30,330 umur = GetInt (), yang adalah mendorong pengguna. 875 00:38:30,330 --> 00:38:32,140 >> Dan sesetengah orang akan benar-benar menjengkelkan. 876 00:38:32,140 --> 00:38:34,931 Dan anda tidak mahu bug dalam anda program seseorang memasukkan seperti, 877 00:38:34,931 --> 00:38:36,680 oh saya negatif berumur 4 tahun atau apa sahaja. 878 00:38:36,680 --> 00:38:39,900 Di mana jika mereka berbuat demikian, ini menilai 879 00:38:39,900 --> 00:38:43,150 kepada benar, yang bermaksud bahawa saya akan perlu menyimpan kembali dan melakukan ini. 880 00:38:43,150 --> 00:38:45,310 Jadi ini akan menjaga semula mendorong pengguna 881 00:38:45,310 --> 00:38:47,960 untuk memberikan anda seperti yang sebenar nombor umur dan ia 882 00:38:47,960 --> 00:38:51,930 akan terus pergi ke belakang dan membuat semula sehingga mereka memberi anda usia yang sebenar 883 00:38:51,930 --> 00:38:56,900 lebih besar daripada satu, atau tidak sifar. 884 00:38:56,900 --> 00:38:58,020 >> Maka tanda-tanda, tanda-tanda. 885 00:38:58,020 --> 00:39:02,263 Ini akan menjadi sangat, sangat berguna untuk salah satu daripada masalah Serangga anda. 886 00:39:02,263 --> 00:39:04,155 Yeah. 887 00:39:04,155 --> 00:39:05,580 >> SPEAKER 16: Alamak, maaf. 888 00:39:05,580 --> 00:39:06,288 >> ANDI PENG: Ya. 889 00:39:06,288 --> 00:39:09,424 >> SPEAKER 16: Adakah di sana, tidak menjadi asshole, but-- 890 00:39:09,424 --> 00:39:10,340 ANDI PENG: Tidak perlu risau. 891 00:39:10,340 --> 00:39:11,990 SPEAKER 16: --are terdapat peraturan yang berbeza di sini, 892 00:39:11,990 --> 00:39:13,810 atau adakah anda hanya lupa untuk meletakkan sebut harga? 893 00:39:13,810 --> 00:39:14,250 >> ANDI PENG: Oh Yeah. 894 00:39:14,250 --> 00:39:15,530 Maaf, itu sama sekali tidak baik saya. 895 00:39:15,530 --> 00:39:17,100 Itu adalah pasti sepatutnya sebut harga. 896 00:39:17,100 --> 00:39:17,690 Tangkapan yang baik. 897 00:39:17,690 --> 00:39:18,800 Yang akan tidak berjalan. 898 00:39:18,800 --> 00:39:22,070 899 00:39:22,070 --> 00:39:22,830 OKAY. 900 00:39:22,830 --> 00:39:26,160 >> Jadi jenis terakhir gelung kita akan bercakap kira-kira dan, akhirnya, jenis yang paling 901 00:39:26,160 --> 00:39:28,854 kompleks adalah untuk gelung. 902 00:39:28,854 --> 00:39:30,770 Jangan bimbang jika anda tidak tahu apa yang bermakna. 903 00:39:30,770 --> 00:39:32,061 Ia agak mengelirukan pada mulanya. 904 00:39:32,061 --> 00:39:33,640 Kami akan pergi ke satu contoh. 905 00:39:33,640 --> 00:39:37,040 >> Semua yang berlaku dalam untuk gelung adalah bahawa anda mempunyai tiga kenyataan 906 00:39:37,040 --> 00:39:38,380 yang anda akan masukkan. 907 00:39:38,380 --> 00:39:42,130 Jadi untuk satu perkara yang tertentu, anda berada akan memulakan pembolehubah. 908 00:39:42,130 --> 00:39:45,280 Anda akan menambah syarat untuk yang gelung ini akan terus berjalan. 909 00:39:45,280 --> 00:39:47,790 Dan kemudian, pada akhir gelung, anda akan mengemaskinikannya. 910 00:39:47,790 --> 00:39:50,248 Anda boleh mengemas kini pembolehubah yang anda mahu untuk mengesan. 911 00:39:50,248 --> 00:39:52,530 Oleh itu, kita biasanya menggunakan untuk gelung apabila kita 912 00:39:52,530 --> 00:39:55,390 ingin menjalankan gelung untuk jumlah tertentu kali 913 00:39:55,390 --> 00:39:58,900 dan kami sudah tahu, Oh Saya hendak gelung ini untuk melaksanakan seperti 10 kali, 914 00:39:58,900 --> 00:40:03,060 maka anda do-- saya akan pergi ke atas contoh pada halaman seterusnya. 915 00:40:03,060 --> 00:40:07,830 >> Jadi di sini sebagai contoh, di Awal, jika anda mahu sesuatu untuk mengulangi 10 kali, 916 00:40:07,830 --> 00:40:10,790 semua yang anda katakan adalah, ulangi 10 kali saya suka SAJ! 917 00:40:10,790 --> 00:40:15,260 yang merupakan lebih diterima tanda sokongan untuk kita 918 00:40:15,260 --> 00:40:17,120 daripada gelung tak terhingga. 919 00:40:17,120 --> 00:40:19,920 Di sini, bagaimana yang anda lakukan peralihan kepada C dan menulis 920 00:40:19,920 --> 00:40:26,040 iaitu untuk int-- saya akan membuat atau mengisytiharkan pembolehubah jenis int dinamakan i. 921 00:40:26,040 --> 00:40:30,089 Saya akan memulakan kepada 0, jadi i = 0; 922 00:40:30,089 --> 00:40:31,630 dan ini akan menjadi keadaan saya. 923 00:40:31,630 --> 00:40:33,860 Jadi saya adalah kurang daripada 10. 924 00:40:33,860 --> 00:40:36,096 Dan kemudian pada end-- pernyataan terakhir anda berada 925 00:40:36,096 --> 00:40:38,710 akan mempunyai adalah kemas kini apa yang berlaku kepada saya berubah-ubah 926 00:40:38,710 --> 00:40:40,206 pada akhir untuk anda gelung. 927 00:40:40,206 --> 00:40:42,830 Jadi ia adalah jenis mengelirukan, kerana bahagian yang berlainan di baris ini 928 00:40:42,830 --> 00:40:44,871 yang berlaku di berbeza jenis gelung. 929 00:40:44,871 --> 00:40:46,746 Tetapi saya akan pergi ke satu contoh pseudokod itu 930 00:40:46,746 --> 00:40:50,360 dan mungkin menjelaskan ini hanya sedikit lebih baik. 931 00:40:50,360 --> 00:40:51,500 >> Jadi di sini. 932 00:40:51,500 --> 00:40:52,929 Itulah gelung kita hanya melihat. 933 00:40:52,929 --> 00:40:55,470 Pada dasarnya dalam kod pseudo, apa yang berlaku dalam program ini, 934 00:40:55,470 --> 00:40:57,940 adalah pertama saya mewujudkan i, Memulakan kepada 0. 935 00:40:57,940 --> 00:41:00,440 Saya memeriksa untuk melihat jika i adalah kurang daripada 10, di mana 936 00:41:00,440 --> 00:41:02,840 kali pertama ia adalah kerana 0 adalah kurang daripada 10. 937 00:41:02,840 --> 00:41:04,727 Oleh itu gelung akan berjalan. 938 00:41:04,727 --> 00:41:06,310 Dan kemudian saya akan mencetak baris ini. 939 00:41:06,310 --> 00:41:11,240 Dan kemudian pada akhir baris ini, betul-betul di sini, saya akan melakukan kenaikan i, i ++, 940 00:41:11,240 --> 00:41:13,370 segala cara yang menokok ia demi satu. 941 00:41:13,370 --> 00:41:15,460 >> Jadi saya kini 1. 942 00:41:15,460 --> 00:41:17,960 Kerana ia pernah 0, jika saya kenaikan itu, kini ia 1. 943 00:41:17,960 --> 00:41:19,610 Dan kemudian saya akan kembali ke permulaan gelung 944 00:41:19,610 --> 00:41:20,730 dan saya memeriksa keadaan. 945 00:41:20,730 --> 00:41:22,080 Adalah keadaan yang masih benar? 946 00:41:22,080 --> 00:41:24,030 Ya, 1 masih kurang daripada 10. 947 00:41:24,030 --> 00:41:27,370 Jadi ia akan mencetak ini lagi, pergi dan kemudian kenaikan i, dan memeriksa 948 00:41:27,370 --> 00:41:29,180 syarat secara berterusan, secara berterusan, 949 00:41:29,180 --> 00:41:33,290 sehingga anda akhirnya mendapatkan ke titik di mana i adalah 10. 950 00:41:33,290 --> 00:41:36,300 >> Anda akan mencetak ini 10 kali dan kemudian saya akan sama dengan 10. 951 00:41:36,300 --> 00:41:37,800 Anda akan memeriksa keadaan. 952 00:41:37,800 --> 00:41:38,760 Adalah 10 kurang daripada 10? 953 00:41:38,760 --> 00:41:40,370 Tidak, itu adalah palsu. 954 00:41:40,370 --> 00:41:43,020 Oleh itu, gelung ini tidak akan untuk menjalankan, ia akan memecahkan, 955 00:41:43,020 --> 00:41:45,040 dan anda akan meneruskan dengan kod anda. 956 00:41:45,040 --> 00:41:47,550 >> Jadi seperti yang anda semua boleh lihat, ini adalah contoh yang benar-benar hebat 957 00:41:47,550 --> 00:41:53,110 gelung yang anda boleh program dalam bahawa berjalan untuk jumlah yang ditetapkan masa. 958 00:41:53,110 --> 00:41:54,457 Setiap orang jelas? 959 00:41:54,457 --> 00:41:54,956 Yeah. 960 00:41:54,956 --> 00:41:59,060 >> SPEAKER 17: Bagaimana pula dengan kenaikan dengan pesat, ia pengekodan yang berbeza? 961 00:41:59,060 --> 00:42:02,060 >> ANDI PENG: Anda can-- kami akan pergi lebih ini dalam slaid seterusnya. 962 00:42:02,060 --> 00:42:03,350 Soalan yang baik. 963 00:42:03,350 --> 00:42:05,910 Adakah anyone-- sebelum saya bergerak pada-- sesiapa pun keliru, 964 00:42:05,910 --> 00:42:07,640 kerana ini adalah satu konsep yang benar-benar sukar. 965 00:42:07,640 --> 00:42:09,510 Jangan bimbang, jika you're-- OK. 966 00:42:09,510 --> 00:42:10,010 Sejuk. 967 00:42:10,010 --> 00:42:12,836 968 00:42:12,836 --> 00:42:13,490 >> Baiklah. 969 00:42:13,490 --> 00:42:14,610 Hanya slaid umum. 970 00:42:14,610 --> 00:42:18,020 Ini gelung sementara melakukan yang Perkara yang tepat sama bagi gelung adalah. 971 00:42:18,020 --> 00:42:19,631 Ia hanya ditulis berbeza. 972 00:42:19,631 --> 00:42:22,130 Kalian boleh membaca dengan teliti slaid mengikut keselesaan anda di kemudian hari. 973 00:42:22,130 --> 00:42:24,880 Tetapi hanya tahu bahawa ada beberapa cara menulis perkara yang sama 974 00:42:24,880 --> 00:42:28,300 berlaku dengan gelung yang berbeza. 975 00:42:28,300 --> 00:42:28,800 OKAY. 976 00:42:28,800 --> 00:42:32,380 >> Jadi, kita dalam persoalan apa jika kita mempunyai gelung di dalam gelung. 977 00:42:32,380 --> 00:42:35,810 Kami mendapat ke dalam sebenar Barangan jenis penubuhannya di sini. 978 00:42:35,810 --> 00:42:40,640 Apabila anda mahu melakukan perkara-perkara pelbagai kali di dalam perkara-perkara lain 979 00:42:40,640 --> 00:42:44,129 yang melakukan perkara-perkara beberapa kali, anda mahu apa yang dipanggil bersarang untuk gelung. 980 00:42:44,129 --> 00:42:47,420 Bagi anda yang pertama kali melihat ini dan menjadi sangat keliru, semua yang kita lakukan di sini 981 00:42:47,420 --> 00:42:50,580 adalah perlu untuk gelung di mana kita mempunyai pembolehubah baris. 982 00:42:50,580 --> 00:42:54,500 Tetapi di dalam itu, kami juga mempunyai satu lagi untuk gelung turus berubah dipanggil. 983 00:42:54,500 --> 00:42:58,560 Dan saya sangat menyarankan anda semua yang keliru untuk pertama menyimpan 984 00:42:58,560 --> 00:43:00,310 track-- menarik ini keluar, menarik ini keluar. 985 00:43:00,310 --> 00:43:03,000 Jangan cuba untuk sebab hanya melaluinya, menarik keluar. 986 00:43:03,000 --> 00:43:06,630 >> Dalam kepala anda, di bahagian ini kertas, atau apa sahaja, berturut-turut menulis, 987 00:43:06,630 --> 00:43:08,614 mengesan apa baris adalah sama dengan. 988 00:43:08,614 --> 00:43:10,780 Tulis lajur, menjejaki apa lajur adalah sama dengan. 989 00:43:10,780 --> 00:43:13,490 Dan menjejaki apa yang mencetak dengan setiap lelaran. 990 00:43:13,490 --> 00:43:16,320 Setiap lelaran gelung ini, tiap-tiap lelaran gelung yang lebih besar, 991 00:43:16,320 --> 00:43:17,820 hanya menyimpan berikut logik. 992 00:43:17,820 --> 00:43:20,190 Dan saya jamin anda, anda akan suka apa yang anda lihat, 993 00:43:20,190 --> 00:43:24,307 kerana ia juga sangat digunakan untuk set masalah anda. 994 00:43:24,307 --> 00:43:24,806 Sejuk. 995 00:43:24,806 --> 00:43:27,501 996 00:43:27,501 --> 00:43:28,000 Baiklah. 997 00:43:28,000 --> 00:43:30,723 Jadi perkara yang paling penting yang anda semua mungkin semua 998 00:43:30,723 --> 00:43:32,400 berfikir tentang sekarang, adalah Set Masalah anda 1s, 999 00:43:32,400 --> 00:43:33,650 yang disebabkan Khamis / Jumaat. 1000 00:43:33,650 --> 00:43:36,890 1001 00:43:36,890 --> 00:43:39,710 >> Dalam program water.c anda, tanda-tanda anda akan mempunyai 1002 00:43:39,710 --> 00:43:41,590 untuk meminta pengguna untuk input. 1003 00:43:41,590 --> 00:43:43,640 Dalam program mario.c anda anda akan mempunyai 1004 00:43:43,640 --> 00:43:46,431 menggunakan bersarang untuk gelung, yang untuk gelung bahagian dalam untuk gelung, 1005 00:43:46,431 --> 00:43:50,247 untuk mencetak satu blok piramid, pada dasarnya seperti apa yang Mario mempunyai untuk melompat melalui. 1006 00:43:50,247 --> 00:43:53,330 Dan kemudian di dalam greedy-- atau anda mungkin Membuat Perubahan, sesiapa di antara kamu seorang lelaki 1007 00:43:53,330 --> 00:43:55,740 pernah mendengar tentang bahawa- anda akan perlu berhati- 1008 00:43:55,740 --> 00:43:58,160 berhati-hati pertama mata yang terapung. 1009 00:43:58,160 --> 00:44:01,860 Ingat perpuluhan terapung dan bilangan bulat tidak adalah perkara yang sama. 1010 00:44:01,860 --> 00:44:03,620 Mengesan mana yang mana. 1011 00:44:03,620 --> 00:44:05,953 Dan anda akan menggunakan kenyataan bersyarat, juga. 1012 00:44:05,953 --> 00:44:09,070 1013 00:44:09,070 --> 00:44:10,940 >> Baiklah, perkara yang lepas. 1014 00:44:10,940 --> 00:44:12,770 Saya telah mendapat beberapa minit. 1015 00:44:12,770 --> 00:44:13,460 Style. 1016 00:44:13,460 --> 00:44:19,320 Jadi ini adalah sesuatu yang tidak sebenarnya kesan kecekapan, 1017 00:44:19,320 --> 00:44:21,010 atau berjalan sebenar kod anda. 1018 00:44:21,010 --> 00:44:24,380 Walau bagaimanapun, ia kesan kita sebagai penggred anda, kerana pembaca anda. 1019 00:44:24,380 --> 00:44:27,290 Ia kesan diri sendiri, jika anda berada cuba untuk mencari masalah. 1020 00:44:27,290 --> 00:44:30,700 Ia kesan pembacaan kod anda. 1021 00:44:30,700 --> 00:44:34,070 >> Jadi gaya, seperti apabila anda cuba untuk gaya esei untuk Bahasa Inggeris, jika anda 1022 00:44:34,070 --> 00:44:36,070 tidak mempunyai perenggan, anda mempunyai semua jenis 1023 00:44:36,070 --> 00:44:39,190 daripada bercampur bersama-sama dalam satu baris, ia menjadikan ia benar-benar sukar untuk sesiapa 1024 00:44:39,190 --> 00:44:42,620 untuk membaca esei anda, walaupun mata anda adalah secara logik bunyi. 1025 00:44:42,620 --> 00:44:44,390 Perkara yang sama dalam pengaturcaraan. 1026 00:44:44,390 --> 00:44:47,910 Anda boleh mempunyai teruk kabur kod yang Scaz akan meliputi, 1027 00:44:47,910 --> 00:44:49,660 dan ia masih boleh berlari dan fungsi. 1028 00:44:49,660 --> 00:44:53,110 Tetapi bagi kami, kerana TA indah anda, yang akan dapat membaca dan menilai psets anda, 1029 00:44:53,110 --> 00:44:54,460 bukan itu sangat bagus. 1030 00:44:54,460 --> 00:44:56,859 >> Oleh itu, sila, demi antara kita dan diri anda, 1031 00:44:56,859 --> 00:44:58,900 apabila anda cuba untuk menetapkan masalah dalam kod anda, 1032 00:44:58,900 --> 00:45:00,774 dan anda cuba untuk membaca kod anda sendiri, membuat 1033 00:45:00,774 --> 00:45:03,910 Pastikan anda mengikuti beberapa konvensyen yang kita akan pergi ke atas. 1034 00:45:03,910 --> 00:45:04,510 >> Jadi pertama. 1035 00:45:04,510 --> 00:45:07,070 Beri pembolehubah anda nama-nama yang bermakna. 1036 00:45:07,070 --> 00:45:11,450 Jika anda ingin menyimpan integer dipanggil umur, sila sebut sahaja umur. 1037 00:45:11,450 --> 00:45:12,875 Jangan sebut sahaja ketinggian. 1038 00:45:12,875 --> 00:45:14,750 Apabila anda cuba untuk menyimpan usia yang tinggi, 1039 00:45:14,750 --> 00:45:16,722 ia membuat segala-galanya sangat mengelirukan bagi kami. 1040 00:45:16,722 --> 00:45:17,930 Kami tidak suka keliru. 1041 00:45:17,930 --> 00:45:19,180 Anda tidak suka akan keliru. 1042 00:45:19,180 --> 00:45:20,350 Tiada siapa yang suka keliru. 1043 00:45:20,350 --> 00:45:23,100 Jika anda pergi untuk membuat sesuatu, nama itu sesuatu yang bermakna. 1044 00:45:23,100 --> 00:45:26,440 >> Walau bagaimanapun, dalam untuk gelung, tunggal pembolehubah watak biasanya halus. 1045 00:45:26,440 --> 00:45:31,350 Dan dalam untuk gelung, jika anda mahu hanya i, dan j, k, jangan ragu untuk hanya berbuat demikian. 1046 00:45:31,350 --> 00:45:32,670 >> Pengawalan yang konsisten. 1047 00:45:32,670 --> 00:45:33,770 Jadi apa maksudnya? 1048 00:45:33,770 --> 00:45:37,600 Ini bermakna secara teknikal, secara teori, anda boleh memulakan dan mewujudkan 1049 00:45:37,600 --> 00:45:40,140 beberapa pembolehubah pada baris yang sama. 1050 00:45:40,140 --> 00:45:42,820 Jadi, sebagai contoh, saya boleh membuat integer dipanggil scaz_age, 1051 00:45:42,820 --> 00:45:47,110 dan integer dipanggil andi_age = 20, dan integer dipanggil jason_age 1052 00:45:47,110 --> 00:45:48,090 pada baris yang sama. 1053 00:45:48,090 --> 00:45:52,060 Dan saya juga boleh menetapkan hanya satu daripada mereka dan tidak yang lain untuk nilai-nilai. 1054 00:45:52,060 --> 00:45:54,142 Kami meminta anda sila tidak berbuat demikian. 1055 00:45:54,142 --> 00:45:57,350 Kerana di sini anda pada dasarnya dicipta tiga pembolehubah, tetapi hanya salah seorang daripada mereka 1056 00:45:57,350 --> 00:45:58,295 sebenarnya mempunyai nilai. 1057 00:45:58,295 --> 00:46:00,170 Dan kemudian apabila kami cuba untuk membaca kod anda, 1058 00:46:00,170 --> 00:46:01,850 atau jika anda cuba untuk menetapkan masalah dalam kod anda, 1059 00:46:01,850 --> 00:46:03,340 ia amat mengelirukan untuk diikuti. 1060 00:46:03,340 --> 00:46:09,300 Jadi hanya untuk pembacaan anda, sebagai pembacaan kami, jangan berbuat demikian. 1061 00:46:09,300 --> 00:46:10,355 >> Pendakap kerinting konsisten. 1062 00:46:10,355 --> 00:46:12,980 Sesetengah orang suka untuk meletakkan mereka pendakap kerinting di tempat-tempat yang berbeza. 1063 00:46:12,980 --> 00:46:14,100 Ia tidak benar-benar perkara itu. 1064 00:46:14,100 --> 00:46:17,900 Hanya pastikan anda konsisten dalam anda Kod sendiri di mana anda suka untuk meletakkan mereka. 1065 00:46:17,900 --> 00:46:18,950 >> Jarak konsisten. 1066 00:46:18,950 --> 00:46:22,040 Jika anda meletakkan ruang selepas untuk gelung, sentiasa berbuat demikian. 1067 00:46:22,040 --> 00:46:24,930 Jangan hanya suka jenis melakukannya pada beberapa tempat, tidak melakukannya pada orang lain. 1068 00:46:24,930 --> 00:46:26,580 Hanya konsisten. 1069 00:46:26,580 --> 00:46:29,500 >> Kedua, jika sesiapa ingin untuk membaca dengan teliti CS50 Style Guide, 1070 00:46:29,500 --> 00:46:33,230 kami secara rasmi mempunyai panduan gaya yang memberitahu anda semua konvensyen ini, 1071 00:46:33,230 --> 00:46:34,890 dan banyak lagi. 1072 00:46:34,890 --> 00:46:35,530 Ia dalam talian. 1073 00:46:35,530 --> 00:46:38,670 Ia seperti cs50.net/style atau sesuatu seperti itu. 1074 00:46:38,670 --> 00:46:40,180 Anda boleh google ia. 1075 00:46:40,180 --> 00:46:41,399 >> Konsistensi adalah kunci. 1076 00:46:41,399 --> 00:46:43,190 Jadi jangan bimbang apa yang orang lain lakukan, 1077 00:46:43,190 --> 00:46:46,180 pastikan bahawa anda konsisten dalam kod anda sendiri. 1078 00:46:46,180 --> 00:46:50,570 Sesiapa yang mempunyai sebarang soalan tentang itu? 1079 00:46:50,570 --> 00:46:51,070 Yeah. 1080 00:46:51,070 --> 00:46:53,370 >> SPEAKER 18: Jadi perkara yang betul yang perlu dilakukan dengan pengawalan hanya 1081 00:46:53,370 --> 00:46:56,130 mempunyai mereka semua dalam yang berasingan talian, adalah bahawa apa yang anda katakan? 1082 00:46:56,130 --> 00:46:58,850 >> ANDI PENG: Jadi saya jarang telah ini berlaku. 1083 00:46:58,850 --> 00:47:02,230 Tetapi jika anda mahu, jika anda mahu menjadi seperti menjimatkan ruang dalam kod anda, 1084 00:47:02,230 --> 00:47:04,000 atau apa sahaja, anda boleh melakukan ini. 1085 00:47:04,000 --> 00:47:07,800 Kami meminta anda hanya tidak memulakan satu perkara dan tidak yang lain. 1086 00:47:07,800 --> 00:47:12,600 Jadi, jika anda mahu melakukan int scaz_age, int andi_age, int jason_age, itulah denda. 1087 00:47:12,600 --> 00:47:15,600 Hanya tidak memulakan satu dan tidak yang lain sahaja. 1088 00:47:15,600 --> 00:47:18,380 1089 00:47:18,380 --> 00:47:19,904 >> Soalan? 1090 00:47:19,904 --> 00:47:20,850 Baiklah. 1091 00:47:20,850 --> 00:47:24,610 Saya akan lulus daripada mikrofon, dan penunjuk laser, 1092 00:47:24,610 --> 00:47:28,862 dan baton kepada Scaz pada ketika ini. 1093 00:47:28,862 --> 00:47:29,808 Ini adalah janggal. 1094 00:47:29,808 --> 00:47:32,650 1095 00:47:32,650 --> 00:47:33,200 Ini dia. 1096 00:47:33,200 --> 00:47:34,408 >> BRIAN SCASSELLATI: Terima kasih. 1097 00:47:34,408 --> 00:47:42,500 1098 00:47:42,500 --> 00:47:43,380 Bagaimana itu untuk bunyi? 1099 00:47:43,380 --> 00:47:46,420 1100 00:47:46,420 --> 00:47:47,900 Bunyi yang baik? . 1101 00:47:47,900 --> 00:47:49,220 Sangat baik. 1102 00:47:49,220 --> 00:47:50,350 OKAY. 1103 00:47:50,350 --> 00:47:52,110 Jadi, hi semua orang. 1104 00:47:52,110 --> 00:47:56,540 >> Saya akan cuba untuk bekerja melalui contoh yang praktikal dengan anda. 1105 00:47:56,540 --> 00:48:00,850 Dan kita akan menggunakan ini CS50 persekitaran pembangunan, apa yang dipanggil 1106 00:48:00,850 --> 00:48:03,120 Persekitaran Pembangunan Bersepadu. 1107 00:48:03,120 --> 00:48:05,145 Dan anda telah melihat ini ditunjukkan dalam kuliah. 1108 00:48:05,145 --> 00:48:07,520 Dan dalam Set Masalah 1, anda akan ada kesempatan bagi 1109 00:48:07,520 --> 00:48:10,890 untuk menggunakannya, dan bermain-main dengan , dan membiasakan diri dengannya, 1110 00:48:10,890 --> 00:48:13,640 kerana kita akan menggunakannya melalui seluruh semester. 1111 00:48:13,640 --> 00:48:20,350 >> Jadi dalam IDE ini, anda mempunyai apa yang kelihatan seperti pelayar fail sangat tradisional 1112 00:48:20,350 --> 00:48:21,890 lebih di satu pihak. 1113 00:48:21,890 --> 00:48:24,360 Anda telah mendapat bahagian yang sehingga atas di mana anda akan 1114 00:48:24,360 --> 00:48:28,850 untuk melihat kod sumber anda, anda Cfile, kod yang anda menulis. 1115 00:48:28,850 --> 00:48:31,880 Dan turun bawah, anda akan mempunyai tetingkap terminal 1116 00:48:31,880 --> 00:48:36,330 yang anda akan menggunakan untuk kedua-dua menyusun program anda 1117 00:48:36,330 --> 00:48:39,090 dan untuk menjalankan atau melaksanakan program anda. 1118 00:48:39,090 --> 00:48:40,100 OKAY. 1119 00:48:40,100 --> 00:48:46,560 >> Jadi hanya untuk memberi kita sedikit asas, dalam tetingkap terminal, 1120 00:48:46,560 --> 00:48:48,930 anda akan menjadi menggunakan satu set arahan 1121 00:48:48,930 --> 00:48:53,040 yang perintah standard di seluruh sebahagian besar daripada Unix atau Linux sistem. 1122 00:48:53,040 --> 00:48:55,890 Dan jadi jika anda pernah menggunakan apa-apa bentuk Unix, Ubuntu, 1123 00:48:55,890 --> 00:48:59,140 atau mana-mana perisa lain, ini akan kelihatan biasa. 1124 00:48:59,140 --> 00:49:00,890 >> Jika anda tidak mempunyai, jangan bimbang. 1125 00:49:00,890 --> 00:49:02,830 Ada apa-apa yang rumit mengenai mereka. 1126 00:49:02,830 --> 00:49:05,330 Mereka hanya menggunakan yang berbeza sintaksis, penamaan yang berbeza 1127 00:49:05,330 --> 00:49:07,630 konvensyen daripada apa yang anda lihat sebelum ini. 1128 00:49:07,630 --> 00:49:12,190 >> Jadi untuk senaraikan fail dalam direktori tertentu, 1129 00:49:12,190 --> 00:49:15,310 mereka akan menggunakan arahan dipanggil ls, atau senarai. 1130 00:49:15,310 --> 00:49:18,010 Jika anda ingin melihat segala-galanya dengan semua butiran, 1131 00:49:18,010 --> 00:49:21,535 anda akan menggunakan arahan hujah baris dengan ls -l. 1132 00:49:21,535 --> 00:49:23,910 Dan yang akan menunjukkan kepada anda semua dengan lebih terperinci, termasuk 1133 00:49:23,910 --> 00:49:26,270 keizinan untuk fail. 1134 00:49:26,270 --> 00:49:31,190 >> Untuk menukar direktori, anda akan menggunakan arahan cd. 1135 00:49:31,190 --> 00:49:35,180 Dan anda akan dapat untuk menukar direktori kedua-dua untuk pergi ke direktori rumah anda. 1136 00:49:35,180 --> 00:49:38,500 Itu hanya cd semua oleh sendiri, cd dengan dua 1137 00:49:38,500 --> 00:49:42,930 titik mengembalikan kamu sehingga satu tahap ke direktori anda yang terdahulu. 1138 00:49:42,930 --> 00:49:46,400 Dan anda juga boleh cd kepada subdirektori dengan menaip cd 1139 00:49:46,400 --> 00:49:48,500 dan nama subdirektori itu. 1140 00:49:48,500 --> 00:49:50,540 >> Anda juga boleh membuat direktori baru. 1141 00:49:50,540 --> 00:49:52,790 Dan kita akan berjalan melalui ini dalam masa satu minit. 1142 00:49:52,790 --> 00:49:54,498 Tetapi hanya untuk meletakkan segala-galanya pada skrin. 1143 00:49:54,498 --> 00:49:56,310 Supaya anda boleh melihat mereka. 1144 00:49:56,310 --> 00:50:00,420 >> Anda juga akan mempunyai keupayaan untuk memanipulasi fail terus 1145 00:50:00,420 --> 00:50:02,100 daripada baris arahan. 1146 00:50:02,100 --> 00:50:06,059 Anda akan dapat untuk menyalin mereka, untuk memindahkan mereka, atau untuk menghapuskan mereka, 1147 00:50:06,059 --> 00:50:07,600 iaitu, berkesan, untuk memadamnya. 1148 00:50:07,600 --> 00:50:10,310 1149 00:50:10,310 --> 00:50:15,350 >> IDE CS50 memberikan anda penuh kuasa hujah baris arahan. 1150 00:50:15,350 --> 00:50:20,280 Dan ini bermakna anda juga boleh melakukan perkara-perkara yang sangat berbahaya. 1151 00:50:20,280 --> 00:50:21,560 OKAY. 1152 00:50:21,560 --> 00:50:25,010 Sebagai contoh, anda boleh mengeluarkan, atau yang padam, 1153 00:50:25,010 --> 00:50:28,750 fail tanpa meminta untuk pengesahan. 1154 00:50:28,750 --> 00:50:31,820 Dan anda juga boleh mengeluarkan recursively-- itulah 1155 00:50:31,820 --> 00:50:38,940 r melontarkan yang flag-- keseluruhan yang subdirektori dan semua kandungannya. 1156 00:50:38,940 --> 00:50:39,660 OKAY. 1157 00:50:39,660 --> 00:50:42,940 Mereka yang disenaraikan dalam merah kerana anda harus berfikir "Bahaya" setiap kali 1158 00:50:42,940 --> 00:50:45,000 anda melihat perkara-perkara. 1159 00:50:45,000 --> 00:50:45,920 OKAY. 1160 00:50:45,920 --> 00:50:46,420 Baiklah. 1161 00:50:46,420 --> 00:50:50,090 1162 00:50:50,090 --> 00:50:53,430 >> Kini akhirnya, perkara-perkara yang akan menjadi benar-benar berharga kepada anda, 1163 00:50:53,430 --> 00:50:57,270 adalah terdapat beberapa helah yang baik tahu seperti yang anda sedang memandu arah 1164 00:50:57,270 --> 00:50:59,190 melalui tingkap terminal ini. 1165 00:50:59,190 --> 00:51:03,590 Pertama, anda boleh mengosongkan skrin pada bila-bila masa dengan hanya menaip jelas. 1166 00:51:03,590 --> 00:51:06,310 Dan anda akan melihat saya berbuat demikian agak kerap. 1167 00:51:06,310 --> 00:51:09,990 Anda juga boleh hanya memaparkan teks fail 1168 00:51:09,990 --> 00:51:13,992 dengan menaip lebih dan kemudian nama fail. 1169 00:51:13,992 --> 00:51:17,200 Kemudian, anda akan dapat untuk memilih kembali semula dan sebagainya dengan yang hanya dengan bar ruang 1170 00:51:17,200 --> 00:51:19,010 dan anak panah kunci. 1171 00:51:19,010 --> 00:51:25,450 >> Jika anda mempunyai, seperti yang kita lakukan pada hari ini dalam kuliah, satu program yang sedang berjalan secara berterusan 1172 00:51:25,450 --> 00:51:29,190 dalam gelung tak terhingga, anda boleh menghentikan program yang 1173 00:51:29,190 --> 00:51:35,160 layanannya dengan menaip dalam kawalan, yang menekan Control-C. 1174 00:51:35,160 --> 00:51:38,360 Dan anda mungkin perlu lakukan ini beberapa kali. 1175 00:51:38,360 --> 00:51:40,620 Komputer mendapat jauh lebih awal daripada anda. 1176 00:51:40,620 --> 00:51:43,380 Dan kadang-kadang anda perlu memberikan beberapa kali percubaan 1177 00:51:43,380 --> 00:51:46,280 sebelum ia benar-benar akan keluar. 1178 00:51:46,280 --> 00:51:48,760 >> Anda juga akan dapat menyusun melalui perintah 1179 00:51:48,760 --> 00:51:54,230 bahawa anda hanya ditaip menggunakan kekunci up, kekunci anak panah, dan kemudian kekunci anak panah ke bawah. 1180 00:51:54,230 --> 00:51:57,560 Dan apa yang paling berguna adalah sebaliknya menaip nama-nama fail panjang, 1181 00:51:57,560 --> 00:52:02,209 anda akan dapat untuk menggunakan Tab untuk Autolengkap untuk melengkapkan beberapa suruhan. 1182 00:52:02,209 --> 00:52:04,750 Sekarang kita akan menunjukkan semua orang-orang dalam hanya satu saat. 1183 00:52:04,750 --> 00:52:06,780 Jadi, jika anda tidak ingat mereka, jangan bimbang. 1184 00:52:06,780 --> 00:52:10,780 Ini adalah perkara-perkara yang anda akan mengambil dan menggunakan seperti yang kita pergi bersama-sama. 1185 00:52:10,780 --> 00:52:11,470 OKAY. 1186 00:52:11,470 --> 00:52:18,830 >> Jadi dalam C-- tidak seperti di Scratch-- C adalah bahasa yang disusun. 1187 00:52:18,830 --> 00:52:23,210 Ini bermakna kita akan mengambil sumber file-- itu teks yang anda menulis, 1188 00:52:23,210 --> 00:52:26,500 arahan yang anda menulis, printf () Penyata, gelung, 1189 00:52:26,500 --> 00:52:32,580 segala-galanya else-- dan kita akan untuk mengambil fail itu dan menyerahkan ia di luar 1190 00:52:32,580 --> 00:52:34,670 untuk program yang dikenali sebagai pengkompil. 1191 00:52:34,670 --> 00:52:39,850 >> Pengkompil akan mengambil bahawa teks yang telah anda tulis 1192 00:52:39,850 --> 00:52:43,270 dan menterjemahkannya ke dalam arahan binari 1193 00:52:43,270 --> 00:52:46,010 bahawa komputer anda adalah sebenarnya akan digunakan. 1194 00:52:46,010 --> 00:52:49,700 Yang dinamakan objek atau fail boleh laku. 1195 00:52:49,700 --> 00:52:55,320 Jika anda melihat fail ini, anda akan untuk melihat kod yang anda tulis. 1196 00:52:55,320 --> 00:52:59,480 Jika anda melihat fail ini, anda akan untuk melihat urutan aksara rawak 1197 00:52:59,480 --> 00:53:01,680 yang tidak masuk akal sekalipun. 1198 00:53:01,680 --> 00:53:03,250 Ini kerana ini adalah binari. 1199 00:53:03,250 --> 00:53:05,560 Ia bukan untuk anda untuk membaca. 1200 00:53:05,560 --> 00:53:08,690 >> Walau bagaimanapun, bila-bila masa anda mahu menjalankan sesuatu, apa yang anda akan 1201 00:53:08,690 --> 00:53:13,670 yang akan berjalan adalah fail objek ini. 1202 00:53:13,670 --> 00:53:19,110 Oleh itu, apabila kita bekerja dengan ini fail, kami akan menulis fail dalam C. 1203 00:53:19,110 --> 00:53:23,400 Kami kemudian akan menyusun, dengan menggunakan arahan seperti make yang akan sembah 1204 00:53:23,400 --> 00:53:27,070 dilafaz pengkompil untuk bahasa C. 1205 00:53:27,070 --> 00:53:31,530 Dan yang akan menghasilkan objek fail, seperti keluar, atau dalam kes ini, 1206 00:53:31,530 --> 00:53:36,580 nama, fail saya, bahawa saya telah dimasukkan ke dalam. 1207 00:53:36,580 --> 00:53:37,780 Baiklah. 1208 00:53:37,780 --> 00:53:39,790 >> Jadi mari kita sebenarnya cuba ini. 1209 00:53:39,790 --> 00:53:42,850 Jadi saya datang dengan contoh apa yang saya mahu mencuba. 1210 00:53:42,850 --> 00:53:47,380 Dan salah satu daripada perkara-perkara yang mempesonakan saya adalah animasi. 1211 00:53:47,380 --> 00:53:51,010 Oleh itu, kita akan cuba untuk melakukan sedikit animasi 1212 00:53:51,010 --> 00:53:53,760 dengan hanya menggunakan aksara ASCII. 1213 00:53:53,760 --> 00:53:56,470 Watak kita boleh mencetak dengan mudah sekarang. 1214 00:53:56,470 --> 00:54:00,890 >> Jadi di sini adalah percubaan saya yang terbaik mewujudkan untuk anda 1215 00:54:00,890 --> 00:54:07,005 animasi bunny berjalan melalui rumput tinggi. 1216 00:54:07,005 --> 00:54:07,505 Itu dia. 1217 00:54:07,505 --> 00:54:10,150 1218 00:54:10,150 --> 00:54:10,670 OKAY. 1219 00:54:10,670 --> 00:54:14,050 Jadi dia tidak berjalan lagi, tetapi dia berdiri di rumput tinggi. 1220 00:54:14,050 --> 00:54:17,810 >> Sekarang jika saya animator, di sekolah lama 1221 00:54:17,810 --> 00:54:20,860 versi animasi, apa yang saya akan lakukan adalah saya akan menghasilkan 1222 00:54:20,860 --> 00:54:23,640 gambar arnab ini dalam rumput. 1223 00:54:23,640 --> 00:54:25,390 Dan kemudian saya akan menghasilkan picture-- lain 1224 00:54:25,390 --> 00:54:30,600 lain apa yang mereka namakan cell-- yang telah arnab hanya sedikit bergerak. 1225 00:54:30,600 --> 00:54:34,870 Dan kemudian yang ketiga yang mempunyai bunny bergerak yang lebih jauh. 1226 00:54:34,870 --> 00:54:40,610 >> Dan saya akan menghasilkan keseluruhan yang urutan sel-sel ini. 1227 00:54:40,610 --> 00:54:44,220 Beberapa di mana arnab berakhir ke sebelah tangan kiri. 1228 00:54:44,220 --> 00:54:47,050 Dan kemudian bergerak perlahan-lahan, satu demi satu ke arah tengah-tengah. 1229 00:54:47,050 --> 00:54:51,120 Dan kemudian dari tengah ke kanan. 1230 00:54:51,120 --> 00:54:55,760 Dan jika saya itu, benar-benar bernasib baik, saya boleh meletakkan bersama-sama 1231 00:54:55,760 --> 00:54:57,970 dan saya boleh bernyawa mereka. 1232 00:54:57,970 --> 00:55:00,370 Dan ada bunny saya berjalan melalui rumput. 1233 00:55:00,370 --> 00:55:02,310 >> Itulah PowerPoint besar saya menipu untuk hari tersebut. 1234 00:55:02,310 --> 00:55:02,809 OKAY. 1235 00:55:02,809 --> 00:55:04,760 Jadi ini adalah sebagai baik kerana mendapat. 1236 00:55:04,760 --> 00:55:05,260 OKAY. 1237 00:55:05,260 --> 00:55:08,455 Jadi, di sini sekali lagi, di sini adalah kami bunny berjalan melalui rumput. 1238 00:55:08,455 --> 00:55:09,217 >> SPEAKER 19: Lagi. 1239 00:55:09,217 --> 00:55:11,050 BRIAN SCASSELLATI: Satu lebih banyak masa, baiklah. 1240 00:55:11,050 --> 00:55:11,940 Ada bunny anda. 1241 00:55:11,940 --> 00:55:12,940 OKAY. 1242 00:55:12,940 --> 00:55:15,470 >> Jadi hari ini apa yang kita akan lakukan ialah kita akan 1243 00:55:15,470 --> 00:55:21,110 cuba untuk mengautomasikan proses menghasilkan sel-sel ini. 1244 00:55:21,110 --> 00:55:24,135 Kami tidak akan cukup mendapatkan ke titik dapat untuk meletakkan mereka semua bersama-sama. 1245 00:55:24,135 --> 00:55:28,900 Tetapi, kita akan cuba untuk mengautomasikan proses penjanaan urutan ini. 1246 00:55:28,900 --> 00:55:32,900 >> Dan ini adalah lebih daripada apa yang animasi hari ini adalah seperti. 1247 00:55:32,900 --> 00:55:36,690 Iaitu, anda tidak melakukan perkara yang semestinya dengan melukis segala-galanya dengan tangan. 1248 00:55:36,690 --> 00:55:40,610 Kami menggunakan komputer untuk mengautomasikan bahagian proses itu. 1249 00:55:40,610 --> 00:55:41,110 OKAY. 1250 00:55:41,110 --> 00:55:47,720 >> Jadi biarlah saya beralih Masuk untuk IDE CS50 kami. 1251 00:55:47,720 --> 00:55:54,260 Dan saya ciptakan untuk us-- dan membiarkan saya mengezum masuk sini bit-- sedikit saya telah 1252 00:55:54,260 --> 00:55:58,420 dicipta untuk kita titik permulaan. 1253 00:55:58,420 --> 00:56:03,830 >> Setiap kali kami meminta anda untuk duduk dan menulis sekeping kod, 1254 00:56:03,830 --> 00:56:09,250 apa yang kita benar-benar meminta anda untuk melakukan adalah kita meminta untuk menyelesaikan masalah. 1255 00:56:09,250 --> 00:56:11,810 Dan cara yang anda perlu berfikir tentang melakukan yang 1256 00:56:11,810 --> 00:56:17,900 adalah dengan memulakan dengan beberapa bahagian mudah untuk penyelesaian itu. 1257 00:56:17,900 --> 00:56:21,730 Dan kemudian membina dari bahagian itu. 1258 00:56:21,730 --> 00:56:23,400 Dan itulah apa yang kita akan lakukan hari ini. 1259 00:56:23,400 --> 00:56:27,570 >> Jadi, daripada cuba sekaligus ke menulis keseluruhan tandan kod yang yang 1260 00:56:27,570 --> 00:56:30,770 akan menghasilkan orang-orang 10 sel animasi, 1261 00:56:30,770 --> 00:56:35,506 kita akan mula sebaliknya dengan satu bahagian yang berfungsi. 1262 00:56:35,506 --> 00:56:37,380 Dan kemudian kita akan membina sebuah sedikit sekitar yang 1263 00:56:37,380 --> 00:56:39,740 dan lebih sedikit dan lebih sedikit. 1264 00:56:39,740 --> 00:56:42,550 >> Sekarang perkara yang baik tentang menyelesaikan masalah seperti ini 1265 00:56:42,550 --> 00:56:46,716 ialah ia akan membolehkan anda untuk memulakan sentiasa dengan sesuatu yang anda tahu 1266 00:56:46,716 --> 00:56:51,130 kerja-kerja dan memperkenalkan satu perubahan secara beransur-ansur. 1267 00:56:51,130 --> 00:56:54,090 Dan itulah cara yang baik untuk belajar bagaimana untuk kod, 1268 00:56:54,090 --> 00:56:58,590 kerana setiap kali anda membuat perubahan, anda lihat apa kesan ia mempunyai. 1269 00:56:58,590 --> 00:56:59,540 OKAY. 1270 00:56:59,540 --> 00:57:01,450 >> Jadi di sini adalah titik permulaan kita. 1271 00:57:01,450 --> 00:57:01,950 OKAY. 1272 00:57:01,950 --> 00:57:08,030 Jadi pada awal fail saya, Saya telah hash #included stdio.h. 1273 00:57:08,030 --> 00:57:12,560 Itulah supaya saya boleh mendapatkan printf () fungsi untuk bekerja. 1274 00:57:12,560 --> 00:57:15,240 >> Saya kemudian saya mempunyai fungsi utama saya. 1275 00:57:15,240 --> 00:57:18,760 Dan ini masih kelihatan sedikit sukar difahami atau kabur kepada sebahagian dari kamu. 1276 00:57:18,760 --> 00:57:20,010 Tak apa. 1277 00:57:20,010 --> 00:57:23,190 Apa yang mengatakan adalah bahawa fungsi utama mengambil 1278 00:57:23,190 --> 00:57:27,830 cara tidak arguments-- tidak sah apa-apa dalam C. Dan ia 1279 00:57:27,830 --> 00:57:29,940 pulangan dengan konvensyen integer. 1280 00:57:29,940 --> 00:57:33,290 Main sentiasa kembali integer, biasanya kod mengatakan perkara-perkara 1281 00:57:33,290 --> 00:57:35,071 berjalan dengan baik atau tidak berjalan dengan baik. 1282 00:57:35,071 --> 00:57:35,570 OKAY. 1283 00:57:35,570 --> 00:57:39,110 Tetapi utama perlu mempunyai yang Borang untuk kita sekarang. 1284 00:57:39,110 --> 00:57:42,080 >> Saya kemudian dimasukkan ke dalam tiga baris kod. 1285 00:57:42,080 --> 00:57:46,760 Dan bersama-sama dengan setiap baris kod, saya telah meletakkan komen. 1286 00:57:46,760 --> 00:57:51,340 Sekarang salah satu perkara-perkara yang kita akan menegaskan bahawa yang anda lakukan, 1287 00:57:51,340 --> 00:57:55,320 dan ia adalah apa-apa yang penting amalan pengaturcaraan, 1288 00:57:55,320 --> 00:57:57,800 adalah untuk sentiasa komen kod anda. 1289 00:57:57,800 --> 00:58:02,550 Sentiasa menulis dalam Komen sesuatu bahasa inggeris 1290 00:58:02,550 --> 00:58:06,740 yang anda fikir Kod yang sepatutnya dilakukan. 1291 00:58:06,740 --> 00:58:11,360 Dengan cara itu, kemudian apabila anda kembali ke , anda boleh melihat dan anda boleh berkata, 1292 00:58:11,360 --> 00:58:13,800 oh, saya masih ingat apa yang saya cuba lakukan dengan ini. 1293 00:58:13,800 --> 00:58:17,590 Atau apabila TA duduk dengan anda untuk cuba untuk membantu anda pada waktu pejabat, 1294 00:58:17,590 --> 00:58:20,890 mereka boleh melihat ini dan pergi, saya melihat apa yang anda cuba lakukan, 1295 00:58:20,890 --> 00:58:25,630 tetapi sebaliknya ini adalah apa yang benar-benar berlaku. 1296 00:58:25,630 --> 00:58:26,130 OKAY. 1297 00:58:26,130 --> 00:58:30,300 >> Jadi saya telah mendapat tiga bahagian untuk kod saya, Saya akan pertama sekali cetak 1298 00:58:30,300 --> 00:58:33,110 beberapa titik pada permulaan. 1299 00:58:33,110 --> 00:58:37,480 Saya kemudian akan mencetak saya bunny amat mewah. 1300 00:58:37,480 --> 00:58:40,600 Dan kemudian beberapa sedikit titik pada akhir. 1301 00:58:40,600 --> 00:58:45,220 >> Inilah tiga kenyataan cetak perlu kelihatan biasa kepada anda pada ketika ini. 1302 00:58:45,220 --> 00:58:47,350 Semua yang saya lakukan dalam setiap daripada mereka adalah saya 1303 00:58:47,350 --> 00:58:49,780 mencetak jujukan aksara. 1304 00:58:49,780 --> 00:58:51,370 Tidak ada pembolehubah yang terlibat. 1305 00:58:51,370 --> 00:58:54,320 Semuanya hanya rata. 1306 00:58:54,320 --> 00:58:55,270 OKAY. 1307 00:58:55,270 --> 00:59:07,340 >> Jadi, jika saya turun ke bawah sekarang untuk terminal-- saya mari kita lihat jika saya boleh mendapatkan kembali ini out-- 1308 00:59:07,340 --> 00:59:09,370 dan saya akan menaip jelas lagi. 1309 00:59:09,370 --> 00:59:12,507 >> SPEAKER 20: Adakah kita menggunakan palang dua kali untuk komen? 1310 00:59:12,507 --> 00:59:14,340 BRIAN SCASSELLATI: Bolehkah menggunakan ya double--. 1311 00:59:14,340 --> 00:59:16,920 Ada pelbagai cara untuk meninggalkan komen dalam C. Satu 1312 00:59:16,920 --> 00:59:19,440 cara adalah dengan menggunakan tanda palang berganda. 1313 00:59:19,440 --> 00:59:24,910 Yang lain adalah dengan menggunakan tanda palang dan bintang dan kemudian tutup dengan bintang dan slash. 1314 00:59:24,910 --> 00:59:26,110 Baiklah. 1315 00:59:26,110 --> 00:59:28,950 >> Pertama sekali, saya akan mula menavigasi di sekitar sini. 1316 00:59:28,950 --> 00:59:35,350 Jadi, jika saya pergi ke direktori rumah saya, Saya telah mengubah direktori di sana, 1317 00:59:35,350 --> 00:59:40,230 Saya akan melihat dan melihat apa yang di dalam direktori itu, ls, sila senaraikan. 1318 00:59:40,230 --> 00:59:43,230 Saya akan melihat bahawa saya telah mendapat dua subdirektori. 1319 00:59:43,230 --> 00:59:47,910 Mari kita membuat ini sedikit lebih besar di sini supaya kita semua dapat melihatnya. 1320 00:59:47,910 --> 00:59:50,610 >> Saya dapat melihat bahawa saya telah mendapat dua subdirektori. 1321 00:59:50,610 --> 00:59:53,510 Saya akan menukar direktori untuk pergi ke dalam ruang kerja. 1322 00:59:53,510 --> 00:59:58,380 Dan saya akan hanya menaip sebahagian daripadanya, dan kemudian hanya tekan Tab. 1323 00:59:58,380 --> 01:00:01,520 Dan ia akan menyelesaikan yang lain untuk saya. 1324 01:00:01,520 --> 01:00:03,370 Mewah. 1325 01:00:03,370 --> 01:00:04,960 >> Saya akan melihat dan dilihat di ruang kerja. 1326 01:00:04,960 --> 01:00:08,431 Dan sekarang, saya bekerja pada SuperSection yang 1327 01:00:08,431 --> 01:00:09,680 bahawa kita mengajar sekarang. 1328 01:00:09,680 --> 01:00:10,971 Jadi saya akan pergi ke dalam direktori. 1329 01:00:10,971 --> 01:00:14,770 1330 01:00:14,770 --> 01:00:15,970 Dan akhirnya, melihat dan melihat. 1331 01:00:15,970 --> 01:00:18,480 Dan saya telah mendapat bahawa fail bunny.c. 1332 01:00:18,480 --> 01:00:20,980 >> Baiklah jadi biarlah saya jelas sekali lagi. 1333 01:00:20,980 --> 01:00:24,370 Dan saya akan sekarang-- lagi Saya masih tinggal di dalam direktori yang 1334 01:00:24,370 --> 01:00:27,540 dan ia memberitahu saya Saya dalam bahawa direktori SuperSection. 1335 01:00:27,540 --> 01:00:30,690 Saya akan pergi ke depan dan membuat bunny program saya. 1336 01:00:30,690 --> 01:00:33,730 1337 01:00:33,730 --> 01:00:38,810 Dan perintah itu, membuat bunny, manakala membunyikan sedikit ganjil, 1338 01:00:38,810 --> 01:00:42,960 juga menyembah pengkompil dilafaz itu. 1339 01:00:42,960 --> 01:00:46,470 >> Dan ia dihasilkan untuk saya satu output yang 1340 01:00:46,470 --> 01:00:52,130 yang funny-- laku fail boleh laku yang dikenali sebagai bunny. 1341 01:00:52,130 --> 01:00:52,700 OKAY. 1342 01:00:52,700 --> 01:00:56,700 Saya boleh kemudian, dan ini kedengaran lebih teruk lagi, melaksanakan bunny. 1343 01:00:56,700 --> 01:00:59,360 1344 01:00:59,360 --> 01:01:00,680 OKAY. 1345 01:01:00,680 --> 01:01:03,150 Dan mari kita lihat apa yang dilakukan. 1346 01:01:03,150 --> 01:01:04,527 OKAY. 1347 01:01:04,527 --> 01:01:06,360 Itulah sedikit apa yang saya jangkakan. 1348 01:01:06,360 --> 01:01:11,290 Saya ada gambar arnab saya di sana, tetapi saya jenis mahu ia dengan sendirinya. 1349 01:01:11,290 --> 01:01:13,186 Apa yang saya terlepas? 1350 01:01:13,186 --> 01:01:14,478 >> SPEAKER 21: Slash l atau mengurangkan n. 1351 01:01:14,478 --> 01:01:15,602 BRIAN SCASSELLATI: Slash n. 1352 01:01:15,602 --> 01:01:16,580 OKAY. 1353 01:01:16,580 --> 01:01:18,800 Oleh itu, marilah kita kembali di sini. 1354 01:01:18,800 --> 01:01:20,330 Dan saya akan keluar dari itu. 1355 01:01:20,330 --> 01:01:23,320 Dan saya akan kembali ke dalam satu ini. 1356 01:01:23,320 --> 01:01:27,720 Dan mari kita lihat sekarang daripada fungsi utama saya di sini. 1357 01:01:27,720 --> 01:01:29,280 >> Jadi apa yang perlu saya lakukan? 1358 01:01:29,280 --> 01:01:30,465 Saya mahu menjadi garis. 1359 01:01:30,465 --> 01:01:34,020 1360 01:01:34,020 --> 01:01:35,800 Jadi saya akan dimasukkan ke dalam komen. 1361 01:01:35,800 --> 01:01:38,430 Saya akan dimasukkan ke dalam printf (). 1362 01:01:38,430 --> 01:01:41,350 Dan apa yang saya perlu dimasukkan ke dalam? 1363 01:01:41,350 --> 01:01:41,890 / n. 1364 01:01:41,890 --> 01:01:43,480 OKAY. 1365 01:01:43,480 --> 01:01:46,040 Apa yang saya perlu mengakhirinya dengan? 1366 01:01:46,040 --> 01:01:47,100 Koma bertitik. 1367 01:01:47,100 --> 01:01:48,730 Baiklah. 1368 01:01:48,730 --> 01:01:52,880 >> Kini, salah satu yang benar-benar perkara-perkara penting adalah memastikan 1369 01:01:52,880 --> 01:01:56,720 setiap kali anda membuat perubahan dalam kod anda, bahawa anda menyimpannya. 1370 01:01:56,720 --> 01:02:01,380 Jika anda belum menyimpan kod anda, anda akan perasan sehingga bintang kecil di sana. 1371 01:02:01,380 --> 01:02:03,420 Dan bintang yang mengatakan bahawa anda belum menyimpan kod ini. 1372 01:02:03,420 --> 01:02:07,790 >> Jika saya menyusun sekarang, ia bukan akan mencerminkan mana-mana perubahan, 1373 01:02:07,790 --> 01:02:11,680 kerana pengkompil melihat fail itulah pada cakera, bukan fail itu 1374 01:02:11,680 --> 01:02:13,790 dibuka dalam editor anda. 1375 01:02:13,790 --> 01:02:14,290 Baiklah. 1376 01:02:14,290 --> 01:02:20,830 >> Jadi mari kita menyimpannya dan kemudian kami akan pergi betul-betul di bawah ini, kembali keluar. 1377 01:02:20,830 --> 01:02:24,670 Turun ke terminal saya. 1378 01:02:24,670 --> 01:02:27,193 Dan mari kita membersihkan ruang lagi. 1379 01:02:27,193 --> 01:02:30,690 1380 01:02:30,690 --> 01:02:35,760 >> Dan kita boleh pergi ke hadapan dan satu lagi semasa membuat program bunny kami. 1381 01:02:35,760 --> 01:02:40,180 Dan melaksanakan bunny. 1382 01:02:40,180 --> 01:02:42,500 Yang tidak bekerja sama ada. 1383 01:02:42,500 --> 01:02:43,950 Slash salah. 1384 01:02:43,950 --> 01:02:52,280 Jadi, jika anda melihat apa yang saya dapat, saya meletakkan / n di sana, tetapi saya mempunyai tanda palang yang salah. 1385 01:02:52,280 --> 01:02:56,190 >> Semua yang komputer anda Adakah adalah sangat jelas. 1386 01:02:56,190 --> 01:02:57,230 OKAY? 1387 01:02:57,230 --> 01:03:01,250 Satu kesilapan kecil tanda baca, dan tiba-tiba anda tidak mendapat apa yang anda mahu. 1388 01:03:01,250 --> 01:03:01,750 Baiklah. 1389 01:03:01,750 --> 01:03:03,740 Jadi mari kita zum keluar lagi. 1390 01:03:03,740 --> 01:03:04,410 Kami akan kembali. 1391 01:03:04,410 --> 01:03:07,930 Juga membuat pembaikan yang sangat cepat. 1392 01:03:07,930 --> 01:03:09,270 Kami akan meletakkan palang yang betul. 1393 01:03:09,270 --> 01:03:10,570 Kami akan menyimpannya. 1394 01:03:10,570 --> 01:03:13,410 Kami akan zum masuk. 1395 01:03:13,410 --> 01:03:16,730 >> Untuk sebab-sebab tertentu, itu bukan menjadi gembira, tetapi mari kita pergi ke depan 1396 01:03:16,730 --> 01:03:19,850 dan kami akan kembali ke terminal itu di sini. 1397 01:03:19,850 --> 01:03:22,940 Membersihkannya. 1398 01:03:22,940 --> 01:03:24,880 Kami akan zum masuk. 1399 01:03:24,880 --> 01:03:28,410 Dan sekali lagi, kami akan membuat bunny. 1400 01:03:28,410 --> 01:03:32,360 Dan kini cukup yakin, ia berfungsi. 1401 01:03:32,360 --> 01:03:33,240 Hooray. 1402 01:03:33,240 --> 01:03:34,300 OKAY. 1403 01:03:34,300 --> 01:03:39,580 >> Jadi mari kita cuba untuk membuat ini sedikit lebih umum. 1404 01:03:39,580 --> 01:03:46,750 Mari kita lihat jika bukan hanya mencetak satu frame tertentu, 1405 01:03:46,750 --> 01:03:49,610 mari kita lihat jika kita boleh membuat ini supaya kita boleh mendapatkan semua 10 1406 01:03:49,610 --> 01:03:52,960 mereka bingkai animasi yang kita mahu mempunyai. 1407 01:03:52,960 --> 01:03:56,550 Jadi sekali lagi, mari kita ini satu langkah pada satu masa. 1408 01:03:56,550 --> 01:03:59,900 >> Mari kita pertama umum, tidak supaya saya melakukan semua bingkai, 1409 01:03:59,900 --> 01:04:03,990 tetapi begitu saya lakukan mana-mana satu kerangka yang saya mungkin mahu. 1410 01:04:03,990 --> 01:04:05,920 Jadi apa bezanya antara bingkai? 1411 01:04:05,920 --> 01:04:07,377 Adalah arnab yang sama? 1412 01:04:07,377 --> 01:04:07,960 PENONTON: Ya. 1413 01:04:07,960 --> 01:04:08,390 BRIAN SCASSELLATI: Ya. 1414 01:04:08,390 --> 01:04:09,370 Apa perbezaannya? 1415 01:04:09,370 --> 01:04:10,246 >> PENONTON: Jawatan. 1416 01:04:10,246 --> 01:04:11,870 BRIAN SCASSELLATI: Kedudukannya, betul? 1417 01:04:11,870 --> 01:04:15,590 Dan bagaimana saya mengawal kedudukannya? 1418 01:04:15,590 --> 01:04:17,340 Berapa banyak titik Saya meletakkan pada permulaan 1419 01:04:17,340 --> 01:04:19,048 dan berapa banyak titik Saya meletakkan pada akhir. 1420 01:04:19,048 --> 01:04:21,970 Jadi saya mempunyai lima di bermula dan lima pada akhir. 1421 01:04:21,970 --> 01:04:28,320 >> Mari kita menggantikan lima dengan untuk gelung. 1422 01:04:28,320 --> 01:04:29,380 OKAY. 1423 01:04:29,380 --> 01:04:32,330 Dan saya akan membuat untuk gelung sekarang yang akan berkata, 1424 01:04:32,330 --> 01:04:37,800 Saya akan mencetak beberapa nombor titik pada permulaan. 1425 01:04:37,800 --> 01:04:39,600 Saya akan menggunakan pembolehubah. 1426 01:04:39,600 --> 01:04:44,150 Katakan, bagaimana pula saya sebagai kaunter dalam gelung saya. 1427 01:04:44,150 --> 01:04:47,200 Dan saya akan mengisytiharkan ia sehingga atas. 1428 01:04:47,200 --> 01:04:49,360 >> Dan kemudian dalam gelung Saya perlu melakukan tiga perkara. 1429 01:04:49,360 --> 01:04:52,340 Perkara pertama yang perlu saya lakukan adalah saya perlu memulakan i. 1430 01:04:52,340 --> 01:04:56,570 Apakah yang perlu saya memulakan ia mula menjadi? 1431 01:04:56,570 --> 01:04:57,160 0. 1432 01:04:57,160 --> 01:04:58,310 OKAY. 1433 01:04:58,310 --> 01:05:00,950 >> Kemudian saya perlu berkata, apa yang syarat penamatan itu? 1434 01:05:00,950 --> 01:05:03,020 Bilakah saya perlu berhenti? 1435 01:05:03,020 --> 01:05:05,983 Well berapa banyak titik-titik yang anda ingin mencetak pada satu ini? 1436 01:05:05,983 --> 01:05:06,921 >> PENONTON: Lima. 1437 01:05:06,921 --> 01:05:08,170 BRIAN SCASSELLATI: Lima lagi? 1438 01:05:08,170 --> 01:05:10,650 Bagaimana pula mari kita buat sesuatu yang berbeza, kita lakukan lima. 1439 01:05:10,650 --> 01:05:12,584 Mari kita menunjukkan bahawa ia adalah berbeza. 1440 01:05:12,584 --> 01:05:13,250 SPEAKER 22: Dua. 1441 01:05:13,250 --> 01:05:13,580 BRIAN SCASSELLATI: Dua. 1442 01:05:13,580 --> 01:05:14,080 OKAY. 1443 01:05:14,080 --> 01:05:17,760 Jadi, jika saya mahu dua titik, apa yang perlu saya meletakkan di sini? 1444 01:05:17,760 --> 01:05:19,140 >> PENONTON: Tiga. 1445 01:05:19,140 --> 01:05:20,530 >> BRIAN SCASSELLATI: Tiga. 1446 01:05:20,530 --> 01:05:21,400 OKAY. 1447 01:05:21,400 --> 01:05:24,220 Berapa kali ialah akan melalui? 1448 01:05:24,220 --> 01:05:28,469 Itu akan melalui tiga kali, 0, 1, dan 2, kanan? 1449 01:05:28,469 --> 01:05:30,010 Baiklah, mari kita kembali kepada dua. 1450 01:05:30,010 --> 01:05:31,570 Sekarang kita akan mendapat dua titik. 1451 01:05:31,570 --> 01:05:35,800 Dan apa yang saya mahu lakukan setiap kali saya pergi melalui gelung? 1452 01:05:35,800 --> 01:05:38,657 Apa yang perlu berubah setiap kali saya melalui? 1453 01:05:38,657 --> 01:05:39,850 >> SPEAKER 23: Tambah titik. 1454 01:05:39,850 --> 01:05:41,020 >> BRIAN SCASSELLATI: Saya perlu menyimpan berterusan. 1455 01:05:41,020 --> 01:05:41,978 Saya akan menambah titik. 1456 01:05:41,978 --> 01:05:45,310 Saya akan mencetak titik, setiap kali melalui gelung. 1457 01:05:45,310 --> 01:05:49,990 Tetapi bagaimana saya mengesan bagaimana banyak kali saya telah melalui gelung? 1458 01:05:49,990 --> 01:05:53,260 Saya menggunakan i, yang berubah-ubah, kaunter itu. 1459 01:05:53,260 --> 01:05:57,110 >> Jadi setiap kali melalui, saya akan untuk kenaikan kaunter demi satu. 1460 01:05:57,110 --> 01:06:00,670 Sekarang, itu yang sama untuk saya sebagai berkata i = i + 1. 1461 01:06:00,670 --> 01:06:01,210 Tak apa. 1462 01:06:01,210 --> 01:06:04,653 Saya boleh melakukannya bahawa- saya suka trengkas, jadi saya akan berkata i ++. 1463 01:06:04,653 --> 01:06:07,190 1464 01:06:07,190 --> 01:06:08,370 OKAY. 1465 01:06:08,370 --> 01:06:10,680 >> Mari kita buat perkara yang sama turun di sini di bahagian bawah. 1466 01:06:10,680 --> 01:06:11,846 Hanya saya jenis lakukan yang itu. 1467 01:06:11,846 --> 01:06:13,990 Saya akan membiarkan anda semua melakukan satu ini sepenuhnya. 1468 01:06:13,990 --> 01:06:14,260 Baiklah. 1469 01:06:14,260 --> 01:06:15,426 >> Jadi apa yang perlu saya tulis di sini? 1470 01:06:15,426 --> 01:06:17,170 Berikut saya untuk gelung. 1471 01:06:17,170 --> 01:06:23,162 Saya akan melakukan printf () dan saya akan untuk membuat ia begitu bahawa saya hanya mencetak satu titik 1472 01:06:23,162 --> 01:06:25,740 di bahagian bawah itu. 1473 01:06:25,740 --> 01:06:27,740 >> Apakah yang perlu saya menulis di dalam ini untuk gelung sekarang? 1474 01:06:27,740 --> 01:06:30,897 1475 01:06:30,897 --> 01:06:33,948 Well, pertama sekali apa pemboleh ubah yang perlu saya gunakan? 1476 01:06:33,948 --> 01:06:35,430 >> SPEAKER 24: j. 1477 01:06:35,430 --> 01:06:36,880 >> BRIAN SCASSELLATI: Saya boleh menggunakan j. 1478 01:06:36,880 --> 01:06:38,040 Bolehkah saya menggunakan salah satu yang sama? 1479 01:06:38,040 --> 01:06:39,961 Bolehkah i lagi? 1480 01:06:39,961 --> 01:06:40,460 Yeah. 1481 01:06:40,460 --> 01:06:45,531 Itu OK, kerana Is yang saya gunakan di sini, 1482 01:06:45,531 --> 01:06:47,780 Saya tidak memerlukannya lagi apabila Saya turun ke hal ini. 1483 01:06:47,780 --> 01:06:52,240 1484 01:06:52,240 --> 01:06:53,790 >> Jadi apa yang perlu saya memulakan i ke? 1485 01:06:53,790 --> 01:06:56,675 1486 01:06:56,675 --> 01:06:57,300 SPEAKER 25: 10. 1487 01:06:57,300 --> 01:06:58,567 BRIAN SCASSELLATI: 0. 1488 01:06:58,567 --> 01:06:59,400 Apakah yang perlu saya menyemak? 1489 01:06:59,400 --> 01:07:02,960 Berapa banyak titik-titik yang saya perlukan sekarang pada akhirnya jika saya telah mendapat dua titik awal? 1490 01:07:02,960 --> 01:07:05,820 1491 01:07:05,820 --> 01:07:09,165 Saya memerlukan lapan pada akhirnya, jadi apa Saya perlu menyemak, saya kurang than-- 1492 01:07:09,165 --> 01:07:12,645 >> PENONTON: Tujuh, lapan, sembilan. 1493 01:07:12,645 --> 01:07:14,020 BRIAN SCASSELLATI: Aku mendengar tujuh. 1494 01:07:14,020 --> 01:07:14,810 Saya mendengar lapan. 1495 01:07:14,810 --> 01:07:15,970 Dan aku mendengar sembilan. 1496 01:07:15,970 --> 01:07:16,470 OKAY. 1497 01:07:16,470 --> 01:07:19,540 Oleh itu, kita semua dalam hak ball-- Jason berkata 10. 1498 01:07:19,540 --> 01:07:21,550 OKAY. 1499 01:07:21,550 --> 01:07:25,920 >> Jika saya memerlukan dua titik untuk yang pertama, berapa banyak melakukan 1500 01:07:25,920 --> 01:07:30,170 Saya-- dan saya memerlukan lapan titik untuk lepas one-- saya meletakkan dua sehingga atas, 1501 01:07:30,170 --> 01:07:31,743 apa yang perlu saya meletakkan di bawah? 1502 01:07:31,743 --> 01:07:32,570 >> PENONTON: Lapan. 1503 01:07:32,570 --> 01:07:33,611 >> BRIAN SCASSELLATI: Lapan. 1504 01:07:33,611 --> 01:07:35,695 Kerana yang akan mengira sifar melalui tujuh. 1505 01:07:35,695 --> 01:07:38,490 Dan itu lapan kali melalui gelung. 1506 01:07:38,490 --> 01:07:38,990 OKAY. 1507 01:07:38,990 --> 01:07:41,774 Dan apa yang saya perlu lakukan pada akhir? 1508 01:07:41,774 --> 01:07:42,670 >> PENONTON: i ++. 1509 01:07:42,670 --> 01:07:44,400 >> BRIAN SCASSELLATI: i ++. 1510 01:07:44,400 --> 01:07:45,440 Baiklah. 1511 01:07:45,440 --> 01:07:48,260 Jadi yang yang kelihatan cukup baik di sana. 1512 01:07:48,260 --> 01:07:50,620 Mari kita cuba dan mari kita lihat apa yang dilakukan. 1513 01:07:50,620 --> 01:07:51,450 OKAY. 1514 01:07:51,450 --> 01:07:53,770 Jadi, kita akan untuk menyimpannya. 1515 01:07:53,770 --> 01:07:54,940 Nice dan disimpan. 1516 01:07:54,940 --> 01:07:56,910 >> Kami akan zum keluar. 1517 01:07:56,910 --> 01:07:58,220 Kami akan cuba di sini di terminal. 1518 01:07:58,220 --> 01:08:01,440 1519 01:08:01,440 --> 01:08:02,970 Kami akan zum masuk. 1520 01:08:02,970 --> 01:08:05,416 Maaf. 1521 01:08:05,416 --> 01:08:09,990 Kami akan, sekali lagi, membuat program bunny kami. 1522 01:08:09,990 --> 01:08:14,460 Dan pergi ke depan dan melaksanakan bunny. 1523 01:08:14,460 --> 01:08:15,980 Dan ada ia. 1524 01:08:15,980 --> 01:08:17,710 >> Jadi ada bunny kami. 1525 01:08:17,710 --> 01:08:25,130 Di mana ia mempunyai dua titik pada permulaan dan lapan titik keluar pada akhir. 1526 01:08:25,130 --> 01:08:27,540 Semua orang masih dengan saya? 1527 01:08:27,540 --> 01:08:28,770 OKAY. 1528 01:08:28,770 --> 01:08:29,580 >> Oleh itu, kita dibina atas. 1529 01:08:29,580 --> 01:08:33,000 Kami membina satu bunny, satu frame tertentu. 1530 01:08:33,000 --> 01:08:36,229 Sekarang kita telah dapat umum bahawa untuk membina 1531 01:08:36,229 --> 01:08:38,390 lebih, pelbagai jenis bingkai. 1532 01:08:38,390 --> 01:08:42,399 >> Sekarang mari kita pergi ke depan, dan mempunyai ia menghasilkan bukan hanya satu bingkai, 1533 01:08:42,399 --> 01:08:46,290 tetapi mari kita menjana 10 bingkai, di mana kita perlahan-lahan 1534 01:08:46,290 --> 01:08:50,569 membuat kelinci menggerakkan semua jalan di seluruh lapangan. 1535 01:08:50,569 --> 01:08:51,430 Baiklah. 1536 01:08:51,430 --> 01:08:53,660 >> Mari kita kembali. 1537 01:08:53,660 --> 01:08:54,839 Dan kami akan cuba sekarang. 1538 01:08:54,839 --> 01:09:00,680 1539 01:09:00,680 --> 01:09:02,830 Jadi, apa yang saya benar-benar perlu untuk menukar di sini? 1540 01:09:02,830 --> 01:09:06,139 1541 01:09:06,139 --> 01:09:07,180 Apa yang saya perlu berubah? 1542 01:09:07,180 --> 01:09:10,638 >> SPEAKER 26: Anda terlebih dahulu perlu menukar bilangan maksimum titik 1543 01:09:10,638 --> 01:09:11,626 pada permulaan. 1544 01:09:11,626 --> 01:09:16,850 Kerana jika kita lakukan 10 titik, ia akan perlu sehingga skala. 1545 01:09:16,850 --> 01:09:17,850 BRIAN SCASSELLATI: Ya. 1546 01:09:17,850 --> 01:09:23,760 Jadi sekarang saya ada jenis terdawai keras untuk sentiasa melakukan dua titik pada permulaan 1547 01:09:23,760 --> 01:09:27,890 dan sentiasa melakukan lapan titik pada akhir. 1548 01:09:27,890 --> 01:09:30,660 >> Saya mahu membina gelung lain, bukan? 1549 01:09:30,660 --> 01:09:33,290 Kerana saya tidak mahu membina hanya satu bunny picture, 1550 01:09:33,290 --> 01:09:37,140 Saya mahu membina 10 gambar bunny. 1551 01:09:37,140 --> 01:09:41,500 Jadi saya perlu membina gelung lain, dan seperti yang saya pergi melalui gelung itu, 1552 01:09:41,500 --> 01:09:44,660 Saya ingin menukar berapa banyak titik saya mencetak pada permulaan 1553 01:09:44,660 --> 01:09:50,529 dan berapa banyak titik saya mencetak pada akhirnya, berdasarkan yang memutar gelung 1554 01:09:50,529 --> 01:09:52,270 Saya berada di dalam. 1555 01:09:52,270 --> 01:09:52,770 Baiklah. 1556 01:09:52,770 --> 01:09:54,430 >> Jadi mari kita mendapatkan kaunter lain. 1557 01:09:54,430 --> 01:09:58,142 Seseorang yang j sebelum ini berkata, jadi kita akan membuat satu lagi j. 1558 01:09:58,142 --> 01:10:00,100 Dan sekarang, kita akan membina satu lagi untuk gelung. 1559 01:10:00,100 --> 01:10:02,650 1560 01:10:02,650 --> 01:10:06,200 >> Apa yang berlaku di dalam gelung itu? 1561 01:10:06,200 --> 01:10:09,060 Barangan ini telah pergi dalam gelung, bukan? 1562 01:10:09,060 --> 01:10:11,190 Adakah arnab mempunyai untuk masuk ke dalam gelung? 1563 01:10:11,190 --> 01:10:13,390 Adakah saya memerlukan bunny di setiap orang-orang 10 bingkai? 1564 01:10:13,390 --> 01:10:14,099 >> PENONTON: Uh-huh. 1565 01:10:14,099 --> 01:10:15,098 BRIAN SCASSELLATI: Ya. 1566 01:10:15,098 --> 01:10:17,250 Saya mahu bunny dalam setiap daripada 10 bingkai, bukan? 1567 01:10:17,250 --> 01:10:20,531 Bagaimana pula dengan titik di Akhirnya, perlu saya itu? 1568 01:10:20,531 --> 01:10:21,030 OKAY. 1569 01:10:21,030 --> 01:10:22,550 >> Jadi saya akan mengengsot semua daripada mereka. 1570 01:10:22,550 --> 01:10:25,110 Saya akan menyerlahkan semua ini, dan saya akan melanda Tab. 1571 01:10:25,110 --> 01:10:28,590 Dan itu akan menolak mereka di seluruh sedikit, supaya ia mudah bagi saya 1572 01:10:28,590 --> 01:10:32,010 untuk melihat apa yang ada di dalam gelung. 1573 01:10:32,010 --> 01:10:33,710 Dan kemudian saya akan mengakhirinya. 1574 01:10:33,710 --> 01:10:35,850 Katakan. 1575 01:10:35,850 --> 01:10:36,430 OKAY? 1576 01:10:36,430 --> 01:10:39,230 >> Sekarang, dalam gelung ini yang Saya building-- whoops, 1577 01:10:39,230 --> 01:10:43,810 membuat yang supaya anda boleh see-- Saya ada kaunter saya j. 1578 01:10:43,810 --> 01:10:45,630 Saya akan memulakan ini pada 0. 1579 01:10:45,630 --> 01:10:47,829 Berapa kali saya mahu melalui gelung ini? 1580 01:10:47,829 --> 01:10:48,620 PENONTON: 10 kali. 1581 01:10:48,620 --> 01:10:49,786 BRIAN SCASSELLATI: 10 kali. 1582 01:10:49,786 --> 01:10:51,402 Jadi apa jumlah yang perlu saya meletakkan di sini? 1583 01:10:51,402 --> 01:10:52,880 >> PENONTON: 9, 10. 1584 01:10:52,880 --> 01:10:55,600 >> BRIAN SCASSELLATI: 9, 10, seseorang mendapat untuk mengatakan 11, bukan? 1585 01:10:55,600 --> 01:10:58,190 1586 01:10:58,190 --> 01:11:01,585 Saya mahu dua titik sebelum dan meletakkan i kurang dari 2. 1587 01:11:01,585 --> 01:11:03,810 Saya mahu lapan titik, Saya meletakkan i kurang daripada 8. 1588 01:11:03,810 --> 01:11:06,950 Sekarang saya mahu pergi melalui 10 kali, jadi saya meletakkan j kurang than-- 1589 01:11:06,950 --> 01:11:07,590 >> PENONTON: 10. 1590 01:11:07,590 --> 01:11:08,610 >> BRIAN SCASSELLATI: 10. 1591 01:11:08,610 --> 01:11:10,150 Di sana kami pergi. 1592 01:11:10,150 --> 01:11:13,360 Dan apa yang saya lakukan pada akhir untuk j? 1593 01:11:13,360 --> 01:11:15,310 ++, Kenaikan itu. 1594 01:11:15,310 --> 01:11:16,230 OKAY. 1595 01:11:16,230 --> 01:11:21,500 Sekarang, di sini bahagian yang sukar, apa yang akan berlaku sekarang jika saya lakukan ini? 1596 01:11:21,500 --> 01:11:24,537 Adakah saya akan mencetak 10 bingkai? 1597 01:11:24,537 --> 01:11:26,370 SPEAKER 27: Saya rasa mereka semua akan sama. 1598 01:11:26,370 --> 01:11:28,453 BRIAN SCASSELLATI: Mereka akan semua sama, bukan? 1599 01:11:28,453 --> 01:11:31,750 Kerana kesemua mereka masih akan untuk meletakkan dua titik pada permulaan. 1600 01:11:31,750 --> 01:11:34,162 Tetapi saya tidak mahu mereka semua mempunyai dua titik permulaan. 1601 01:11:34,162 --> 01:11:35,870 Berapa banyak titik saya mahu pada mulanya? 1602 01:11:35,870 --> 01:11:39,097 1603 01:11:39,097 --> 01:11:40,020 >> PENONTON: Menukar. 1604 01:11:40,020 --> 01:11:42,840 >> BRIAN SCASSELLATI: Saya mahu ia berubah, bukan? 1605 01:11:42,840 --> 01:11:46,588 Jadi, apa yang saya ada di sini yang mengubah setiap kali gelung akan melalui? 1606 01:11:46,588 --> 01:11:48,242 >> PENONTON: Bilangan titik, j. 1607 01:11:48,242 --> 01:11:49,950 BRIAN SCASSELLATI: j, bilangan titik. 1608 01:11:49,950 --> 01:11:54,782 Jadi saya boleh menukar ini menjadi j. 1609 01:11:54,782 --> 01:11:59,190 Kali pertama melalui gelung, apa yang yang akan menjadi? 1610 01:11:59,190 --> 01:12:01,700 Apa yang saya menetapkan j untuk pada mulanya? 1611 01:12:01,700 --> 01:12:02,420 >> PENONTON: 0. 1612 01:12:02,420 --> 01:12:05,700 >> BRIAN SCASSELLATI: Jadi berapa banyak kali saya akan melakukan ini? 1613 01:12:05,700 --> 01:12:06,750 0. 1614 01:12:06,750 --> 01:12:11,750 Kali kedua melalui gelung, j akan menjadi 1 kerana saya kenaikan itu. 1615 01:12:11,750 --> 01:12:14,180 Berapa banyak titik-titik yang saya akan mencetak? 1616 01:12:14,180 --> 01:12:15,100 1. 1617 01:12:15,100 --> 01:12:19,904 Kali ketiga melalui gelung, berapa banyak titik-titik yang saya akan mencetak? 1618 01:12:19,904 --> 01:12:20,587 >> PENONTON: Tiga. 1619 01:12:20,587 --> 01:12:22,170 BRIAN SCASSELLATI: j akan menjadi 3. 1620 01:12:22,170 --> 01:12:24,890 Berapa banyak titik-titik yang saya akan mencetak? 1621 01:12:24,890 --> 01:12:26,817 Oh, maaf, j akan menjadi 2. 1622 01:12:26,817 --> 01:12:28,233 Berapa banyak titik-titik yang saya akan mencetak? 1623 01:12:28,233 --> 01:12:28,980 >> PENONTON: 2. 1624 01:12:28,980 --> 01:12:29,855 >> BRIAN SCASSELLATI: 2. 1625 01:12:29,855 --> 01:12:32,460 OK, jadi saya akan menjaga menokok bahawa seperti yang kita pergi bersama-sama. 1626 01:12:32,460 --> 01:12:33,460 Bagaimana pula turun di bawah? 1627 01:12:33,460 --> 01:12:34,310 Apa yang berlaku di sini? 1628 01:12:34,310 --> 01:12:38,080 Saya tidak mahu 8 sentiasa pada akhir lagi? 1629 01:12:38,080 --> 01:12:39,269 >> SPEAKER 28: 10. 1630 01:12:39,269 --> 01:12:40,685 BRIAN SCASSELLATI: Saya mahu 10 titik? 1631 01:12:40,685 --> 01:12:43,440 1632 01:12:43,440 --> 01:12:44,620 Saya mahu ia berubah, juga. 1633 01:12:44,620 --> 01:12:47,469 Jadi bagaimana saya mahu ia berubah? 1634 01:12:47,469 --> 01:12:49,167 >> PENONTON: [didengar]. 1635 01:12:49,167 --> 01:12:51,750 BRIAN SCASSELLATI: Sebenarnya, jika saya mempunyai lima titik pada permulaan, 1636 01:12:51,750 --> 01:12:53,293 berapa banyak dot yang saya dapat pada akhir? 1637 01:12:53,293 --> 01:12:54,020 >> PENONTON: Lima. 1638 01:12:54,020 --> 01:12:55,630 >> BRIAN SCASSELLATI: Sekiranya ada enam titik pada permulaan, 1639 01:12:55,630 --> 01:12:56,875 berapa banyak yang saya dapat pada akhir? 1640 01:12:56,875 --> 01:12:57,500 PENONTON: Empat. 1641 01:12:57,500 --> 01:12:58,950 BRIAN SCASSELLATI: Jika saya mendapat tujuh titik pada permulaan, 1642 01:12:58,950 --> 01:13:00,204 berapa banyak yang saya dapat pada akhir? 1643 01:13:00,204 --> 01:13:00,870 PENONTON: Tiga. 1644 01:13:00,870 --> 01:13:03,161 BRIAN SCASSELLATI: Jika saya telah mendapat j titik pada permulaan, 1645 01:13:03,161 --> 01:13:04,790 berapa banyak yang saya dapat pada akhir? 1646 01:13:04,790 --> 01:13:07,520 10-j. 1647 01:13:07,520 --> 01:13:08,650 OKAY. 1648 01:13:08,650 --> 01:13:10,390 Jadi mari kita cuba yang keluar. 1649 01:13:10,390 --> 01:13:13,180 >> Jadi, saya akan menyimpan program bunny kami. 1650 01:13:13,180 --> 01:13:16,270 Sekali lagi kita akan zum keluar. 1651 01:13:16,270 --> 01:13:19,090 Kami akan turun ke terminal kami. 1652 01:13:19,090 --> 01:13:20,180 Kami akan membersihkan ia. 1653 01:13:20,180 --> 01:13:23,410 Dan zum masuk. 1654 01:13:23,410 --> 01:13:26,410 Kami akan membuat program bunny kami, sekali lagi. 1655 01:13:26,410 --> 01:13:27,690 Dan kami akan melaksanakannya. 1656 01:13:27,690 --> 01:13:30,462 1657 01:13:30,462 --> 01:13:32,090 Uh-oh. 1658 01:13:32,090 --> 01:13:34,580 >> Berpegang, mari kita zum keluar. 1659 01:13:34,580 --> 01:13:36,860 Adakah saya mendapat 10 bingkai? 1660 01:13:36,860 --> 01:13:38,970 Nah, berapa banyak Bunnies saya melihat di sana? 1661 01:13:38,970 --> 01:13:43,330 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. 1662 01:13:43,330 --> 01:13:44,820 Saya mendapat 10 bingkai. 1663 01:13:44,820 --> 01:13:46,375 Adakah mereka semua yang sama? 1664 01:13:46,375 --> 01:13:47,000 PENONTON: Ya. 1665 01:13:47,000 --> 01:13:48,740 No. 1666 01:13:48,740 --> 01:13:50,000 >> BRIAN SCASSELLATI: No. 1667 01:13:50,000 --> 01:13:55,050 Itu satu pertama, bunny jauh di sebelah kiri. 1668 01:13:55,050 --> 01:13:57,541 Dan di sini, arnab adalah jauh di 1669 01:13:57,541 --> 01:13:58,290 SPEAKER 29: Betul. 1670 01:13:58,290 --> 01:14:00,502 BRIAN SCASSELLATI: Jadi, apa yang saya lupa yang perlu dilakukan? 1671 01:14:00,502 --> 01:14:01,750 SPEAKER 30: Mulakan barisan baru. 1672 01:14:01,750 --> 01:14:04,041 BRIAN SCASSELLATI: Saya terlupa untuk memulakan baris baru, sekali lagi. 1673 01:14:04,041 --> 01:14:05,270 Kesilapan sama saya dibuat sebelum ini. 1674 01:14:05,270 --> 01:14:07,120 Baiklah, mari kita pergi menetapkan bahawa. 1675 01:14:07,120 --> 01:14:11,690 Sekarang, saya masih ada kod di sana untuk membuat baris baru. 1676 01:14:11,690 --> 01:14:13,899 Mengapa tidak ia berfungsi? 1677 01:14:13,899 --> 01:14:15,440 SPEAKER 31: Ia bukan dalam gelung. 1678 01:14:15,440 --> 01:14:17,710 BRIAN SCASSELLATI: Oh, ia bukan di dalam gelung. 1679 01:14:17,710 --> 01:14:18,520 Betul. 1680 01:14:18,520 --> 01:14:20,150 Ia duduk di luar di sini. 1681 01:14:20,150 --> 01:14:23,470 1682 01:14:23,470 --> 01:14:29,050 Dan untuk gelung adalah segala-galanya yang di dalam teks itu. 1683 01:14:29,050 --> 01:14:35,500 >> Jadi, saya akan bergerak ini di dalam untuk gelung. 1684 01:14:35,500 --> 01:14:39,410 Dan saya akan Tab di hadapannya untuk menunjukkan bahawa ia di tempat yang betul. 1685 01:14:39,410 --> 01:14:42,020 Dan sekarang, kami akan menyimpannya lagi. 1686 01:14:42,020 --> 01:14:44,350 Kami akan zum keluar. 1687 01:14:44,350 --> 01:14:45,770 Kami akan beralih kepada terminal kami. 1688 01:14:45,770 --> 01:14:48,330 1689 01:14:48,330 --> 01:14:50,360 Mengezum masuk. 1690 01:14:50,360 --> 01:14:54,050 Kami akan membentuk semula program bunny kami. 1691 01:14:54,050 --> 01:14:59,070 Oleh sebab itu, sekarang kita telah mendapat 10 bingkai kami. 1692 01:14:59,070 --> 01:15:00,190 >> [Bertepuk tangan] 1693 01:15:00,190 --> 01:15:02,120 >> BRIAN SCASSELLATI: OK. 1694 01:15:02,120 --> 01:15:04,080 So. 1695 01:15:04,080 --> 01:15:08,370 Berikut adalah kami bersarang untuk gelung. 1696 01:15:08,370 --> 01:15:13,140 Kami dapat menghasilkan dalam gelung dalaman berapa banyak titik-titik yang saya mahu 1697 01:15:13,140 --> 01:15:15,320 untuk mencetak di awal, di akhir. 1698 01:15:15,320 --> 01:15:21,570 Dan gelung luar kawalan berapa banyak bingkai saya telah membina. 1699 01:15:21,570 --> 01:15:26,340 Kami bermula dengan si manja kernel masalah ini, 1700 01:15:26,340 --> 01:15:30,320 dan kami dibina daripada dari sudut itu. 1701 01:15:30,320 --> 01:15:30,820 Baiklah. 1702 01:15:30,820 --> 01:15:33,500 >> Mari kita buat satu lagi langkah. 1703 01:15:33,500 --> 01:15:35,040 Anda bersedia? 1704 01:15:35,040 --> 01:15:38,800 Ada satu perkara di sini di mana kami sebenarnya jenis mendapat 1705 01:15:38,800 --> 01:15:42,180 lebih kompleks daripada yang kita perlukan. 1706 01:15:42,180 --> 01:15:44,700 Mari kita lihat. 1707 01:15:44,700 --> 01:15:52,050 Jadi, dalam program bunny kami, jika saya zum di sini, 1708 01:15:52,050 --> 01:15:54,980 Saya benar-benar melakukan beberapa yang sama Perkara yang berulang-ulang kali. 1709 01:15:54,980 --> 01:15:59,032 Apa yang saya lakukan itu adalah semacam perkara yang sama berulang dua kali? 1710 01:15:59,032 --> 01:16:00,310 >> SPEAKER 32: Cetak titik-titik. 1711 01:16:00,310 --> 01:16:03,526 >> BRIAN SCASSELLATI: Ya Saya mencetak mereka titik dua kali. 1712 01:16:03,526 --> 01:16:05,710 Benar-benar, saya harus mempunyai komen ini di sini. 1713 01:16:05,710 --> 01:16:09,037 Saya mencetak beberapa titik di bermula, betul-betul di sini. 1714 01:16:09,037 --> 01:16:10,620 Dan kemudian saya mencetak beberapa titik pada akhir. 1715 01:16:10,620 --> 01:16:14,694 Dan saya jenis perkara yang sama. 1716 01:16:14,694 --> 01:16:17,110 Apa yang kita akan mula bekerja di dalam beberapa minggu akan datang 1717 01:16:17,110 --> 01:16:23,440 adalah dapat mengambil orang-orang blok kod yang kita gunakan berulang-ulang kali, 1718 01:16:23,440 --> 01:16:25,800 dan melalui proses yang dipanggil pengambilan, 1719 01:16:25,800 --> 01:16:31,100 kita akan menarik mereka keluar dan menulis mereka sekali supaya kita boleh kemudian 1720 01:16:31,100 --> 01:16:35,130 menggunakan semula mereka berulang-ulang kali. 1721 01:16:35,130 --> 01:16:37,210 Jadi mari kita cuba itu. 1722 01:16:37,210 --> 01:16:38,220 Bersedia? 1723 01:16:38,220 --> 01:16:42,200 >> Kami akan mengambil blok ini kod. 1724 01:16:42,200 --> 01:16:45,280 Dan saya akan mengambil ia keluar dari sana. 1725 01:16:45,280 --> 01:16:50,530 Dan saya akan define-- ke bawah di bahagian bawah, 1726 01:16:50,530 --> 01:16:53,130 Saya akan menulis fungsi baru. 1727 01:16:53,130 --> 01:16:54,750 Ia tidak akan kembali apa-apa. 1728 01:16:54,750 --> 01:16:58,550 Dan saya akan memanggilnya printDots. 1729 01:16:58,550 --> 01:17:01,530 >> Ia akan mengambil satu hujah, integer yang 1730 01:17:01,530 --> 01:17:04,920 kata howManyDots saya perlu mencetak. 1731 01:17:04,920 --> 01:17:09,310 1732 01:17:09,310 --> 01:17:17,720 Dan sekarang bukannya mencetak j titik, saya akan mencetak memberitahu howManyDots saya perlu mencetak. 1733 01:17:17,720 --> 01:17:21,581 >> Dan ada satu masalah kecil di sini. 1734 01:17:21,581 --> 01:17:22,580 Sesiapa tahu apa itu? 1735 01:17:22,580 --> 01:17:27,270 1736 01:17:27,270 --> 01:17:31,505 Apa yang perlu saya yang disenaraikan di sini yang tidak ditakrifkan? 1737 01:17:31,505 --> 01:17:34,165 1738 01:17:34,165 --> 01:17:35,090 >> PENONTON: [didengar] 1739 01:17:35,090 --> 01:17:37,465 >> BRIAN SCASSELLATI: Nah bagaimana banyak titik ditakrifkan sehingga 1740 01:17:37,465 --> 01:17:40,584 di sini, tetapi saya menggunakan pembolehubah i. 1741 01:17:40,584 --> 01:17:43,750 Jadi, saya akan mengambil pembolehubah yang i dan saya akan untuk menentukan ia turun di sini 1742 01:17:43,750 --> 01:17:44,610 sebaliknya. 1743 01:17:44,610 --> 01:17:49,683 >> Oleh sebab itu ia akan stay-- oops, tidak perlu lagi huruf besar pada somehow-- Saya 1744 01:17:49,683 --> 01:17:52,060 akan terus i turun di sini. 1745 01:17:52,060 --> 01:17:57,050 >> Oleh sebab itu di sini adalah fungsi kecil saya atau sub-rutin, dan ia berkata, 1746 01:17:57,050 --> 01:18:00,640 berapa banyak titik-titik yang saya akan mencetak? 1747 01:18:00,640 --> 01:18:05,300 Dan ia akan pergi melalui gelung ini dan mencetak mereka berulang-ulang kali. 1748 01:18:05,300 --> 01:18:10,940 >> Saya kemudian boleh mengubah suai program saya di sini. 1749 01:18:10,940 --> 01:18:12,540 Dan apa yang saya panggil fungsi itu? 1750 01:18:12,540 --> 01:18:13,960 printDots. 1751 01:18:13,960 --> 01:18:17,060 Jadi saya akan memanggil printDots. 1752 01:18:17,060 --> 01:18:21,530 Berapa banyak titik-titik yang saya mahu untuk mencetak kali pertama sebelum arnab? 1753 01:18:21,530 --> 01:18:22,030 PENONTON: j. 1754 01:18:22,030 --> 01:18:23,230 BRIAN SCASSELLATI: j. 1755 01:18:23,230 --> 01:18:27,110 Berapa banyak titik-titik yang saya mahu untuk mencetak pada akhirnya, selepas arnab? 1756 01:18:27,110 --> 01:18:30,610 1757 01:18:30,610 --> 01:18:31,110 10-j. 1758 01:18:31,110 --> 01:18:35,020 1759 01:18:35,020 --> 01:18:38,010 >> Dan ada satu perkara yang saya hilang. 1760 01:18:38,010 --> 01:18:43,740 Seperti yang anda lihat dalam kuliah hari ini, kita akan mengisytiharkan printDots 1761 01:18:43,740 --> 01:18:52,430 sehingga atas untuk memberi prototaip. 1762 01:18:52,430 --> 01:18:56,740 1763 01:18:56,740 --> 01:18:58,220 OKAY. 1764 01:18:58,220 --> 01:19:03,530 >> Jadi apa yang saya lakukan adalah saya telah cuba untuk mengasingkan bahagian semula kod 1765 01:19:03,530 --> 01:19:06,430 bahawa saya telah melakukan berulang-ulang kali. 1766 01:19:06,430 --> 01:19:11,120 Dan saya telah cuba untuk menariknya keluar supaya semua itu terkandung dalam satu tempat. 1767 01:19:11,120 --> 01:19:16,810 Dengan cara itu, jika saya mempunyai kesilapan di suatu tempat, Saya hanya perlu menetapkan dalam satu tempat. 1768 01:19:16,810 --> 01:19:17,310 Baiklah. 1769 01:19:17,310 --> 01:19:18,470 >> Jadi mari kita menyimpannya. 1770 01:19:18,470 --> 01:19:20,950 Dan mari kita pastikan ia berfungsi. 1771 01:19:20,950 --> 01:19:22,050 Oleh itu, marilah kita pergi. 1772 01:19:22,050 --> 01:19:25,200 Kami akan pergi lagi ke terminal kami. 1773 01:19:25,200 --> 01:19:27,960 Kami akan zum masuk. 1774 01:19:27,960 --> 01:19:31,010 Kami akan membuat proses bunny. 1775 01:19:31,010 --> 01:19:32,380 >> Oh. 1776 01:19:32,380 --> 01:19:34,800 Dan ia memberikan saya amaran. 1777 01:19:34,800 --> 01:19:37,070 Apa yang ia memberitahu saya? 1778 01:19:37,070 --> 01:19:39,870 Baik dalam mana-mana kali, anda sentiasa mahu 1779 01:19:39,870 --> 01:19:44,170 untuk tatal ke atas untuk error-- yang pertama sekarang pada satu ini, saya hanya mendapat satu. 1780 01:19:44,170 --> 01:19:52,700 >> Ia memberitahu saya dalam bunny.c, pada baris 8, kolum 9, ada masalah. 1781 01:19:52,700 --> 01:19:58,650 Ia berkata, anda telah diisytiharkan ini pembolehubah i dan anda tidak menggunakannya. 1782 01:19:58,650 --> 01:20:02,230 >> Sekarang biasanya, itu bukan kesilapan yang paling teruk. 1783 01:20:02,230 --> 01:20:04,300 Itulah sesuatu yang mudah untuk menetapkan. 1784 01:20:04,300 --> 01:20:07,550 Dan sebenarnya, kita boleh kembali masuk. 1785 01:20:07,550 --> 01:20:09,910 Kami boleh kembali ke bunny. 1786 01:20:09,910 --> 01:20:13,010 Dan dalam kes ini, apa yang kita hanya perlu menghilangkan i, 1787 01:20:13,010 --> 01:20:16,630 kerana kita tidak menggunakan i dalam utama lagi. 1788 01:20:16,630 --> 01:20:19,860 Kami hanya menggunakannya dalam sub-rutin kami. 1789 01:20:19,860 --> 01:20:22,777 >> Jadi mari kita simpan itu. 1790 01:20:22,777 --> 01:20:23,360 Kami akan kembali. 1791 01:20:23,360 --> 01:20:26,760 1792 01:20:26,760 --> 01:20:28,630 Dan zum masuk. 1793 01:20:28,630 --> 01:20:30,700 Kami akan sekali lagi membuat bunny. 1794 01:20:30,700 --> 01:20:33,810 1795 01:20:33,810 --> 01:20:36,530 Dan ada lagi 10 kerangka kami. 1796 01:20:36,530 --> 01:20:39,450 1797 01:20:39,450 --> 01:20:41,360 OKAY. 1798 01:20:41,360 --> 01:20:43,190 >> Bila-bila masa anda diberi yang procedure-- Yeah. 1799 01:20:43,190 --> 01:20:44,690 SPEAKER 33: Saya a-- saya keliru. 1800 01:20:44,690 --> 01:20:45,892 Bolehkah anda kembali kepada kod? 1801 01:20:45,892 --> 01:20:46,850 BRIAN SCASSELLATI: Ya. 1802 01:20:46,850 --> 01:20:50,730 1803 01:20:50,730 --> 01:20:54,367 >> SPEAKER 33: Jadi, apabila anda menulis prototaip anda, hujah anda 1804 01:20:54,367 --> 01:20:56,550 kalaulah bernama dipanggil howMany? 1805 01:20:56,550 --> 01:20:57,540 Tetapi, below-- 1806 01:20:57,540 --> 01:20:57,640 >> BRIAN SCASSELLATI: Oh yeah. 1807 01:20:57,640 --> 01:20:59,140 >> SPEAKER 33: --called mereka sesuatu berbeza, saya tidak faham. 1808 01:20:59,140 --> 01:21:00,240 >> BRIAN SCASSELLATI: Mengapa mereka berbeza. 1809 01:21:00,240 --> 01:21:01,780 Jadi, itu satu soalan yang besar. 1810 01:21:01,780 --> 01:21:08,250 Jadi persoalannya adalah, sehingga di sini, saya telah menulis howMany, 1811 01:21:08,250 --> 01:21:12,380 dan ke bawah di bawah, saya telah menulis howManyDots. 1812 01:21:12,380 --> 01:21:15,590 >> Ini kerana dalam prototaip anda, ia sebenarnya tidak memberi perhatian 1813 01:21:15,590 --> 01:21:17,090 kepada nama-nama yang anda meletakkan dalam. 1814 01:21:17,090 --> 01:21:20,530 Apa yang benar-benar mengambil berat tentang adalah bahawa ia adalah bilangan bulat. 1815 01:21:20,530 --> 01:21:23,080 Ia mahu tahu borang daripada apa yang anda meletakkan dalam. 1816 01:21:23,080 --> 01:21:31,560 >> Sekarang stylistically-- oops-- apa yang saya perlu lakukan, ini yang saya suka membuat perlawanan ini. 1817 01:21:31,560 --> 01:21:33,150 OKAY. 1818 01:21:33,150 --> 01:21:36,430 Kerana yang akan memastikan ia lebih mudah bagi saya untuk diingati. 1819 01:21:36,430 --> 01:21:38,390 Tetapi itu adalah kesilapan saya Yeah. 1820 01:21:38,390 --> 01:21:47,620 >> SPEAKER 34: Dan demikian bagi prototaip untuk bekerja, hanya 1821 01:21:47,620 --> 01:21:50,510 menulis talian itu, menulis prototaip, 1822 01:21:50,510 --> 01:21:53,932 membolehkan fungsi yang datang tepat di bawah untuk pergi ke akhirnya 1823 01:21:53,932 --> 01:21:55,140 dan mendapatkan semula apa yang bermakna? 1824 01:21:55,140 --> 01:21:58,480 >> BRIAN SCASSELLATI: Apa yang dimaksudkan adalah apabila pengkompil akan melalui, 1825 01:21:58,480 --> 01:22:01,930 ia pergi dari bahagian atas kod anda ke bawah. 1826 01:22:01,930 --> 01:22:05,430 Dan apa prototaip ini adalah, adalah ia pada dasarnya janji. 1827 01:22:05,430 --> 01:22:09,570 >> Ia berkata, ada akan menjadi fungsi yang ditetapkan di suatu tempat. 1828 01:22:09,570 --> 01:22:11,880 Ia akan menjadi dipanggil printDots. 1829 01:22:11,880 --> 01:22:15,110 Dan ia akan mengambil satu hujah yang akan menjadi integer 1830 01:22:15,110 --> 01:22:18,590 dan ia akan kembali apa-apa, jenis tidak sah. 1831 01:22:18,590 --> 01:22:19,310 OKAY. 1832 01:22:19,310 --> 01:22:22,950 Saya berjanji kepada anda ia akan menjadi ditakrifkan di suatu tempat di jalan. 1833 01:22:22,950 --> 01:22:25,590 Tetapi bila-bila masa yang anda lihat itu, seperti yang anda turun 1834 01:22:25,590 --> 01:22:28,710 mengalir di dalam saya Fungsi utama, saya mahu 1835 01:22:28,710 --> 01:22:33,800 anda untuk merawat bahawa sebagai fungsi yang mengambil masa satu input integer. 1836 01:22:33,800 --> 01:22:37,970 >> Dan setelah pengkompil terbenam melalui ini, ia melihat janji itu. 1837 01:22:37,970 --> 01:22:40,220 Dan apabila ia mendapat turun, menyimpan pergi, terus pergi, 1838 01:22:40,220 --> 01:22:43,060 ia mendapati kali pertama printDots disebutkan. 1839 01:22:43,060 --> 01:22:46,910 Dan ia berkata, Oh, anda memberikan saya j ini. j adalah integer. 1840 01:22:46,910 --> 01:22:49,570 >> Baik anda berjanji saya yang akan integer dan itu betul. 1841 01:22:49,570 --> 01:22:51,370 Tak apa. 1842 01:22:51,370 --> 01:22:53,880 Dan kemudian akhirnya, turun di bahagian paling bawah, 1843 01:22:53,880 --> 01:22:58,340 sebelum saya sampai ke akhir saya fail, saya membuat baik pada janji saya 1844 01:22:58,340 --> 01:22:59,896 dan saya menentukan ia. 1845 01:22:59,896 --> 01:23:01,868 OKAY? 1846 01:23:01,868 --> 01:23:06,320 >> SPEAKER 35: Jadi, ia saves-- yang program akan menjimatkan ruang kosong 1847 01:23:06,320 --> 01:23:09,570 bahawa ia kembali dan mengisi pada akhir? 1848 01:23:09,570 --> 01:23:12,140 >> BRIAN SCASSELLATI: Ia bukan mengenai peruntukan memori. 1849 01:23:12,140 --> 01:23:16,800 Ini sebenarnya hanya kira-kira apa jenis yang anda menjangka untuk melihat. 1850 01:23:16,800 --> 01:23:19,340 Sekiranya perkara ini mempunyai satu hujah, atau lima hujah? 1851 01:23:19,340 --> 01:23:23,590 Harus mempunyai bilangan bulat menjadi diberikan kepadanya, atau tali? 1852 01:23:23,590 --> 01:23:25,780 Itu sahaja yang ia melihat lakukan adalah untuk memeriksa, 1853 01:23:25,780 --> 01:23:29,303 yang anda memberi saya jenis kanan hujah. 1854 01:23:29,303 --> 01:23:31,560 OKAY? 1855 01:23:31,560 --> 01:23:32,300 Baiklah. 1856 01:23:32,300 --> 01:23:38,570 >> Biar saya meninggalkan anda dengan satu bit yang lain untuk melihat. 1857 01:23:38,570 --> 01:23:44,850 Seni ASCII tidak model yang besar animasi seperti hari ini. 1858 01:23:44,850 --> 01:23:50,850 Tetapi sesetengah orang sudah tentu mengambil perkara-perkara dan mereka menolak ke keterlaluan mereka. 1859 01:23:50,850 --> 01:23:56,790 >> Ini adalah sama seperti Daud, menunjukkan dalam kuliah, sekeping kod 1860 01:23:56,790 --> 01:24:02,150 bahawa anda perlu dalam apa jua keadaan cuba untuk membuat salinan diri kamu sendiri. 1861 01:24:02,150 --> 01:24:05,260 Oleh kerana ia adalah sesuatu yang buruk segi gaya. 1862 01:24:05,260 --> 01:24:11,180 Malah, ia direka untuk menjadi sukar yang mungkin untuk membaca. 1863 01:24:11,180 --> 01:24:11,680 OKAY. 1864 01:24:11,680 --> 01:24:16,210 >> Jadi, untuk melakukan sekali lagi, mari kita zum di sini. 1865 01:24:16,210 --> 01:24:20,120 Saya akan pergi sekarang, direktori perubahan. 1866 01:24:20,120 --> 01:24:24,050 Saya akan naik satu tahap, kembali ke ruang kerja saya. 1867 01:24:24,050 --> 01:24:29,760 Saya kemudian akan menukar direktori ke dalam ini direktori lain yang saya telah buat. 1868 01:24:29,760 --> 01:24:36,190 >> Dan ini adalah Antarabangsa Dikelirukan C Programming Contest. 1869 01:24:36,190 --> 01:24:40,650 Cara dikelirukan keras yang mungkin difahami. 1870 01:24:40,650 --> 01:24:44,150 Oleh itu, sila, jangan takut jika anda melihat penggunaan pada ini dan pergi, saya tidak dapat membaca bahawa. 1871 01:24:44,150 --> 01:24:46,350 Itulah gunanya ia. 1872 01:24:46,350 --> 01:24:47,700 OKAY? 1873 01:24:47,700 --> 01:24:52,770 >> Tetapi, kita mempunyai ini program yang indah yang saya 1874 01:24:52,770 --> 01:24:57,180 akan melihat dengan hanya menaip lagi. 1875 01:24:57,180 --> 01:25:01,890 Dan mari kita lihat jika saya boleh zum keluar hanya sedikit, jadi anda boleh melihatnya 1876 01:25:01,890 --> 01:25:03,940 >> Dan ini adalah program ini. 1877 01:25:03,940 --> 01:25:08,080 Ia dinamakan endo.c. 1878 01:25:08,080 --> 01:25:14,850 Dan ia kelihatan seperti baldi ini dengan jenis huruf F-L-U-I-D di dalamnya. 1879 01:25:14,850 --> 01:25:16,440 >> Ini sebenarnya program. 1880 01:25:16,440 --> 01:25:20,260 Ia ditulis dalam yang paling kabur cara bahawa penulis mungkin boleh 1881 01:25:20,260 --> 01:25:21,760 menulisnya. 1882 01:25:21,760 --> 01:25:29,210 Tetapi ia adalah sebahagian kecil indah yang menjana model dinamik bendalir. 1883 01:25:29,210 --> 01:25:34,870 >> Dan dengan itu kita akan memberi bahawa model input yang 1884 01:25:34,870 --> 01:25:42,520 kelihatan seperti ini, satu staired set bekas 1885 01:25:42,520 --> 01:25:45,820 dengan cecair tertentu, beberapa cecair, sehingga di bahagian atas. 1886 01:25:45,820 --> 01:25:48,790 Dan kita akan mempunyai ia mensimulasikan apa yang berlaku kepadanya. 1887 01:25:48,790 --> 01:25:52,415 >> Jadi saya akan memanggil fungsi itu, endo. 1888 01:25:52,415 --> 01:25:59,000 Dan saya akan memberikan yang fail input yang saya telah. 1889 01:25:59,000 --> 01:26:02,830 Dan ada lambang kami seni ASCII. 1890 01:26:02,830 --> 01:26:08,960 A simulator dinamik cecair penuh berjalan dalam hanya beberapa baris kod. 1891 01:26:08,960 --> 01:26:13,750 >> Sekarang apa yang sebenarnya benar-benar menakjubkan tentang program kecil ini 1892 01:26:13,750 --> 01:26:17,280 ialah saya mahu berhenti sekarang, jadi saya akan menggunakan apa arahan? 1893 01:26:17,280 --> 01:26:18,660 >> PENONTON: Control-C. 1894 01:26:18,660 --> 01:26:20,390 >> BRIAN SCASSELLATI: Control-C. OKAY. 1895 01:26:20,390 --> 01:26:22,960 Jadi saya akan menggunakan Kawalan-C. C Yang akan menghentikannya. 1896 01:26:22,960 --> 01:26:25,330 Saya akan membersihkan lagi. 1897 01:26:25,330 --> 01:26:31,210 Dan sekarang saya akan ingat kepada program, melaksanakan program ini, 1898 01:26:31,210 --> 01:26:33,740 menggunakan dirinya sebagai input. 1899 01:26:33,740 --> 01:26:36,760 1900 01:26:36,760 --> 01:26:42,700 >> Dan kita akan melihat dinamik bendalir simulasi ia mencair. 1901 01:26:42,700 --> 01:26:43,830 OKAY. 1902 01:26:43,830 --> 01:26:48,180 Sila jangan biarkan program yang menjadi perkara yang mengelirukan anda. 1903 01:26:48,180 --> 01:26:52,220 Ia hanya supaya kita boleh berakhir pada sesuatu yang sejuk dan menarik. 1904 01:26:52,220 --> 01:26:53,930 OKAY. 1905 01:26:53,930 --> 01:26:56,330 >> Selamat mencuba dengan set masalah anda. 1906 01:26:56,330 --> 01:26:59,030 Kami akan gembira untuk menjawab soalan selepas kelas. 1907 01:26:59,030 --> 01:27:01,180 Terima kasih banyak, guys. 1908 01:27:01,180 --> 01:27:02,793