1 00:00:00,000 --> 00:00:05,140 2 00:00:05,140 --> 00:00:05,640 Ados. 3 00:00:05,640 --> 00:00:08,330 Beraz, gaur egungo eztabaida zerbait buruz benetan programazioa ere baliagarria 4 00:00:08,330 --> 00:00:09,914 baldintzapeko adierazpenak. 5 00:00:09,914 --> 00:00:11,830 Beraz, baldintzapeko esamoldeak Zure programak baimendu 6 00:00:11,830 --> 00:00:14,538 erabakiak hartzeko eta desberdinak hartu Errepide, zerbait Sardexka 7 00:00:14,538 --> 00:00:17,670 Aipatu gutxi lehenago dut, aldagaien balioak arabera, 8 00:00:17,670 --> 00:00:20,990 edo oinarritutako zer erabiltzaile Sarrerek programatzailea, komando-lerroan, 9 00:00:20,990 --> 00:00:23,130 edo gonbita badaukazu edo horrelako zerbait. 10 00:00:23,130 --> 00:00:26,690 C modu ezberdinetan pare bat behar du baldintzapeko esamoldeak adierazteko, zein da 11 00:00:26,690 --> 00:00:29,911 guk ere batzuetan deituko Zure programetan baldintzapeko adar. 12 00:00:29,911 --> 00:00:32,910 Eta horietako batzuk dira begiratzen joan nahiko duzu ezagutzen hutsetik, 13 00:00:32,910 --> 00:00:35,190 beraz, dugu, nahiz eta tira Aldamenean, besterik ez 14 00:00:35,190 --> 00:00:38,170 Zure buruan analogia hori egin dezakezu. 15 00:00:38,170 --> 00:00:41,250 >> Beraz, if-- bada ez da nahiko a simple baldintzapeko. 16 00:00:41,250 --> 00:00:43,560 Gogoratzen baduzu bertatik scratch eskubidea hemen 17 00:00:43,560 --> 00:00:50,000 hori hexagono da bete ahal izango duzu adierazpen urdin bat saguaren behera dituzten 18 00:00:50,000 --> 00:00:53,010 edo x 10 baino gutxiago bada, edo horrelako zerbait. 19 00:00:53,010 --> 00:00:57,390 Eta gero, x, 10 baino txikiagoa da, edo sagua hain zuzen ere bazegoen, behera, 20 00:00:57,390 --> 00:01:01,140 barrutik kode osoa puzzle pieza beteko dituzte. 21 00:01:01,140 --> 00:01:03,720 Moldatzen diren gauza guztiak C forma barruan. 22 00:01:03,720 --> 00:01:07,200 >> Era berean, ez dugu ezkerretik ez bada. 23 00:01:07,200 --> 00:01:09,210 Espresio boolearra badu, bertan, besterik ez naiz erabiliz 24 00:01:09,210 --> 00:01:13,010 boolear bat ordezko gisa Esamolde aurretiaz eztabaidatu dugu, 25 00:01:13,010 --> 00:01:15,240 kizkur irekia, itxi kizkur. 26 00:01:15,240 --> 00:01:17,720 Beraz, kizkur irekia pentsatzea giltza eta kizkur giltza itxia 27 00:01:17,720 --> 00:01:22,720 gisa sort ogitarteko antzeko bloke badu eragina eskuin hegaletik 28 00:01:22,720 --> 00:01:24,070 hutsetik. 29 00:01:24,070 --> 00:01:28,680 >> Adierazpen boolearrak bada adierazpen bada ere, egia da, 30 00:01:28,680 --> 00:01:30,900 ondoren, kode lerro guztiak kizkur giltza artean 31 00:01:30,900 --> 00:01:33,870 egingo ordenan exekutatu goitik behera. 32 00:01:33,870 --> 00:01:35,700 Adierazpen boolearrak bada faltsua da, dugu 33 00:01:35,700 --> 00:01:38,610 guztiaren gainetik saltatzeko artean kizkur giltza, dugulako bakarrik 34 00:01:38,610 --> 00:01:44,570 jaisteko bidegurutze batean, errepidearen nahi adierazpen boolearrak egia bada. 35 00:01:44,570 --> 00:01:48,540 >> Urrats bat hartu ahal izango dugu bestela, bada, batez ere gehiago. 36 00:01:48,540 --> 00:01:50,820 Beraz Scratch bloke hau da nahiko antzekoa 37 00:01:50,820 --> 00:01:55,884 Duela segundo bat besterik ez ikusi genuen, salbu oinarritutako bi bide hartzen du 38 00:01:55,884 --> 00:01:56,550 zer gertatzen den. 39 00:01:56,550 --> 00:02:00,420 Beraz sagua zen behera bada, edo 10 urte baino gutxiago x bada izan zen, 40 00:02:00,420 --> 00:02:04,780 Hori arteko guztia egin dugu lehen bidegurutze horretan, lehen C. hori, 41 00:02:04,780 --> 00:02:08,430 >> Bestela, sagua bada ireki, edo x ez da 10 baino gutxiago, 42 00:02:08,430 --> 00:02:10,460 bigarren multzoan guztia egingo dugu. 43 00:02:10,460 --> 00:02:15,010 Eta hori da, ikusiko duzu analogoa Hemen C. bada boolear egiteko, 44 00:02:15,010 --> 00:02:17,910 artean gauzak egin Lehenengo kizkur giltza ezarrita. 45 00:02:17,910 --> 00:02:20,550 Bestela, egin arteko gauza Bigarren kizkur giltza ezarrita. 46 00:02:20,550 --> 00:02:22,080 Beraz Boolean bada adierazpen egia da, dugu 47 00:02:22,080 --> 00:02:23,580 edozein dela ere, lehen set artean da. 48 00:02:23,580 --> 00:02:27,480 Adierazpen boolearrak badago faltsua, dela beste eragin litzateke, 49 00:02:27,480 --> 00:02:30,100 eta edozein dela ere egin nahi dugu giltza kizkur bigarren multzoan. 50 00:02:30,100 --> 00:02:34,190 Berriz ere, goitik behera, guztiak giltza arteko lerroak. 51 00:02:34,190 --> 00:02:38,130 >> C, posible da sortu an-, bestela, bada bestela katean. 52 00:02:38,130 --> 00:02:42,000 Izan ere izan dezakezu bada bestela bada bestela bada bestela, bada, eta abar, eta abar, eta abar 53 00:02:42,000 --> 00:02:42,720 orrian. 54 00:02:42,720 --> 00:02:44,660 Scratch, hau derrigorrezkoa Bloke habiak. 55 00:02:44,660 --> 00:02:48,280 Bada bestela bat gehitzen duzunean, eta izan nahi duzu bestela, barrutik beste bat jarri, 56 00:02:48,280 --> 00:02:51,110 eta abar, eta nolako lortu da ren nested eta konplikatuak. 57 00:02:51,110 --> 00:02:52,450 Baina C, ez dugu hori egin. 58 00:02:52,450 --> 00:02:55,300 Ez duzu besterik ez daukagu Hau bezalako kate bat izan da. 59 00:02:55,300 --> 00:02:58,350 Berriz ere, espero dezakezun bezala, guztia adar horiek elkarren baztertzaileak dira. 60 00:02:58,350 --> 00:03:00,750 Inoiz bakarrik joan ahal izango duzu Adarraren bat behera. 61 00:03:00,750 --> 00:03:02,270 Hau egia bada. 62 00:03:02,270 --> 00:03:03,930 Bestela, hau egia bada. 63 00:03:03,930 --> 00:03:05,700 Bestela, hau egia bada. 64 00:03:05,700 --> 00:03:07,120 Bestela, hori egin. 65 00:03:07,120 --> 00:03:11,010 Beraz, hori guztia ere adarren lau Adibidez elkarren baztertzaileak dira. 66 00:03:11,010 --> 00:03:14,900 Bada bestela kate-, bestela, bat da. 67 00:03:14,900 --> 00:03:17,580 >> Posible da, nahiz eta, eta, batzuetan, oso erabilgarria, 68 00:03:17,580 --> 00:03:20,950 kate bat sortzea ez adarren bateraezinak. 69 00:03:20,950 --> 00:03:24,600 Adibide honetan, soilik hirugarren eta Laugarren adarretan elkarren baztertzaileak dira. 70 00:03:24,600 --> 00:03:27,450 Could duten liteke Lehenengo baldintza asetzeko, 71 00:03:27,450 --> 00:03:29,396 eta betetzeko Bigarren baldintza, 72 00:03:29,396 --> 00:03:31,770 eta betetzeko Hirugarren condition-- eta kasu horretan 73 00:03:31,770 --> 00:03:35,270 behera joan nahi duzun lehen adarra, gero behera joan bigarren adar bat, 74 00:03:35,270 --> 00:03:37,000 gero behera joan nahi duzun, hirugarren adarra. 75 00:03:37,000 --> 00:03:40,450 Edo agian lehen asetzeko duzu baldintza, eta bigarren baldintza, 76 00:03:40,450 --> 00:03:42,770 baina ez duzu asetzeko Hirugarren baldintza. 77 00:03:42,770 --> 00:03:46,230 Kasu honetan, joan lehena behera adar eta bigarren adarra, 78 00:03:46,230 --> 00:03:48,040 eta, ondoren, laugarren adarraren, 79 00:03:48,040 --> 00:03:51,392 >> Horren arrazoia du, bestela, hori da bada hurbilen bakarrik egingo lotu. 80 00:03:51,392 --> 00:03:53,100 Beraz, ez da, nahiz eta Bada beste bat hemen, hori 81 00:03:53,100 --> 00:03:56,490 Ez du zertan sortu elkar a Guztia kate esklusiboa. 82 00:03:56,490 --> 00:04:00,890 Adierazpen bakarra da boolearrak ez 83 00:04:00,890 --> 00:04:05,040 Espresio izango da 3 hori da elkar beste batera esklusiboa. 84 00:04:05,040 --> 00:04:07,580 Beraz, posible da, eta batzuetan nahiko erabilgarria, 85 00:04:07,580 --> 00:04:11,772 Esan dudan bezala, kate bat sortzeko adarrak ez bateraezinak. 86 00:04:11,772 --> 00:04:14,230 Ikus dezagun begirada bat desberdin batean baldintzapeko mota, bertan 87 00:04:14,230 --> 00:04:17,392 Ez baduzu ikusi aurretik Scratch. 88 00:04:17,392 --> 00:04:19,369 Ez da, zerbait izeneko aldatzeko adierazpena. 89 00:04:19,369 --> 00:04:21,410 Aldatzeko adierazpena da neat mota delako 90 00:04:21,410 --> 00:04:25,930 ahalbidetzen duen baldintzapeko adierazpen bat kasu desberdin zehazten du, 91 00:04:25,930 --> 00:04:28,926 ordez Boolean oinarrituz Esamolde erabakiak hartu ahal izateko. 92 00:04:28,926 --> 00:04:31,050 Beraz, adibidez, demagun I programa hori dela, 93 00:04:31,050 --> 00:04:34,110 eta erabiltzaileari galdetzen dut sarrera emateko niretzat. 94 00:04:34,110 --> 00:04:37,170 Beraz, esan nuen, int x = Eskatu Int (), eta oraindik Oraindik ezagutzen ez bada, 95 00:04:37,170 --> 00:04:40,190 int dela da funtzio bat da halaber, CS50 liburutegia barne, 96 00:04:40,190 --> 00:04:44,610 beraz CS50.h baduzu beharko duzu Int (Get sarbidea) eta guztia bere 97 00:04:44,610 --> 00:04:46,840 cousins-- GetFloat, GetString eta abar. 98 00:04:46,840 --> 00:04:52,590 Funtsean Talde bat funtzio bakoitzean datu-mota hori Jadanik aztertu ditugu. 99 00:04:52,590 --> 00:04:53,970 >> Beraz Int x berdinen GetInt. 100 00:04:53,970 --> 00:04:56,390 Funtsean, zer gertatzen ari da naiz terminalean dut. 101 00:04:56,390 --> 00:04:58,790 Erabiltzaileari galdetzen ari naiz idazten den zenbaki bat. 102 00:04:58,790 --> 00:05:02,300 >> Eta hemen kommutazio naiz zer egiten ari naiz, arabera 103 00:05:02,300 --> 00:05:05,060 erabiltzaileak idatzi gonbitan orrian. 104 00:05:05,060 --> 00:05:09,147 Beraz, bat idaztean badute, inprimatu dut bat. 105 00:05:09,147 --> 00:05:09,855 Eta ondoren, hautsi. 106 00:05:09,855 --> 00:05:12,590 107 00:05:12,590 --> 00:05:15,510 Bi idazten dute bada, inprimatu dut bi. 108 00:05:15,510 --> 00:05:16,690 Eta ondoren, hautsi. 109 00:05:16,690 --> 00:05:19,060 It garrantzitsua da Kasu bakoitzean arteko hautsi 110 00:05:19,060 --> 00:05:20,890 Besterik bidez erori delako izango duzu. 111 00:05:20,890 --> 00:05:23,380 Beraz, ez nuen inolako jauziak ez, eta erabiltzaileak 112 00:05:23,380 --> 00:05:31,380 bat idaztean, zer gertatuko litzateke da Bat, bi, hiru inprimatu litzateke, barkatu. 113 00:05:31,380 --> 00:05:33,099 Hori da portaera bitxi mota da, ezta? 114 00:05:33,099 --> 00:05:33,890 Beraz, uste duzu. 115 00:05:33,890 --> 00:05:36,480 Baina, egia esan, kasu batzuetan, non hau gauza nahiko erabilgarria izan daiteke. 116 00:05:36,480 --> 00:05:39,730 Hortaz, hona hemen switch baten beste adibide bat da adierazpen non jauziak ezikusia dut. 117 00:05:39,730 --> 00:05:42,030 Baina ez dut nahita. 118 00:05:42,030 --> 00:05:43,030 >> Beraz, zer gertatzen da hemen? 119 00:05:43,030 --> 00:05:43,821 Bigarrena, nik uste. 120 00:05:43,821 --> 00:05:45,960 Beharbada, bideoa pausatu nahi duzun. 121 00:05:45,960 --> 00:05:48,230 >> Zer gertatzen da hemen bada erabiltzaile mota lau? 122 00:05:48,230 --> 00:05:51,190 123 00:05:51,190 --> 00:05:53,860 Beraz, galdetu dut, eta erabiltzailearen sarrera. 124 00:05:53,860 --> 00:05:56,560 Eta 4 balioa ematen dute. 125 00:05:56,560 --> 00:05:59,545 Zer lortzen inprimatutako denean egin behar dut? 126 00:05:59,545 --> 00:06:02,170 Aurreko diapositiba, han izan ziren Kasu guztietan arteko jauziak. 127 00:06:02,170 --> 00:06:04,750 Eta, beraz, besterik ez litzateke lau inprimatu eta gero gelditzeko. 128 00:06:04,750 --> 00:06:06,610 Baina kasu honetan, ez da. 129 00:06:06,610 --> 00:06:10,700 Zer gertatuko da duzu kasu bakoitzaren erori bidez. 130 00:06:10,700 --> 00:06:14,890 >> Beraz, kasu honetan dut nire kasu antolatu modu bat, erabiltzaile mota 4 izanez gero, 131 00:06:14,890 --> 00:06:20,070 Egingo inprima lau, hiru, bi, bat, Blast off. 132 00:06:20,070 --> 00:06:22,780 Eta idatzitako badute 5, litzateke hasten naiz bostetan, eta ez da gauza bera. 133 00:06:22,780 --> 00:06:26,410 Mekanografiatuak dute bada 1, nuke ez bakarra, eztanda off. 134 00:06:26,410 --> 00:06:28,715 >> Beraz, kasu honetan, erabiltzen dut switch bat motatako cleverly beraz 135 00:06:28,715 --> 00:06:30,804 Esan nahi dut, erori kasu guztietan zehar. 136 00:06:30,804 --> 00:06:33,720 Baina, oro har, botako bazara, seguruenik horien guztien arteko hautsi nahi, 137 00:06:33,720 --> 00:06:36,090 Egoera bat izan ezik Honen non zauden bezala 138 00:06:36,090 --> 00:06:40,081 nolako gertakaria aprobetxatuz dituzu dagoela kasu erori bidez etenik gabe. 139 00:06:40,081 --> 00:06:42,830 Beraz, hori nagusietako bigarrena da baldintzapeko adierazpenak mota. 140 00:06:42,830 --> 00:06:47,139 Horietatik azkena hauxe da: Beraz dut bi C kodea mozkinak hemen. 141 00:06:47,139 --> 00:06:48,680 Bestea ezkerrean eta bestea eskuinean. 142 00:06:48,680 --> 00:06:52,330 Ezkerrekoa zaizkion seguruenik nahiko duzu ezagutzen. 143 00:06:52,330 --> 00:06:55,110 >> Int x daukat. 144 00:06:55,110 --> 00:06:57,167 Eta ziurrenik behar dut Izan galdetu erabiltzaileari 145 00:06:57,167 --> 00:07:00,250 For honetan seguruenik Int x izan behar berdinen GetInt, edo horrelako zerbait. 146 00:07:00,250 --> 00:07:03,030 147 00:07:03,030 --> 00:07:05,240 Eta gero, erabaki bat egiten ari naiz. 148 00:07:05,240 --> 00:07:11,700 Espresio boolearra batzuk baldin bada Egia, 5 balioa x esleitzeko. 149 00:07:11,700 --> 00:07:13,590 Bestela, 6 balioa x esleitzeko. 150 00:07:13,590 --> 00:07:16,548 >> Hori ezkerrean beharko da Nahiko gure eztabaidatik familiar 151 00:07:16,548 --> 00:07:18,160 ren bestek bada, duela une bat besterik ez. 152 00:07:18,160 --> 00:07:20,535 Litzateke harritu jakin izango duzu eskuineko lerroa dela 153 00:07:20,535 --> 00:07:22,310 zehatza gauza bera egiten du? 154 00:07:22,310 --> 00:07:26,140 >> Beraz, hau da, deitu:? Edo, batzuetan, hirutarra operadorea deitzen. 155 00:07:26,140 --> 00:07:27,450 Eta nahiko cool da. 156 00:07:27,450 --> 00:07:29,110 Honez normalean cute trikimailu gisa erabiltzen da. 157 00:07:29,110 --> 00:07:35,777 >> Baina zer da ahalbidetzen da egin behar duzu simulatu bat izanez gero, bestela, benetan txikiak, 158 00:07:35,777 --> 00:07:37,610 benetan kenduz laburrak baldintzapeko adar. 159 00:07:37,610 --> 00:07:41,470 Oro har, ez litzateke erabili behar dituzu:? Baduzu Multzo bakoitzaren artean sei kode lerro izan 160 00:07:41,470 --> 00:07:42,569 kizkur giltza. 161 00:07:42,569 --> 00:07:44,360 Baina zu bazina erabaki azkar bat egiteko, 162 00:07:44,360 --> 00:07:47,520 zu gauza bat egin nahi izanez gero edo bestean, eta oso erraza da, 163 00:07:47,520 --> 00:07:52,240 hau nola adibide bat izan liteke egin berarekin:? hirutarra operadorea. 164 00:07:52,240 --> 00:07:56,940 Beraz Int x berdin adierazpen? 165 00:07:56,940 --> 00:07:59,470 Galdera ondoren eta behin, marka zer x balioa 166 00:07:59,470 --> 00:08:02,690 adierazpen egia bada izango da. 167 00:08:02,690 --> 00:08:05,330 >> Ondoren eta behin, colon zer x balioa 168 00:08:05,330 --> 00:08:07,990 litzateke adierazpen faltsua izan bada. 169 00:08:07,990 --> 00:08:11,510 Beraz, neure buruari galdetzen ari naiz, adierazpena da egia? 170 00:08:11,510 --> 00:08:13,870 Bada, 5 balioa x esleitzeko. 171 00:08:13,870 --> 00:08:16,619 Ez bada, 6 balioa x esleitzeko. 172 00:08:16,619 --> 00:08:17,410 Berriz ere, esan bezala. 173 00:08:17,410 --> 00:08:18,670 Hau cute trikimailu bat besterik ez da, normalean. 174 00:08:18,670 --> 00:08:20,430 Eta batzuetan ez bazaude benetan eroso, 175 00:08:20,430 --> 00:08:22,820 Horretarako, itxura duelako dituzu Zure programetan cool mota. 176 00:08:22,820 --> 00:08:25,710 Oro du aurkezten ari naiz orain, beraz Oraindik ez duzu ezagutzen 177 00:08:25,710 --> 00:08:26,990 Ikusten duzu bada. 178 00:08:26,990 --> 00:08:30,080 Baina zalantzarik gabe, jakin, ez duzu idazteko zure kodea edozeinetan. 179 00:08:30,080 --> 00:08:33,246 Baina, ez da zerbait ezagutu behar dira, betiko duzu topo delako 180 00:08:33,246 --> 00:08:36,130 kodea mozkinak hemen eta Han bertan honetan: sintaxia, 181 00:08:36,130 --> 00:08:39,120 Hirutarra operadorea Unzurrunzaga, erabiltzen da. 182 00:08:39,120 --> 00:08:40,960 >> Laburbilduz, beraz, azkar zer baldintzazkoak dira, 183 00:08:40,960 --> 00:08:44,210 eta zer aukerak daude eskuragarri you C. nago izan nahi baduzu, eta bada bestela, 184 00:08:44,210 --> 00:08:46,860 eta, bestela, bada, et cetera. 185 00:08:46,860 --> 00:08:50,880 Boolean esamolde erabil dezakezu dutenentzat erabakiak hartzeko. 186 00:08:50,880 --> 00:08:53,720 >> Switch adierazpenak erabili duzu kasu diskretuak erabakiak hartzeko. 187 00:08:53,720 --> 00:08:57,540 Zehazki, esango zenuke, Balitz bat, edo bi izanez gero, edo hiru izanez gero, 188 00:08:57,540 --> 00:09:00,870 Gauza hau egin dut, edo gauza hori, edo gauza hori. 189 00:09:00,870 --> 00:09:04,660 Eta:? Daiteke ordezkatzeko erabili ahal izateko bada bestela adarretan oso erraza da, 190 00:09:04,660 --> 00:09:08,490 edo kateak behar makillajea, bestela, Zure kodea fancy itxura apur bat. 191 00:09:08,490 --> 00:09:09,250 >> Naiz Doug Lloyd. 192 00:09:09,250 --> 00:09:11,410 Eta hau da CS50. 193 00:09:11,410 --> 00:09:12,959