1 00:00:07,275 --> 00:00:08,980 [Powered by Google Translate] Lexi ROSS: Baiklah, hi, semua orang. 2 00:00:08,980 --> 00:00:11,930 Welcome to 1 supersection CS50. 3 00:00:11,930 --> 00:00:13,800 Ini akan menjadi minggu hanya supersections. 4 00:00:13,800 --> 00:00:17,130 Selepas ini, anda akan pergi ke bahagian biasa dengan anda 5 00:00:17,130 --> 00:00:18,530 diberikan TF. 6 00:00:18,530 --> 00:00:20,280 Tetapi minggu ini, kita lakukan dalam sedikit yang berbeza 7 00:00:20,280 --> 00:00:23,530 format, walaupun format sebenar, bagaimana ia akan pergi 8 00:00:23,530 --> 00:00:25,950 untuk jam berikutnya dan setengah atau lebih, akan menjadi cantik 9 00:00:25,950 --> 00:00:27,700 serupa dengan apa yang anda akan untuk melihat 10 00:00:27,700 --> 00:00:29,350 seluruh semester. 11 00:00:29,350 --> 00:00:33,630 >> Jadi apa yang kita akan lakukan adalah mulakan dengan pergi ke atas 12 00:00:33,630 --> 00:00:35,920 bahagian seksyen set masalah anda. 13 00:00:35,920 --> 00:00:38,940 Jadi jika anda telah membaca lebih set p, yang diharapkan anda mempunyai, 14 00:00:38,940 --> 00:00:41,120 anda akan melihat bahawa terdapat satu bahagian yang dipanggil "A Seksyen 15 00:00:41,120 --> 00:00:43,190 Soalan ", dan ini adalah bertujuan untuk akan hilang 16 00:00:43,190 --> 00:00:44,180 lebih dalam seksyen anda. 17 00:00:44,180 --> 00:00:47,510 Jadi, anda mempunyai kelebihan dengan berada di sini dalam yang anda dapat 18 00:00:47,510 --> 00:00:50,680 pergi ke atas soalan-soalan yang lebih berasaskan konsep. 19 00:00:50,680 --> 00:00:52,780 Dan selepas kita berbuat demikian, kita akan pergi lebih dua lepas 20 00:00:52,780 --> 00:00:55,070 soalan, seksyen yang lebih banyak menyelam 21 00:00:55,070 --> 00:00:56,330 ke soalan jenis pengekodan. 22 00:00:56,330 --> 00:00:58,470 Jadi, kita sebenarnya akan mempunyai anda semua mengambil beberapa 23 00:00:58,470 --> 00:01:01,040 minit bagi setiap soalan, cuba untuk menyelesaikannya sendiri, dan 24 00:01:01,040 --> 00:01:03,590 maka kita akan datang bersama-sama menggunakan CS50 baru 25 00:01:03,590 --> 00:01:06,670 Ruangan alat dan pergi ke atas jawapan supaya anda semua mempunyai 26 00:01:06,670 --> 00:01:09,130 kod yang betul untuk menyemak. 27 00:01:09,130 --> 00:01:10,790 >> Jadi beberapa pengumuman. 28 00:01:10,790 --> 00:01:12,690 Jangan lupa bahawa ada waktu pejabat setiap malam ini 29 00:01:12,690 --> 00:01:16,500 seminggu di Annenberg 8-11, jadi jangan ambil 30 00:01:16,500 --> 00:01:17,410 kesempatan daripada mereka. 31 00:01:17,410 --> 00:01:21,660 Dan juga, jangan memulakan p menetapkan terlambat ke minggu. 32 00:01:21,660 --> 00:01:24,640 Mula malam ini atau malam esok selewat-lewatnya. 33 00:01:24,640 --> 00:01:26,770 Anda akan menyesal jika anda menunggu terlalu lama untuk memulakan 34 00:01:26,770 --> 00:01:27,970 dan berlari ke dalam isu-isu. 35 00:01:27,970 --> 00:01:31,160 Jadi mengambil nasihat kami dan pastinya bermula awal. 36 00:01:31,160 --> 00:01:32,860 Ini akan menjadi satu cara yang baik untuk bermula dengan 37 00:01:32,860 --> 00:01:34,450 ini soalan seksyen. 38 00:01:34,450 --> 00:01:35,810 Jadi saya Lexi, dengan cara itu. 39 00:01:35,810 --> 00:01:36,740 Saya TF. 40 00:01:36,740 --> 00:01:38,455 Dan ini adalah Dan, yang juga TF. 41 00:01:38,455 --> 00:01:38,940 DAN Bradley: Hey, guys. 42 00:01:38,940 --> 00:01:39,770 Lexi ROSS: Dan dia akan mendapat 43 00:01:39,770 --> 00:01:41,370 bermula dengan soalan. 44 00:01:41,370 --> 00:01:42,410 >> DAN Bradley: Baiklah. 45 00:01:42,410 --> 00:01:46,730 Jadi saya akan hanya memperkenalkan pengkompil sedikit Pasangan 46 00:01:46,730 --> 00:01:50,350 isu-isu yang kita pergi untuk bercakap tentang dan hanya pergi melalui 47 00:01:50,350 --> 00:01:54,550 beberapa jenis idea-idea konseptual yang perlu kita sebenarnya menjalankan 48 00:01:54,550 --> 00:01:59,120 kod, sama ada di dalam perkakas atau dengan jenis kami palsu 49 00:01:59,120 --> 00:02:01,520 peralatan, Main CS50 dan kawasan. 50 00:02:01,520 --> 00:02:05,550 Jadi mari kita hanya melihat jika sesiapa di khalayak mempunyai apa-apa idea 51 00:02:05,550 --> 00:02:07,450 tentang apa yang kita berbicara tentang. 52 00:02:07,450 --> 00:02:11,130 >> Jadi apa yang adalah sebuah perpustakaan dalam konteks kod? 53 00:02:11,130 --> 00:02:13,680 Sesiapa yang mempunyai apa-apa idea? 54 00:02:13,680 --> 00:02:14,250 Okay. 55 00:02:14,250 --> 00:02:15,770 Manis. 56 00:02:15,770 --> 00:02:17,876 PENONTON: Seperti saham fungsi bahawa orang lain 57 00:02:17,876 --> 00:02:19,690 telah diprogramkan bahawa kita boleh membina? 58 00:02:19,690 --> 00:02:20,230 DAN Bradley: Tepat sekali. 59 00:02:20,230 --> 00:02:24,180 Jadi perpustakaan adalah saham fungsi bahawa orang lain 60 00:02:24,180 --> 00:02:27,100 telah diprogramkan bahawa kita tidak perlu 61 00:02:27,100 --> 00:02:28,480 semula melaksanakan diri kita sendiri. 62 00:02:28,480 --> 00:02:32,140 Jadi kita mempunyai perkara-perkara seperti standard pustaka I / O, 63 00:02:32,140 --> 00:02:38,720 cs50.h perpustakaan, yang beberapa perkara bahawa dunia, 64 00:02:38,720 --> 00:02:41,870 Internet, kakitangan telah dibuat yang menjadikan kita 65 00:02:41,870 --> 00:02:43,670 hidup mudah kerana coders. 66 00:02:43,670 --> 00:02:46,410 Jadi bagaimana anda mencetak perkara untuk skrin? 67 00:02:46,410 --> 00:02:49,910 Saya tidak mempunyai idea, printf adakah ia bagi saya. 68 00:02:49,910 --> 00:02:52,290 Ia adalah sesuatu yang orang lain telah dibuat bahawa adalah 69 00:02:52,290 --> 00:02:54,640 hebat dan kerja-kerja yang agak baik. 70 00:02:54,640 --> 00:02:55,440 >> Okay. 71 00:02:55,440 --> 00:02:59,160 Jadi untuk menggunakan perpustakaan, di sisi lain, bagaimanapun, anda mempunyai 72 00:02:59,160 --> 00:03:02,450 untuk benar-benar melakukan beberapa perkara tambahan dengan kod anda. 73 00:03:02,450 --> 00:03:07,400 Jadi, anda perlu menggunakan perkara-perkara seperti ini # include. 74 00:03:07,400 --> 00:03:09,190 Apakah yang melakukan? 75 00:03:09,190 --> 00:03:13,010 Apakah peranan yang dimainkan bahawa apabila anda mempunyai dalam program? 76 00:03:13,010 --> 00:03:15,128 PENONTON: Ia membolehkan anda membuat penggunaan mana-mana fungsi yang 77 00:03:15,128 --> 00:03:16,040 [Didengar] 78 00:03:16,040 --> 00:03:19,515 perpustakaan dengan hanya menggunakan definisi yang sudah mempunyai 79 00:03:19,515 --> 00:03:20,425 [Didengar] 80 00:03:20,425 --> 00:03:20,880 perpustakaan. 81 00:03:20,880 --> 00:03:21,680 DAN Bradley: Okay. 82 00:03:21,680 --> 00:03:25,930 Ia membolehkan anda tarik fungsi perpustakaan kepada kod anda, tetapi 83 00:03:25,930 --> 00:03:29,320 ia tidak dalam cara yang tidak betul-betul sama seperti seperti 84 00:03:29,320 --> 00:03:32,020 -Lcs50, yang kita akan mendapat dalam satu minit. 85 00:03:32,020 --> 00:03:36,010 Ia hanya membolehkan pengkompil tahu bahawa hey, terdapat- 86 00:03:36,010 --> 00:03:40,550 fungsi yang akan tampil dalam kod anda. 87 00:03:40,550 --> 00:03:44,240 Berhati-hati bahawa jika mereka tidak sepenuhnya diterangkan dalam kod 88 00:03:44,240 --> 00:03:47,110 yang di hadapan anda, ada beberapa fungsi perpustakaan 89 00:03:47,110 --> 00:03:49,510 yang akan menjaga ia. 90 00:03:49,510 --> 00:03:53,010 >> Jadi dalam kes printf, yang kita akan pergi ke beberapa 91 00:03:53,010 --> 00:03:56,400 masa hari ini, adalah standard pustaka I / O. 92 00:03:56,400 --> 00:04:00,010 Jadi, semasa saya tidak menentukan printf mana-mana sahaja dalam kod saya pernah, 93 00:04:00,010 --> 00:04:05,340 standard I / O menjaga ia untuk saya, dan saya akan melakukan # include 94 00:04:05,340 --> 00:04:13,780 stdio.h, dan ia akan menarik dalam fungsi-fungsi ini bahawa saya 95 00:04:13,780 --> 00:04:15,400 tidak pernah ditakrifkan. 96 00:04:15,400 --> 00:04:20,019 Jadi, apakah perbezaan, maka, antara ini # include 97 00:04:20,019 --> 00:04:22,320 dan lcs50? 98 00:04:22,320 --> 00:04:25,890 Apakah lcs50 lakukan apabila saya lulus ia ke 99 00:04:25,890 --> 00:04:29,430 pengkompil, seperti dilafaz? 100 00:04:29,430 --> 00:04:32,670 Sesiapa yang mempunyai apa-apa idea? 101 00:04:32,670 --> 00:04:34,631 Okay. 102 00:04:34,631 --> 00:04:35,605 Yeah? 103 00:04:35,605 --> 00:04:39,020 PENONTON: Ia membolehkan anda mengakses perpustakaan CS50? 104 00:04:39,020 --> 00:04:42,120 DAN Bradley: Ia membolehkan anda mengakses perpustakaan CS50 dalam 105 00:04:42,120 --> 00:04:46,610 bahawa ia memberitahu pengkompil, dilafaz, bahawa hey, ini adalah di mana 106 00:04:46,610 --> 00:04:50,930 anda sebenarnya pergi untuk mendapatkan fungsi-fungsi ini. 107 00:04:50,930 --> 00:04:55,010 Jadi # include mengatakan terdapat 108 00:04:55,010 --> 00:04:58,510 fungsi-fungsi tempat. 109 00:04:58,510 --> 00:05:02,680 Lcs50-kata, pergi ke tempat ini dalam komputer anda - 110 00:05:02,680 --> 00:05:05,770 itulah perpustakaan cs50 - 111 00:05:05,770 --> 00:05:09,990 dan tarik sehingga kod sebenar untuk fungsi-fungsi ini. 112 00:05:13,110 --> 00:05:14,370 Adakah yang masuk akal, semua orang? 113 00:05:14,370 --> 00:05:17,930 >> Jadi semua ini adalah perkara-perkara yang untuk membantu pengkompil anda 114 00:05:17,930 --> 00:05:22,490 bersama-sama dengan membuat kod sebenarnya dikendalikan. 115 00:05:22,490 --> 00:05:23,350 Soalan cepat. 116 00:05:23,350 --> 00:05:24,870 Adakah orang tahu apa pengkompil? 117 00:05:28,220 --> 00:05:29,700 Good sense? 118 00:05:29,700 --> 00:05:33,160 Ia pada asasnya mengambil kod bertulis bahawa anda mempunyai, 119 00:05:33,160 --> 00:05:35,380 ditukarkan kepada perduaan, menukar kepada kod mesin, 120 00:05:35,380 --> 00:05:39,370 jadi komputer anda sebenarnya boleh memahaminya. 121 00:05:39,370 --> 00:05:43,330 Dan tanpa berlengah-lengah lagi, kita akan pergi ke lebih 122 00:05:43,330 --> 00:05:46,640 sebenar pengekodan senaman yang anda semua akan mempunyai beberapa menyeronokkan 123 00:05:46,640 --> 00:05:49,850 tenggelam gigi anda ke dalam, dan Lexi akan pergi ke bahawa. 124 00:05:49,850 --> 00:05:51,110 >> Lexi ROSS: Okay. 125 00:05:51,110 --> 00:05:51,455 Menggerunkan. 126 00:05:51,455 --> 00:05:55,470 Jadi kita akan pergi lebih dua soalan di sini. 127 00:05:55,470 --> 00:06:01,170 Jadi yang pertama sebenarnya, anda boleh lihat, ia adalah sedikit 128 00:06:01,170 --> 00:06:03,240 kecil di sini, tetapi pada dasarnya ia meminta anda untuk 129 00:06:03,240 --> 00:06:04,930 menulis program untuk mengambil beberapa input pengguna. 130 00:06:04,930 --> 00:06:09,058 Saya tidak pasti mengapa ada persegi hitam di sana. 131 00:06:09,058 --> 00:06:10,000 Ia adalah misteri. 132 00:06:10,000 --> 00:06:12,180 Ia harus denda, walaupun. 133 00:06:12,180 --> 00:06:16,000 Jadi ia mahu anda untuk mengambil input pengguna dalam Celsius, menukar bahawa 134 00:06:16,000 --> 00:06:18,270 Fahrenheit, dan kemudian memberitahu pengguna apa suhu 135 00:06:18,270 --> 00:06:19,720 akan pada Fahrenheit. 136 00:06:19,720 --> 00:06:25,530 Jadi anda boleh melihat sampel urutan input / output di sini. 137 00:06:25,530 --> 00:06:28,770 Input pengguna - selepas Celsius, berani merujuk kepada 138 00:06:28,770 --> 00:06:29,300 input pengguna. 139 00:06:29,300 --> 00:06:32,460 Jadi pengguna input 100, dan output program 140 00:06:32,460 --> 00:06:34,530 Fahrenheit, 212,0. 141 00:06:34,530 --> 00:06:36,700 Dan perbezaan yang penting dalam program ini adalah bahawa kita 142 00:06:36,700 --> 00:06:41,770 akan hanya mempunyai satu tempat perpuluhan, jadi kita akan melihat bagaimana untuk melakukannya 143 00:06:41,770 --> 00:06:43,020 itu juga. 144 00:06:43,020 --> 00:06:45,780 Dan jadi satu lagi perkara yang perlu diambil perhatian adalah bahawa kita sedang menggunakan a.out 145 00:06:45,780 --> 00:06:49,960 kerana dilafaz, pengkompil, secara automatik nama binari 146 00:06:49,960 --> 00:06:53,460 fail a.out melainkan anda nyatakan dengan bendera tertentu untuk memberi 147 00:06:53,460 --> 00:06:55,410 namanya sendiri, tetapi buat masa sekarang kami hanya akan menggunakan 148 00:06:55,410 --> 00:06:57,070 lalai, a.out. 149 00:06:57,070 --> 00:07:01,320 >> Jadi mari kita sebenarnya mengambil beberapa minit dan cuba untuk menulis 150 00:07:01,320 --> 00:07:02,570 beberapa kod untuk dirimu ini. 151 00:07:05,900 --> 00:07:07,380 Jadi ia adalah 4:15. 152 00:07:07,380 --> 00:07:10,470 Jadi pada 4:20, kita akan kembali dan - oh, betul. 153 00:07:10,470 --> 00:07:12,960 Ruang. 154 00:07:12,960 --> 00:07:13,980 Sejuk. 155 00:07:13,980 --> 00:07:16,500 Ini adalah jenis seperti apa yang kita panggil kod rangka dalam itu 156 00:07:16,500 --> 00:07:19,870 ia adalah rangka, tetapi anda perlu mengisi dalam daging 157 00:07:19,870 --> 00:07:21,590 program untuk benar-benar membuat ia berlari. 158 00:07:21,590 --> 00:07:25,980 Jadi anda boleh melihat # termasuk arahan di sana untuk memasukkan 159 00:07:25,980 --> 00:07:28,040 cs50 dan stdio. 160 00:07:28,040 --> 00:07:32,010 Saya nyatakan dalam komen formula sebenar untuk menukarkan 161 00:07:32,010 --> 00:07:35,310 Celsius Fahrenheit, dalam kes anda tidak ingat dari tinggi 162 00:07:35,310 --> 00:07:36,740 sekolah sains atau barang kecil. 163 00:07:36,740 --> 00:07:38,450 Dan maka ini adalah hanya rangka untuk 164 00:07:38,450 --> 00:07:39,450 Fungsi utama sebenar. 165 00:07:39,450 --> 00:07:41,680 Jadi, segala-galanya yang anda tulis akan pergi di sini. 166 00:07:45,640 --> 00:07:50,490 Dan untuk benar-benar sampai ke ruang ini - 167 00:07:50,490 --> 00:07:56,105 jadi CS50 kawasan boleh diakses menggunakan URL ini, yang Dan adalah 168 00:07:56,105 --> 00:08:02,505 akan menulis di papan, dan saya akan menentukan serta. 169 00:08:02,505 --> 00:08:12,093 DAN Bradley: cs50.net/spaces-- 170 00:08:12,093 --> 00:08:12,580 Lexi ROSS: / qWLc - 171 00:08:12,580 --> 00:08:13,830 Saya minta maaf, y. 172 00:08:18,806 --> 00:08:20,790 DAN Bradley: Y? 173 00:08:20,790 --> 00:08:21,290 Lexi ROSS: Tidak, tidak, tidak, tidak. 174 00:08:21,290 --> 00:08:22,540 Itu denda. 175 00:08:26,088 --> 00:08:27,338 qYLcYWfg. 176 00:08:38,590 --> 00:08:41,150 Jadi saya perlu melihat jenis nama semua orang muncul di sini. 177 00:08:41,150 --> 00:08:41,350 >> Menggerunkan. 178 00:08:41,350 --> 00:08:42,209 Ini kelihatan hebat. 179 00:08:42,209 --> 00:08:44,700 Ini bermakna orang yang menyertai ruang. 180 00:08:44,700 --> 00:08:46,130 Jadi jika anda telah tidak mendapat peluang untuk bermain-main dalam 181 00:08:46,130 --> 00:08:47,990 Ruangan lagi, ini sebenarnya adalah apa yang anda akan menggunakan 182 00:08:47,990 --> 00:08:50,750 dengan TFS anda dalam seksyen semester semua. 183 00:08:50,750 --> 00:08:52,810 Bagaimana ia berfungsi jenis semua orang menulis mereka sendiri 184 00:08:52,810 --> 00:08:56,510 kod, dan tiada siapa yang boleh melihat ia sehingga anda menekan Simpan 185 00:08:56,510 --> 00:08:59,284 butang, yang saya menunjuk ke kanan sekarang. 186 00:08:59,284 --> 00:09:03,140 Jadi saya akan tekan Simpan, dan jika anda semua pergi ke nama saya, 187 00:09:03,140 --> 00:09:06,670 yang anda akan dapat untuk melihat ia dalam Orang dalam ini 188 00:09:06,670 --> 00:09:09,510 Angkasa, yang Lexis Beryl Ross. 189 00:09:09,510 --> 00:09:12,790 Jadi bagaimana ia akan melihat anda klik pada nama saya, dan 190 00:09:12,790 --> 00:09:15,170 anda akan melihat Semakan 5, yang 191 00:09:15,170 --> 00:09:16,070 adalah semakan terkini. 192 00:09:16,070 --> 00:09:18,930 Salin hanya Semakan 5 ke ruang anda dengan mengklik padanya. 193 00:09:22,570 --> 00:09:23,420 >> Semua hak. 194 00:09:23,420 --> 00:09:27,310 Jadi mari kita pergi melalui masalah ini bersama-sama, dan saya 195 00:09:27,310 --> 00:09:29,645 sebenarnya akan menulis kod di sini pada skrin. 196 00:09:29,645 --> 00:09:31,420 Anda boleh mengezum masuk sedikit. 197 00:09:31,420 --> 00:09:34,300 Dan kemudian sekali yang saya lakukan, anda boleh menyalin semakan terkini saya 198 00:09:34,300 --> 00:09:37,930 ke dalam ruang anda, jika anda mahu melihat penyelesaian yang terakhir. 199 00:09:37,930 --> 00:09:41,840 Kini, Ruang mempunyai keupayaan untuk saya untuk masuk dan melihat mana-mana 200 00:09:41,840 --> 00:09:43,910 kod bahawa anda semua telah menulis, tetapi hanya kerana ia adalah 201 00:09:43,910 --> 00:09:46,470 seksyen besar dan kita tidak benar-benar mempunyai sama 202 00:09:46,470 --> 00:09:50,150 jenis keupayaan perbincangan sebagai kecil 203 00:09:50,150 --> 00:09:51,890 seksyen ini, kami hanya akan pergi melalui dan saya hanya akan 204 00:09:51,890 --> 00:09:53,140 untuk menulis kod. 205 00:09:53,140 --> 00:09:55,250 Tetapi pasti berhenti saya dengan soalan pada bila-bila. 206 00:09:55,250 --> 00:09:57,290 Kami akan pergi melalui jenis ia langkah demi langkah untuk membuat 207 00:09:57,290 --> 00:10:00,032 pasti kita memahami setiap sebahagian daripada apa yang berlaku di sini. 208 00:10:03,800 --> 00:10:06,710 Semua orang boleh melihat teks ini di sini? 209 00:10:06,710 --> 00:10:07,960 Adakah sesiapa yang mahu ia lebih besar? 210 00:10:10,240 --> 00:10:12,860 >> Jadi, apa perkara pertama yang kita akan lakukan di sini? 211 00:10:12,860 --> 00:10:14,840 Nah asasnya, kerana kita mahu mendapatkan input daripada 212 00:10:14,840 --> 00:10:17,460 pengguna dan kita mahu ia menjadi jenis pengalaman yang baik untuk 213 00:10:17,460 --> 00:10:19,750 pengguna, kita sebenarnya mahu memberitahu mereka apa yang kita cari. 214 00:10:19,750 --> 00:10:23,120 Jadi mari kita mencetak apa yang kita mahu membentuk pengguna. 215 00:10:23,120 --> 00:10:26,540 Jadi hanya tidak mengganggu mengangkat tangan anda, hanya gemeretuk ia dimatikan. 216 00:10:26,540 --> 00:10:29,210 Apakah arahan untuk mencetak sesuatu ke skrin? 217 00:10:29,210 --> 00:10:30,100 PENONTON: printf. 218 00:10:30,100 --> 00:10:31,247 Lexi ROSS: Awesome. 219 00:10:31,247 --> 00:10:33,393 Okay, jadi printf. 220 00:10:33,393 --> 00:10:34,339 >> PENONTON: Hei, Lexi? 221 00:10:34,339 --> 00:10:35,589 [Didengar]? 222 00:10:39,080 --> 00:10:40,130 Lexi ROSS: Pasti. 223 00:10:40,130 --> 00:10:43,580 Jadi printf, seperti yang kita telah sering dilihat dalam kuliah, 224 00:10:43,580 --> 00:10:47,230 perintah untuk mencetak sesuatu kepada aliran output standard. 225 00:10:47,230 --> 00:10:52,370 Jadi, kami ingin meminta pengguna untuk input 226 00:10:52,370 --> 00:10:53,620 suhu dalam Celsius. 227 00:10:58,180 --> 00:11:01,180 Dan sekarang, kita sebenarnya mahu mengambil input yang mereka berikan 228 00:11:01,180 --> 00:11:03,710 kami dan menyimpannya ke dalam pemboleh ubah. 229 00:11:03,710 --> 00:11:06,415 Jadi kita telah belajar sedikit tentang jenis. 230 00:11:06,415 --> 00:11:12,090 Seseorang boleh ingat apa jenis yang kita mahu untuk satu pemboleh ubah 231 00:11:12,090 --> 00:11:13,170 dengan tempat perpuluhan di dalamnya? 232 00:11:13,170 --> 00:11:13,910 PENONTON: Terapung. 233 00:11:13,910 --> 00:11:14,180 Lexi ROSS: Terapung. 234 00:11:14,180 --> 00:11:15,480 Ya, hebat. 235 00:11:15,480 --> 00:11:16,510 Ia adalah apungan. 236 00:11:16,510 --> 00:11:17,760 Demikian. 237 00:11:21,860 --> 00:11:24,953 Dan bagaimana kita akan - petunjuk besar - mendapatkan 238 00:11:24,953 --> 00:11:25,430 terapung dari pengguna? 239 00:11:25,430 --> 00:11:25,923 PENONTON: GetFloat. 240 00:11:25,923 --> 00:11:27,173 Lexi ROSS: Ya. 241 00:11:33,320 --> 00:11:34,730 Sejuk. 242 00:11:34,730 --> 00:11:38,970 Dan pengguna berpotensi bermakna dan cuba untuk memberi kita 243 00:11:38,970 --> 00:11:41,080 nombor negatif, tetapi mari kita tidak perlu bimbang untuk ini 244 00:11:41,080 --> 00:11:41,710 masalah sekarang. 245 00:11:41,710 --> 00:11:43,390 Anda akan bimbang tentang itu sedikit lanjut mengenai anda 246 00:11:43,390 --> 00:11:45,570 kerja rumah pada set masalah. 247 00:11:45,570 --> 00:11:48,970 >> Jadi mari kita menganggap mereka memberikan kita beberapa yang baik, dan kini kita 248 00:11:48,970 --> 00:11:51,590 sebenarnya mempunyai untuk menukar terapung itu dari Celcius untuk 249 00:11:51,590 --> 00:11:52,400 Fahrenheit. 250 00:11:52,400 --> 00:11:56,730 Jadi mari kita berunding dengan formula kami di sini, dan mari buat 251 00:11:56,730 --> 00:12:00,290 pembolehubah baru dan memanggilnya Fahrenheit. 252 00:12:00,290 --> 00:12:01,130 Saya belajar ejaan. 253 00:12:01,130 --> 00:12:04,640 Ia jenis gila, saya tahu. 254 00:12:04,640 --> 00:12:08,880 Dan mari kita bergantung kepada perintah operasi jenis lakukan 255 00:12:08,880 --> 00:12:14,340 kerja di sini, tetapi kita akan menggunakan kurungan hanya menjadi 256 00:12:14,340 --> 00:12:17,762 sepenuhnya lantung dan jelas. 257 00:12:17,762 --> 00:12:24,453 Jadi Celsius kali 9 dibahagikan dengan 5. 258 00:12:24,453 --> 00:12:26,740 Saya akan zum keluar hanya sedikit jadi ini boleh memuatkan atas 259 00:12:26,740 --> 00:12:29,390 satu baris, tetapi saya akan mengezum masuk lagi bagi mereka yang tidak dapat melihat, 260 00:12:29,390 --> 00:12:30,640 jauh di belakang. 261 00:12:38,150 --> 00:12:40,060 Maaf tentang itu. 262 00:12:40,060 --> 00:12:42,680 Isu kursor pelik. 263 00:12:42,680 --> 00:12:51,688 Plus 32. 264 00:12:51,688 --> 00:12:54,780 Okay, adakah sesiapa yang mempunyai apa-apa soalan tentang bagaimana saya dimasukkan ke dalam 265 00:12:54,780 --> 00:12:56,460 formula, atau apa-apa isu dengan itu? 266 00:12:56,460 --> 00:12:56,700 Yeah. 267 00:12:56,700 --> 00:12:59,580 >> PENONTON: Adakah kita perlu untuk meletakkan printf sebelum apungan 268 00:12:59,580 --> 00:13:01,980 Celsius, terapung fahrenheit baris skrip? 269 00:13:01,980 --> 00:13:05,910 Adakah ia perkara perintah yang mereka berada di? 270 00:13:05,910 --> 00:13:08,580 Lexi ROSS: Jadi persoalannya adalah, adakah kita perlu printf 271 00:13:08,580 --> 00:13:11,820 sebelum kita sebenarnya meminta apungan? 272 00:13:11,820 --> 00:13:13,070 Jawapannya adalah yang kita lakukan. 273 00:13:13,070 --> 00:13:16,830 Cara itu, bahawa mereka kursor bahawa pengguna mendapat untuk input 274 00:13:16,830 --> 00:13:20,310 apungan akan berlaku selepas c bercetak, kan? 275 00:13:20,310 --> 00:13:23,480 Dan ia masuk akal jika anda berfikir tentang logiknya, seperti 276 00:13:23,480 --> 00:13:26,660 anda meminta pengguna soalan, dan kemudian anda 277 00:13:26,660 --> 00:13:27,800 menerima jawapan. 278 00:13:27,800 --> 00:13:30,320 Jadi ia mencetak c, dan kemudian ada kursor, kemudian 279 00:13:30,320 --> 00:13:32,470 pengguna boleh menaip dalam nilai, seperti yang kita akan lihat 280 00:13:32,470 --> 00:13:34,200 kemudian apabila kita demo. 281 00:13:34,200 --> 00:13:34,874 Ya? 282 00:13:34,874 --> 00:13:37,660 >> PENONTON: Mengapa kita menggunakan apungan dan tidak double? 283 00:13:37,660 --> 00:13:40,030 Lexi ROSS: Jadi dua, pada dasarnya, kerana nama itu 284 00:13:40,030 --> 00:13:42,180 menunjukkan, memberikan kita menggandakan jumlah 285 00:13:42,180 --> 00:13:44,040 ketepatan sebagai apungan. 286 00:13:44,040 --> 00:13:48,490 Tetapi biasanya dalam C, dalam kursus ini, untuk beberapa 287 00:13:48,490 --> 00:13:50,340 sebab, kita akan menggunakan terapung. 288 00:13:50,340 --> 00:13:53,330 Dan ini adalah benar-benar semua ketepatan yang kita perlu hanya untuk 289 00:13:53,330 --> 00:13:56,200 jenis penukaran suhu asas. 290 00:13:56,200 --> 00:13:59,800 Biasanya, beregu adalah lebih digunakan dalam bahasa Jawa, 291 00:13:59,800 --> 00:14:05,700 terapung adalah lebih biasa di C. Semua betul, hebat. 292 00:14:05,700 --> 00:14:06,470 >> DAN Bradley: Satu lagi. 293 00:14:06,470 --> 00:14:07,530 Lexi ROSS: Satu lagi. 294 00:14:07,530 --> 00:14:08,708 Ya? 295 00:14:08,708 --> 00:14:10,684 PENONTON: Di manakah anda meletakkan Space Bar? 296 00:14:10,684 --> 00:14:13,648 Seperti, [didengar] Space Bar [didengar]? 297 00:14:13,648 --> 00:14:15,140 Adakah ia perkara? 298 00:14:15,140 --> 00:14:15,560 Lexi ROSS: Oh, tidak. 299 00:14:15,560 --> 00:14:17,040 Jadi ia tidak mengapa. 300 00:14:17,040 --> 00:14:19,910 Saya sebenarnya harus meletakkan ruang lain di sini. 301 00:14:19,910 --> 00:14:21,990 Tetapi apakah perkara adalah bahawa anda konsisten 302 00:14:21,990 --> 00:14:22,960 sepanjang kod anda. 303 00:14:22,960 --> 00:14:25,510 Jadi, jika anda memutuskan untuk menggunakan salah satu gaya jarak, pastikan 304 00:14:25,510 --> 00:14:27,530 memastikan ia sepanjang kod keseluruhan anda, atau anda boleh mendapatkan gaya 305 00:14:27,530 --> 00:14:28,610 mata ditolak. 306 00:14:28,610 --> 00:14:29,822 Jadi konsisten adalah kunci. 307 00:14:29,822 --> 00:14:31,590 DAN Bradley: Saya fikir dia telah bercakap tentang ruang yang. 308 00:14:31,590 --> 00:14:33,190 Lexi ROSS: Oh, anda bercakap tentang ruang yang? 309 00:14:33,190 --> 00:14:34,920 Oleh C sebenar? 310 00:14:34,920 --> 00:14:35,335 PENONTON: Ya. 311 00:14:35,335 --> 00:14:37,910 Lexi ROSS: Oh, jadi itu hanya untuk kelihatan, kan? 312 00:14:37,910 --> 00:14:41,280 Supaya cara apabila kita menjalankan kod, jika kita tidak mempunyai ini 313 00:14:41,280 --> 00:14:43,730 ruang di sini, jika ia kelihatan seperti ini, pengguna akan mula 314 00:14:43,730 --> 00:14:45,690 menaip dalam bilangan dan ia akan dihapuskan sehingga hak 315 00:14:45,690 --> 00:14:48,800 terhadap kolon selepas C, dan ia akan kelihatan sedikit 316 00:14:48,800 --> 00:14:50,770 lebih baik jika ada ruang. 317 00:14:50,770 --> 00:14:52,470 Dan anda boleh melihat bahawa sedikit lebih baik apabila kita sebenarnya 318 00:14:52,470 --> 00:14:53,970 menjalankan kod ini, apabila kita selesai. 319 00:14:57,060 --> 00:14:58,200 Menggerunkan. 320 00:14:58,200 --> 00:14:59,330 Ya, satu soalan lagi. 321 00:14:59,330 --> 00:15:01,658 >> PENONTON: Adakah saya perlu meletakkan titik perpuluhan selepas salah satu 322 00:15:01,658 --> 00:15:04,000 [Didengar]? 323 00:15:04,000 --> 00:15:06,770 Lexi ROSS: Jadi anda tidak lakukan, kerana perintah 324 00:15:06,770 --> 00:15:07,500 operasi. 325 00:15:07,500 --> 00:15:11,020 Demikian kerana Fahrenheit sudah apungan, 326 00:15:11,020 --> 00:15:14,050 Celsius, anda tidak perlu untuk jelas membuang mana-mana 327 00:15:14,050 --> 00:15:15,990 nombor lain seperti terapung, walaupun dalam lain 328 00:15:15,990 --> 00:15:18,180 keadaan, apabila anda berurusan dengan ints, anda boleh 329 00:15:18,180 --> 00:15:21,280 perlu meletakkan titik untuk membuang jelas ia sebagai apungan. 330 00:15:24,160 --> 00:15:24,595 Yeah? 331 00:15:24,595 --> 00:15:26,629 PENONTON: Saya hanya tertanya-tanya jika perkara permodalan dalam 332 00:15:26,629 --> 00:15:29,150 arahan ini seperti GetFloat? 333 00:15:29,150 --> 00:15:30,160 Lexi ROSS: Ya, soalan yang baik. 334 00:15:30,160 --> 00:15:33,530 Jadi persoalannya adalah, adakah perkara permodalan dalam 335 00:15:33,530 --> 00:15:34,800 arahan seperti GetFloat? 336 00:15:34,800 --> 00:15:36,650 Jawapannya adalah ya, ia tidak. 337 00:15:36,650 --> 00:15:39,720 Jadi GetFloat adalah, sebagai Dan telah menerangkan lebih awal, perpustakaan 338 00:15:39,720 --> 00:15:44,000 fungsi dalam perpustakaan CS50, dan ia telah ditulis sebagai modal 339 00:15:44,000 --> 00:15:47,360 G, modal F. Jadi, jika anda tidak menulisnya dengan orang-orang ibu 340 00:15:47,360 --> 00:15:50,150 sana, pengkompil tidak akan memahami apa yang 341 00:15:50,150 --> 00:15:52,750 berfungsi anda merujuk kepada. 342 00:15:52,750 --> 00:15:53,130 Okay. 343 00:15:53,130 --> 00:15:53,815 Yeah? 344 00:15:53,815 --> 00:15:55,446 >> PENONTON: Apakah hujah untuk terbatal utama sentiasa? 345 00:15:55,446 --> 00:15:57,920 Lexi ROSS: Ya, itu satu lagi persoalan yang besar. 346 00:15:57,920 --> 00:16:01,850 Jadi kod yang anda telah disalin daripada ruang saya tersilap mempunyai 347 00:16:01,850 --> 00:16:02,500 beberapa lagi hujah. 348 00:16:02,500 --> 00:16:06,530 Jadi persoalannya ialah, adalah hujah ke fungsi utama 349 00:16:06,530 --> 00:16:10,620 sentiasa tidak sah, yang pada asasnya bermakna apa-apa? 350 00:16:10,620 --> 00:16:11,890 Jawapannya tidak. 351 00:16:11,890 --> 00:16:13,920 Anda boleh melihat bahawa kod anda disalin dari awal saya 352 00:16:13,920 --> 00:16:17,700 semakan mempunyai apa yang mungkin kelihatan seperti apa-apa yang benar-benar membuat 353 00:16:17,700 --> 00:16:21,060 rasa sekarang, * beberapa char, argv, argc. 354 00:16:21,060 --> 00:16:23,630 Jangan bimbang tentang bahawa buat masa ini, tetapi anda akan mengetahui kemudian 355 00:16:23,630 --> 00:16:25,060 pada mereka lakukan membuat perbezaan. 356 00:16:25,060 --> 00:16:27,480 Tetapi jika anda tidak menggunakan yang jenis fungsi yang ditambah 357 00:16:27,480 --> 00:16:28,940 yang anda akan belajar tentang kemudian, tidak sah 358 00:16:28,940 --> 00:16:32,085 adalah benar halus. 359 00:16:32,085 --> 00:16:32,530 >> Semua hak. 360 00:16:32,530 --> 00:16:34,690 Dan kita mempunyai satu lagi langkah, yang merupakan yang kita mahu 361 00:16:34,690 --> 00:16:38,840 sebenarnya menunjukkan pengguna apa suhu yang ditukar adalah. 362 00:16:38,840 --> 00:16:46,730 Jadi sekali lagi, kita pergi untuk menggunakan printf, dan katakan f, hanya 363 00:16:46,730 --> 00:16:48,000 untuk demi konsisten. 364 00:16:48,000 --> 00:16:50,780 Dan sekarang kita pergi untuk melakukan sesuatu yang sukar sedikit. 365 00:16:50,780 --> 00:16:57,190 Jadi, kita akan menggunakan bendera, atau sejenis khas notasi, 366 00:16:57,190 --> 00:17:02,510 untuk memberitahu printf hanya mencetak satu tempat perpuluhan. 367 00:17:02,510 --> 00:17:05,240 Dan adakah sesiapa yang berlaku untuk mengetahui apa yang akan kelihatan 368 00:17:05,240 --> 00:17:06,810 suka, sebelum saya menaip ia keluar? 369 00:17:06,810 --> 00:17:07,089 Yeah? 370 00:17:07,089 --> 00:17:08,339 PENONTON: f 0.2%? 371 00:17:10,369 --> 00:17:10,880 Lexi ROSS: Yeah, yeah. 372 00:17:10,880 --> 00:17:12,960 Jadi sebenarnya, ia adalah benar-benar rapat. 373 00:17:12,960 --> 00:17:23,520 0.01f untuk f 0,01%, dan kemudian kita perlu ingat untuk memasukkan 374 00:17:23,520 --> 00:17:26,950 hujah lain printf, yang merupakan pembolehubah itu sendiri, 375 00:17:26,950 --> 00:17:28,685 yang n. 376 00:17:33,690 --> 00:17:34,580 >> Satu langkah terakhir. 377 00:17:34,580 --> 00:17:36,880 Seseorang boleh ingat apa yang adalah dalam fungsi utama kita? 378 00:17:36,880 --> 00:17:37,265 Ya, di sana. 379 00:17:37,265 --> 00:17:38,320 PENONTON: Pulangan? 380 00:17:38,320 --> 00:17:38,840 Lexi ROSS: Tepat sekali. 381 00:17:38,840 --> 00:17:42,030 Jadi, kerana ini adalah pulangan yang utama dalam int, kita mahu 382 00:17:42,030 --> 00:17:43,926 juga kembali dalam int. 383 00:17:43,926 --> 00:17:48,280 DAN Bradley: Peratus perlu di sisi lain. 384 00:17:48,280 --> 00:17:48,540 Lexi ROSS: Okay. 385 00:17:48,540 --> 00:17:49,290 Maaf, guys. 386 00:17:49,290 --> 00:17:50,240 Itu adalah satu kesilapan. 387 00:17:50,240 --> 00:17:52,150 Jadi peratus datang sebelum 0,01. 388 00:17:52,150 --> 00:17:54,450 Jadi% 0,01 f. 389 00:17:54,450 --> 00:17:55,970 Mereka adalah jenis keras untuk ingat. 390 00:17:55,970 --> 00:17:57,470 Ramai orang, seperti saya, hanya melihat mereka sehingga 391 00:17:57,470 --> 00:17:58,710 apabila kita menggunakan mereka. 392 00:17:58,710 --> 00:17:59,340 Ya, di sana. 393 00:17:59,340 --> 00:18:02,525 PENONTON: Mengapa 0.01 dan tidak 0.2 atau 0.1? 394 00:18:05,710 --> 00:18:07,530 Lexi ROSS: Saya tidak tahu, sebenarnya. 395 00:18:07,530 --> 00:18:08,130 Adakah anda tahu? 396 00:18:08,130 --> 00:18:14,050 DAN Bradley: Sebab ia adalah 0,01 berbanding kepada 0.02, atau 397 00:18:14,050 --> 00:18:19,380 0.2, atau 0.1, agak sewenang-wenangnya kepada cara yang 398 00:18:19,380 --> 00:18:21,230 programmer asalnya direka. 399 00:18:21,230 --> 00:18:22,200 PENONTON: Itu bukan apa yang saya maksudkan. 400 00:18:22,200 --> 00:18:24,140 Saya tidak meminta sebab. 401 00:18:24,140 --> 00:18:25,378 [Didengar] sebab mengapa. 402 00:18:25,378 --> 00:18:28,800 Saya mempunyai ia ditulis sebagai 0.2, dan ia menyampaikan 2 - 403 00:18:28,800 --> 00:18:29,270 DAN Bradley: Ya. 404 00:18:29,270 --> 00:18:30,410 Jadi kita hanya mahu satu. 405 00:18:30,410 --> 00:18:31,250 PENONTON: Oh, Okay. 406 00:18:31,250 --> 00:18:33,270 Jadi, anda boleh 0,01 kemudian. 407 00:18:33,270 --> 00:18:35,340 DAN Bradley: 0.1 mungkin juga bekerja. 408 00:18:35,340 --> 00:18:37,430 0,01 berfungsi juga. 409 00:18:37,430 --> 00:18:39,288 Lexi ROSS: Oh, 0 mungkin untuk menunjukkan sifar, jika 410 00:18:39,288 --> 00:18:40,870 ia adalah kurang daripada satu. 411 00:18:40,870 --> 00:18:43,080 DAN Bradley: Ya, saya fikir yang betul. 412 00:18:43,080 --> 00:18:49,220 Jadi 0,01 akan menunjukkan sifar jika ia tidak mempunyai apa-apa 413 00:18:49,220 --> 00:18:51,670 yang akan pergi ke sana semula jadi. 414 00:18:51,670 --> 00:18:55,860 Jadi, jika anda, katakan, meletakkan dalam 100 Celsius, ia akan 415 00:18:55,860 --> 00:19:00,230 keluar 212 biasanya dalam Fahrenheit, seperti 212 tepat. 416 00:19:00,230 --> 00:19:05,810 Jika anda mempunyai 0,01, ia akan menunjukkan 212,0, sebagai 417 00:19:05,810 --> 00:19:07,005 berbanding dengan hanya 212. 418 00:19:07,005 --> 00:19:07,330 Lexi ROSS: Itu betul. 419 00:19:07,330 --> 00:19:13,000 Jadi membaca ia pada dasarnya memberitahu printf, mencetak titik perpuluhan, 420 00:19:13,000 --> 00:19:14,760 dan mencetak 0 jika perlu. 421 00:19:14,760 --> 00:19:16,780 Jika tidak, mencetak kedudukan perpuluhan pertama. 422 00:19:16,780 --> 00:19:18,270 DAN Bradley: Dan kami akan meneroka beberapa ini apabila kita 423 00:19:18,270 --> 00:19:19,270 sebenarnya menjalankan kod. 424 00:19:19,270 --> 00:19:20,150 Lexi ROSS: Ya. 425 00:19:20,150 --> 00:19:21,030 PENONTON: Jadi saya meletakkan 0.1. 426 00:19:21,030 --> 00:19:21,910 Ia masih mencetak sifar. 427 00:19:21,910 --> 00:19:23,460 DAN Bradley: Ia masih mencetak sifar? 428 00:19:23,460 --> 00:19:23,930 PENONTON: Ya. 429 00:19:23,930 --> 00:19:25,211 DAN Bradley: Hm, okay. 430 00:19:25,211 --> 00:19:27,666 Lexi ROSS: Cool. 431 00:19:27,666 --> 00:19:29,140 >> Semua hak. 432 00:19:29,140 --> 00:19:33,310 Lebih banyak soalan mengenai kod ini sebelum saya menyusun dan menjalankan? 433 00:19:33,310 --> 00:19:35,380 Adakah sesiapa yang melihat apa-apa bug di sini, pertama sekali? 434 00:19:35,380 --> 00:19:39,420 Sesiapa melihat sesuatu yang perlu berada di sini? 435 00:19:39,420 --> 00:19:41,920 Jika ini adalah set masalah anda, apa yang akan berada di sini yang tidak 436 00:19:41,920 --> 00:19:44,490 sana sekarang? 437 00:19:44,490 --> 00:19:45,710 Ya, hebat. 438 00:19:45,710 --> 00:19:48,200 Jadi saya tidak termasuk komen kerana saya menyampaikan mereka 439 00:19:48,200 --> 00:19:50,570 secara lisan, tetapi jika saya menulis ini dalam set masalah, saya akan 440 00:19:50,570 --> 00:19:54,290 pasti mahu untuk meletakkan komen untuk menunjukkan apa yang saya 441 00:19:54,290 --> 00:19:55,820 lakukan, pada asasnya, dalam program ini. 442 00:19:55,820 --> 00:19:57,870 Dan anda jenis akan mendapat rasa untuk itu, seperti yang anda bergerak melalui 443 00:19:57,870 --> 00:19:59,680 semester, jumlah yang betul mengulas. 444 00:19:59,680 --> 00:20:01,520 Anda tidak mahu menjadi terlalu lantung dan meletakkan garisan dan 445 00:20:01,520 --> 00:20:03,710 baris komen bagi setiap baris kod anda, tetapi anda 446 00:20:03,710 --> 00:20:06,720 juga tidak mahu untuk tidak menjadi lantung cukup dan meninggalkan 447 00:20:06,720 --> 00:20:09,440 pembaca untuk cuba memikirkan apa yang palang pintu 448 00:20:09,440 --> 00:20:11,595 kod anda lakukan. 449 00:20:11,595 --> 00:20:12,770 >> Okay, sejuk. 450 00:20:12,770 --> 00:20:14,020 Mari kita cuba menjalankan kod ini. 451 00:20:18,290 --> 00:20:21,650 Okay, saya akan untuk zum keluar sedikit. 452 00:20:21,650 --> 00:20:22,020 Sejuk. 453 00:20:22,020 --> 00:20:24,560 Jadi, anda akan notis terdapat butang Main di sini. 454 00:20:24,560 --> 00:20:25,994 Mari kita klik Play. 455 00:20:34,915 --> 00:20:39,190 Jadi anda akan melihat di sini, sama seperti dalam spesifikasi mengenai masalah 456 00:20:39,190 --> 00:20:43,300 menetapkan, terdapat / a.out. 457 00:20:43,300 --> 00:20:46,510 a.out adalah nama laku perduaan, yang merupakan 458 00:20:46,510 --> 00:20:50,590 perkataan lama untuk hanya fail yang terdiri daripada kod binari yang 459 00:20:50,590 --> 00:20:51,710 komputer anda sebenarnya berjalan. 460 00:20:51,710 --> 00:20:54,390 Jadi seperti yang kita harapkan, kita mempunyai C sini. 461 00:20:54,390 --> 00:20:56,007 Jadi memanggil nombor. 462 00:20:56,007 --> 00:20:58,630 PENONTON: 23. 463 00:20:58,630 --> 00:21:05,090 Lexi ROSS: 23. 464 00:21:05,090 --> 00:21:06,360 DAN Bradley: Program anda mengambil masa terlalu lama untuk menjalankan. 465 00:21:06,360 --> 00:21:07,310 Hanya berjalan lagi. 466 00:21:07,310 --> 00:21:07,700 Lexi ROSS: Oh, buruk saya. 467 00:21:07,700 --> 00:21:09,450 Okay. 468 00:21:09,450 --> 00:21:10,770 Ruangan kadang-kadang cerewet. 469 00:21:10,770 --> 00:21:13,060 Ia mahu anda untuk berfikir di atas kaki anda. 470 00:21:13,060 --> 00:21:15,060 Okay, 23. 471 00:21:15,060 --> 00:21:16,256 Menggerunkan. 472 00:21:16,256 --> 00:21:18,920 Adakah semua orang percaya ini? 473 00:21:18,920 --> 00:21:20,600 Sejuk, kerana ia berfungsi. 474 00:21:20,600 --> 00:21:22,670 >> Okay. 475 00:21:22,670 --> 00:21:24,280 Mari kita cuba beberapa lebih. 476 00:21:24,280 --> 00:21:25,910 Mari kita cuba kes kelebihan di sini. 477 00:21:25,910 --> 00:21:28,900 Dalam bidang sains komputer, apabila kita bercakap mengenai kes kelebihan, kita maksudkan 478 00:21:28,900 --> 00:21:33,640 kes untuk program anda untuk menjalankan bahawa adalah jenis yang sangat 479 00:21:33,640 --> 00:21:38,430 tepi input yang munasabah atau bahawa sudut ujian tertentu 480 00:21:38,430 --> 00:21:41,680 logik dalam program anda, dan ini lebih masuk akal apabila kita 481 00:21:41,680 --> 00:21:43,080 melakukan program-program yang lebih rumit. 482 00:21:43,080 --> 00:21:45,440 Mari kita cuba 0. 483 00:21:45,440 --> 00:21:45,950 Menggerunkan. 484 00:21:45,950 --> 00:21:48,460 Kita semua tahu ini. 485 00:21:48,460 --> 00:21:48,745 Sejuk. 486 00:21:48,745 --> 00:21:50,520 Sebarang pertanyaan lanjut mengenai perkara ini sebelum saya bergerak 487 00:21:50,520 --> 00:21:51,930 kepada program seterusnya? 488 00:21:55,560 --> 00:21:57,160 Semua hak, hebat. 489 00:21:57,160 --> 00:22:00,066 Jadi sekarang, kita akan - 490 00:22:00,066 --> 00:22:01,180 adakah anda mahu hanya menggunakan komputer saya? 491 00:22:01,180 --> 00:22:01,940 DAN Bradley: Ya, yang cukup mudah. 492 00:22:01,940 --> 00:22:06,660 >> Baiklah, jadi akan pergi dan bercakap tentang membuat peratusan. 493 00:22:06,660 --> 00:22:11,440 Jadi kami pada asasnya, dalam latihan ini sedikit akan datang, pergi ke 494 00:22:11,440 --> 00:22:16,020 mengambil dua input integer dari pengguna, dengan harapan untuk 495 00:22:16,020 --> 00:22:21,250 bukan negatif pengangka dan penyebut yang positif, dan 496 00:22:21,250 --> 00:22:24,410 pada dasarnya membahagikan mereka dan keluarkan apa yang datang sebagai 497 00:22:24,410 --> 00:22:25,820 peratusan. 498 00:22:25,820 --> 00:22:33,430 Jadi kita mahu ia hanya menerima numerators bukan negatif dan 499 00:22:33,430 --> 00:22:37,930 menerima hanya penyebut positif, dan terus bertanya 500 00:22:37,930 --> 00:22:43,286 bagi orang-orang yang baru jika ia tidak mendapat apa yang ia mahu. 501 00:22:43,286 --> 00:22:43,710 Semua hak? 502 00:22:43,710 --> 00:22:44,960 Jadi memberi yang pergi. 503 00:22:48,015 --> 00:22:49,390 Lexi ROSS: Oh ya, adakah anda mahu lakukan - 504 00:22:49,390 --> 00:22:51,310 oh, mungkin rakyat perlu menyalin kod saya. 505 00:22:51,310 --> 00:22:51,790 DAN Bradley: Ya. 506 00:22:51,790 --> 00:22:52,270 Lexi ROSS: [didengar] 507 00:22:52,270 --> 00:22:54,994 Ruang. 508 00:22:54,994 --> 00:22:55,986 >> PENONTON: Saya mempunyai satu soalan. 509 00:22:55,986 --> 00:22:58,466 Jika saya menggunakan kawasan dan saya mahu menyelamatkan [didengar] 510 00:22:58,466 --> 00:23:04,440 Fahrenheit penukaran, adakah saya menyimpannya dan kemudian membuat yang baru - 511 00:23:04,440 --> 00:23:06,880 Lexi ROSS: Kami hanya boleh melakukan Ruang baru, atau anda hanya boleh 512 00:23:06,880 --> 00:23:09,600 mahu salin dan tampalkannya ke fail teks atau 513 00:23:09,600 --> 00:23:11,040 sesuatu supaya anda mempunyai ia. 514 00:23:11,040 --> 00:23:12,400 DAN Bradley: saya hanya akan menukar nama saya. 515 00:23:12,400 --> 00:23:15,430 Lexi ROSS: Jadi saya hanya disimpan semakan terbaru 516 00:23:15,430 --> 00:23:20,700 tofahrenheit.c, jadi jika anda pergi ke aaaa Lexis Beryl 517 00:23:20,700 --> 00:23:23,270 Ross, anda boleh pergi dalam dan menyalin bahawa code terbaru, dan kemudian 518 00:23:23,270 --> 00:23:26,360 bermula pada satu ini baru, yang saya fikir Dan akan menyediakan 519 00:23:26,360 --> 00:23:30,540 beberapa kod rangka serta. 520 00:23:30,540 --> 00:23:33,430 Okay. 521 00:23:33,430 --> 00:23:36,590 DAN Bradley: Semakan terbaru Saya mempunyai lombong, jadi 522 00:23:36,590 --> 00:23:40,080 ia pada masa yang sangat atas ini, adalah Semakan 4, dan 523 00:23:40,080 --> 00:23:42,050 ia akan mempunyai apa yang anda perlukan untuk memulakan. 524 00:23:47,970 --> 00:23:49,370 Lexi ROSS: Baiklah, dan saya akan menyalin itu ke dalam lombong serta. 525 00:23:49,370 --> 00:23:50,520 >> DAN Bradley: Baiklah. 526 00:23:50,520 --> 00:23:53,840 Saya fikir kita akan hanya mula akan lebih ini, jika 527 00:23:53,840 --> 00:23:57,470 sesiapa yang berminat. 528 00:23:57,470 --> 00:23:59,710 Lexi ROSS: Kita semua berminat. 529 00:23:59,710 --> 00:24:02,370 DAN Bradley: Kami akan mula keluar hanya dengan mengisytiharkan 530 00:24:02,370 --> 00:24:08,290 beberapa pembolehubah. Jadi kita mempunyai pengangka, dan demi 531 00:24:08,290 --> 00:24:13,770 sekarang, saya akan hanya bermula dengan nilai -1, 532 00:24:13,770 --> 00:24:24,070 dan kemudian saya akan menubuhkan sebuah gelung do sementara. Walaupun - 533 00:24:24,070 --> 00:24:28,270 jadi apabila saya mahu ia gelung? 534 00:24:28,270 --> 00:24:30,250 Apabila saya mahu ia terus bertanya - 535 00:24:30,250 --> 00:24:31,761 ya? 536 00:24:31,761 --> 00:24:34,960 PENONTON: Apabila ia adalah kurang daripada atau sama dengan sifar. 537 00:24:34,960 --> 00:24:37,734 DAN Bradley: Mengapa ia tidak boleh menjadi sifar? 538 00:24:37,734 --> 00:24:39,526 PENONTON: [didengar]. 539 00:24:39,526 --> 00:24:39,980 DAN Bradley: Ya. 540 00:24:39,980 --> 00:24:42,590 Jadi untuk pengangka, ia hanya sementara pengangka 541 00:24:42,590 --> 00:24:43,840 adalah kurang daripada sifar. 542 00:24:49,570 --> 00:24:50,480 Adakah yang masuk akal kepada rakyat? 543 00:24:50,480 --> 00:24:53,190 Kami terus menggelung manakala pengangka adalah kurang daripada sifar, 544 00:24:53,190 --> 00:24:58,530 kita terus meminta input baru, dan menyimpan menuntut bahawa mereka 545 00:24:58,530 --> 00:24:59,520 input perkara-perkara baru. 546 00:24:59,520 --> 00:25:10,436 Jadi saya hanya akan mempunyai sedikit printf di sini, bukan negatif 547 00:25:10,436 --> 00:25:11,686 num. 548 00:25:17,780 --> 00:25:21,940 Dan kemudian kita melakukan perkara yang sama seperti sebelum ini, kecuali kita lakukan 549 00:25:21,940 --> 00:25:25,220 GetInt, hanya kerana kita mahu untuk melakukannya sebagai 550 00:25:25,220 --> 00:25:27,600 peratusan ints. 551 00:25:27,600 --> 00:25:32,010 Jadi pengangka = GetInt. 552 00:25:36,420 --> 00:25:39,420 >> Okay, sekarang beberapa perkara. 553 00:25:39,420 --> 00:25:41,030 Adakah saya perlu -1 ini di sini? 554 00:25:41,030 --> 00:25:41,976 PENONTON: [didengar]. 555 00:25:41,976 --> 00:25:42,449 DAN Bradley: No. 556 00:25:42,449 --> 00:25:44,814 Mengapa tidak? 557 00:25:44,814 --> 00:25:47,440 PENONTON: Kerana anda mendapat nilai rawak daripada pengguna. 558 00:25:47,440 --> 00:25:48,540 DAN Bradley: Tepat sekali. 559 00:25:48,540 --> 00:25:53,540 Tetapi adakah saya mahu mempunyai perisytiharan itu di sini? 560 00:25:53,540 --> 00:25:53,950 Ya. 561 00:25:53,950 --> 00:25:54,220 Mengapa? 562 00:25:54,220 --> 00:25:56,640 PENONTON: Anda perlu mencari di luar gelung. 563 00:25:56,640 --> 00:25:59,060 Jika tidak, anda tidak akan mempunyai pembolehubah untuk selebihnya 564 00:25:59,060 --> 00:26:00,520 program. 565 00:26:00,520 --> 00:26:01,270 DAN Bradley: Tepat sekali. 566 00:26:01,270 --> 00:26:03,290 Skop. 567 00:26:03,290 --> 00:26:04,750 Manis. 568 00:26:04,750 --> 00:26:05,790 Adakah yang masuk akal untuk semua orang? 569 00:26:05,790 --> 00:26:07,090 PENONTON: Bolehkah anda mengatakan bahawa masa satu lagi? 570 00:26:07,090 --> 00:26:07,410 DAN Bradley: Okay. 571 00:26:07,410 --> 00:26:12,000 Jadi jika saya mengisytiharkan pengangka ini di dalam gelung, jika 572 00:26:12,000 --> 00:26:14,850 Saya terpaksa ini bukannya pengangka sebagai pengangka int, 573 00:26:14,850 --> 00:26:17,720 dan saya mendapat menghapuskan ini sepenuhnya, 574 00:26:17,720 --> 00:26:19,710 pengangka akan hilang. 575 00:26:19,710 --> 00:26:23,540 Ia tidak akan wujud di luar gelung ini, kerana segala-galanya 576 00:26:23,540 --> 00:26:25,370 adalah dalam skop ini pendakap kerinting. 577 00:26:28,180 --> 00:26:28,790 Masuk akal? 578 00:26:28,790 --> 00:26:30,460 Okay. 579 00:26:30,460 --> 00:26:34,750 >> Jadi untuk penyebut, kita melakukan sesuatu yang agak serupa, int 580 00:26:34,750 --> 00:26:39,850 penyebut = - 581 00:26:39,850 --> 00:26:41,950 dan saya tidak perlu sama - 582 00:26:41,950 --> 00:26:52,900 lakukan, dan untuk sementara dalam kes ini, apa yang saya mahu? 583 00:26:52,900 --> 00:26:56,338 Apa keadaan yang saya mahu ia masih gelung di atas? 584 00:26:56,338 --> 00:26:57,790 PENONTON: Kurang daripada atau sama dengan 0. 585 00:26:57,790 --> 00:26:59,100 DAN Bradley: Kurang daripada atau sama dengan 0. 586 00:26:59,100 --> 00:27:04,680 Penyebut <= 0. 587 00:27:10,350 --> 00:27:13,630 Jangan lupa koma bertitik anda, anak-anak. 588 00:27:13,630 --> 00:27:26,950 Jadi kita melakukan perkara yang sama seperti sebelum ini, printf positif 589 00:27:26,950 --> 00:27:38,920 penyebut, dan kita mendapat int daripada sini. 590 00:27:43,240 --> 00:27:44,573 Terdapat kita pergi. 591 00:27:52,461 --> 00:27:53,711 GetInt. 592 00:27:56,585 --> 00:27:57,810 Okay. 593 00:27:57,810 --> 00:28:02,360 Dan kemudian pada akhirnya, kita ingin mencetak keluar beberapa peratusan. 594 00:28:02,360 --> 00:28:10,282 Jadi untuk melakukan ini, apa yang rentetan kami perlu kelihatan seperti? 595 00:28:10,282 --> 00:28:11,532 printf. 596 00:28:18,010 --> 00:28:20,210 Mana-mana idea-idea yang lain daripada apa yang saya boleh lakukan di sini? 597 00:28:20,210 --> 00:28:20,480 Yeah? 598 00:28:20,480 --> 00:28:26,204 PENONTON: Mungkin 0.2% [didengar]. 599 00:28:26,204 --> 00:28:27,454 DAN Bradley: Ya. 600 00:28:31,300 --> 00:28:32,170 Okay. 601 00:28:32,170 --> 00:28:41,680 Saya akan bermula dengan sedikit pertama,% 0,02%, 602 00:28:41,680 --> 00:28:42,957 petikan, koma. 603 00:28:46,370 --> 00:28:48,380 Dan saya akan membuang baris baru di sini, hanya kerana saya 604 00:28:48,380 --> 00:28:50,390 seperti garisan baru apabila saya melakukan perkara-perkara. 605 00:28:53,210 --> 00:28:57,945 Apakah jenis ungkapan matematik yang perlu saya ada di sini? 606 00:28:57,945 --> 00:29:00,250 PENONTON: kurung dan terapung. 607 00:29:00,250 --> 00:29:00,620 DAN Bradley: Baik. 608 00:29:00,620 --> 00:29:01,875 Mengapa saya mahu mempunyai ia dalam apungan? 609 00:29:01,875 --> 00:29:03,125 PENONTON: [didengar]. 610 00:29:05,640 --> 00:29:07,960 DAN Bradley: Baik, baik. 611 00:29:07,960 --> 00:29:09,210 Terapung. 612 00:29:11,236 --> 00:29:12,486 PENONTON: Pengangka. 613 00:29:14,640 --> 00:29:15,610 DAN Bradley: Pengangka? 614 00:29:15,610 --> 00:29:18,596 Okay, jadi saya melakukan pengangka apungan. 615 00:29:18,596 --> 00:29:20,524 Terbahagi oleh: PENONTON - 616 00:29:20,524 --> 00:29:22,142 DAN Bradley: Dibahagikan dengan? 617 00:29:22,142 --> 00:29:23,480 PENONTON: penyebut. 618 00:29:23,480 --> 00:29:26,290 DAN Bradley: Adakah saya berbuat penyebut, atau yang perlu saya lakukan apungan 619 00:29:26,290 --> 00:29:26,900 penyebut? 620 00:29:26,900 --> 00:29:29,410 PENONTON: Hanya penyebut. 621 00:29:29,410 --> 00:29:30,335 DAN Bradley: Okay. 622 00:29:30,335 --> 00:29:35,285 PENONTON: Dan anda boleh membiak dengan 100. 623 00:29:35,285 --> 00:29:39,130 DAN Bradley: Dan saya darab dengan 100. 624 00:29:39,130 --> 00:29:40,560 PENONTON: Dan kemudian kurungan seluruh ungkapan. 625 00:29:40,560 --> 00:29:41,810 DAN Bradley: Ya. 626 00:29:47,110 --> 00:29:48,360 >> Okay. 627 00:29:50,575 --> 00:29:52,860 Kelihatan baik? 628 00:29:52,860 --> 00:29:54,110 Mari kita cuba. 629 00:29:58,170 --> 00:30:00,800 -50. 630 00:30:00,800 --> 00:30:03,590 Baik, 50. 631 00:30:03,590 --> 00:30:08,010 0, 100, 50%. 632 00:30:08,010 --> 00:30:10,500 Ia bekerja keluar seperti yang kita mahukan. 633 00:30:10,500 --> 00:30:13,510 Adakah kod ini masuk akal kepada rakyat? 634 00:30:13,510 --> 00:30:17,600 Saya akan menyimpan ia supaya anda boleh mendapatkan salinan. 635 00:30:17,600 --> 00:30:18,684 Yeah? 636 00:30:18,684 --> 00:30:20,055 PENONTON: Mengapa tidak anda perlu untuk meletakkan [didengar]? 637 00:30:22,800 --> 00:30:24,603 DAN Bradley: Di mana? 638 00:30:24,603 --> 00:30:26,076 PENONTON: Seperti, apabila anda mengatakan penyebut sama 639 00:30:26,076 --> 00:30:28,040 [Didengar]. 640 00:30:28,040 --> 00:30:30,630 DAN Bradley: Apabila saya mempunyai sini? 641 00:30:30,630 --> 00:30:32,510 Mengapa saya akan mempunyai int sebelum ia? 642 00:30:32,510 --> 00:30:37,120 PENONTON: Kerana satu lagi mempunyai int sebelum ia. 643 00:30:37,120 --> 00:30:40,060 DAN Bradley: Nah, jadi yang tidak berada dalam gelung, betul-betul? 644 00:30:40,060 --> 00:30:45,960 Jadi saya mengaku ini penyebut int atas gelung, 645 00:30:45,960 --> 00:30:48,880 dan saya tidak mempunyai ia dalam gelung kerana saya akan 646 00:30:48,880 --> 00:30:52,680 mengisytiharkan ia sekumpulan kali, dan ia sebenarnya tidak membawa 647 00:30:52,680 --> 00:30:54,280 ke mana-mana sahaja dalam program ini. 648 00:30:54,280 --> 00:30:56,520 Lexi ROSS: Ya, perkara penting yang perlu diingat ialah bahawa 649 00:30:56,520 --> 00:30:58,530 pembolehubah hanya perlu diisytiharkan sekali. 650 00:30:58,530 --> 00:31:00,570 Jadi bayangkan ia seperti memperkenalkan pembolehubah baru 651 00:31:00,570 --> 00:31:04,640 ke dalam dunia dengan memanggil ia int atau float atau barang kecil, dan 652 00:31:04,640 --> 00:31:07,170 apabila ia diisytiharkan, semua yang anda perlu lakukan untuk mengubahnya adalah 653 00:31:07,170 --> 00:31:10,510 hanya memanggilnya dengan namanya: penyebut, atau x, atau y. 654 00:31:10,510 --> 00:31:13,347 Anda hanya perlu untuk benar-benar memanggil ia int an hanya sekali. 655 00:31:13,347 --> 00:31:14,325 >> DAN Bradley: Ya. 656 00:31:14,325 --> 00:31:16,770 PENONTON: Bolehkah anda terangkan perbezaan antara% d 657 00:31:16,770 --> 00:31:21,180 % f dan jika anda pernah mengisytiharkan 658 00:31:21,180 --> 00:31:22,790 ubah sebagai nombor perpuluhan? 659 00:31:22,790 --> 00:31:25,850 DAN Bradley:% d Jadi dan f% di sini? 660 00:31:28,950 --> 00:31:32,190 Lexi ROSS: Jadi d sebenarnya merujuk kepada hanya satu angka, tidak 661 00:31:32,190 --> 00:31:33,630 perpuluhan, yang merupakan jenis mengelirukan. 662 00:31:33,630 --> 00:31:36,310 Tiada jenis data sebenar yang dipanggil perpuluhan, dan apabila anda 663 00:31:36,310 --> 00:31:39,750 ingin mencetak keluar int an, anda merujuk ia sebagai% d, atau 664 00:31:39,750 --> 00:31:44,440 % Apa sahaja-d. F adalah untuk apungan, yang anda akan berfikir ia 665 00:31:44,440 --> 00:31:49,070 akan i, tetapi ia sebenarnya d bagi int. 666 00:31:49,070 --> 00:31:49,420 >> DAN Bradley: Ya? 667 00:31:49,420 --> 00:31:52,180 PENONTON: Jadi dalam program lain, kenapa kita tidak hanya melakukan 668 00:31:52,180 --> 00:31:57,764 perkara yang sama apabila anda mengatakan Fahrenheit? 669 00:31:57,764 --> 00:32:00,760 Mengapa tidak kita meletakkan, seperti? 670 00:32:00,760 --> 00:32:02,465 DAN Bradley: Di bawah sini? 671 00:32:02,465 --> 00:32:03,810 Anda boleh mempunyai. 672 00:32:03,810 --> 00:32:05,900 Ia akan menjadi benar sah. 673 00:32:05,900 --> 00:32:08,290 Saya suka melakukannya dengan cara ini, orang lain suka memisahkan 674 00:32:08,290 --> 00:32:10,450 ia keluar ke dalam barisan yang berlainan kod. 675 00:32:10,450 --> 00:32:12,290 Sama ada cara berfungsi dengan baik. 676 00:32:12,290 --> 00:32:12,760 Apa? 677 00:32:12,760 --> 00:32:13,700 >> PENONTON: Bolehkah anda terangkan apa% 678 00:32:13,700 --> 00:32:14,170 [Didengar]? 679 00:32:14,170 --> 00:32:15,520 DAN Bradley: Okay, jadi peratus, peratus. 680 00:32:15,520 --> 00:32:18,520 Betul, saya akan pergi lebih ini. 681 00:32:18,520 --> 00:32:21,970 Peratus pertama dipanggil watak melarikan diri, dan ia hanya 682 00:32:21,970 --> 00:32:28,730 berkata perkara yang di sebalik ini bukan sebenarnya kod. 683 00:32:28,730 --> 00:32:36,230 Jadi ini peratus pertama, betul,% 0,02 f, semua mereka f% 0,02 684 00:32:36,230 --> 00:32:40,860 maksud sesuatu untuk printf sebagai fungsi. 685 00:32:40,860 --> 00:32:44,520 %%, Saya hanya mahu ia sebenarnya hanya mencetak 686 00:32:44,520 --> 00:32:45,670 peratus tanda. 687 00:32:45,670 --> 00:32:47,960 Jadi saya tidak mengatakan ada apa-apa yang penting di sebalik itu. 688 00:32:47,960 --> 00:32:49,820 Saya hanya berkata terdapat tanda peratus di belakangnya. 689 00:32:49,820 --> 00:32:52,345 Sila mencetak tanda peratus. 690 00:32:52,345 --> 00:32:54,010 Jadi peratus, maka peratus lagi. 691 00:32:54,010 --> 00:32:56,415 PENONTON: Bolehkah anda menunjukkan apa yang ia akan kelihatan seperti jika anda mempunyai 692 00:32:56,415 --> 00:32:57,858 terapung berdasarkan baris lain? 693 00:32:57,858 --> 00:33:01,490 DAN Bradley: Oh yeah, pasti. 694 00:33:01,490 --> 00:33:05,730 Jadi, saya diminta untuk menunjukkan apa yang ia akan kelihatan seperti jika saya 695 00:33:05,730 --> 00:33:10,500 mempunyai ini pengangka apungan, semua matematik ini, on-line lain. 696 00:33:10,500 --> 00:33:16,200 Jadi peratus apungan = - 697 00:33:20,630 --> 00:33:25,970 dan saya akan menghilangkan ini dan hanya meletakkan dalam peratus. 698 00:33:25,970 --> 00:33:29,400 Dan ia melakukan perkara yang sama, saya hanya 699 00:33:29,400 --> 00:33:30,763 mempunyai pemboleh ubah lain. 700 00:33:30,763 --> 00:33:33,030 >> PENONTON: [didengar]. 701 00:33:33,030 --> 00:33:34,130 DAN Bradley: Tatal ke apa? 702 00:33:34,130 --> 00:33:35,512 PENONTON: Jadi yang saya boleh melihat [didengar]. 703 00:33:40,380 --> 00:33:42,016 DAN Bradley: Apa yang tidak boleh anda lihat? 704 00:33:42,016 --> 00:33:43,510 PENONTON: Maaf, saya [didengar]. 705 00:33:47,992 --> 00:33:48,490 DAN Bradley: Ya. 706 00:33:48,490 --> 00:33:50,980 PENONTON: Jadi jika kita menggantikan watak melarikan diri, 707 00:33:50,980 --> 00:33:54,466 andaikan kita mahu mempunyai tanda dolar sebaliknya, hanya untuk 708 00:33:54,466 --> 00:33:57,780 contoh, tanda dolar belakang peratus? 709 00:33:57,780 --> 00:33:58,510 DAN Bradley: Nope. 710 00:33:58,510 --> 00:34:01,400 Ia hanya satu dolar, hanya satu dolar tanda, kerana dolar 711 00:34:01,400 --> 00:34:03,740 tanda tidak bermakna apa-apa untuk printf. 712 00:34:03,740 --> 00:34:07,980 Persoalannya ialah, adakah saya perlu untuk mempunyai watak melarikan diri untuk 713 00:34:07,980 --> 00:34:10,135 simbol seperti tanda-tanda dolar? 714 00:34:10,135 --> 00:34:13,330 PENONTON: Jadi apapun yang berkaitan, terdapat mana-mana kes-kes lain yang 715 00:34:13,330 --> 00:34:15,466 kita perlu tahu apabila sesuatu seperti peratus 716 00:34:15,466 --> 00:34:18,820 tanda mungkin bermakna sesuatu [didengar]? 717 00:34:18,820 --> 00:34:20,330 Lexi ROSS: Ya. 718 00:34:20,330 --> 00:34:24,469 Tidak semestinya tanda peratus, tetapi backslash, lihat 719 00:34:24,469 --> 00:34:26,370 bagaimana kita mempunyai akhir tindak balas di sini? 720 00:34:26,370 --> 00:34:29,800 Mari kita mengatakan bahawa kita benar-benar mahu untuk mencetak tindak balas, kita akan mempunyai 721 00:34:29,800 --> 00:34:31,070 untuk melarikan diri bahawa - 722 00:34:31,070 --> 00:34:32,670 dan ini akan bunyi mengelirukan - 723 00:34:32,670 --> 00:34:34,260 dengan backslash lain. 724 00:34:34,260 --> 00:34:36,370 Jadi, jika kita mahu untuk mencetak \ \, kita akan 725 00:34:36,370 --> 00:34:40,730 hanya perlu menaip, atau untuk tambahan 726 00:34:40,730 --> 00:34:42,247 backslash, melarikan diri lain. 727 00:34:48,340 --> 00:34:50,774 Dan satu lagi, jika kita ingin mencetak keluar sebut harga - jadi 728 00:34:50,774 --> 00:34:53,040 pada dasarnya, apa-apa yang jenis menandakan sesuatu yang istimewa 729 00:34:53,040 --> 00:34:55,800 dalam rentetan, kita mahu untuk melarikan diri. 730 00:34:55,800 --> 00:34:58,700 Jadi mari kita mengatakan bahawa kita benar-benar mahu mempunyai quote di sini, kita akan 731 00:34:58,700 --> 00:34:59,840 mahu lakukan \ ". 732 00:34:59,840 --> 00:35:02,450 PENONTON: Jadi ia biasanya backslash? 733 00:35:02,450 --> 00:35:03,490 DAN Bradley: Ia biasanya backslash. 734 00:35:03,490 --> 00:35:03,740 Lexi ROSS: Ya. 735 00:35:03,740 --> 00:35:06,962 Untuk sebab-sebab tertentu di sini, ia adalah tanda peratus. 736 00:35:06,962 --> 00:35:08,212 >> PENONTON: [didengar]? 737 00:35:11,680 --> 00:35:13,400 DAN Bradley: lelaki ini? 738 00:35:13,400 --> 00:35:17,570 Ini adalah hanya untuk mengatakan, perkara itu yang dibahagikan di sini 739 00:35:17,570 --> 00:35:20,170 akan dilayan sebagai apungan demi bahagian. 740 00:35:25,110 --> 00:35:30,370 Jadi dalam kes 50 dibahagikan dengan 100, jika saya tidak mempunyai 741 00:35:30,370 --> 00:35:33,260 terapung di sana, ia hanya akan menjadi 0. 742 00:35:33,260 --> 00:35:35,930 Itu semua yang akan keluar, kerana 50 dibahagikan dengan 743 00:35:35,930 --> 00:35:40,510 100, jika anda tidak termasuk sebarang perpuluhan, adalah 0 - 744 00:35:40,510 --> 00:35:43,520 dan segala-galanya selepas perpuluhan hanya dipenggal mati. 745 00:35:43,520 --> 00:35:44,891 PENONTON: Um, 746 00:35:44,891 --> 00:35:48,550 mengapa tidak kita meletakkan ia sebelum penyebut serta? 747 00:35:48,550 --> 00:35:51,310 DAN Bradley: Jadi sebab kita tidak meletakkan ia di hadapan 748 00:35:51,310 --> 00:35:56,010 penyebut adalah kerana apabila anda membahagikan sesuatu dengan 749 00:35:56,010 --> 00:35:59,320 integer, ia berfungsi baik-baik saja. 750 00:35:59,320 --> 00:36:00,630 Mempunyai bilangan yang lebih besar di bahagian bawah 751 00:36:00,630 --> 00:36:02,790 tidak mengubah apa-apa. 752 00:36:02,790 --> 00:36:06,120 Anda boleh membahagikan oleh integer baik-baik saja. 753 00:36:06,120 --> 00:36:07,250 Ia hanya tidak benar-benar perkara. 754 00:36:07,250 --> 00:36:09,053 Anda boleh, ia tidak akan mengubah apa-apa. 755 00:36:09,053 --> 00:36:11,368 PENONTON: Jadi jika anda mahu tiga tempat perpuluhan, akan 756 00:36:11,368 --> 00:36:13,220 anda meletakkan peratus 0,03? 757 00:36:13,220 --> 00:36:14,100 DAN Bradley: Ya. 758 00:36:14,100 --> 00:36:17,440 Anda akan meletakkan% 0,03 jika anda mahu 759 00:36:17,440 --> 00:36:20,207 tiga tempat perpuluhan. 760 00:36:20,207 --> 00:36:23,793 >> PENONTON: Dan melakukan arahan, apakah perbezaan antara 761 00:36:23,793 --> 00:36:26,330 itu dan hanya melakukan manakala di atas? 762 00:36:26,330 --> 00:36:30,540 DAN Bradley: Jadi do sementara berbanding gelung sementara dua 763 00:36:30,540 --> 00:36:32,950 arahan agak serupa. 764 00:36:32,950 --> 00:36:36,810 Satu-satunya perbezaan adalah anda menjalankan kod sekali, anda menghadapi 765 00:36:36,810 --> 00:36:40,510 kod di dalam masa gelung satu sebelum 766 00:36:40,510 --> 00:36:42,940 membuat apa-apa cek sebenar. 767 00:36:42,940 --> 00:36:46,970 Jadi ia juga sebab yang boleh saya katakan penyebut tanpa memberi 768 00:36:46,970 --> 00:36:48,970 ia beberapa. 769 00:36:48,970 --> 00:36:52,180 Jadi jika saya berkata int penyebut, dan kemudian sementara (penyebut <= 770 00:36:52,180 --> 00:36:55,020 0), ia tidak mungkin walaupun 771 00:36:55,020 --> 00:36:56,890 jalankan dalam kod. 772 00:36:56,890 --> 00:36:59,350 Ia akan membuat cek yang sebelum ini - 773 00:36:59,350 --> 00:37:00,600 jadi di sini. 774 00:37:14,590 --> 00:37:19,020 Jadi, jika saya terpaksa ini gelung sementara di sini, saya perlu mempunyai 775 00:37:19,020 --> 00:37:25,280 penyebut sama, katakan, -2 atau beberapa nombor kurang 776 00:37:25,280 --> 00:37:28,150 daripada atau sama dengan 0 supaya ia sebenarnya akan cuba menjalankan kod 777 00:37:28,150 --> 00:37:30,130 di dalam pertama. 778 00:37:30,130 --> 00:37:33,190 Jadi secara umumnya bercakap, anda mahu menggunakan gelung do sementara 779 00:37:33,190 --> 00:37:37,750 bukannya gelung sementara apabila anda meminta untuk input pengguna 780 00:37:37,750 --> 00:37:41,820 kerana menjalankan kod sekali, meminta sesuatu yang pengguna 781 00:37:41,820 --> 00:37:46,920 akan memberi anda adalah umumnya penyelesaian terbaik, berbanding 782 00:37:46,920 --> 00:37:50,250 hanya mempercayai apa sahaja yang anda dimasukkan ke dalam untuk memulakan dengan. 783 00:37:50,250 --> 00:37:53,290 PENONTON: Dan lakukan sentiasa diikuti oleh seketika. 784 00:37:53,290 --> 00:37:56,550 DAN Bradley: Adakah diikuti oleh sebahagian beberapa kod yang anda 785 00:37:56,550 --> 00:38:01,470 mahu melaksanakan, dan kemudian manakala sesetengah keadaan adalah. 786 00:38:01,470 --> 00:38:03,820 Lexi ROSS: Fikirkan ia seperti satu arahan jenis dipecahkan 787 00:38:03,820 --> 00:38:04,390 kepada dua bahagian. 788 00:38:04,390 --> 00:38:06,836 Ia adalah do-sementara, tidak seperti di sini adalah lakukan, dan kemudian saya 789 00:38:06,836 --> 00:38:10,655 akan menambah beberapa ketika, ia hanya do-sementara. 790 00:38:10,655 --> 00:38:13,322 >> PENONTON: Saya memahami sebab mengapa anda menggunakan 791 00:38:13,322 --> 00:38:15,990 dua tanda peratus, tetapi anda boleh menjelaskan kepada saya mengapa kita perlu 792 00:38:15,990 --> 00:38:19,390 mempunyai [] didengar? 793 00:38:19,390 --> 00:38:22,690 DAN Bradley: Okay, jadi tanda satu peratusan hanya mengatakan 794 00:38:22,690 --> 00:38:26,150 printf, di sini adalah satu arahan yang saya mahu anda 795 00:38:26,150 --> 00:38:28,380 diisi dengan beberapa nombor. 796 00:38:28,380 --> 00:38:31,750 Jadi saya mahu anda untuk mengisi dengan dua tempat perpuluhan dan 797 00:38:31,750 --> 00:38:35,080 terapung, dan anda akan mendapati apungan pada akhir 798 00:38:35,080 --> 00:38:37,548 arahan, ia peratus ini. 799 00:38:37,548 --> 00:38:39,407 Adakah yang masuk akal? 800 00:38:39,407 --> 00:38:39,894 PENONTON: Ya. 801 00:38:39,894 --> 00:38:41,355 DAN Bradley: Okay. 802 00:38:41,355 --> 00:38:44,764 >> PENONTON: Apakah ada sesuatu tentang gelung do-manakala 803 00:38:44,764 --> 00:38:49,390 jika keadaan ini tidak dipenuhi, jika anda mendapat 804 00:38:49,390 --> 00:38:52,324 nombor negatif untuk pengangka anda, ia hanya akan menyimpan 805 00:38:52,324 --> 00:38:57,200 bertanya dan akan terus meminta pengguna? 806 00:38:57,200 --> 00:38:57,400 DAN Bradley: Ya. 807 00:38:57,400 --> 00:39:02,230 Jadi, jika keadaan semasa tidak dipenuhi pada akhir 808 00:39:02,230 --> 00:39:04,200 buat-sementara, ia akan berjalan kembali ke permulaan. 809 00:39:04,200 --> 00:39:05,860 Ia hanya gelung. 810 00:39:05,860 --> 00:39:08,000 Jadi ia adalah seperti gelung sementara bahawa keadaan telah tidak 811 00:39:08,000 --> 00:39:09,250 dipenuhi. 812 00:39:10,930 --> 00:39:13,740 Ia hanya berjalan satu masa yang lebih. 813 00:39:13,740 --> 00:39:14,558 Yeah. 814 00:39:14,558 --> 00:39:18,302 PENONTON: Jadi, jika anda melakukan ini, boleh anda, untuk sementara anda, 815 00:39:18,302 --> 00:39:22,430 meletakkan dua syarat dalam? 816 00:39:22,430 --> 00:39:24,452 DAN Bradley: Anda boleh. 817 00:39:24,452 --> 00:39:26,350 Ia bergantung apa yang anda meminta. 818 00:39:26,350 --> 00:39:35,150 Jadi anda boleh meletakkan dua syarat dalam gelung sementara jika anda mempunyai 819 00:39:35,150 --> 00:39:39,470 semua dalam sejenis operator Boolean, yang berbunyi 820 00:39:39,470 --> 00:39:44,740 hodoh, tetapi ia adalah pada dasarnya penyebut ini adalah kurang daripada atau 821 00:39:44,740 --> 00:39:48,730 bersamaan dengan sifar, sama ada pulangan benar atau palsu, betul? 822 00:39:48,730 --> 00:39:51,760 Ia adalah sama ada kurang atau sama dengan sifar atau tidak. 823 00:39:51,760 --> 00:39:55,640 Jadi anda boleh melakukan operator Boolean lain yang akan mengatakan semasa 824 00:39:55,640 --> 00:39:59,020 ini juga benar atau semasa ini juga palsu. 825 00:39:59,020 --> 00:40:04,630 Jadi ia adalah perkara-perkara seperti dan pengangka adalah lebih besar daripada 826 00:40:04,630 --> 00:40:05,770 sifar, betul? 827 00:40:05,770 --> 00:40:10,130 Itu bertanya, ini akan hanya gelung manakala penyebut adalah kurang 828 00:40:10,130 --> 00:40:12,496 daripada sifar dan anda mempunyai pengangka positif. 829 00:40:12,496 --> 00:40:13,700 PENONTON: Dan anda melakukan dua AND, kan? 830 00:40:13,700 --> 00:40:14,545 DAN Bradley: Dua AND. 831 00:40:14,545 --> 00:40:17,120 Lexi ROSS: Kami akan meliputi yang lebih kemudian. 832 00:40:17,120 --> 00:40:20,620 >> PENONTON: Bagaimana jika seseorang tidak meletakkan dalam positif 833 00:40:20,620 --> 00:40:22,018 penyebut? 834 00:40:22,018 --> 00:40:26,410 Jika mereka dimasukkan ke dalam pengangka negatif, anda boleh meminta mereka 835 00:40:26,410 --> 00:40:27,540 , berkata, dimasukkan ke dalam pengangka bukan negatif dan mempunyai 836 00:40:27,540 --> 00:40:30,460 arahan untuk itu? 837 00:40:30,460 --> 00:40:30,980 DAN Bradley: Anda boleh. 838 00:40:30,980 --> 00:40:32,066 PENONTON: Sekarang ia hanya mengatakan pengangka bukan negatif. 839 00:40:32,066 --> 00:40:33,690 Apa yang akan digunakan untuk itu? 840 00:40:33,690 --> 00:40:38,230 DAN Bradley: Jadi, anda akan mempunyai jika keadaan, jadi seperti jika 841 00:40:38,230 --> 00:40:42,282 pengangkanya adalah kurang daripada sifar. 842 00:40:42,282 --> 00:40:43,960 Lexi ROSS: Anda akan mungkin hanya mahu untuk memecahkan ia ke dalam lebih 843 00:40:43,960 --> 00:40:44,810 langkah-langkah, kan? 844 00:40:44,810 --> 00:40:49,660 Jadi kali pertama mereka dimasukkan ke dalam input, kita hanya akan berkata memberi 845 00:40:49,660 --> 00:40:50,880 kita pengangka atau barang kecil. 846 00:40:50,880 --> 00:40:53,430 Dan kemudian jika mereka melakukan perkara yang salah, ini mungkin menjadi kes 847 00:40:53,430 --> 00:40:55,570 untuk gelung sementara, bukannya do sementara, kerana kami mempunyai 848 00:40:55,570 --> 00:41:01,460 kali pertama kita mempunyai GetInt, dan kemudian manakala input yang 849 00:41:01,460 --> 00:41:04,040 buruk, kita terus meminta mereka untuk input lanjut dengan 850 00:41:04,040 --> 00:41:10,560 jenis yang berbeza teks, seperti yang tidak berfungsi atau memberi kita 851 00:41:10,560 --> 00:41:12,760 bukan negatif pengangka sebaliknya, bahawa jenis perkara. 852 00:41:17,670 --> 00:41:19,143 >> DAN Bradley: Ya? 853 00:41:19,143 --> 00:41:22,089 PENONTON: Bagaimana anda membersihkan barangan yang [didengar] 854 00:41:22,089 --> 00:41:23,562 terminal? 855 00:41:23,562 --> 00:41:25,526 Lexi ROSS: Clear. 856 00:41:25,526 --> 00:41:27,140 DAN Bradley: Ya, anda tidak boleh menaip ke dalamnya. 857 00:41:27,140 --> 00:41:28,710 Lexi ROSS: Sebenarnya, ini bukanlah terminal sebenar. 858 00:41:28,710 --> 00:41:31,170 Persoalannya ialah bagaimana anda membersihkan barangan yang di bawah sana? 859 00:41:31,170 --> 00:41:33,200 Jawapannya ialah ia bukan terminal sebenar, tetapi katakan anda 860 00:41:33,200 --> 00:41:34,450 berada dalam terminal sebenar. 861 00:41:42,420 --> 00:41:45,200 Jelas. 862 00:41:45,200 --> 00:41:46,450 Oh, ia adalah kucing. 863 00:41:53,940 --> 00:41:55,190 DAN Bradley: [didengar]? 864 00:41:59,500 --> 00:42:01,120 Ia adalah satu, betul-betul? 865 00:42:01,120 --> 00:42:01,790 Lexi ROSS: Tidak, itu semua barangan saya. 866 00:42:01,790 --> 00:42:03,040 DAN Bradley: [didengar]. 867 00:42:05,300 --> 00:42:07,912 Lexi ROSS: Terdapat kita pergi. 868 00:42:07,912 --> 00:42:08,340 DAN Bradley: Ya? 869 00:42:08,340 --> 00:42:10,030 >> PENONTON: Adakah kerja yang jelas jika anda mempunyai - 870 00:42:10,030 --> 00:42:12,787 suka, katakan anda menjalankan program [didengar] dan ia meminta 871 00:42:12,787 --> 00:42:15,315 anda untuk sesuatu, dan anda tidak mahu. 872 00:42:15,315 --> 00:42:16,080 Bagaimana anda - 873 00:42:16,080 --> 00:42:17,200 DAN Bradley: Control + C? 874 00:42:17,200 --> 00:42:17,780 Lexi ROSS: Ya. 875 00:42:17,780 --> 00:42:20,640 Jadi, jika anda menjalankan program dan sesuatu yang tidak akan 876 00:42:20,640 --> 00:42:22,410 cara yang anda mahu ia dan anda hanya mahu keluar keseluruhannya 877 00:42:22,410 --> 00:42:25,560 program, Control + C. Malah jika anda pada Mac, bukan Apple + C, 878 00:42:25,560 --> 00:42:34,341 Control + C. 879 00:42:34,341 --> 00:42:35,523 PENONTON: Adakah anda mempunyai versi yang betul dalam 880 00:42:35,523 --> 00:42:36,820 semakan dalam profil anda? 881 00:42:36,820 --> 00:42:39,780 DAN Bradley: Saya fikir ia disimpan, bukan? 882 00:42:39,780 --> 00:42:40,350 Yeah. 883 00:42:40,350 --> 00:42:41,040 Lexi ROSS: Ini adalah ruang. 884 00:42:41,040 --> 00:42:42,290 Yeah. 885 00:42:49,685 --> 00:42:57,496 Saya fikir ia Semakan 11. 886 00:42:57,496 --> 00:42:59,468 >> DAN Bradley: Ya? 887 00:42:59,468 --> 00:43:02,426 PENONTON: Adakah C membuat sebarang andaian tentang apa yang 888 00:43:02,426 --> 00:43:05,877 pembolehubah adalah jika anda menentukan pemboleh ubah tetapi tidak menetapkan 889 00:43:05,877 --> 00:43:07,590 apa-apa untuk segera? 890 00:43:07,590 --> 00:43:11,380 DAN Bradley: Jadi ia hanya akan menerima ints ke tempat itu. 891 00:43:11,380 --> 00:43:13,980 Jadi jika anda mengisytiharkan ia - 892 00:43:13,980 --> 00:43:16,842 PENONTON: Jika saya hanya melakukan int penyebut koma bertitik, adakah ia 893 00:43:16,842 --> 00:43:18,750 menganggap bahawa ia adalah bersamaan dengan sifar atau mana-mana nombor -? 894 00:43:18,750 --> 00:43:20,210 DAN Bradley: Nope. 895 00:43:20,210 --> 00:43:25,920 Jadi jika anda tidak menyerahhakkan, katakan, int penyebut untuk sebarang nilai, 896 00:43:25,920 --> 00:43:28,860 ia boleh menjadi apa-apa. 897 00:43:28,860 --> 00:43:31,150 Ia adalah memori lama yang berada di lokasi tersebut. 898 00:43:31,150 --> 00:43:34,050 Supaya ia boleh menjadi negatif 2000000000, ia boleh menjadi positif 899 00:43:34,050 --> 00:43:38,030 2 bilion, dan ia boleh di mana-mana di antara. 900 00:43:38,030 --> 00:43:44,170 Jadi, jika anda sebenarnya menjalankan perkara, pastikan anda 901 00:43:44,170 --> 00:43:46,080 memberikan nilai kepada pembolehubah. 902 00:43:46,080 --> 00:43:49,050 Ini, ia tidak menjadi masalah kerana kami segera 903 00:43:49,050 --> 00:43:52,580 memberikan nilai, tetapi secara umumnya bercakap, yeah. 904 00:44:01,660 --> 00:44:04,640 Mana-mana soalan-soalan lain? 905 00:44:04,640 --> 00:44:06,300 >> Lexi ROSS: Kita juga boleh hanya mengambil soalan umum pada ini 906 00:44:06,300 --> 00:44:10,600 titik pada bahan kuliah, bahan p set, apa sahaja yang anda telah 907 00:44:10,600 --> 00:44:15,363 telah tertanya-tanya tentang, ini adalah masa yang baik untuk meminta mereka. 908 00:44:15,363 --> 00:44:16,325 PENONTON: Jadi dalam walkthroughs, Zamyla 909 00:44:16,325 --> 00:44:17,768 disebut fungsi bulat. 910 00:44:17,768 --> 00:44:21,540 Adakah anda keberatan menghuraikan tentang bagaimana untuk melaksanakan? 911 00:44:21,540 --> 00:44:22,940 Lexi ROSS: Pasti, bagaimana untuk melaksanakan? 912 00:44:22,940 --> 00:44:25,700 PENONTON: Beliau berkata ia adalah bulat. 913 00:44:25,700 --> 00:44:26,580 Lexi ROSS: Oh yeah. 914 00:44:26,580 --> 00:44:29,880 Jadi hanya jadi kita semua mempunyai vocab dan barangan yang sama, 915 00:44:29,880 --> 00:44:33,070 melaksanakannya secara amnya bermaksud sebenarnya bertulis dari awal. 916 00:44:33,070 --> 00:44:35,530 Dan jadi saya tidak fikir dia bercakap tentang jenis bertulis 917 00:44:35,530 --> 00:44:36,010 fungsi bulat. 918 00:44:36,010 --> 00:44:37,820 Dia mungkin hanya bertujuan bagaimana untuk menggunakannya. 919 00:44:37,820 --> 00:44:41,900 Melaksanakan bermakna jenis seperti mewujudkan. 920 00:44:41,900 --> 00:44:48,670 Jadi secara amnya, masa yang apabila kita mahu menggunakan fungsi bulat saya 921 00:44:48,670 --> 00:44:49,170 bermakna, jenis, misalnya, 922 00:44:49,170 --> 00:44:50,260 jika anda mahu untuk pusingan. 923 00:44:50,260 --> 00:44:53,140 Bolehkah anda memberi saya konteks yang lebih sedikit tentang apa yang 924 00:44:53,140 --> 00:44:53,907 masalah? 925 00:44:53,907 --> 00:44:56,192 PENONTON: Untuk mengelakkan imprecisions perpuluhan 926 00:44:56,192 --> 00:44:58,480 dengan menjadikannya apungan. 927 00:44:58,480 --> 00:44:59,020 Lexi ROSS: Ya. 928 00:44:59,020 --> 00:45:02,770 Jadi isu dengan terapung bahawa kita telah jenis dirujuk kepada 929 00:45:02,770 --> 00:45:04,820 bahawa kerana cara mereka disimpan di dalam mesin, 930 00:45:04,820 --> 00:45:08,700 mereka tidak 100% tepat dalam cara yang anda mungkin berfikir 931 00:45:08,700 --> 00:45:10,060 kalkulator anda akan menyimpan mereka. 932 00:45:13,560 --> 00:45:16,560 Ia adalah sukar bagi saya untuk menunjukkan contoh tanpa mengetahui apa yang 933 00:45:16,560 --> 00:45:17,750 konteks adalah dari. 934 00:45:17,750 --> 00:45:18,920 Saya tidak tahu, anda boleh memikirkan sesuatu, Dan? 935 00:45:18,920 --> 00:45:23,120 >> DAN Bradley: Jadi, jika anda meminta untuk, katakan, nombor 936 00:45:23,120 --> 00:45:26,590 lebih daripada 10 dan anda sedang menggunakan pelampung, dan anda menambah satu 937 00:45:26,590 --> 00:45:30,810 kepada apungan setiap masa, ia kadang-kadang akan tunggu sehingga anda telah 938 00:45:30,810 --> 00:45:34,470 mendapat ke 12 sebelum ia akan mengatakan ini adalah sebenarnya nombor 939 00:45:34,470 --> 00:45:36,520 lebih daripada 10. 940 00:45:36,520 --> 00:45:42,530 Terapung mempunyai beberapa isu-isu serius hanya antara ke-32 941 00:45:42,530 --> 00:45:49,970 dan 33 tempat perpuluhan yang akan pergi, jadi ia mungkin 9,9999999, atau 942 00:45:49,970 --> 00:45:53,210 ia mungkin 10.0000001, kan? 943 00:45:53,210 --> 00:45:55,680 Ia tidak benar-benar membezakan antara kedua-dua, jadi jika anda 944 00:45:55,680 --> 00:45:59,310 menunggu untuk perkara-perkara yang lebih besar daripada atau sama dengan 10, anda mungkin 945 00:45:59,310 --> 00:46:03,440 tidak sampai ke sana pada apa yang anda fikir adalah lelaran 10. 946 00:46:03,440 --> 00:46:07,760 Anda mungkin sampai ke sana dalam 11. 947 00:46:07,760 --> 00:46:08,980 Lexi ROSS: Pada asasnya, yeah. 948 00:46:08,980 --> 00:46:11,490 Apabila anda menggelung lebih banyak terapung, itulah apabila 949 00:46:11,490 --> 00:46:13,276 imprecisions berlaku. 950 00:46:13,276 --> 00:46:18,350 PENONTON: Saya fikir, jadi pada dasarnya, ia adalah seperti di p 951 00:46:18,350 --> 00:46:24,030 ditetapkan, ia mahu anda untuk pusingan nilai apung, dan jika anda dimasukkan ke dalam 952 00:46:24,030 --> 00:46:29,940 4,24 untuk jumlah perubahan anda perlu kembali, jika anda hanya melakukan 953 00:46:29,940 --> 00:46:33,970 kali 100, ia sebenarnya akan berubah ke 423 - 954 00:46:33,970 --> 00:46:34,460 DAN Bradley: Kadang-kadang, yeah. 955 00:46:34,460 --> 00:46:36,974 PENONTON: Jadi saya fikir ia adalah sama seperti, bagaimana anda menggunakan pusingan 956 00:46:36,974 --> 00:46:39,390 fungsi dalam kod sebenar untuk membuat ia supaya ia tidak berbuat demikian? 957 00:46:39,390 --> 00:46:44,390 DAN Bradley: Jadi jika anda pembundaran 424 dengan mendarabkan 958 00:46:44,390 --> 00:46:48,320 sebanyak 100 dan membuat ia ke dalam integer, ia akan kadang-kadang 959 00:46:48,320 --> 00:46:52,130 menjadikan ia 423 kerana ketakpersisan itu. 960 00:46:52,130 --> 00:46:58,926 Dan supaya perkara-perkara yang boleh anda lakukan hanya menambah 0,0000003. 961 00:46:58,926 --> 00:47:00,744 PENONTON: Tetapi saya fikir, sebenarnya, mereka mahu 962 00:47:00,744 --> 00:47:02,400 kita menggunakan pusingan. 963 00:47:02,400 --> 00:47:03,250 DAN Bradley: Fungsi bulat? 964 00:47:03,250 --> 00:47:06,310 Terdapat mungkin fungsi matematik, sesuatu dalam 965 00:47:06,310 --> 00:47:06,996 perpustakaan matematik. 966 00:47:06,996 --> 00:47:07,910 PENONTON: # include matematik. 967 00:47:07,910 --> 00:47:10,150 DAN Bradley: # termasuk , dan ada 968 00:47:10,150 --> 00:47:10,990 mungkin fungsi bulat. 969 00:47:10,990 --> 00:47:12,480 PENONTON: Sama seperti pusingan () -? 970 00:47:12,480 --> 00:47:13,840 Lexi ROSS: Pada asasnya, kerana anda mahu untuk pusingan 971 00:47:13,840 --> 00:47:14,720 peratus yang terdekat. 972 00:47:14,720 --> 00:47:16,440 DAN Bradley: Mari kita tarik sehingga halaman manusia. 973 00:47:16,440 --> 00:47:19,460 Jadi alat yang berguna, jika anda tidak tahu - 974 00:47:19,460 --> 00:47:21,800 anda tarik sehingga terminal - 975 00:47:21,800 --> 00:47:23,670 adalah jika anda pergi ke matematik lelaki. 976 00:47:27,272 --> 00:47:29,030 Lexi ROSS: Cool. 977 00:47:29,030 --> 00:47:34,970 >> Jadi anda boleh melihat, jadi manusia adalah singkatan bagi pengguna, bukan manusia, dan 978 00:47:34,970 --> 00:47:37,660 ia membolehkan anda untuk mencari maklumat lebih lanjut mengenai apa-apa yang diberikan 979 00:47:37,660 --> 00:47:40,000 fungsi atau perpustakaan yang anda mungkin berurusan dengan. 980 00:47:40,000 --> 00:47:44,040 Jadi saya hanya ditaip dalam matematik lelaki. 981 00:47:44,040 --> 00:47:45,290 Biar saya zum masuk 982 00:47:50,990 --> 00:47:52,610 DAN Bradley: Kita boleh cuba bulat manusia, terlalu. 983 00:47:52,610 --> 00:47:55,060 Lexi ROSS: Pasti. 984 00:47:55,060 --> 00:47:56,870 DAN Bradley: Dan ini akan menyenaraikan keluar - 985 00:47:56,870 --> 00:48:00,640 matematik manusia akan menyenaraikan segala-galanya yang di perpustakaan matematik, 986 00:48:00,640 --> 00:48:02,820 yang kita akan termasuk. 987 00:48:02,820 --> 00:48:04,080 Ya, kita juga mempunyai bulat. 988 00:48:04,080 --> 00:48:06,690 Lexi ROSS: Jadi saya hanya melakukan pusingan lelaki. 989 00:48:06,690 --> 00:48:10,460 Anda boleh lihat di sini di sinopsis, ia mengatakan # include 990 00:48:10,460 --> 00:48:16,510 , supaya jenis seperti cs50.h, stdio.h. 991 00:48:16,510 --> 00:48:19,020 Dan ia kelihatan seperti ia sebenarnya beban, bermakna 992 00:48:19,020 --> 00:48:22,930 ia mengambil pelbagai jenis hujah, jadi anda boleh pusingan 993 00:48:22,930 --> 00:48:24,320 beregu atau terapung. 994 00:48:24,320 --> 00:48:26,740 DAN Bradley: Pusingan berbanding roundf. 995 00:48:26,740 --> 00:48:27,335 Lexi ROSS: Roundf. 996 00:48:27,335 --> 00:48:30,128 Adakah Zamyla menyebut roundf berbanding pusingan? 997 00:48:30,128 --> 00:48:34,120 PENONTON: Dalam Walkthrough, ia hanya bulat (). 998 00:48:34,120 --> 00:48:36,780 DAN Bradley: Okay, jadi dia mungkin telah menggunakan dua kali ganda, 999 00:48:36,780 --> 00:48:39,110 kemudian, berbanding kepada apungan. 1000 00:48:39,110 --> 00:48:43,080 Okay, jadi anda akan membiak dengan 100 dan kemudian pusingan ia, dan 1001 00:48:43,080 --> 00:48:47,950 anda akan mendapat nombor yang paling dekat dengan ia, saya fikir. 1002 00:48:47,950 --> 00:48:50,450 >> Lexi ROSS: Jadi fungsi bulat mengembalikan kamiran 1003 00:48:50,450 --> 00:48:53,760 nilai terdekat untuk pembundaran x separuh kes jauh dari 0, 1004 00:48:53,760 --> 00:48:55,850 tanpa mengira arah pembundaran semasa. 1005 00:48:55,850 --> 00:49:00,160 Jadi, pada asasnya, anda mahu hanya pusingan sekali anda berada di 1006 00:49:00,160 --> 00:49:01,830 nilai integer, jadi anda membiak oleh 1007 00:49:01,830 --> 00:49:03,896 100 dan kemudian bulat. 1008 00:49:03,896 --> 00:49:05,787 Adakah yang lebih masuk akal? 1009 00:49:05,787 --> 00:49:10,580 PENONTON: Untuk menggunakan fungsi itu dalam fail C, anda perlu 1010 00:49:10,580 --> 00:49:15,475 meletakkan terapung bulat, seperti jika pembolehubah anda dipanggil q, adakah anda 1011 00:49:15,475 --> 00:49:21,216 meletakkan pusingan (mengapung) q, dan kemudian kurungan, atau boleh 1012 00:49:21,216 --> 00:49:23,770 anda hanya meletakkan bulat, dan kemudian q dalam kurungan? 1013 00:49:23,770 --> 00:49:27,180 DAN Bradley: Jadi jika anda telah cuba untuk menggunakan fungsi ini 1014 00:49:27,180 --> 00:49:33,360 sebenarnya, anda akan mengambil bahawa q, q apungan, 1015 00:49:33,360 --> 00:49:34,995 atau bagaimana ia mengisytiharkan? 1016 00:49:34,995 --> 00:49:35,980 PENONTON: Q ialah apungan. 1017 00:49:35,980 --> 00:49:39,080 DAN Bradley: Jadi jika q diisytiharkan sebagai apungan, anda akan 1018 00:49:39,080 --> 00:49:42,150 hanya mengambil bulat, dan kemudian memberikan q. 1019 00:49:42,150 --> 00:49:45,770 Anda mungkin perlu untuk mengisytiharkan ia sebagai dua kali ganda dalam kes ini. 1020 00:49:45,770 --> 00:49:47,170 Lexi ROSS: Ya, melainkan jika anda mahu menggunakan roundf. 1021 00:49:47,170 --> 00:49:50,620 PENONTON: saya hanya boleh menggunakan roundf, dan kemudian q dalam petikan? 1022 00:49:50,620 --> 00:49:53,706 DAN Bradley: Tidak, tidak dalam petikan, hanya q. 1023 00:49:53,706 --> 00:49:55,542 PENONTON: Maaf, tidak dalam petikan, dalam kurungan. 1024 00:49:55,542 --> 00:49:56,792 DAN Bradley: Dalam kurungan, yeah. 1025 00:50:00,330 --> 00:50:02,040 Lexi ROSS: Maaf yang sedikit mengelirukan. 1026 00:50:02,040 --> 00:50:03,067 Apa-apa lagi soalan? 1027 00:50:03,067 --> 00:50:04,041 >> DAN Bradley: Ya? 1028 00:50:04,041 --> 00:50:07,450 PENONTON: Jadi pusingan pusingan hanya untuk integer? 1029 00:50:07,450 --> 00:50:08,920 Lexi ROSS: Ya. 1030 00:50:08,920 --> 00:50:11,020 DAN Bradley: Ya, pusingan pusingan hanya kepada integer. 1031 00:50:11,020 --> 00:50:13,030 PENONTON: Jadi jika anda mahu mempunyai sesuatu yang tepat yang 1032 00:50:13,030 --> 00:50:15,146 diperlukan untuk menjadi [didengar] didarab dengan 100 dan kemudian 1033 00:50:15,146 --> 00:50:17,536 dibahagikan dengan 100 lagi jika anda mahu -? 1034 00:50:20,410 --> 00:50:23,497 Lexi ROSS: Jadi, jika anda mahu untuk mendapatkan ia ke dalam bentuk perpuluhan? 1035 00:50:23,497 --> 00:50:27,224 PENONTON: Yah contoh, misalnya, [didengar] anda 1036 00:50:27,224 --> 00:50:30,732 mempunyai 1.25 dan kemudian [didengar] 1037 00:50:30,732 --> 00:50:36,100 1,24, jika anda mahu untuk memastikan bahawa sebagai 1,25, anda akan 1038 00:50:36,100 --> 00:50:39,516 membiak bahawa dengan 100, pusingan, dan kemudian membahagi dengan 100 1039 00:50:39,516 --> 00:50:41,480 sekali lagi untuk mendapatkan 1,25? 1040 00:50:41,480 --> 00:50:41,860 Lexi ROSS: Ya. 1041 00:50:41,860 --> 00:50:46,770 Jadi persoalannya ialah, kerana pembundaran, sebagai halaman lelaki 1042 00:50:46,770 --> 00:50:50,470 berkata, pusingan kepada nilai kamiran terdekat, adakah itu bermakna 1043 00:50:50,470 --> 00:50:53,420 bahawa seseorang mahu untuk membiak dengan 100, melakukan 1044 00:50:53,420 --> 00:50:56,260 pembundaran, dan dibahagikan dengan 100 lagi, katakan, dapatkan yang betul 1045 00:50:56,260 --> 00:50:58,750 nilai dolar dan sen? 1046 00:50:58,750 --> 00:51:02,000 Dan jawapannya ialah? 1047 00:51:02,000 --> 00:51:02,160 DAN Bradley: No. 1048 00:51:02,160 --> 00:51:04,840 Maksud saya, jika anda hanya mendapat nilai apung, jika anda memulakan 1049 00:51:04,840 --> 00:51:08,730 dengan nilai apungan sebanyak 1.25, itulah bagaimana ia akan menjadi 1050 00:51:08,730 --> 00:51:10,260 ditafsirkan. 1051 00:51:10,260 --> 00:51:13,790 Jadi, jika anda kalikan dengan 100 dan kemudian dibahagikan dengan 100, 1052 00:51:13,790 --> 00:51:17,130 ia masih akan ditafsirkan sebagai 1,25, atau 1053 00:51:17,130 --> 00:51:18,260 mungkin 1,249 ... 1054 00:51:18,260 --> 00:51:19,440 .. 999. 1055 00:51:19,440 --> 00:51:21,630 Lexi ROSS: Saya fikir soalan adalah seperti, anda akan 1056 00:51:21,630 --> 00:51:24,850 darab, kemudian gunakan bulat, kemudian membahagi, jadi ia seperti - 1057 00:51:24,850 --> 00:51:25,290 DAN Bradley: Ya. 1058 00:51:25,290 --> 00:51:27,530 Saya masih tidak fikir ia mengubah apa-apa, walaupun. 1059 00:51:27,530 --> 00:51:28,000 Saya fikir ia masih. 1060 00:51:28,000 --> 00:51:30,550 Lexi ROSS: Kerana pusingan tidak - ia menggunakan integer. 1061 00:51:30,550 --> 00:51:34,080 Jadi, jika anda cuba untuk pusingan 1,25, anda hanya mendapat 1. 1062 00:51:34,080 --> 00:51:36,570 Jadi saya fikir untuk mendapatkan seperti ketepatan tambahan, 1063 00:51:36,570 --> 00:51:37,720 jika itulah apa yang anda bercakap tentang. 1064 00:51:37,720 --> 00:51:42,260 >> PENONTON: Jadi dalam apa keadaan tidak anda menggunakan bulat, kemudian? 1065 00:51:42,260 --> 00:51:44,920 DAN Bradley: Jadi dalam kes ini, jika anda mahu, katakan, nombor 1066 00:51:44,920 --> 00:51:51,570 sen dari $ 1,25, anda akan membiak dengan 100, bulat, dapatkan 1067 00:51:51,570 --> 00:51:56,980 125, dan meninggalkan kerana itu, sebagai sen, berbanding cuba 1068 00:51:56,980 --> 00:51:58,760 menukar kembali ke dalam dolar dan sen. 1069 00:51:58,760 --> 00:52:02,092 Lexi ROSS: Oh yeah, yeah, pasti. 1070 00:52:02,092 --> 00:52:04,948 PENONTON: Mengapa anda perlu ke pusingan bahawa [didengar]? 1071 00:52:07,810 --> 00:52:10,740 DAN Bradley: Jadi jika anda kalikan dengan 100 dan kemudian 1072 00:52:10,740 --> 00:52:14,060 segera menukarkan ia kepada integer, yang merupakan lebih 1073 00:52:14,060 --> 00:52:17,950 bentuk yang berguna, yang apabila anda berurusan dengan 1074 00:52:17,950 --> 00:52:19,470 ketakpersisan, kan? 1075 00:52:19,470 --> 00:52:26,450 Jadi ia mungkin 124.999999, dan supaya jika anda kemudian menukar bahawa untuk 1076 00:52:26,450 --> 00:52:29,480 integer, ia hanya turun segala-galanya off yang di bawah 1077 00:52:29,480 --> 00:52:29,930 perpuluhan. 1078 00:52:29,930 --> 00:52:31,160 PENONTON: Jadi, ia akan memberikan anda [didengar]. 1079 00:52:31,160 --> 00:52:34,960 Bradley DAN: Tepat, bukannya daripada 125, yang merupakan 1080 00:52:34,960 --> 00:52:37,074 mengapa anda mahu untuk pusingan. 1081 00:52:37,074 --> 00:52:38,850 >> PENONTON: Maaf, anda boleh mengulangi apa yang anda kata anda 1082 00:52:38,850 --> 00:52:40,680 perlu lakukan berbanding dengan apa yang anda tidak patut lakukan? 1083 00:52:40,680 --> 00:52:40,910 DAN Bradley: Okay. 1084 00:52:40,910 --> 00:52:45,725 Jadi apa yang anda harus lakukan ialah jika anda bermula dengan 1.25, darab 1085 00:52:45,725 --> 00:52:51,960 dengan 100, dan kemudian pusingan bahawa nombor bulat, bahawa 125 atau 1086 00:52:51,960 --> 00:52:56,420 124.9999, dan mendapatkan bahawa kepada integer terhampir. 1087 00:52:56,420 --> 00:52:58,420 PENONTON: Jadi jika anda pusingan, yang meletakkan ia 1088 00:52:58,420 --> 00:52:59,920 kepada integer terhampir? 1089 00:52:59,920 --> 00:53:01,420 DAN Bradley: Ya. 1090 00:53:01,420 --> 00:53:07,420 PENONTON: Adakah terdapat cara untuk mengehadkan, jika anda meminta apungan 1091 00:53:07,420 --> 00:53:10,920 untuk dimasukkan, ada satu cara untuk menghadkan berapa banyak perpuluhan 1092 00:53:10,920 --> 00:53:13,920 tempat-tempat yang anda boleh input apungan untuk? 1093 00:53:13,920 --> 00:53:16,210 Lexi ROSS: Tidak menggunakan pelaksanaan CS50. 1094 00:53:16,210 --> 00:53:22,560 Maksud saya, anda boleh mengira berapa besar input yang diberikan oleh 1095 00:53:22,560 --> 00:53:25,020 pengguna, tetapi yang akan memerlukan pelaksanaan baru 1096 00:53:25,020 --> 00:53:29,780 GetFloat, jadi anda tidak perlu bimbang tentang itu. 1097 00:53:29,780 --> 00:53:34,850 DAN Bradley: Jadi jika mereka, berkata, input 1,256, anda boleh hanya 1098 00:53:34,850 --> 00:53:38,310 menggunakan 1.25 atau anda boleh melakukan 1,26. 1099 00:53:38,310 --> 00:53:40,450 Cara sama ada, saya fikir pelaksanaan mengatakan anda boleh - 1100 00:53:40,450 --> 00:53:41,860 PENONTON: Anda hanya boleh telah keliling - 1101 00:53:41,860 --> 00:53:46,860 DAN Bradley: Apa ia mahu, yeah, selagi anda melakukannya 1102 00:53:46,860 --> 00:53:48,110 beberapa jenis pembundaran. 1103 00:53:51,410 --> 00:53:53,950 Apa-apa lagi? 1104 00:53:53,950 --> 00:53:55,200 Tidak perlu berada kira-kira pembundaran. 1105 00:54:00,886 --> 00:54:01,374 Lexi ROSS: Ya? 1106 00:54:01,374 --> 00:54:03,814 >> PENONTON: Jika kita mahu untuk memeriksa untuk melihat jika gaya kami 1107 00:54:03,814 --> 00:54:06,285 kod adalah sesuai atau gaya terbaik 1108 00:54:06,285 --> 00:54:08,585 bahawa ia boleh menjadi, adalah bahawa jenis perkara kita akan membawa dalam 1109 00:54:08,585 --> 00:54:11,460 di bawah seksyen ini, atau pada waktu pejabat, atau yang jenis perkara 1110 00:54:11,460 --> 00:54:15,582 kita boleh menyiarkan secara tertutup pada benda itu, perbincangan, dan kemudian 1111 00:54:15,582 --> 00:54:17,280 meminta nasihat mengenai? 1112 00:54:17,280 --> 00:54:20,400 Lexi ROSS: Jadi kita tidak lakukan, pada waktu pejabat atau pada CS50 1113 00:54:20,400 --> 00:54:23,510 Bincangkan, kita tidak akan benar-benar gred set p anda terlebih dahulu 1114 00:54:23,510 --> 00:54:26,420 untuk gaya, tetapi saya fikir mungkin yang paling berguna 1115 00:54:26,420 --> 00:54:29,800 perkara yang anda boleh lakukan adalah untuk melihat contoh-contoh, dan anda 1116 00:54:29,800 --> 00:54:35,290 harus mampu untuk mendapati bahawa dalam kod seksyen, yang sepatutnya 1117 00:54:35,290 --> 00:54:39,290 talian diedarkan, serta slaid kuliah, terdapat 1118 00:54:39,290 --> 00:54:40,730 harus menjadi contoh kod. 1119 00:54:40,730 --> 00:54:43,150 Tetapi jika anda mempunyai soalan individu kira-kira satu tertentu 1120 00:54:43,150 --> 00:54:46,300 isu gaya, pasti berasa bebas untuk meminta bahawa pada CS50 1121 00:54:46,300 --> 00:54:49,320 Berbincang, dan waktu pejabat, atau pada masa anda sendiri. 1122 00:54:49,320 --> 00:54:52,330 Tetapi jika ia adalah lebih melihat umum pada kod saya, ia adalah yang terbaik untuk 1123 00:54:52,330 --> 00:54:55,610 jenis contoh penggunaan dan cuba untuk menyesuaikan kod anda itu. 1124 00:54:55,610 --> 00:54:57,560 Dan saya percaya terdapat panduan gaya pada - 1125 00:54:57,560 --> 00:54:58,640 DAN Bradley: Ada panduan gaya. 1126 00:54:58,640 --> 00:54:59,830 Panduan gaya yang hebat. 1127 00:54:59,830 --> 00:55:03,670 Ia mengajar anda semua yang anda perlukan, dan ia meliputi cukup 1128 00:55:03,670 --> 00:55:07,710 banyak contoh setiap dikenali kepada manusia, atau sekurang-kurangnya diketahui kepada saya. 1129 00:55:10,750 --> 00:55:12,000 >> Apa-apa lagi? 1130 00:55:14,830 --> 00:55:15,275 Semua hak. 1131 00:55:15,275 --> 00:55:15,840 Cool, guys. 1132 00:55:15,840 --> 00:55:16,440 Lexi ROSS: Mempunyai hari yang hebat. 1133 00:55:16,440 --> 00:55:17,690 DAN Bradley: Terima kasih kerana datang.