[Daqq tal-mużika] Doug LLOYD: Hi, so ejja jitkellmu dwar operaturi C. Allura, konna diġà tidher waħda, fil-fatt, huwa daqs il-operatur assenjazzjoni. Dan jippermetti li biss jitqiegħed valur fis varjabbli. Dik hija l-assenjazzjoni operatur, sinjal ugwali wieħed. Sabiex jimmanipulaw u xogħol mal-valuri u varjabbli fis-C, għandna numru ta 'operaturi għad-dispożizzjoni tagħna li nistgħu nużaw. Ejja tagħti ħarsa lejn xi wħud mill-dawk komuni tibda bil operaturi aritmetika. Kif inti tista 'tistenna, nistgħu nagħmlu operazzjonijiet pretty matematika bażiċi fil C. Aħna tista 'żżid, naqqas, immoltiplika, u numri firda li jużaw plus, minus, star, u slash, rispettivament. Hawn koppja ta 'linji ta' kodiċi li aħna tagħmel dan. Allura, aħna għandna int x ugwali y flimkien ma '1. Ejja nassumu li x'imkien up fuq din il-linja tal-kodiċi kellna qal y int ugwali għal 10. X'inhu l-valur ta 'x wara I tesegwixxi dan l-ewwel linja tal-kodiċi? Did you say 11? Youd dritt. Għaliex huwa li? Well, y kien 10. Xi int Jien qal x ugwali għal 10 flimkien ma '1. 10 plus 1 huwa 11. Allura, il-valur 11 gets maħżuna fil-varjabbli x. Mhux wisq ħażina, right? Kif dwar din il-linja li jmiss ta ' kodiċi? x ugwali x żminijiet 5. Ukoll, qabel we esegwiti din il-linja ta 'kodiċi, x kien 11. Allura, x'inhu l-valur ta ' x wara din il-linja tal-kodiċi? Tieħu t-tieni. Allura, x ugwali x żminijiet 5. x kien 11. Allura, x ugwali 11-il darba 5. Jew 55. Mela jekk inti qal 55, youd tkun id-dritt. Issa, jista 'jkun ftit konfuża, iżda bil-mod li assenjazzjoni jaħdem C huwa l-valur fuq il-lemin gets assenjat lill-valur fuq ix-xellug. Allura, l-ewwel aħna tevalwa x żminijiet 5. Allura, 11-il darba 5 huwa 55. U allura aħna maħżen li valur x. Il-11 li kien hemm qabel issa qed jinkiteb fuqhom. Allura valur x taċ issa 55 hu. Nisperaw li pjuttost sempliċi. Hemm operatur ieħor li inti stajt probabbilment mhux neċessarjament jinstemgħu sejjaħ dan, imma inti stajt ċertament ħadem fil-passat jekk inti tiftakar ġurnata tiegħek ta 'żmien twil diviżjoni mod lura fl-iskola grad. Huwa sejjaħ l-operatur modulus. X'inhu modulus ma huwa jagħtik l-bqija meta inti jaqsmu żewġ numri flimkien. Għalhekk, jekk ngħid 13 diviż bl 4, x'inhu l-bqija? U li l-valur ikun ikkalkolat mill-operatur modulus. So, I jkollhom linja tal-kodiċi hawn, int m ugwali 13 mod 4. U jien ngħid hawn fil kumment valur li m issa huwa 1. Għaliex għandi ngħid li? Ukoll, jagħmlu l-diviżjoni twila fil tiegħek ras, jekk inti jkollhom miegħi għat-tieni. So, I 4 diviża bi 13. 4 tmur fi 13 tliet darbiet bil-bqija tal-1. Allura, bażikament, l- operatur modulus ma huwa jgħidlek meta inti qasma, ikollok l-bqija. Għandek mnejn taħseb li attwalment mhux xi ħaġa terriblement utli, imma youd tkun sorpriż, fil-fatt, billi kemm spiss li modulus operatur jista 'jidħol fil handy. Hemm ftit ta 'problemi aħna ser nagħmlu CS50 li jittrattaw dan. Huwa wkoll tajjeb biex isir affarijiet simili numru bl-addoċċ. Għalhekk, per eżempju jekk inti stajt qatt sema ta 'ġeneratur numru bl-addoċċ, li għaddej biex jagħtuk numru minn 0 sa xi numru kbir. Imma forsi inti biss verament bżonn ta 'numru 0-20. Jekk inti tuża l-operatur modulus fuq dak in-numru ġgant li gets iġġenerat mill- ġeneratur numru bl-addoċċ, int ser jieħdu kwalunkwe valur enormi huwa, jaqsamha b'20, u jiksbu l-bqija. Il-bqija jista 'biss tkun valur 0-19. Allura, tuża operatur modulus biex jieħdu dan in-numru kbir u Whittle l-isfel fis xi ħaġa ftit aktar sinifikanti. Jien pretty żgur li int ser tkun jistgħu jużaw kemm ta 'dawk f'xi punt fil-futur CS50. Allura, C tagħtina wkoll mod li japplika aritmetika operatur għal varjabbli waħda fi ftit b'mod aktar shorthand. Allura, fil-slide ta 'qabel, rajna x ugwali x żminijiet 5. Li ħadmu. x drabi 5 allura gets maħżuna lura fil x. Hemm mod iqsar biex tagħmel dan, ħsieb, u huwa l-ħinijiet sintassi x ugwali 5. Huwa l-istess ħaġa eżatt kif qal x ugwali x żminijiet 5. Huwa biss ftit mod iqsar biex tagħmel dan. U meta tara xi kodiċi distribuzzjoni jew inti tara xi kodiċi kampjun li ma affarijiet bħal dan, biss ikunu familjari mal dak l-sintassi mezzi. Inti żgur ma għandekx jużawh, imma jekk inti tagħmel, jista 'jagħmel kodiċi tiegħek tfittex slicker ftit. U taf li inti tista 'wkoll tuża kwalunkwe l-operaturi differenti konna diġà rajna qabel minflok ta 'drabi. Tista 'tgħid x plus ugwali 5, nieqes ugwali 5, il-ħinijiet, firda, u mod. Dawk kollha tax-xogħol. Hemm ukoll xi ħaġa dan huwa tant komuni fil C li aħna iddeċidejt li jirfinaw li anke aktar. Inkrementazzjoni varjabbli minn 1 jew decrementing varjabbli minn 1 huwa tali thing-- komuni speċjalment meta nitkellmu dwar linji ftit aktar tard on-- li aħna iddeċidejt minflok tgħid xi ħaġa bħal x plus ugwali 1, jew x ugwali x flimkien ma '1, konna anke qasir mogħtija li biex x plus plus. Allura, x ugwali x plus 1, x plus ugwali 1, u x plus plus kollha jagħmlu l-istess ħaġa. Huma kollha inkrement x b'1. Iżda dan inkrementazzjoni u decrementing b'1 hija tant komuni li għandna plus plus u minus minus li jippermettu magħna biex shorthand li anke aktar. Allura, ejja gerijiet swiċċ għat-tieni u jitkellmu dwar espressjonijiet Boolean. Kollha li huma wkoll tip ta 'jaqgħu il-kategorija ġenerali tal-operaturi. Iżda espressjonijiet Boolean, b'differenza operaturi aritmetika, huma użati għat-tqabbil valuri. Allura, għal darb'oħra, espressjonijiet Boolean kollha fl C tevalwa lil wieħed minn żewġ valuri possibbli, recall. Veru jew falz. Dik hija l-uniċi żewġ valuri li Varjabbli Boolean tista 'tieħu dwar. Nistgħu jużaw ir-riżultati ta 'espressjoni Boolean fil-lott ta 'modi fl-ipprogrammar. Fil-fatt, inti ser tkun tagħmel dan pjuttost ħafna. Per eżempju, aħna tista 'tiddeċiedi, ukoll, jekk xi kondizzjoni hija vera, forsi I ser tieħu din fergħa isfel kodiċi tiegħi. A kundizzjonali, biex ngħidu hekk. Aħna ser jitgħallmu dwar dawk dalwaqt wisq. Jew forsi, sakemm dan huwa minnu, nixtieq biex tkompli tagħmel dan aktar u aktar u aktar. A loop. Fiż-żewġ każijiet, jafu li aħna qed tuża espressjoni Boolean, vera jew falza, li jiddeċiedu jekk jew le li tieħu triq partikolari. Xi kultant meta aħna qed jaħdmu ma espressjonijiet Boolean, se nużaw varjabbli tat-tip BOOL. Inti jista 'jkollok ddikjaraw a BOOL ittajpjat varjabbli, u inti ser tuża fil tiegħek Espressjoni Boolean. Imma inti ma dejjem għandek tagħmel. Kif jirriżulta, fis-C, kull nuqqas ta '0 valur huwa l-istess kif qal veru. Jekk inti kienu ddikjaraw a varjabbli ta 'tip Boolean, u assenjati lilha l-valur veru, li l-istess bħal tiddikjara integer u assenjazzjoni tiegħu l-valur 1, 2, 3, jew verament xi valur tkun xi tkun differenti minn 0. Minħabba fis-C, kull-0 non valur huwa veru. 0, min-naħa l-oħra, hija falza. Dan jista 'jidħol fil handy aktar tard li jkunu jafu, iżda biss xi ħaġa li wieħed iżomm f'moħħu. Aħna mhux dejjem ikollhom biex jużaw Varjabbli tip Boolean meta aħna qed jaħdmu ma 'espressjonijiet Boolean. Hemm żewġ tipi ewlenin ta 'Boolean espressjonijiet li aħna ser jaħdmu magħhom. Operaturi loġiċi u dawk operaturi relazzjonali. Il-lingwa hemm mhux terriblement importanti. Huwa tassew kemm jien jingħaqdu. U inti taf żgur, I think, malajr jirrealizzaw dak operatur relazzjonali hija, ibbażati fuq dak li huma meta aħna jitkellmu dwarhom fit-tieni. Imma ma joqogħdu jinkwetaw dwar neċessarjament memorizing l-operatur loġiku terminu jew operatur relazzjonali. Jien biss jużawha għall-grupp minnhom b'mod loġiku. Allura, ejja tagħti ħarsa lejn it-tliet operaturi loġiċi li aħna ser tara pjuttost bit fil-programmazzjoni fil CS50 u fl-ipprogrammar aktar ġenerali. Logical U huwa veru, jekk u biss jekk iż-żewġ isiru operazzjonijiet matematiċi huma veri. Inkella falza. Fejn jfisser? Allura, ejja ngħidu li jien bi punt fil-kodiċi tiegħi fejn I jkollhom żewġ varjabbli, xuy. U nixtieq li jiddeċiedu jekk li jagħmel xi ħaġa fil-kodiċi tiegħi ibbażata fuq jekk x hija vera u y huwa veru. I biss tixtieq li tagħmel dan jekk tnejn minnhom huma veri, inkella Ma rridx li jinżlu li triq għaliex mhuwiex ser għinni. What nista 'ngħid huwa jekk x & & y. Li se jkun Boolean loġiku espressjoni jitqabblu x uy u tieħu triq ċerta ibbażati fuq dak l-valuri tagħhom huma. Għalhekk, jekk x hija vera u y huwa veru ibbażati fuq din it-tabella verità hawnhekk, biss allura aħna se jinżlu f'din it-triq. Jekk x, & & y. Huwa biss true-- l u biss minnu jekk x hija vera u y huwa veru. Jekk xi waħda hija falza, kif naraw l-tabella verità, imbagħad kemm xuy huma mhux veru. U għalhekk, x & & y hija falza. Logical OR huwa minnu jekk u biss jekk operand talanqas wieħed minnhom ikun veru. Inkella falza. Allura loġiku U meħtieġ kemm x uy biex ikunu vera. Logical JEW teħtieġ x biex ikunu vera jew y biex ikunu vera jew kemm xuy li jkun veru. Allura, għal darb'oħra, aħna tip ta 'ssib lilna nfusna f'sitwazzjoni fejn aħna qed tmur għall-kodiċi tagħna, u lħaqna furketta fit-triq. U rridu li jinżlu partikolari passaġġ jekk x huwa veru jew y huwa veru, iżda mhux bilfors jekk iż-żewġ huma veri. Imma possibilment jekk iż-żewġ huma veri. Mela jekk x hija vera u y hija vera, aħna ser jinżlu f'din it-triq. x hija veru. Waħda minnhom hija vera, right? Jekk x hija vera u y huwa veru. Jekk x hija vera, u y hija falza, wieħed minnhom għadu vera. Allura, x jew y għadu vera. Jekk x hija falza, u y huwa minnu, wieħed minnhom għadu vera, right? y hija vera, f'dan il-każ. Allura, huwa veru li x jew y huwa veru. Huwa biss jekk x hija falza u y hija falza do we ma jinżlu f'din it-triq, minħabba li la x lanqas y huwa veru. Issa, jekk inti qed tfittex lejn l-iskrin dritt issa u mintix dak li simbolu huwa għall loġiku JEW, huwa msejjaħ il-bar vertikali. U jekk inti tħares lejn tastiera tiegħek għal minuta, li qed nagħmel issa, huwa ġeneralment eżatt fuq il- Ikteb ewlenin, fuq l-aktar tastieri, fuq l-istess ċavetta bħall-backslash. Huwa wkoll ġeneralment id-dritt li jmiss għall-parentesi kwadri. Allura, jista 'jkun importanti li inti ma ittajpjat ħafna fil-passat. Iżda, jekk int qatt tagħmel paraguni loġiku, kif aħna ser tkun qiegħda tagħmel ħafna fil-kors, huwa se jkun utli li issib li ewlieni u jużawh. Għalhekk, huwa normalment fuq l-istess ċavetta kif backslash eżatt fuq Ikteb. L-operatur loġiku finali mhuwiex. U MHUX pjuttost sempliċi. Hija inverts-valur tal operand tagħha. Jekk x huwa minnu, allura ma x hija falza. Jekk x hija falza, allura ma x huwa veru. Kultant inti ser tisma dan is-simbolu ppronunzjata bħala bang jew exclamation jew le. Dan kollu l-istess ħaġa pjuttost ħafna. Fil-każ li inti tisma li mitkellma u int ma tkunx ċert dak li tfisser, huwa biss l-exclamation punt, iżda xi kultant huwa imsejħa ftit affarijiet differenti. Kull dritt, hekk li jieħu kura ta 'operaturi loġiċi. Allura, ejja nitkellmu dwar operaturi relazzjonali. Għal darb'oħra, jekk int familjari ma 'dan aritmetika lura fl-iskola grad, int probabilment familjari kif jaħdmu dawn diġà. Dawn jaġixxu eżattament kif youd jistennew. Allura inqas minn huwa veru, f'dan eżempju, jekk x huwa inqas minn y. Għalhekk, jekk x huwa ta '4 u y hija 6, x hija inqas minn y. Veru. Inqas minn jew ugwali għal xogħlijiet pretty simili. Jekk x huwa ta '4, u y hija 4, imbagħad x hija inqas minn jew ugwali għal y. Akbar minn. x hija akbar minn y. U ikbar minn jew ugwali għal, x hija akbar minn jew ugwali għal y. Jekk huwa veru, allura inti ser jgħaddu dik l-espressjoni, u tkun taf jinżlu dik it-triq fuq it-triq. Jekk għandek jekk x huwa akbar minn y, u x hija, fil-fatt, huwa akbar minn y, inti ser tagħmel dak kollu li huwa suġġett għall-kondizzjoni. Avviż li aħna ma jkollhomx karattru wieħed għal inqas minn jew ugwali għal, kif inti tista 'tkun familjari ma 'mill-kotba matematika. Allura, aħna għandna l-inqas minn simbolu, segwit minn sinjal ugwali. Li kif aħna nirrappreżentaw inqas minn jew ugwali għal. U l-istess, nistgħu nagħmlu dan għal aktar minn jew ugwali għal. L-aħħar żewġ relazzjonali operaturi li huma importanti huma l-ittestjar għall-ugwaljanza u l-inugwaljanza. Għalhekk, jekk x ugwali ugwali y, huwa veru jekk x uy tal-valur hija l-istess. Jekk x huwa 10, u y huwa 10, imbagħad x ugwali ugwali y huwa veru. Jekk x huwa 10 u y hija 11, x ugwali ugwali y mhux veru. Nistgħu wkoll test għall-inugwaljanza użu punt exclamation jew bang jew le, mill-ġdid. Jekk x mhuwiex ugwali għal y, jekk dan huwa t-test we qed tuża hawn, aħna'd tkun tajba biex tmur. Għalhekk, jekk x mhuwiex ugwali għal y, aħna ser jinżlu f'din it-triq. Jkun verament attenti hawn. Huwa mistake-- verament komuni u wieħed I ċertament issir pjuttost ħafna meta I kien qed started-- li aċċidentalment żball l-operatur assenjazzjoni, ugwali waħda, għall-operatur paragun ugwaljanza, ugwali doppja. Hija ser twassal għal xi stramb imġieba fil-kodiċi tiegħek, u normalment l-kompilatur se twissi inti dwar dan meta inti tipprova u jikkumpilaw kodiċi tiegħek, imma xi kultant inti tista 'tkun kapaċi li Sneak lilu mill. Mhuwiex neċessarjament ħaġa tajba li inti Sneak dan minn, għalkemm. Just hekk jekk inti qiegħed tagħmel test inugwaljanza, jekk int verifika jekk tnejn varjabbli differenti għandhom l-istess valur ġewwa minnhom, kun żgur li jużaw ugwali ugwali, u ugwali mhux wieħed. U li mod program tiegħek ser jkollhom l-imġieba għandek il-ħsieb. Jien Doug Lloyd u dan huwa CS50.