1 00:00:00,000 --> 00:00:05,140 2 00:00:05,140 --> 00:00:05,640 Kull dritt. 3 00:00:05,640 --> 00:00:08,330 Allura issa ejja nitkellmu dwar xi ħaġa verament utli fil programming-- 4 00:00:08,330 --> 00:00:09,914 dikjarazzjonijiet kondizzjonali. 5 00:00:09,914 --> 00:00:11,830 Espressjonijiet hekk kondizzjonali jippermettu programmi tiegħek 6 00:00:11,830 --> 00:00:14,538 biex jagħmlu deċiżjonijiet u jieħdu differenti frieket fit-triq, xi ħaġa 7 00:00:14,538 --> 00:00:17,670 I allużjoni għall ftit qabel, jiddependi fuq il-valuri ta 'varjabbli, 8 00:00:17,670 --> 00:00:20,990 jew ibbażati fuq dak l-inputs utent fil l-programmer, fil-linja tal-kmand, 9 00:00:20,990 --> 00:00:23,130 jew jekk għandek pront jew xi ħaġa bħal dik. 10 00:00:23,130 --> 00:00:26,690 C għandha koppja ta 'modi differenti biex jesprimu l-espressjoni kondizzjonali, li 11 00:00:26,690 --> 00:00:29,911 aħna wkoll kultant se sejħa fergħa kondizzjonali programmi tiegħek. 12 00:00:29,911 --> 00:00:32,910 U xi wħud minn dawn huma ser tħares pretty familjari għalik mill-bidu nett, 13 00:00:32,910 --> 00:00:35,190 hekk aħna ser anki iġbed up ġenb ma 'ġenb, just 14 00:00:35,190 --> 00:00:38,170 inti tista 'tagħmel li analoġija fir-ras. 15 00:00:38,170 --> 00:00:41,250 >> Għalhekk, if-- jekk huwa pretty sempliċi kondizzjonali. 16 00:00:41,250 --> 00:00:43,560 Jekk inti recall minn scratch fuq il-lemin hawn 17 00:00:43,560 --> 00:00:50,000 inti tista 'timla dan huwa b'ħeksagon bil-espressjoni blu jekk maws 'l isfel 18 00:00:50,000 --> 00:00:53,010 jew jekk x huwa inqas minn 10, jew xi ħaġa bħal dik. 19 00:00:53,010 --> 00:00:57,390 U mbagħad, jekk x kien inqas minn 10, jew jekk l-maws kien fil-fatt, isfel, 20 00:00:57,390 --> 00:01:01,140 kollha tal-kodiċi ġewwa tal- biċċa puzzle se tesegwixxi. 21 00:01:01,140 --> 00:01:03,720 L-affarijiet li jaqblu ġewwa din il-forma C. 22 00:01:03,720 --> 00:01:07,200 >> Bl-istess mod, do għandna jekk fuq ix-xellug hemmhekk. 23 00:01:07,200 --> 00:01:09,210 Jekk espressjoni Boolean, li jien biss bl-użu 24 00:01:09,210 --> 00:01:13,010 bħala sostitut għal waħda mill-Boolean espressjonijiet aħna diskussi preċedentement, 25 00:01:13,010 --> 00:01:15,240 Brace kaboċċi miftuħa, Brace kaboċċi qrib. 26 00:01:15,240 --> 00:01:17,720 Allura taħseb kaboċċi miftuħa Brace u Brace kaboċċi magħluqa 27 00:01:17,720 --> 00:01:22,720 bħala tip ta 'analogi għall-sandwich effett tal-blokk jekk fuq il-lemin 28 00:01:22,720 --> 00:01:24,070 mill-bidu. 29 00:01:24,070 --> 00:01:28,680 >> Jekk l-espressjoni Boolean fid-dikjarazzjoni jekk huwa minnu, 30 00:01:28,680 --> 00:01:30,900 allura l-linji kollha ta 'kodiċi bejn il-braces kaboċċi 31 00:01:30,900 --> 00:01:33,870 se tesegwixxi sabiex minn fuq għal isfel. 32 00:01:33,870 --> 00:01:35,700 Jekk l-espressjoni Boolean hija falza, aħna ser 33 00:01:35,700 --> 00:01:38,610 skip fuq kollox bejniethom l braces kaboċċi, għaliex aħna biss 34 00:01:38,610 --> 00:01:44,570 jridu jinżlu li furketta fit-triq jekk l-espressjoni Boolean huwa veru. 35 00:01:44,570 --> 00:01:48,540 >> Aħna tista 'tieħu dan il-pass wieħed ulterjuri ma jekk ieħor. 36 00:01:48,540 --> 00:01:50,820 Allura dan il-blokk Scratch huwa pjuttost simili għal dak 37 00:01:50,820 --> 00:01:55,884 rajna ftit tieni ilu, ħlief hija tieħu żewġ mogħdijiet differenti bbażati 38 00:01:55,884 --> 00:01:56,550 fuq dak li jiġri. 39 00:01:56,550 --> 00:02:00,420 Allura jekk il-maws kien isfel, jew jekk x kien inqas minn 10, 40 00:02:00,420 --> 00:02:04,780 aħna ser tagħmel dak kollu li fil bejn li l-ewwel furketta, li l-ewwel C., 41 00:02:04,780 --> 00:02:08,430 >> Inkella, jekk il-ġurdien huwa up, jew x ma jkunx inqas minn 10, 42 00:02:08,430 --> 00:02:10,460 aħna se nagħmlu dak kollu fit-tieni sett. 43 00:02:10,460 --> 00:02:15,010 U dan huwa analogu għal dak li tara hawn għal espressjoni C. Jekk Boolean, 44 00:02:15,010 --> 00:02:17,910 jagħmlu l-għalf bejn l- ewwel sett ta 'ċineg kaboċċi. 45 00:02:17,910 --> 00:02:20,550 Inkella, jagħmlu l-għalf bejn l- tieni sett ta 'ċineg kaboċċi. 46 00:02:20,550 --> 00:02:22,080 Allura jekk il-Boolean espressjoni huwa veru, aħna ser 47 00:02:22,080 --> 00:02:23,580 jagħmlu dak kollu l bejn l-ewwel sett. 48 00:02:23,580 --> 00:02:27,480 Jekk l-espressjoni Boolean huwa falza, li jiskattaw l-oħra, 49 00:02:27,480 --> 00:02:30,100 u aħna se jagħmlu kull fil it-tieni sett ta 'ċineg kaboċċi. 50 00:02:30,100 --> 00:02:34,190 Għal darb'oħra, fuq għal isfel, Kollha linji bejn il ċineg. 51 00:02:34,190 --> 00:02:38,130 >> Fil C, huwa possibbli li jinħolqu IF-inkella jekk-ieħor katina. 52 00:02:38,130 --> 00:02:42,000 Fil-fatt inti jista 'jkollhom jekk-inkella jekk inkella' jekk-ieħor, jekk, u fuq hekk u hekk u hekk 53 00:02:42,000 --> 00:02:42,720 fuq. 54 00:02:42,720 --> 00:02:44,660 Fil Scratch kienet meħtieġa ibejtu l-blokki. 55 00:02:44,660 --> 00:02:48,280 Inti żid jekk-ieħor, u inti kellhom jitqiegħdu ieħor ġewwa tal-inkella, 56 00:02:48,280 --> 00:02:51,110 u l-bqija, u li ltqajna tip tal nested u kkumplikata. 57 00:02:51,110 --> 00:02:52,450 Iżda C, aħna ma jkollhomx biex tagħmel dan. 58 00:02:52,450 --> 00:02:55,300 Nistgħu ngħidu biss għandhom ikun katina bħal din. 59 00:02:55,300 --> 00:02:58,350 Għal darb'oħra, kif inti tista 'tistenna, kollha ta' dawn il-fergħat huma reċiprokament esklussivi. 60 00:02:58,350 --> 00:03:00,750 Inti tista 'biss qatt tmur l waħda tal-fergħa. 61 00:03:00,750 --> 00:03:02,270 Jekk dan huwa minnu. 62 00:03:02,270 --> 00:03:03,930 Inkella, jekk dan huwa minnu. 63 00:03:03,930 --> 00:03:05,700 Inkella, jekk dan huwa minnu. 64 00:03:05,700 --> 00:03:07,120 Inkella, jagħmlu dan. 65 00:03:07,120 --> 00:03:11,010 Allura l-erba 'fergħat f'dan eżempju huma reċiprokament esklussivi. 66 00:03:11,010 --> 00:03:14,900 Huwa ta 'jekk' inkella katina jekk-ieħor. 67 00:03:14,900 --> 00:03:17,580 >> Huwa possibbli madankollu, u xi kultant utli ħafna, 68 00:03:17,580 --> 00:03:20,950 biex tinħoloq katina ta 'mhux fergħat reċiprokament esklussivi. 69 00:03:20,950 --> 00:03:24,600 F'dan l-eżempju, biss it-tielet u raba 'partijiet huma reċiprokament esklussivi. 70 00:03:24,600 --> 00:03:27,450 Jista 'jkun li inti tista sodisfatta l-ewwel kundizzjoni, 71 00:03:27,450 --> 00:03:29,396 u inti tista 'tissodisfa it-tieni kundizzjoni, 72 00:03:29,396 --> 00:03:31,770 u inti tista 'tissodisfa l- tielet condition-- f'liema każ 73 00:03:31,770 --> 00:03:35,270 inti jinżlu l-ewwel parti, allura inti jinżlu tieni fergħa, 74 00:03:35,270 --> 00:03:37,000 allura inti jinżlu tielet parti. 75 00:03:37,000 --> 00:03:40,450 Jew forsi inti tissodisfa l-ewwel kundizzjoni, u t-tieni kundizzjoni, 76 00:03:40,450 --> 00:03:42,770 imma inti ma jissodisfawx it-tielet kundizzjoni. 77 00:03:42,770 --> 00:03:46,230 F'dan il-każ inti jinżlu l-ewwel fergħa u t-tieni parti, 78 00:03:46,230 --> 00:03:48,040 u allura l-raba 'parti, 79 00:03:48,040 --> 00:03:51,392 >> Ir-raġuni għal dan hija li l-inkella se jorbtu biss lill-eqreb jekk. 80 00:03:51,392 --> 00:03:53,100 Allura anke jekk hemm l oħra hawnhekk, li 81 00:03:53,100 --> 00:03:56,490 mhux bilfors toħloq reċiprokament katina esklussiva ta 'kollox. 82 00:03:56,490 --> 00:04:00,890 Huwa biss l-espressjoni hemm ma Boolean 83 00:04:00,890 --> 00:04:05,040 espressjoni 3-- dak l- reċiprokament esklussivi mal-ieħor. 84 00:04:05,040 --> 00:04:07,580 Għalhekk huwa possibbli, u xi drabi pjuttost utli, 85 00:04:07,580 --> 00:04:11,772 kif għidt, li tinħoloq katina ta ' fergħat mhux esklussivi reċiprokament. 86 00:04:11,772 --> 00:04:14,230 Ejja tagħti ħarsa lejn differenti tip ta 'kondizzjoni, li 87 00:04:14,230 --> 00:04:17,392 inti ma bbenefikawx qabel fil Scratch. 88 00:04:17,392 --> 00:04:19,369 Hemm xi ħaġa imsejħa id-dikjarazzjoni swiċċ. 89 00:04:19,369 --> 00:04:21,410 Id-dikjarazzjoni switch hu tip ta 'pulita għaliex dan huwa 90 00:04:21,410 --> 00:04:25,930 dikjarazzjoni kondizzjonali li tippermetti inti tispeċifika każijiet distinti, 91 00:04:25,930 --> 00:04:28,926 minflok joqogħdu fuq l Boolean espressjonijiet li jagħmlu deċiżjonijiet għalik. 92 00:04:28,926 --> 00:04:31,050 Hekk per eżempju, ejja ngħidu li għandi dan il-programm, 93 00:04:31,050 --> 00:04:34,110 u jien titlob lill-utent li tipprovdi kontribut lili. 94 00:04:34,110 --> 00:04:37,170 So I say, int x = Get Int (), u jekk int ma jkunux familjari għadhom, 95 00:04:37,170 --> 00:04:40,190 jiksbu int hija funzjoni li hija inklużi wkoll fil-librerija CS50, 96 00:04:40,190 --> 00:04:44,610 hekk jekk inti #include CS50.H inti ser ikollok aċċess Get Int () u kollha tagħha 97 00:04:44,610 --> 00:04:46,840 cousins-- GetFloat, GetString, u l-bqija. 98 00:04:46,840 --> 00:04:52,590 Bażikament wieħed Get funzjoni għal kull tip ta 'data li konna diġà diskuss. 99 00:04:52,590 --> 00:04:53,970 >> Allura Int x ugwali GetInt. 100 00:04:53,970 --> 00:04:56,390 Bażikament dak li qed jiġri huwa jien fit-terminal. 101 00:04:56,390 --> 00:04:58,790 Jien titlob lill-utent tat-tip f'numru. 102 00:04:58,790 --> 00:05:02,300 >> U hawn jien jaqilbu dak li qed nagħmel, jiddependi 103 00:05:02,300 --> 00:05:05,060 fuq dak l-utent ittajpjat fil-prompt. 104 00:05:05,060 --> 00:05:09,147 Mela jekk ittajpjat waħda, I jistampa wieħed. 105 00:05:09,147 --> 00:05:09,855 U mbagħad I break. 106 00:05:09,855 --> 00:05:12,590 107 00:05:12,590 --> 00:05:15,510 Jekk dawn it-tip tnejn, I jistampa tnejn. 108 00:05:15,510 --> 00:05:16,690 U mbagħad I break. 109 00:05:16,690 --> 00:05:19,060 Huwa importanti li break bejn kull każ 110 00:05:19,060 --> 00:05:20,890 għax inkella inti se jaqgħu permezz. 111 00:05:20,890 --> 00:05:23,380 Mela jekk jien ma kellhomx xi pawżi hemm, u l-utent 112 00:05:23,380 --> 00:05:31,380 wieħed ttajpjata, dak li jiġri huwa li se print wieħed, tnejn, tlieta, sorry. 113 00:05:31,380 --> 00:05:33,099 C'est tip ta 'mġieba stramba, right? 114 00:05:33,099 --> 00:05:33,890 Għandek mnejn taħseb hekk. 115 00:05:33,890 --> 00:05:36,480 Iżda hemm attwalment xi każijiet fejn din tista 'tkun ħaġa pretty utli. 116 00:05:36,480 --> 00:05:39,730 So here eżempju ieħor ta 'swiċċ dikjarazzjoni fejn I jħalli barra l-pawżi. 117 00:05:39,730 --> 00:05:42,030 Imma I do dan fuq l-iskop. 118 00:05:42,030 --> 00:05:43,030 >> Allura x'jiġri hawn? 119 00:05:43,030 --> 00:05:43,821 Aħseb għat-tieni. 120 00:05:43,821 --> 00:05:45,960 Tista 'saħansitra jridu li nieqaf-video. 121 00:05:45,960 --> 00:05:48,230 >> X'jiġri hawn jekk it-tipi utent erba? 122 00:05:48,230 --> 00:05:51,190 123 00:05:51,190 --> 00:05:53,860 Hekk stajt talab lill-utent għall-input. 124 00:05:53,860 --> 00:05:56,560 U dawn jipprovdu l-valur 4. 125 00:05:56,560 --> 00:05:59,545 Liema gets stampata meta I do dan? 126 00:05:59,545 --> 00:06:02,170 Fuq il-pjastra ta 'qabel, kien hemm waqfiet bejn l-każijiet kollha. 127 00:06:02,170 --> 00:06:04,750 U hekk kien biss print erba 'u imbagħad jieqaf. 128 00:06:04,750 --> 00:06:06,610 Iżda f'dan il-każ, mhux se. 129 00:06:06,610 --> 00:06:10,700 X'se jiġri huwa inti se jaqgħu permezz ta 'kull każ. 130 00:06:10,700 --> 00:06:14,890 >> Allura f'dan il-każ stajt organizzata każijiet tiegħi b'tali mod li jekk it-tipi utent 4, 131 00:06:14,890 --> 00:06:20,070 I se print erba, tlieta, tnejn, li waħda, blast off. 132 00:06:20,070 --> 00:06:22,780 U jekk ittajpjat 5, Nibda għal ħamsa u jagħmlu l-istess ħaġa. 133 00:06:22,780 --> 00:06:26,410 Jekk dawn ittajpjat 1, nixtieq biss tagħmel wieħed, blast off. 134 00:06:26,410 --> 00:06:28,715 >> Allura f'dan il-każ, jien jużaw bidla tip ta cleverly hekk 135 00:06:28,715 --> 00:06:30,804 li jien ħsieb li jaqgħu permezz tal-każijiet kollha. 136 00:06:30,804 --> 00:06:33,720 Iżda ġeneralment int probabilment gonna jridu jiksru bejn kull wieħed minnhom, 137 00:06:33,720 --> 00:06:36,090 sakemm ikollok sitwazzjoni bħal dan wieħed fejn int 138 00:06:36,090 --> 00:06:40,081 tip ta 'lieva l-fatt li tkun taf jaqgħu permezz tal-każijiet mingħajr pawża. 139 00:06:40,081 --> 00:06:42,830 Allura dak l-tieni mill-kbar tipi ta 'dikjarazzjonijiet kondizzjonali. 140 00:06:42,830 --> 00:06:47,139 L-aħħar tagħhom huwa:? So I għandhom żewġ siltiet ta 'kodiċi C hawn. 141 00:06:47,139 --> 00:06:48,680 Wieħed fuq ix-xellug u waħda fuq il-lemin. 142 00:06:48,680 --> 00:06:52,330 Il-wieħed fuq ix-xellug għandu probabbilment ikun pretty familjari għalik. 143 00:06:52,330 --> 00:06:55,110 >> Għandi Int x. 144 00:06:55,110 --> 00:06:57,167 U jien probabbilment għandu talbu lill-utent 145 00:06:57,167 --> 00:07:00,250 for-- dan għandu probabbilment ikunu Int x ugwali GetInt, jew xi ħaġa bħal dik. 146 00:07:00,250 --> 00:07:03,030 147 00:07:03,030 --> 00:07:05,240 U allura jien ma jieħu deċiżjoni. 148 00:07:05,240 --> 00:07:11,700 Jekk xi espressjoni Boolean huwa veru, jassenja x-valur 5. 149 00:07:11,700 --> 00:07:13,590 Inkella, jassenja x-valur 6. 150 00:07:13,590 --> 00:07:16,548 >> Li fuq ix-xellug għandu probabbilment ikunu pretty familjari minn diskussjoni tagħna 151 00:07:16,548 --> 00:07:18,160 tal Jekk Else ftit mument ilu. 152 00:07:18,160 --> 00:07:20,535 Kieku inti tkun sorpriż li tkun taf li l-linja fuq il-lemin 153 00:07:20,535 --> 00:07:22,310 ma l-istess ħaġa eżatt? 154 00:07:22,310 --> 00:07:26,140 >> Allura dan huwa msejjaħ:? Jew xi kultant imsejjaħ l-operatur ternarji. 155 00:07:26,140 --> 00:07:27,450 U huwa pjuttost jibred. 156 00:07:27,450 --> 00:07:29,110 Huwa normalment użati bħala trick ħelu. 157 00:07:29,110 --> 00:07:35,777 >> Imma dak li jippermettilek li tagħmel huwa li jissimulaw Jekk Else ma verament żgħar, 158 00:07:35,777 --> 00:07:37,610 verament trivially qasir fergħat kondizzjonali. 159 00:07:37,610 --> 00:07:41,470 Inti ġeneralment mhumiex se jużaw:? Jekk inti kellhom sitt linji ta 'kodiċi bejn kull sett 160 00:07:41,470 --> 00:07:42,569 ċingi tal kaboċċi. 161 00:07:42,569 --> 00:07:44,360 Imma jekk int biss teħid ta 'deċiżjoni ta' malajr, 162 00:07:44,360 --> 00:07:47,520 jekk int ser tagħmel ħaġa waħda jew l-oħra u huwa sempliċi ħafna, 163 00:07:47,520 --> 00:07:52,240 dan jista 'jkun eżempju ta' kif jagħmlu dan ma ':?-operatur ternarji. 164 00:07:52,240 --> 00:07:56,940 Allura Int x ugwali espressjoni? 165 00:07:56,940 --> 00:07:59,470 Il-ħaġa wara l-mistoqsija marka huwa valur dak X 166 00:07:59,470 --> 00:08:02,690 se jkun jekk l-espressjoni huwa veru. 167 00:08:02,690 --> 00:08:05,330 >> Il-ħaġa wara l- kolon huwa dak valur x taċ 168 00:08:05,330 --> 00:08:07,990 ikun jekk l-espressjoni kienet falza. 169 00:08:07,990 --> 00:08:11,510 Hekk jien tistaqsi lili nnifsi, hija l-espressjoni vera? 170 00:08:11,510 --> 00:08:13,870 Jekk huwa, tassenja x il-valur 5. 171 00:08:13,870 --> 00:08:16,619 Jekk mhuwiex, jassenja x-valur 6. 172 00:08:16,619 --> 00:08:17,410 Għal darb'oħra, bħal I said. 173 00:08:17,410 --> 00:08:18,670 Dan huwa normalment ftit trick ħelu. 174 00:08:18,670 --> 00:08:20,430 U xi kultant jekk inti ssir verament komdi miegħu, 175 00:08:20,430 --> 00:08:22,820 inti ser tagħmel dan minħabba li jidher tip ta 'kessaħ fil-programmi tiegħek. 176 00:08:22,820 --> 00:08:25,710 Ġeneralment Jien ma tippreżentaha lill inti issa hekk int familjari magħha 177 00:08:25,710 --> 00:08:26,990 jekk tara dan. 178 00:08:26,990 --> 00:08:30,080 Imma ċertament taf li inti ma għandekx li tikteb fi kwalunkwe ta 'kodiċi tiegħek. 179 00:08:30,080 --> 00:08:33,246 Iżda hija xi ħaġa li tkun familjari ma ', għaliex inti ser definittivament tiltaqa 180 00:08:33,246 --> 00:08:36,130 siltiet ta 'kodiċi hawn u hemm fejn dan:? sintassi, 181 00:08:36,130 --> 00:08:39,120 AKA l-operatur ternarji, jintuża. 182 00:08:39,120 --> 00:08:40,960 >> Sommarju hekk malajr fuq liema conditionals huma, 183 00:08:40,960 --> 00:08:44,210 u x'inhuma l-għażliet disponibbli lilek fil C. Għandek Jekk u jekk-oħra, 184 00:08:44,210 --> 00:08:46,860 u jekk inkella jekk, eċċetera. 185 00:08:46,860 --> 00:08:50,880 Tista 'tuża espressjonijiet Boolean għal dawk li jagħmlu d-deċiżjonijiet. 186 00:08:50,880 --> 00:08:53,720 >> Ma 'dikjarazzjonijiet swiċċ tuża każijiet diskreti li jieħu deċiżjonijiet. 187 00:08:53,720 --> 00:08:57,540 Inti ngħid speċifikament, jekk huwa wieħed, jew jekk huwa tnejn, jew jekk huwa tlieta, 188 00:08:57,540 --> 00:09:00,870 I ser jagħmlu dan ħaġa, jew din il-ħaġa, jew dan il-ħaġa. 189 00:09:00,870 --> 00:09:04,660 U:? Jistgħu jintużaw biex jissostitwixxu sempliċi ħafna friegħi jekk-ieħor, 190 00:09:04,660 --> 00:09:08,490 jew jekk inkella ktajjen-li jagħmlu kodiċi tiegħek tfittex fancy ftit. 191 00:09:08,490 --> 00:09:09,250 >> Jien Doug Lloyd. 192 00:09:09,250 --> 00:09:11,410 U dan huwa CS50. 193 00:09:11,410 --> 00:09:12,959