1 00:00:07,090 --> 00:00:07,370 [Powered by Google Translate] VIPUL SHEKHAWAT: Hi. 2 00:00:07,370 --> 00:00:09,410 Dalam video ini saya akan memperkenalkan Anda ke salah satu yang paling 3 00:00:09,410 --> 00:00:11,260 mendasar konsep dalam logika dan 4 00:00:11,260 --> 00:00:13,880 pemrograman, nilai Boolean. 5 00:00:13,880 --> 00:00:16,210 Jika Anda penasaran tentang nama, nilai-nilai Boolean dan 6 00:00:16,210 --> 00:00:19,440 kondisi yang dinamai George Boole, abad ke-19 7 00:00:19,440 --> 00:00:22,030 matematika yang merintis apa yang sekarang disebut Boolean 8 00:00:22,030 --> 00:00:23,980 logika, yang didasarkan oleh pengelompokan dan 9 00:00:23,980 --> 00:00:26,030 membandingkan nilai-nilai Boolean. 10 00:00:26,030 --> 00:00:28,250 >> Jadi apa nilai Boolean? 11 00:00:28,250 --> 00:00:30,920 Sebuah nilai Boolean adalah variabel yang hanya memiliki dua kemungkinan 12 00:00:30,920 --> 00:00:33,710 kondisi, benar dan salah. 13 00:00:33,710 --> 00:00:35,380 Anda dapat menganggapnya sebagai tombol lampu. 14 00:00:35,380 --> 00:00:38,530 Hal ini dapat on atau off, benar atau salah. 15 00:00:38,530 --> 00:00:41,880 Demikian pula, bilangan biner dapat berupa satu atau nol, yang 16 00:00:41,880 --> 00:00:45,680 adalah analog dengan hal yang sama, benar atau salah. 17 00:00:45,680 --> 00:00:46,840 Sederhana, kan? 18 00:00:46,840 --> 00:00:48,750 Konsep variabel Boolean mudah 19 00:00:48,750 --> 00:00:51,720 mengerti, tapi cara-cara di mana Anda dapat memanipulasi dan 20 00:00:51,720 --> 00:00:54,570 menggabungkan mereka memungkinkan untuk banyak kompleksitas yang lebih besar. 21 00:00:54,570 --> 00:00:57,030 Selain dua nilai Boolean yang mendasar, 22 00:00:57,030 --> 00:00:59,350 ada operator Boolean banyak yang dapat menggabungkan dua 23 00:00:59,350 --> 00:01:01,760 Boolean nilai-nilai ke dalam satu. 24 00:01:01,760 --> 00:01:03,540 >> Dua dari yang paling dasar, namun yang paling penting 25 00:01:03,540 --> 00:01:06,570 operator, adalah AND dan OR. 26 00:01:06,570 --> 00:01:09,950 Para operator AND menghasilkan nilai benar hanya jika kedua 27 00:01:09,950 --> 00:01:14,630 nilai-nilai yang diperlukan adalah benar, begitu palsu DAN benar adalah palsu. 28 00:01:14,630 --> 00:01:17,540 Demikian juga, palsu DAN palsu adalah palsu. 29 00:01:17,540 --> 00:01:21,080 Hanya benar DAN benar sama benar. 30 00:01:21,080 --> 00:01:24,050 Hasil Operator OR dalam nilai benar jika salah satu dari 31 00:01:24,050 --> 00:01:25,620 nilai-nilai yang diperlukan adalah benar. 32 00:01:25,620 --> 00:01:30,460 Jadi palsu ATAU palsu adalah palsu, tapi benar ATAU palsu adalah benar, dan 33 00:01:30,460 --> 00:01:33,710 benar ATAU benar juga benar. 34 00:01:33,710 --> 00:01:36,560 Operator TIDAK hanya mengambil sebuah variabel Boolean dan memberikan 35 00:01:36,560 --> 00:01:37,830 Anda kebalikan dari itu. 36 00:01:37,830 --> 00:01:40,950 Jadi benar menjadi salah dan yang salah menjadi benar. 37 00:01:40,950 --> 00:01:43,130 Jika Anda menempatkan semuanya bersama-sama, variabel dengan 38 00:01:43,130 --> 00:01:46,320 operator, Anda membuat ekspresi Boolean. 39 00:01:46,320 --> 00:01:48,550 >> Sekarang mari kita lihat contoh Boolean bersarang ini 40 00:01:48,550 --> 00:01:49,950 ekspresi. 41 00:01:49,950 --> 00:01:51,840 Apakah Anda ingat urutan operasi? 42 00:01:51,840 --> 00:01:54,700 Seperti dengan angka, ekspresi Boolean dapat dikelompokkan berdasarkan 43 00:01:54,700 --> 00:01:56,270 menggunakan tanda kurung. 44 00:01:56,270 --> 00:02:00,150 Jadi pada dasarnya ada tiga ekspresi di sini, TIDAK z, y ATAU 45 00:02:00,150 --> 00:02:04,740 TIDAK z, dan x DAN y ATAU TIDAK z. 46 00:02:04,740 --> 00:02:07,080 Kita dapat mengetahui nilai-nilai tersebut dengan melihat 47 00:02:07,080 --> 00:02:09,020 dalam dan bekerja dengan cara kami keluar. 48 00:02:09,020 --> 00:02:12,850 Jadi mari kita misalkan x adalah benar, y adalah benar, dan z juga benar. 49 00:02:12,850 --> 00:02:15,270 Apa yang TIDAK akan mengevaluasi untuk z? 50 00:02:15,270 --> 00:02:20,970 Karena kita mulai dengan benar, TIDAK z hanya akan palsu. 51 00:02:20,970 --> 00:02:26,230 Jadi sekarang kita memiliki salah OR y. 52 00:02:26,230 --> 00:02:29,740 Jika Anda melihat di atas, Anda dapat melihat bahwa y adalah benar, y ATAU palsu 53 00:02:29,740 --> 00:02:32,870 masih akan hanya menjadi kenyataan. 54 00:02:32,870 --> 00:02:37,580 Terakhir kita, memiliki x DAN benar. 55 00:02:37,580 --> 00:02:39,300 Jadi apa x DAN benar? 56 00:02:39,300 --> 00:02:42,590 x adalah benar dan yang benar adalah juga benar, jadi ini semuanya 57 00:02:42,590 --> 00:02:45,070 mengevaluasi ke true. 58 00:02:45,070 --> 00:02:47,270 >> Selanjutnya, mari kita lihat bagaimana ekspresi Boolean dapat 59 00:02:47,270 --> 00:02:49,890 benar-benar dapat digunakan dalam bahasa pemrograman. 60 00:02:49,890 --> 00:02:52,900 Dalam C, sintaks untuk operasi Boolean adalah sedikit berbeda 61 00:02:52,900 --> 00:02:55,520 dari kata-kata dan, atau, dan tidak. 62 00:02:55,520 --> 00:02:57,210 Mari kita menutupi sintaks. 63 00:02:57,210 --> 00:03:00,510 Untuk menggunakan operator AND, kita menulis sebuah ampersand ganda. 64 00:03:00,510 --> 00:03:03,620 Operator OR adalah karakter pipa ganda baris. 65 00:03:03,620 --> 00:03:05,780 Ini adalah garis vertikal lurus, yang Anda mungkin bisa 66 00:03:05,780 --> 00:03:09,070 menemukan di atas Enter atau Return tombol pada keyboard Anda. 67 00:03:09,070 --> 00:03:12,550 Dan operator TIDAK hanya tanda seru. 68 00:03:12,550 --> 00:03:15,550 Jadi untuk menulis ulang ekspresi kami sebelumnya, kami hanya akan 69 00:03:15,550 --> 00:03:27,010 menulis ini && x y | | z.! 70 00:03:27,010 --> 00:03:29,250 Itu hanya mengambil apa yang kita miliki sebelumnya dan mengubah 71 00:03:29,250 --> 00:03:31,870 ke sintaks C. 72 00:03:31,870 --> 00:03:34,370 >> Sekarang kita telah diterjemahkan ekspresi Boolean kami ke dalam kode, 73 00:03:34,370 --> 00:03:36,160 bagaimana kita benar-benar menggunakannya? 74 00:03:36,160 --> 00:03:38,170 Katakanlah kita memiliki beberapa kode yang hanya harus mengeksekusi jika 75 00:03:38,170 --> 00:03:40,330 ekspresi tertentu adalah benar. 76 00:03:40,330 --> 00:03:42,750 Untuk tujuan ini, hampir semua bahasa pemrograman 77 00:03:42,750 --> 00:03:45,190 mendukung kondisi jika. 78 00:03:45,190 --> 00:03:47,870 Katakanlah kita memiliki sebuah variabel Boolean, x, dan kami ingin beberapa 79 00:03:47,870 --> 00:03:50,850 kode untuk mengeksekusi hanya jika x adalah benar. 80 00:03:50,850 --> 00:03:54,900 Kami hanya akan menulis kata jika, menempatkan tanda kurung, dan menempatkan 81 00:03:54,900 --> 00:03:57,800 ekspresi Boolean dalam tanda kurung tersebut. 82 00:03:57,800 --> 00:03:59,680 Setelah itu, kami membungkus kode yang kami ingin 83 00:03:59,680 --> 00:04:01,080 mengeksekusi dalam kurung kurawal. 84 00:04:07,160 --> 00:04:08,150 Bagaimana jika ada beberapa kode yang ingin Anda 85 00:04:08,150 --> 00:04:10,260 mengeksekusi jika x adalah tidak benar? 86 00:04:10,260 --> 00:04:13,310 Cukup menulis kata lain setelah bungkus jika, pernyataan 87 00:04:13,310 --> 00:04:16,930 kode lainnya dalam kurung kurawal, dan kemudian kode yang akan 88 00:04:16,930 --> 00:04:18,399 mengeksekusi jika x adalah tidak benar. 89 00:04:26,640 --> 00:04:29,840 >> Lain membangun bahasa yang berguna adalah lain jika. 90 00:04:29,840 --> 00:04:32,210 Misalkan ada dua boolean Anda ingin mempertimbangkan, 91 00:04:32,210 --> 00:04:34,330 mari kita sebut mereka x dan y. 92 00:04:34,330 --> 00:04:37,340 Kami mendeklarasikan variabel untuk menjadi benar dan yang salah. 93 00:04:37,340 --> 00:04:40,540 Jika x dan y adalah benar, Anda mengeksekusi blok pertama 94 00:04:40,540 --> 00:04:42,630 kode dalam kurung kurawal tersebut. 95 00:04:42,630 --> 00:04:46,470 Lain jika x atau y adalah benar, Anda menjalankan blok berikutnya 96 00:04:46,470 --> 00:04:50,590 kode, dan lain Anda mengeksekusi blok terakhir dari kode. 97 00:04:50,590 --> 00:04:52,650 Bekerja dengan nilai Boolean seperti ini berguna, tetapi 98 00:04:52,650 --> 00:04:55,750 Anda benar-benar hanya terbatas pada beberapa kondisi. 99 00:04:55,750 --> 00:04:58,400 Boolean dapat menjadi jauh lebih kuat saat Anda memperkenalkan 100 00:04:58,400 --> 00:04:59,900 perbandingan. 101 00:04:59,900 --> 00:05:01,280 Ini adalah cara untuk membandingkan nilai-nilai yang 102 00:05:01,280 --> 00:05:03,300 awalnya tidak Boolean. 103 00:05:03,300 --> 00:05:06,060 Untuk melihat apakah dua nilai yang sama, Anda dapat menggunakan sama 104 00:05:06,060 --> 00:05:09,340 sama, yang benar jika mereka sama dan false jika 105 00:05:09,340 --> 00:05:10,530 mereka tidak. 106 00:05:10,530 --> 00:05:15,360 Perbandingan umum lainnya kurang dari, lebih besar dari, kurang 107 00:05:15,360 --> 00:05:19,740 dari atau sama dengan, dan lebih besar dari atau sama dengan. 108 00:05:19,740 --> 00:05:22,220 >> Semua yang saya telah pelajari sejauh ini telah cukup abstrak, sehingga 109 00:05:22,220 --> 00:05:24,320 mari kita memperkenalkan perbandingan ini dalam satu terakhir 110 00:05:24,320 --> 00:05:25,850 beton contoh. 111 00:05:25,850 --> 00:05:27,130 Misalkan ada dua variabel, 112 00:05:27,130 --> 00:05:29,430 suhu dan isHungry. 113 00:05:29,430 --> 00:05:31,560 Suhu adalah nomor floating point, sehingga dapat memiliki 114 00:05:31,560 --> 00:05:33,090 desimal tempat. 115 00:05:33,090 --> 00:05:35,440 Anda pemrograman aplikasi yang sangat sederhana yang memberitahu 116 00:05:35,440 --> 00:05:38,270 seseorang apa yang harus makan tergantung pada suhu. 117 00:05:38,270 --> 00:05:41,010 Jika Anda lapar, DAN DAN suhu lebih besar atau 118 00:05:41,010 --> 00:05:45,060 sama dengan 100, Anda dapat mencetak makan es krim. 119 00:05:45,060 --> 00:05:48,370 Lain jika Anda lapar DAN DAN suhu kurang dari 120 00:05:48,370 --> 00:05:52,420 atau sama dengan nol, Anda dapat printf ("makan makanan pedas"). 121 00:05:52,420 --> 00:05:55,200 Terakhir, jika Anda tidak lapar sama sekali, Anda dapat mencetak "tidak 122 00:05:55,200 --> 00:05:56,710 makan apa-apa. " 123 00:05:56,710 --> 00:06:00,130 >> Saya Shekhawat Vipul, dan ini adalah CS50.