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 Sa video na ito ako nagpapakilala sa iyo sa isa sa pinaka- 3 00:00:09,410 --> 00:00:11,260 pangunahing konsepto sa logic at 4 00:00:11,260 --> 00:00:13,880 programming, ang Boolean halaga. 5 00:00:13,880 --> 00:00:16,210 Kung gusto mong malaman tungkol sa mga pangalan, Boolean halaga at 6 00:00:16,210 --> 00:00:19,440 kondisyon ay pinangalanan pagkatapos ng George Boole, ang isang ika-19 na siglo 7 00:00:19,440 --> 00:00:22,030 mathematician na pinasimunuan kung ano ay tinatawag na ngayong Boolean 8 00:00:22,030 --> 00:00:23,980 logic, na kung saan ay batay sa pamamagitan ng pagpapangkat at 9 00:00:23,980 --> 00:00:26,030 paghahambing ng Boolean halaga. 10 00:00:26,030 --> 00:00:28,250 >> Kaya kung ano ay isang Boolean halaga? 11 00:00:28,250 --> 00:00:30,920 Isang Boolean halaga ay isang variable na lamang ay may dalawang posibleng 12 00:00:30,920 --> 00:00:33,710 kondisyon, totoo at mali. 13 00:00:33,710 --> 00:00:35,380 Maaari mong isipin na ito bilang isang liwanag na lumipat. 14 00:00:35,380 --> 00:00:38,530 Maaari itong maging alinman sa on o off, true o false. 15 00:00:38,530 --> 00:00:41,880 Katulad nito, ang mga numero ng binary ay maaaring maging alinman sa isa o zero, na 16 00:00:41,880 --> 00:00:45,680 ay kahalintulad sa parehong bagay, true o false. 17 00:00:45,680 --> 00:00:46,840 Simple, tama ba? 18 00:00:46,840 --> 00:00:48,750 Ang konsepto ng isang Boolean variable ay madaling 19 00:00:48,750 --> 00:00:51,720 maunawaan, ngunit ang mga paraan kung saan maaari mong manipulahin at 20 00:00:51,720 --> 00:00:54,570 pagsamahin ang mga ito ay nagbibigay-daan sa para sa mas ng mas malawak na kumplikado. 21 00:00:54,570 --> 00:00:57,030 Bilang karagdagan sa dalawang pangunahing Boolean halaga, 22 00:00:57,030 --> 00:00:59,350 may maraming mga Boolean operator na maaaring pagsamahin ang dalawang 23 00:00:59,350 --> 00:01:01,760 Boolean na halaga sa isang solong. 24 00:01:01,760 --> 00:01:03,540 >> Dalawang ng ang pinaka-basic, ngunit pinakamahalagang 25 00:01:03,540 --> 00:01:06,570 operator, AT at O. 26 00:01:06,570 --> 00:01:09,950 Ang AND operator ng mga resulta sa isang halaga ng tunay na lamang kung ang parehong mga 27 00:01:09,950 --> 00:01:14,630 ang mga halaga na ito ay tumatagal ng mga tunay na, kaya maling AT totoo false. 28 00:01:14,630 --> 00:01:17,540 Gayundin, mali AT maling false. 29 00:01:17,540 --> 00:01:21,080 Lamang na tunay AT totoo katumbas totoo. 30 00:01:21,080 --> 00:01:24,050 Ang O na operator mga resulta sa halaga ng tunay na kung ang alinman sa mga 31 00:01:24,050 --> 00:01:25,620 halaga ito ay tumatagal ng totoo. 32 00:01:25,620 --> 00:01:30,460 Kaya maling O maling false, ngunit totoo O maling ay totoo, at 33 00:01:30,460 --> 00:01:33,710 totoo O totoo ay totoo rin. 34 00:01:33,710 --> 00:01:36,560 Ang HINDI operator lamang tumatagal ng Boolean variable at nagbibigay 35 00:01:36,560 --> 00:01:37,830 mo ang tapat nito. 36 00:01:37,830 --> 00:01:40,950 Kaya tunay na magiging mali at huwad na nagiging totoo. 37 00:01:40,950 --> 00:01:43,130 Kung inilagay mo ang buong bagay, ang mga variable na may 38 00:01:43,130 --> 00:01:46,320 operator, lumikha ka ng isang Boolean expression. 39 00:01:46,320 --> 00:01:48,550 >> Ngayon tingnan natin sa isang halimbawa ng nesting mga Boolean 40 00:01:48,550 --> 00:01:49,950 expression. 41 00:01:49,950 --> 00:01:51,840 Huwag mo maalala ang pagkakasunod-sunod ng mga pagpapatakbo? 42 00:01:51,840 --> 00:01:54,700 Na may mga numero, Boolean expression-grupo sa pamamagitan ng 43 00:01:54,700 --> 00:01:56,270 paggamit ng panaklong. 44 00:01:56,270 --> 00:02:00,150 Kaya may isa lamang tatlong expression dito, HINDI z, y O 45 00:02:00,150 --> 00:02:04,740 HINDI z, at x AT y O HINDI z. 46 00:02:04,740 --> 00:02:07,080 Maaari naming malaman kung ang mga halaga sa mga ito sa pamamagitan ng pagtingin sa 47 00:02:07,080 --> 00:02:09,020 loob at gumagana ang aming paraan. 48 00:02:09,020 --> 00:02:12,850 Kaya sabihin ipagpalagay x ay totoo, y ay totoo, at z ay totoo rin. 49 00:02:12,850 --> 00:02:15,270 Ano ang HINDI ay z suriin sa? 50 00:02:15,270 --> 00:02:20,970 Dahil simulan namin sa totoo, HINDI z ay simpleng magiging false. 51 00:02:20,970 --> 00:02:26,230 Kaya ngayon mayroon kaming mali O y. 52 00:02:26,230 --> 00:02:29,740 Kung tumingin ka sa itaas, maaari mong makita na ang y ay totoo, y O maling 53 00:02:29,740 --> 00:02:32,870 ay pa rin lamang totoo. 54 00:02:32,870 --> 00:02:37,580 Panghuli namin, x AT totoo. 55 00:02:37,580 --> 00:02:39,300 Kaya kung ano ang x AT totoo? 56 00:02:39,300 --> 00:02:42,590 x ay totoo at tunay ay totoo rin, kaya ang buong bagay na ito 57 00:02:42,590 --> 00:02:45,070 sinusuri sa true. 58 00:02:45,070 --> 00:02:47,270 >> Susunod, tingnan natin sa kung paano ang mga Boolean expression maaari 59 00:02:47,270 --> 00:02:49,890 aktwal na ginagamit sa isang wika ng programming. 60 00:02:49,890 --> 00:02:52,900 Sa C, ang syntax para sa Boolean pagpapatakbo ng kaunti ibang 61 00:02:52,900 --> 00:02:55,520 mula sa ang mga salita at, o, at hindi. 62 00:02:55,520 --> 00:02:57,210 Masaklawan natin ang syntax. 63 00:02:57,210 --> 00:03:00,510 Upang gamitin ang AT operator, namin magsulat ng isang double ampersand. 64 00:03:00,510 --> 00:03:03,620 Ang O operator ay double character pipe line. 65 00:03:03,620 --> 00:03:05,780 Ito ang tuwid vertical linya, na maaari mong marahil 66 00:03:05,780 --> 00:03:09,070 mahanap itaas ang Enter o Ibalik ang mga key sa iyong keyboard. 67 00:03:09,070 --> 00:03:12,550 At ang HINDI operator ay lamang ng isang tandang padamdam. 68 00:03:12,550 --> 00:03:15,550 Kaya upang muling isulat ang expression bago namin ay, nais lang namin 69 00:03:15,550 --> 00:03:27,010 sumulat ito x && y | |! z. 70 00:03:27,010 --> 00:03:29,250 Na lamang pagkuha ng kung ano mismo ang nagkaroon kami bago at i- 71 00:03:29,250 --> 00:03:31,870 ito sa C syntax. 72 00:03:31,870 --> 00:03:34,370 >> Ngayon na kami isinalin ang aming Boolean expression sa code, 73 00:03:34,370 --> 00:03:36,160 paano namin ang aktwal na gamitin ang mga ito? 74 00:03:36,160 --> 00:03:38,170 Sabihin nating mayroon kaming ilang mga code na dapat lamang execute kung ang isang 75 00:03:38,170 --> 00:03:40,330 ay totoo na ang ilang mga expression. 76 00:03:40,330 --> 00:03:42,750 Para sa layuning ito, medyo magkano ang lahat ng programming wika 77 00:03:42,750 --> 00:03:45,190 sumusuporta sa kung kondisyon. 78 00:03:45,190 --> 00:03:47,870 Sabihin nating mayroon kami ng Boolean variable, x, at nais namin ang ilang 79 00:03:47,870 --> 00:03:50,850 code upang maisagawa lamang kung ang x ay totoo. 80 00:03:50,850 --> 00:03:54,900 Lang namin isulat ang salitang kung, ilagay ang mga panaklong, at ilagay 81 00:03:54,900 --> 00:03:57,800 Boolean expression sa loob ng mga panaklong. 82 00:03:57,800 --> 00:03:59,680 Pagkatapos nito, I-wrap namin ang code na gusto naming 83 00:03:59,680 --> 00:04:01,080 execute sa kulot tirante. 84 00:04:07,160 --> 00:04:08,150 Paano kung ang ilang mga code na nais mong 85 00:04:08,150 --> 00:04:10,260 execute kung ang x ay hindi totoo? 86 00:04:10,260 --> 00:04:13,310 Nang simple isulat ang salita sa tao pagkatapos ng kung pambalot pahayag, 87 00:04:13,310 --> 00:04:16,930 ang iba pang mga code sa kulot tirante, at pagkatapos ay na code ay 88 00:04:16,930 --> 00:04:18,399 execute kung ang x ay hindi totoo. 89 00:04:26,640 --> 00:04:29,840 >> Isa pang kapaki-pakinabang na bumuo ng wika ay tao kung. 90 00:04:29,840 --> 00:04:32,210 Ipagpalagay na may dalawang Booleans nais mong isaalang-alang, 91 00:04:32,210 --> 00:04:34,330 sabihin tumawag sa kanila ng x at y. 92 00:04:34,330 --> 00:04:37,340 Namin ipinapahayag ang mga variable na ito sa totoo at mali. 93 00:04:37,340 --> 00:04:40,540 Kung x at y ay totoo, gawin mo ang unang bloke ng 94 00:04:40,540 --> 00:04:42,630 code sa loob ng mga kulot tirante. 95 00:04:42,630 --> 00:04:46,470 Iba Pa kung x o y ay totoo, gawin mo ang susunod na block ng 96 00:04:46,470 --> 00:04:50,590 code, at iba pa sa iyo na isagawa ang huling bloke ng code. 97 00:04:50,590 --> 00:04:52,650 Paggawa gamit ang Boolean halaga tulad nito ay kapaki-pakinabang, ngunit 98 00:04:52,650 --> 00:04:55,750 mo ba talagang lamang limitado sa ilang mga kundisyon. 99 00:04:55,750 --> 00:04:58,400 Booleans maaaring maging mas malakas na kapag ikaw ay ipakilala 100 00:04:58,400 --> 00:04:59,900 paghahambing. 101 00:04:59,900 --> 00:05:01,280 Ito ang mga paraan upang ihambing ang mga halaga na 102 00:05:01,280 --> 00:05:03,300 hindi orihinal na Boolean. 103 00:05:03,300 --> 00:05:06,060 Upang makita kung ang dalawang mga halaga ay ang parehong, maaari mong gamitin ang katumbas 104 00:05:06,060 --> 00:05:09,340 katumbas, na kung saan ay totoo kung hindi sila pantay at maling kung 105 00:05:09,340 --> 00:05:10,530 hindi sila. 106 00:05:10,530 --> 00:05:15,360 Iba pang mga karaniwang paghahambing ay mas mababa, mas malaki kaysa sa, mas mababa 107 00:05:15,360 --> 00:05:19,740 kaysa sa o katumbas, at mas malaki kaysa sa o katumbas ng. 108 00:05:19,740 --> 00:05:22,220 >> Lahat ko na sakop sa ngayon ay medyo abstract, kaya 109 00:05:22,220 --> 00:05:24,320 sabihin ipakilala ang mga paghahambing na ito sa isang huling 110 00:05:24,320 --> 00:05:25,850 kongkreto halimbawa. 111 00:05:25,850 --> 00:05:27,130 Ipagpalagay na may dalawang variable, 112 00:05:27,130 --> 00:05:29,430 temperatura at isHungry. 113 00:05:29,430 --> 00:05:31,560 Temperatura ay bilang isang lumulutang point, kaya maaari itong magkaroon ng 114 00:05:31,560 --> 00:05:33,090 decimal place. 115 00:05:33,090 --> 00:05:35,440 Mga programa ka ng isang napaka-simpleng application na nagsasabi sa 116 00:05:35,440 --> 00:05:38,270 isang tao kung ano ang kumain depende sa temperatura. 117 00:05:38,270 --> 00:05:41,010 Kung ikaw ay gutom, AT AT temperatura ay mas malaki kaysa sa o 118 00:05:41,010 --> 00:05:45,060 katumbas sa 100, maaari kang mag-print ng kumain ng ice cream. 119 00:05:45,060 --> 00:05:48,370 Iba Pa kung ikaw ay gutom AT AT temperatura ay mas mababa sa 120 00:05:48,370 --> 00:05:52,420 o katumbas ng zero, maaari mong printf ("kumain maanghang pagkain"). 121 00:05:52,420 --> 00:05:55,200 Panghuli, kung hindi ka gutom sa lahat, maaari kang mag-print ng "hindi 122 00:05:55,200 --> 00:05:56,710 kumain ng kahit ano. " 123 00:05:56,710 --> 00:06:00,130 >> Ako Vipul Shekhawat, at ito ay CS50.