[Musika jotzen] DAVID MALAN: Kaixo, guztioi. Hau CS50 supersection da. Esleitutako Sailak ez ditu beste aste hasteko. Eta, beraz, gaur egun, hemen nago with-- MARIA: Maria. DAVID MALAN: benetan --to Arazoa begirada bat hartu multzo bat, jakina hamarkadan material lehen asteetan, emateko bideratutako CS50 IDE duzu, pixka bat Linux, sistema hori da eragilearen IDE exekutatzen, baita trantsizioa batzuk begiratu C liderra den Hutsetik Arazoa gehienez bat ezartzeko. Beraz, besterik esan gabe, Arazo bat ezarri, izan zaren joan CS50 IDE, aurkeztua bertan Web-ean oinarritutako programazio hau da erabili ahal izateko dugun ingurunea programak idazteko. Honez oso itxura diseinatu dira ordenagailua tipikoa gogorarazten eragile bat martxan sistema Linux izeneko sistema. Baina da hodeia deiturikoak da, zein guztiontzat esan klasean Benetan dezakezu bere norberaren kontu, eta erabili, bai. Beraz, duzun gehienak seguruenik inoiz erabili Linux ingurunean aurreko edo agian nahiz eta komando lerro ingurumena. Eta komando lerroa giro ezberdina da. Textual guztiak da. Komando guztiak da. Eta pasatzean ez, ikonoak da, no elkarrizketa leihoak, ez menuak. Guztiz da testua. Beraz, hasiera batean, baita halako pauso bat bezala sentitzen atzeraka sofistikazio dagokionez. Baina bukatzen asko izateaz ireki da ahaltsuagoa, zalantzarik gabe, ordenagailu zientzialari bat, azken finean. Beraz, dezagun begirada bat. Hemen nago CS50.io dut, eta horren bidez CS50 IDE saioa ditzakezu. Eta askoz Scratch bezala, ez da Pantaila honetara hiru arlo nagusi. Beraz, ezker-aldean, ez dugu zer fitxategia nabigatzailea izango da. Eta han karpeta hau da at gora, hau da, oraintxe, hutsik I guztiak kentzeko got geroztik nire supersection aurretik fitxategiak. Eta hor zaitugu gorde C idazten dugun fitxategiak. Goiko eskuineko, leku bat non daukagu gure kode guztia idatzita iritsi. Eta hain zuzen ere, egin klik dut plus hau, honen Aukeran me File New utzi du. Eta hemen C kodea idazten edo hasi ahal izango dut, benetan, beste edozein hizkuntzatan kopurua. Eta gero, behealdean non dio jharvard @ ide50-- eta zurea izango pixka bat zerbait esatea desberdina zer hau deitzen zen? Terminal-leiho. Bai. Beraz, terminal leihoa da Komando-lerroan llamado interface bertan bidez elkarreragin dezakezu azpiko sistema eragilea. Eta, oraingoz, ez gara joan Halako erabilera oso gutxi egin besterik, biltzeko asmoa begiratzen akats mezuak ikusi dugu hori, eta gure programak exekutatu. Baina, azken finean, goazen beraz, askoz gehiago egin ahal izateko, eta baita. Eta nahiz eta software instalatu dezakezu eta kudeatzeko zure laneko area CS50 IDE barruan, bai. Baina hori beste denbora batzuk gehiago. Beraz, goazen aurrera eta idatzi programa oso erraza da, besterik gabe, den bero-up bidez joan hello.c, hau da, agian errazena programa idatzi ahal izango dugu. Nik dagoeneko ireki dute, fitxa berria. Aurrera joan noa eta esan, besteak io.h. Ondoren, int main (void). Eta gero printf ("kaixo, mundua" backslash n, aurrekontua itxi, itxi Parentesi, eta koma. Ados. Beraz, orain konturatu nire leiho titulurik ez. Beraz, ez dut oso azkar joan gora joan fitxategia, gorde. Eta garrantzitsua da hori Hau ez deitu "kaixo". I Beraz, oso akats komun bat, batez ere, arazo bat ezarri, da ustekabean deitu besterik ez zure programa "ura" edo "Greedy" edo "Mario" edo "kreditu" edo antzekoak. Baina, egia esan, egin nahi duzu Ziur luzapena duzu hori dela bide bakarra delako konpilatzailea eta, gainera kodea editorean daki zarela benetan idazten C kodea. Hargatik aurrera me eta sakatu Gorde. Eta gaur egun ere, zer CS50 IDE guretzat egiten da, aldi berean da sintaxia guztia nabarmenduta. Beraz, egin zuen guztia oso koloretsua. Eta helburua osoa hori ez dabil. Besterik my eyes marrazteko izateko piezak kontzeptualki desberdinak Programa honen. Beraz, goazen aurrera, eta hori biltzeko. Eta honetan bildu ahal dut modu pare bat ere. Eta astebete du Zahar-eskola horrela egin genuen literalki zen at komando lerroan "clang hello.c." Eta gero Sartu sakatu dut. Eta ezer gutxi gertatzen terminal-leiho batean. Baina zer egin IDE aldaketa? Non, berriro, IDE besterik esan nahi du Garapen ingurune integratua. Esaten modu dotore bat da garapen integratu honetan software garatzeko ingurunea. Beraz, zer zen aldatu Interfazean? Zer dela ohartuko duzu Hori desberdina da, Maria? MARIA: zerbait nabaritu dut IDE50 azpian mezuak karpeta sortu hemen. DAVID MALAN: Bai. Hauxe da, ez bakarrik egin behar duguna "hello.c." Horrez gain, bat "a.out," hau da, programa bat muda izen bat mota. Baina, egia esan, default baten izena da programa konpilatu besterik ez duzu zure kodea eta ez konpilatzailea kontatzeko zer fitxategia irteera. Beraz, hau exekutatu nahi badut, behar compiler-- kontatzeko edo, hobeto esanda, behar dut Laneko area kontatzen duten I izeneko programa exekutatu nahi "a.out". Sartu. Eta ez da "kaixo, mundua. "orain" ./ ". Benetan garrantzitsua. Nahiz eta normalean ez dugu bakarrik commands izenak idatzi, denean duzun programa bat da idatzita, nahi ez duzun "./" esateko esplizituki esaten duelako Linux izeneko programa bat exekutatu nahi duzula "A.out" duten honetan da, non dot indize honetan unean naizela esan ere, gertatzen den bezala laneko area ", a.out,. "A.out," Idatzi nuen besterik esan bada delako, Iritsi "komando a.out ez noa aurkitu "ordenagailua delako asmatu dudalako "a.out"; ez da ordenagailu batera etorriko ez daki non hura bilatzeko, are gehiago, eskubidea da, nahiz eta nire sudurra azpian, nolabait esateko. ONDO DA. Beraz, hau alda genezake "clang o kaixo hello.c." izango Eta Idatzi I hit bada, zer programa da hau gertatzen irteera niretzat? Zer da fitxategiaren izena? Bai, berriro. Hori da. "Kaixo". Beraz, "kaixo" izan da joan programaren izenarekin dugu erabiltzen delako llamado komando lerroko argumentu, besterik ez da portaera aldatzeko modu bat final.jpg den konpilatzailea fitxategi izen zehatz bat. Eta hain zuzen ere, I mapan handiago bada out eta hemen begiratu, Orain ez daukat "a.out" bakarra eta "Hello.c" baina, era berean, "kaixo," baita. Beraz, orain ez dut "Hello," Sartu daiteke. Eta han "kaixo, mundua." Da Baina lastly-- eta honek egingo da orain konbentzio izan erabili osoan dugu seihilekoan, typically-- da, halaber, ezin duzu esan "kaixo." Eta hain zuzen ere, esaten da da sortu Orain arte da existitzen delako. Dezagun aurrera me eta kendu, batera RM komandoa, bai "a.out" - eta esan "kendu erregularra fitxategia a.out?" Besterik esan nahi du, ez zara Ziur ezabatu nahi duzula? Bai esateko noa. Eta gero noa kendu "Kaixo", baina ez "hello.c." Esplizituki esan "bai" noa, baina "y" nahikoa da, bai. Eta orain bada nabarituko dut Idazten ls-- den, oroitzapen, esan zerrendatzen list-- da Nire karpeta fitxategi. Eta hain zuzen ere, I mapan handiago bada egindako eta goian ezkerrean begiratu, zer da hori baieztatzen da Karpeta honetan, nahiz eta Honez etiketatu arren IDE50 gisa sortu hemen eta lanerako guneak ez, besterik ez "hello.c." da Hemen, beraz, orain behera, badut ez "kaixo," Sartu, orain askoz luzeagoa komando bat ikusi nuen, baina bat komando sofistikatuagoa joan datozen asteetan ere baliagarria izan da. Eta orain esan dezaket "Hello". Hargatik bira azkar bat beste batzuk Linux komandoak. Orduan, zergatik ez beste urrats bat hartuko dugu Atzera eta benetan C begiratu gehiago oro har, Scratch transitioning C, eta, ondoren, begirada batekin amaituko da Lehenengo arazoa C. girotuta Guztiak eskubidea. Beraz, ez dut aurrera eta besterik garbi joan joan Nire laneko area Kontrol-L besterik gora pantailan txukun mantentzeko. Baina hori du funtzionala ez eragin bestela. Dela ikusten dugu, abisuaren gutxi barru-komando orain. Beraz Clang ikusi dugu, oro har, you ez dute jada eskuz exekutatu. Egingo ordez erabiltzen dugu. Baina ls ere ikusi dugu, eta horrek erakusten du Nire direktorioa fitxategiak zerrenda. Eta orain, zergatik da han daude bi Honez fitxategiak orain, "kaixo" eta "hello.c." Zergatik ez dago izar bat edo bat Asteriskoa ondoren "kaixo"? Zer horren adierazgarri zuen, oinarritutako zer ikusi astebete gauden? Zer uste duzu? Zer adierazgarri du izarraren? MARIA: programaren "kaixo" For? DAVID MALAN: "Kaixo *". Bai. Oh, bai? Oh, exekutagarria. Hori da. Beraz, hori esan nahi du "Kaixo" exekutagarria da. Beraz, hain zuzen ere, horregatik I egin daiteke "Hello". Ados. Beraz, zer gehiago egin dezaket dut hemen? Beno, bihurtzen da, ahal dudan halaber guneak sortu. Hargatik aurrera me eta sortzea, esate baterako, bat "pset1" direktorioa. Eta arazo multzo zehaztapen zehazki Horretarako izango dute, beraz, ez duzu gaur gogoratzeko. Baina "mkdir pset1" badirudi eraginik ez izatea. Baina, berriro ere, errore-mezu ez da, oro har, gauza ona da. Beraz badut idatzi "ls" da gaur egun ah, orain Izeneko fitxategi exekutagarri bat daukat "Kaixo," C-fitxategi batean "hello.c." Deitzen Eta, ondoren, barra, beraz, hitz egiten, esan nahi du horrek direktorioa da. Beraz, hain zuzen ere, orain Ireki nahi dut. Eta ez dut bikoiztu egin klik gainean bezalako GUI bat, ingurune grafiko batean. Esan ordez "cd pset1." I Sartu. Ezer interesgarria dirudi dute Gertatu nire gonbita gutxi izan ezik hemen honek Linux en gogoraraziz modu bat da me non nago, beraz, zer karpeta da irekita. Besterik ez da me kontatzea esplizituki aurka jo grafikoki. Eta badut idatzi "ls," zergatik ez beste bat ikusi nuen galdetuko berehala, uste duzu, denean pset1 edukiak zerrendatu dut? MARIA: Ziurrenik ez ez ezer. DAVID MALAN: Bai. Beraz, ondoren, ez daukagu, jakina, ezer sortu hor besterik direktorioa sortu dudalako. Orain, alde fitxategi bat sortu nahi izan banu Adibidez, fitxategi berri bat sortu ahal izan dut. Eta gero, nahi izan dut joan Gorde eta gorde bezala, bezala, "mario.c" egiten ari bazara pset bat edizio estandarra. Eta gero, edozein Mac edo PC bezala, besterik ez Aukeratu karpeta "pset1, Save. Eta orain fitxategia hutsik dago. Baina gerturatzeko berriro bigarren. Egin dezagun ls hemen utzi. Orain "mario.c" ikusiko dugu. Beraz, ez da bat, beste komando gutxi dagoela dira kontuan, aldi baino gehiago hartzea merezi argi eta garbi, edo Kontrol-L da zer egin dut egon kolpatzeko; mkdir ikusi dugu; RM ikusi dugu, baita, hau da, kendu edo fitxategi bat ezabatzeko. Kontuz also-- dezakezu eta begiratuz gero online tutoretzak at, RM dituzu -rf esaten modu oso ohikoa da duten gauza ditu karpeta bat ezabatzeko. Just izan super, super ibili. errekurtsiboki esan -rf ezabatu edozein da ezabatu nahi zu eta indarrez ezabatu. Beraz errekurtsiboak bitartekoak karpeta bat da If karpeta bat karpeta bat beste karpeta bat dagoelako, horiek guztiak ezabatu. Eta indarrez esan ez baita egin galdetu zidan bai edo ez, ziur nago? Beraz, modu super arriskutsua da gauza asko azkar ezabatzen. Baina beware-- sarri askotan gertatzen ausart bat Ikasle ustekabean ezabatu, esan, pset bat, esate baterako. MARIA: Eta badute besterik egiten -r, ari dute eskatu fitxategia behin bakar buruz. DAVID MALAN: Zein da neurrizko gogaikarriak. MARIA: Bai. DAVID MALAN: Beraz, horregatik beraz, gutako askok, auto sartuta, -rf erabiltzeko ohitura du am. Baina arriskutsua da. Beraz, erosleak kontuz. Eta gero, mota da mv interesgarriagoa izendatu. Beraz, hau mugitzen komandoa da, sentitzen pixka bat arraroa hain zuzen ere, ezin duzu erabili duelako da fitxategiak mugitzeko leku batetik bestera. Esate baterako, demagun messed dudala. Demagun sortu dudala fitxategi berri bat pset da. Eta hura bezala gorde dut "greedy.c." Baina pentsatzen dut ustekabean gorde IDE50-- nire laneko area berez hain eta ez pset1. Gisa goiko ezkerreko askoz ikusi ahal izango duzu. Ez dago "greedy.c." Da Eta ez dago soluzio batzuk bat da. Bat, beraz, erabili ahal izango dut super erabiltzaileak errespetatzen modu ren besterik arrastatu eta askatu. Eta hori litzateke benetan Arazo hau konpontzeko. Baina gaur, begiratzen saiatzen ari gara gehiago urrutira baina indartsua bideetan Hori eginez. Hargatik hartu me "ls" pset1. Eta bakarrik ikusi dut "mario.c." Dezagun aurrera eta ez nau "cd ..". Beraz CD aldaketa direktorioa berriro da. ".." Zer esan nahi du, nahiz eta,? Azken aldian erran dut "cd pset1 "nahi pset1 sartu. Beraz, esan nuen "cd ..", zer egiten ari naiz? Atzeraka. Bai. Beraz, guraso deiturikoak da joan. Joan maila bat gora, atsegin karpeta bat atera irteten. Beraz Sartu. Eta hain zuzen ere, begira zer egin. Me mugitu besterik laneko areara sartu ordez ren pset1, horrek laneko area batean dago sartu. Eta orain idazten dut "ls" bada, ez dago gauza sorta oso bat da. Daude "greedy.c" da. Beraz, gaur egun mv erabili literalki me mugitu "greedy.c" pset1 sartu. Eta beraz, Linux asko komandoak zehazki honela funtzionatzen. No argudioak hartu dute edo bat hartu dute Argumentu edo bi komando lerroan hartu dute argudioak eta abar. Eta, kasu honetan, ez da literalki zer egiten ari esaten du, succinctly-- arren mugitu greedy.c pset1 sartu. Sartu. Ezer gutxi gertatzen. Baina, berriro ere, ez dut ls bat izanez gero, Greedy desagertuko da. Eta "cd pset1" egiten badut, Sartu, eta, ondoren, ls berriro, orain leku egokian egiten. Alde batera utzita, balitz bezala Zenbait arrazoia batez ere Aldizkako baldin baduzu sarerako konexioa edo paseatzea zu Zure ordenagailu eramangarria Tapa campus itxita eta ondoren ireki eman behin eta zure laneko area badirudi zertxobait sync, big aurre ez daudelarik. Just zure nabigatzailean freskatuz leiho, eta halaxe egongo da Sinkronizatzen beraz, ezker eskuko fitxategia nabigatzailea itxura hain zuzen terminal leihoa bezala. Ez kezkatu. Zalantzarik, berriro orria, beraz, luze duzun fitxategiak gorde dagoeneko. ONDO DA. Beraz mv ere egin fitxategiak izenez aldatzeko erabiltzen da. Eta dezagun begirada bat azken komando hau hemen. Beraz suppose-- eta hau da, super komuna ere, hasieratik. Ikasle batzuk noizean behin fitxategi bat sortu izeneko, demagun zer da beste bat? Atsegin dut "WATER.C." Beraz, besterik gabe, Yell dut, for arrazoirik ez, txanoak guztiak. Baina hori ez da fitxategirako izen zuzena gure arazo multzo bakarra delako zehaztapen ez zuen esan duzu fitxategia mintzek gisa gordetzeko "WATER.C." Horren ordez, espero dugu "Water.c" minuskulaz. Eta, hain zuzen ere, hau da, problematikoa check50 delako, programa bat bazoazela Arazoari bilduko ezarri inork automatikoki probak Zure kodea zuzentasuna da behar duzu Yell joan ezin badu "water.c" minuskulaz guztietan aurkitu. Beraz, hau konpondu behar dut. Modu ezberdinak hainbeste Horretarako, horietatik lehena kontrol-klikatu edo eskuin-klik litzateke Fitxategiaren izena eta besterik aldatu Rename. Guztiz fina da egin behar. Baina, berriro ere, gaur egun, dezagun egin du apur bat fancier. Erabili dezagun mv aldatu "WATER.C" to "water.c." Beraz, lehen argumentua ere erabil dezakezu berrizendatu bigarren argumentua Bigarren argudioa ez, da ere bada Izan ere, karpeta edo direktorioa izen bat. Ados. Eta, azkenik, trikimailu apur bat, beraz, naiz Nire laneko area direktorioa une. Pset bat sartu nahi badut, I zalantzarik idatz dezake "cd pset1." Baina orain lapurtera da "pset1" idatzi edo fitxategi-izen edo direktorioa izenak luzeagoak oraindik. Beraz, oso Linux maiz, zer egin dezakezu hasiko da "PSE" idazten eta besterik ez da aspertzen, sakatu Tab, eta utzi ordenagailu irudikatu duzu. Super lagungarria den ohitura hori hartzea. Harrapaketa bakarra da baldin baduzu hainbat fitxategi edo karpeta hasita letra "p" edo "Ps," izan ditzakezu aurretik gutxi gehiago idatzi nahi ordenagailua daki zer egin. MARIA: zuzeneko sarbideak nahi dugu. DAVID MALAN: Hau izango da Hainbeste denbora aurreztuko duzu. Eta, gainera, hitzaldi batean esaten genuen bezala, zuk korrituko ireki historian, gora eta behera, Duela gutxi fusilatu aurkitu komandoak, bai. Ados. Beraz, gaur egun, dezagun gure arreta piztu atzera programa sinple baterako, kaixo mundua. Beraz, konpilatu dugu hau zehazki. Eta orain, zergatik ez hartu dugu Datu mota begirada bat eta, ondoren, zenbait trantsizio dagokion Scratch bloke C. MARIA: Awesome. Beraz, gaur hasi duzun hori C programak idaztean, hizketan hasteko goaz Datu mota eta aldagai buruz. Beraz, datu mota batzuk duzula orain hasita jakin nahi luke direnak direla urdinez. Beraz, int lehen egin behar dugu, horrek oso nabarmentzen. Eta hori integers dauka, zuk bezala izan guessed-- hain 1, 2, 3, eta beste edozein zenbaki osoko ren duzula uste dezake. DAVID MALAN: Eta, gainera, negatiboa. MARIA: Eta, gainera, negatiboak direnak, bai. Eta 0. Gero, karroza, ez dugu bertan puntu mugikorreko zenbakien. Beraz, hori da benetako zenbakiak guztiak duten hamarren. Beraz, 5.0, 5.2, eta are gehiago hamarren ostean zenbakiak, baita, eta, gainera, negatiboak direnak. Ondoren char den pertsonaia bat da izan dugu. Beraz, uste dut hitz egin dugu hitzaldia gaur honetan. Baina letrak izan dugu, A Esate baterako, B, C dela char bezala gorde dezakezu. Baina orduan ikurrak asko gehiago daukagu dela char bezala gorde dezakezu. Eta horiek dira ASCII moduan gorde. Eta gero bool dugula, diren Booleans. Eta horiek egia ebaluatzeko edo Gezurra edo 1 eta 0, hurrenez hurren. DAVID MALAN: Eta gogora ekarri bool CS50 liburutegia dator. Beraz, ez da barneratzen C, baina super erabilgarria da egia eta gezurra nozioa dute. Eta are you arren Izan ere, fun think-- liteke. Bool A teknikoki behar zenbat bit, Benetan, True False versus irudikatzeko? Zenbat bit uste duzu behar zaizkio, gehienez? Bai, bat baino ez. Eta gertatu da C dagoela ezin pixka bat besterik ematen duzu. Neurri unitate txikiena lortu ditzakezun zortzi da. Beraz, hondakin-ekoizpena apur bat dutela Oraindik da byte oso bat, edo zortzi bit erabiliz, Egia ala gezurra irudikatzeko. Baina hori besterik ez da egin C gauzatutako CS50 liburutegia arabera. MARIA: Eta gero, direnak direla gaude ez den bezala, zabal hitz egin eskubidea bikoitza da gaur egun, duten karroza handiagoak ekarriko. Epe luzeak eta laburrak dira, halaber, zenbaki osoen. DAVID MALAN: Izan ere. Hacker edizioa pset bat ere, benetan erabili dugu eta luze gabe. Baina estandarra ediziorako, ez da ezer egin beharko. MARIA: Cool. ONDO DA. Beraz operators-- izan behar duzu ziurrenik horietako gehienak ezagutzen. Horrez, +; kenketa, -. Ugaria delako, ez dugu * du. Beraz, ez X erabiltzen da normalean. Division, backslash daukagu. Eta modulo gure azken operadorea da oraintxe buruz hitz egin dugu. Da hori ematen digu operadore baten It Zatiketa baten hondarra hartu. Beraz,% 4 badaukagu ​​2, 4 banatuta 2 2 0 gainerako batekin. Beraz,% 0 4 2 da. % 4 3 1 da. % 4, 5, 4 da, zuk igarri adina. Eta gogoratu horiek guztiak erabiltzean PEMDAS arauak erabili operadore. DAVID MALAN: Beraz, argi izan, baduzu % 4 2 egin, zergatik da 0 dela, zehazki? MARIA: 4 Zeren arabera banatzen 2 2 0 gainerako batekin. Beraz, modulo gainerako duten bezala ematen digu zatiketaren ondorioz aurka. DAVID MALAN: Eta hain zuzen ere, zer zaio hau aurkituko dugu da arazo batzuk direla hori ez da zertan bat, izatea nahi izanez gero yourself murriztaile eragina zenbakiak sorta bat atsegin 0 zerbait bidez, modulo erabili ahal izango duzu inguruan biltzeko 2 milioi bezalako baino lehenago edo 4 milioi balio duten hitzaldian hitz egin dugu. MARIA: Bai. Eta nahiz eta "Greedy" guk. DAVID MALAN: Bai, in arazo multzo bat, baita. MARIA: Bai, polita. DAVID MALAN: Ongi aholkua. MARIA: Sentitzen dut. Boolean expressions-- orain operadore boolearrak egiteko, guztiei buruz hitz egin behar dugu duten horiek hemen ikusten duzu. Beraz, oraintxe bertan, bi ditugu berdin-zeinuak azaltzen diren berdinen da. Beraz, horiek konparatzeko dira. Orain arte, Nik bakarrik ikusten dugu berdin zeinu. Orduan esleitu dugu aldagai baten balio bat. Beraz, ikusi dugu int n = 5, orduan bada Nik esleitutako dugu 5 n aldakorra da. Baina == erabili nahi badugu Konparaketa, egiaztatu ahal izango dugu n == 5 bada. Eta n == 5 bada, ondoren, hori egia da. Operadore Beraz Boolean ahalbidetuko digu, funtsean, Boolean ebaluatzeko Egia ala gezurra den esamoldeak. Beraz, ez berdinen daukagu Harridura marka eta berdinen. Beraz, ezin izan dugu, halaber, baldin n egiaztatu ez da berdina 5-- hain n = 5. Baino gutxiago, txikiago edo berdina, baino handiagoa, baino handiagoa edo berdina, eta, ondoren, logikoa daukagu ETA eta logikoak OR. Eta horiek ebaluatzeko aukera ematen digu Anitz adierazpen boolearrak elkarrekin funtsean, etortzen bezala, elkarrekin adierazpen boolear bat osoan. Beraz, zenbaki bat aurkitu nahi badugu, esan, Eskaintza 5 baino handiagoa da, baina 15 baino gutxiago da aldi berean, erabili genuke logikoa ETA eragilea n dagoen jakiteko 5 baino handiagoa && n 15 baino gutxiago. DAVID MALAN: Eta hemen, ere, oso erraza da goiz da nahi gabe ampersand bakar bat erabili edo barra bertikal bakar batean. Eta zorionez, konpiladoreak egingo Yell duzu dutelako benetan Oso bestelako zentzu bat dute. Bitxia dituztenentzat, ari dira bitekin eragiketak egiteko erabiltzen da, banakako bit gainean. Baina nahi nituen biak hemen egin duzu. Eta super garrantzitsua dela lehenengoa, berdin ikurra, hau da, berdintasun-operadorea gisa esleitzeko operadorea aurka. MARIA: Eta barra bertikala da Ezabatu eta Return artean dago. DAVID MALAN: Bai. US teklatua tipikoa On. MARIA: Bai. Beraz, salto eskubidea sartu utzi baldintzapeko adierazpenak. Scratch, duzun Dagoeneko ikusi, ziurrenik, bada hori baimendu nahi adierazpenak egiaztatu zerbait egia bada, orduan beste zerbait egin. Beraz, nahi duzu agian Zure sprite dagoen egiaztatzeko beste sprite batzuk ukitu edo zure pantailaren mugan. Eta gero, nahi izan liteke dute Partida amaitzeko edo beste zerbait egin. Beraz, hori sintaxia da "bada (baldintza)." Beraz bada zure sprite zerbait ukitu, orduan ez kizkur giltza barruan dago. Orduan bada bestela adierazpenak ditugu. Bestela ahalbidetzen zerbait egin gurekin baldintza hori badugu egiazta ditzan, hasiera batean, ez da egia. Beraz Sprite da bada ukituko mugan egin, beste zerbait egin. Beraz, bestela beste zerbait. Ondoren horretarako adibide labur bat egin behar dugu. Beraz, (adibidez military_time <12), ez dugu printf nahi "Egunon!" Bestela goaz printf "Arratsalde on!" Oinarrizko adibidez. DAVID MALAN: Ongi. MARIA: Cool. Beraz, orain switch adierazpenak ditugu. Alda zaitezke orokorrean adierazpenak uzten gauza bera asko egin gurekin Hitz egin besterik ez dugu adierazpenak buruz. Esate baterako, oraintxe bertan izan ginen aldatzeko adierazpena forma orokorra hori hartu diguna aldakorra izeneko n a eta konparatu asko behar balio ezberdinak, hemen dugu constant1, constant2 deitu dute. Askoz gehiago izan dezakegu. Eta horiek kasu deitzen dira. Beraz switch bat badaukagu statement-- eta obra honetan zenbaki osoen bat dugu bakarrik Kasu honetan hori da n ere aldakorra. N aldakorra bada berdin, dugu constant1 den kode batzuk exekutatu egingo edo hori egin nahi dugun zerbait. Eta, ondoren, break genuke. Beraz, lehen zatia esan nahi duen aldatzeko adierazpena bada exekutatzean eten egingo da n berdintasunarekin constant1 da, eta, ondoren, zure programa jarraituko du. Egindako irteera izango da adierazpen aldatzeko eta bertan egingo beste zerbait egin jarraitzeko. Bada, ordea, n ez da berdina constant1, orduan constant2 kasu egiaztatu egingo da. Beraz n berdin constant2 gero, beste kode exekutatuko dira. Eta gero, hautsi egingo da Hori dela berdina bada. Eta gero also-- ez izan dezakegu nahitaez, though-- kasuan lehenetsi bat, n ez da berdina bada bertan gertatuko da kasuen zerrendatu duzu edozein. Eta, kasu lehenetsian, halaber dugu ez break bat behar du nahitaez aldatzeko adierazpena izango delako ezagutzen Lehenetsiez ondoren amaituko behar dela Kasu bada, eta kasuan. DAVID MALAN: Baina estilistikoki, Beti jarri ditugu han. MARIA: Bai. DAVID MALAN: Bai. Beraz, batez ere, noiz hasten, batez ere, gutxiago artean bada eroso, pertsonalki nuke besterik gomendatzen IFS makila eta IFS-elses eta bada bestela-bada-elses eta abar bakarra bada Apur bat delako gehiago zuzenean. Hau polita optimizazioa da, edo batzuetan baita estetikoki da egiten Kodea gehiago irakurri. Eta hain zuzen ere, ziurrenik, erdialdean seihilekoan arazo bat ikusiko dugu ezarri non itxura besterik ez da hobea eta errazago gizakiak irakurri switch adierazpen bat erabiliz. Baina ez kezkatu buruz hau goizegi clinging. MARIA: Bai. Asko duzu baieztapen baditut bada, besterik ez zitekeen ez oso irakurgarri izan. Agian ez da oso azkarra izan Zuretzat da pasatzen. Beraz bestera igarotzeko adierazpenak dezake Oso erabilgarria da, bai izan. Eta, gainera, ez dute gogoratzen ez ahaztu jauziak jarri hor. DAVID MALAN: Ez gogoratu honek. MARIA: orduan erori maila duelako bidez, beste kasu batetik bestera. Beraz, demagun kasu constant1 dagoela ez break adierazpen bat dute. Ondoren bidez genezake erori Kasu barruan constant2. Eta ez dugu nahi izanez gero, hori egin nahi Jadanik iritsi gara kasu constant1 eta n berdina da. Beraz, adibidez, aldagai bat behar badugu n class zenbaki bat dauka, ikusi eta zer esan nahi dugu Klase is-- n berdinen 50 bada, inprimatu "CS50 goaz Computer Science I. hastapenak " Ondoren gaude hautsiko den. Eta hori da. Bada, ordea, n berdina da 51, goazen inprimatu "CS51 da sarrera Computer Science II izateko. " Ondoren, berriro ere, nahi dugu hautsi egingo da. Hala eta guztiz ere, bada, ondoren, jarri dugu 124, 61, edozein Hori pentsatzea zenbakira edo programa ez da joan hori ezagutzen. Beraz, esan "Barkatu, Noa Ez class hori ezagutzeko. " Eta hori hautsiko den. DAVID MALAN: Beraz, benetan dezakezu ikusi du ez bada, beste ideia hemen, bada. Ekarriko duen sintaxia besterik ezberdinak ditu zehatza ideia bera adierazteko. MARIA: Zehazki. Orain gure hirunako operadore dugu. Beraz hirunako operadore dute Hiru piezak baldintza bat, Zerbait nahi izanez gero egin baldintza hori egia da, eta, ondoren, zerbait egin Baldintza hori faltsua bada. Beraz, ikusiko duzu, funtsean, Hori sintaxia hemen. Galdera ikurra izan dugu, eta Orduz the-- zer deitzen dugun? DAVID MALAN: Puntuek. MARIA: Colon. Eskerrik asko. Sentitzen dut. Hargatik begiratu gure adibidez at ikusiko dugu Halako zentzu badezakete class_num == 50. Hortaz, hona hemen gure boolear ikusiko dugu == duten class_num aldakorra konparatzen 50 dira. Beraz class_num dendetan zenbaki osoa. Eta osokoa dela bada berdinen 50, orduan ez gara gordetzeko joan "David Malan" katea irakaslea barruan. Klase kopurua ez bada berdinak 50, "ez David Malan" da irakaslea izango da. DAVID MALAN: Eskerrik asko. Eta beraz, honen baliokidea badirudi , zer esan nahi duzun, lehen begiratuan? MARIA: Niretzat dirudiena atsegin bada bestela adierazpenak. DAVID MALAN: Bai. Eta hain zuzen ere, hau da, mota Nahiko liner baten, nolabait esateko, eta ezartzeari buruz zehazki logikaren bada bestela baina guztia egiten urrats bat. MARIA: Zehazki. Bai. Beraz, bada bestela adierazpenak lukeen hartzen dute espazio asko. Gehiegi luzea izango dute agian Zerbait hau bezain sinplea. Beraz, hau oso izan daiteke succinct eta oso polita. Beraz, orain begira sartu goaz gauza behin eta berriro betearazteko, beraz, bat egiaztapena behin baino gehiagotan baldintzatu eta, ondoren, zerbait egin behar jarraitzen du baldintza hori egia da, berriz. Beraz, hau ekartzen digu nicely bitartean loops sartu. Ezkerrera, ez dugu Gure lehen begizta bitartean. Beraz, zerbait gertatzen da egia, berriz, Zerbait egin du behin eta berriro. Beraz, ziurtatu behar duten nabarituko gure baldintza hemen goialdean balidatu. Gure bigarren loop deitzen diogu Berriz do bitartean-begizta duten zerbait egin dugu, ondoren, baldintza bat egiaztatu dugu. Eta baldintza hori bada jarraitzen egia izan, atzera egingo dugu, eta berriro egin gauza. Beraz, Ezberdintasun nagusia da non baldintza da hautatuta. Eta kode dezake inoiz izan fusilatu baldintza ez bada berriz, begizta egia. Do bitartean, berriz begizta, kodea daukagu Hori beti exekutatu gutxienez behin. Eta gero, baldintza bitartean jarraitzen egia izan, atzera egin ahal izango dugu, eta barruan batetik bestera joateko berriro. Beraz, zergatik ez dugu erabiliko luke uste duzu do-bitartean, berriz, begizta bat baino gehiago loop? Eskuin. Beraz galdetuko nahi badugu sarrerako nolabaiteko erabiltzaileari, Eskatu nahi badugu Beren izena sartu: to gutxienez galdetu horiek behin nahi dugu. Eta sartzen ez bada izen hori, ez gara horiek berriro galdetzera joan Dagoeneko ezagutzen dugu delako. Baina ez badute, sartu beren izena, edo badute Sar hori da zerbait jakina da izen bat, Oraindik ere, jarraitu nahi dugu horiek eskatuz bere izena da. DAVID MALAN: Eta hitzaldia izan genuen hau lortzeko int positiboa duen bezala Adibidez, non dago ezer behar hasiera batean egiaztatu ez duzu delako, nahiz eta Int bat ahaztuak. Beraz Halako zer egin nahi dugu user-- int bat lortzeko ondoren, egiaztatu da, agian, eta berriro, behin eta berriro. MARIA: Zehazki. Loops-- OK da. Loops baimendu daiteke ia egin gurekin zehatza gauza bera, baita. Egia esan, gauza bera zehatza. Beraz, ez da ezer ez dela loops batekin egin dezakezu litzateke gai ez izatea den bitartean loops egin. Baina loops txiki bat dirudi bit gehiago sintaktikoki konplikatu dute delako hiru zati barruan zer Besterik aurretik zegoen bitartean loops baldintza. Beraz, lehenengo zatian duzula itsasoa, ezker-gehienak, behar dugu "int nanoen = 0" Beraz, hau da, non gauden hasieratu gure aldakorra. Ondoren, puntu eta koma daukagu eta "nanoen <7." Beraz, hau da, non egindako Egoera benetan da. Beraz, hori da, zer izango genuke Besterik jarri berriz ere loop "Nanoen <7. bitartean" Hemen, hori doa gure begizta for erdialdera. Beraz, "dwaves <7." Eta gero, gure azken zatia "nanoen ++" da hau da, non aldagai eguneratuko dugu. Beraz, garrantzitsuena konturatzen da hori dago Honen bidez joan loop da zazpi aldiz eta exekutatu zazpi aldiz. Beraz, zazpi daukagu nanoen, eta guztiak ari dira , esan "hemen noa laguntzeko, Edurnezuri " prest daudelako Snow White laguntzeko. Loops, horixe egingo luke berriz diogu initialization eta eguneratzeari ez du baldintza barruan, berriz ere, baina aurretik edo bitartean begizta barruan ziurtatu egin badugu hori delako Beti zati horiek behar ditugu. Beraz, ziur dugula egiteko horiek, erantsi horiek oraindik dut genuke , besterik ez parentesi barruan. DAVID MALAN: Eta beraz, itxura atsegin da Hitzaldi hori, esate baterako, Ia beti erabiltzen dut, bezala, i eta n eta aldagai nahiko aspergarria. Itxura gehiago ere erabili ahal izateko cleverly izeneko aldagai, gehiegi. MARIA: Bai, egia esan, oso polita aldagaiak pixka bat gehiago deskribatzailea erabili Beste norbaitek batez ere delako Zure kodea irakurriz agian Oraindik kalifikatzailearen edo zuk parte hartzen ari bada somebody-- batera to egin nahi duzu dute zer egiten ari zaren ulertzen. ONDO DA. Beraz, hau da, zerbait oso funky-- begizta baten barruan begizta for. Ez dakit dugu ikusten bada Nik honen aurretik. Seguru asko ez. Baina ez dugu izan ditzakete Halako beraz begiztak ordez begiztak. Beraz, ez du agian oinez joan nahi duen edonork zer bidez me gertatzen da hemen? DAVID MALAN: labankada bat hartuko dut. MARIA: Cool. DAVID MALAN: OK. Beraz, spoiler-- stuff inprimatu nahi dugu hori da beheko eskuineko izkinan han. MARIA: Eskuin. Bai bai. DAVID MALAN: Beraz, besterik ez dugu adibidea ipini han. Beraz, ezin dut inferitu begizta goreneko duzu zarela errenkada baino gehiago errepikatzean outermost begizta, nolabait esateko. Eta baino gehiago errepikatzean zu Innermost begizta zutabeak. Eta intuizioa, hau beharko lukete, zorionez Zentzuzkoa izaera duelako ikusi dugu programa guztietan aurretik, printf, hau da, funtzioa, erabiltzen ari gara, azken finean, stuff inprimatu gaitasuna du funtsean lineaz linea. Atsegin dut, behin Outputted duzun lerro berri bat, ez da ez atzera bikoiztu eta zerbait inprimatzeko pantaila handiagoa, gutxienez printf hau atsegin ez erabiliz. Eta beraz, Ildo horretan, egiten du Zentzu horretan Kanpoeneko amaitzen da ilaratan beharko aipatuz alde bakoitzak ilara ematen duelako, to nahi ari zaren joan inprimatu XXXXX, eta, ondoren, aurrera hurrengo errenkadan, XXXXX izateko. Beraz ilaratan lehen. Eta gero, bakoitzaren barruan ilara, zutabe inprimatu behar dituzu. Bertan egiten saiatu baduzu kontrakoa, seguruenik litzateke ez Ilki nahi duzun bezala. MARIA: Bai. Dugu, baina oraingoz ez itzuli printf aurreko errenkadan. DAVID MALAN: Eta zer da interesgarria Gaur egungo esparrua buruzko hitzaldi bakoitzeko, Egia esan, ez da ilara int bat da hori begizta goreneko deklaratu. Baina konturatu dela oraindik barrutik, nolabait esateko, kizkur giltza dela jarraian, ez baldin bada ere, teknikoki horiek kizkur giltza barruan. Beraz ilara esparrua da alde kode zatia oso-osorik, bai begizta for kanpoaldeko barrutik eta begizta for barruko barrutik. Baina aitzitik, non zutabea da esparrua? Aldakorreko zutabean? Bai, barrutik begizta bakarra ere. Eta hori da OK, ez dugulako sartzeko da bere kizkur giltza kanpo. Guztiak egin dugu inprimatu out berri batean Oso amaiera han at line. Beraz, hain zuzen ere, ez da aldatu. Beraz, hau dakar, dirudienez, ren hiru lerro eta lau zutabe egiten. MARIA: Eskuin. Gure lehen ilara bidez Beraz, lehenengo goaz. Eta besterik gabe, gure lehen errenkadan, egiten dugu Lehen errenkadan barruan lau zutabeak. Beraz, lau X-ren inprimatu dugu. Eta irten ahal izango dugu begizta, geroztik dugu dagoeneko inprimatutako lau X-en. Eta inprimatu linea berri bat dugu. Eta gero behera zeharkatuko dugu bi ilaratan gehiagorako prozesua bera Hiru dira guztira egiteko. DAVID MALAN: Eta merezi egoten da, besterik letra-erreferentzia bat, hain zuzen, lagin irteera Badirudi hainbeste taller, ez gehiago, nahiz eta gisa zutabeak baino ilarak. Baina besterik X delako taller zabala da, baino da. Hori da hori ez dago gertatzen guztia, plus lerro artean espazio zuria. MARIA: Eskuin. Cool. DAVID MALAN: Ondo da. Beraz, begirada azkar bat arazo berean bat ezarri, Edozein zalantza hartu, eta, ondoren, komertzial? Ados. Beraz, arazo multzo bat, ez da hiru lehen erronka, azken finean. Baina lehen, jakin beharko duzu Arazoa multzoa zehaztapen, batez adina psets jaitsiera honetan, oinez joan beroketa ariketak batzuk bidez, baliabide gutxi barru duzu egindako edo izaten ahal ziurrenik Ez dagoeneko ikusi dute. Esate baterako, CS50 Film labur sorta bat dauka, diren laburmetraiak, Ez hau ez bezala, baina horrek dira oso gai specific-- agian bost minutu, 10 minutu luze izango da begiztak edo baldintza edo algoritmoak edo geroago gehiagotan gaiak aurreratu, baita. Eta, oro har, txertatzen dugun Arazoa aztertzen dutenek multzo beraz, ikasleek horrekin baliabide bat izan Hori izan material ikuskatzea Dagoeneko zatoz gora hitzaldia edo atalean. Baina bide hau gehiago zentratu da eta beren esku gehiago. Halaber, arazo txertatzeko joera dugu Walkthroughs izeneko gauza ezartzen. Beraz, adibide ez dut ia guztiak hitzaldian, etapa hemen, era berean, ez dugu dute kamera filmatu ere aurrera gehiago motelagoa, intimo gidatua me by on Nire kode hartako ordenagailu eramangarri, lerroz lerro beraz klasean dagoela, askotan ikusiko dugu Zerbait edo norbait bidez gaingabetuak izango batekin interject galdera bati erantzun. Baina ez du zertan hondoratzea ikusleen guztiontzat ere. Beraz, kode Walkthroughs aurkituko dituzu Adibide gehienak Hemen egiten dugun hitzaldian, beraz, ibiltzeko dezakezu zure erritmoan eta atzeratzeko edo aurreratu edo saltatzeko guztiz, nahi izanez gero. Ez da, askotan gutxi barru beroketa galdera hori ordenatzeko eskatu material hori indartzeko eta ziurtatu aurretik zarela comfy Jarraitzea pset gainerako duzu. Eta gero, jakina, ez pset bera da. Eta gauza bat oso nahita dugu CS50 egin da ia izanarren guztietan edo intelektualki izanarren Urrats mekanikoa Egin behar duzu agian hau da, ia beti oso ondo dokumentatua. Terminoa zehar, dizkizugu hasteko galdera gehiago erretorikoa galdetzeko atsegin gogoratu honek edo nola egiten den? Baina, oro har, aurkituko duzu Arazo multzo hori lortuko duzu mekanika bidez zerbaiten beraz interesgarria, erronka intelektualak azken finean, zuri geratzen dira ikasleari. Esan, Zamyla, nori nahi dugu mantendu gaur aipatuz hitzaldian, da gure langileek longtime bat bazkide batek Walkthroughs, gainera dauka pset Mario bezalako arazo jakin bati buruzko eta gosea, aurten ura ez arren. Eta horietan egiten walkthroughs askotan zuela zenbait aholku eta trikimailuak eskaintzen , nola jarraitu inoiz diozu Zehazki zer egin, baina baldintza bat bezalakoa rather--, emanez Borondate baduzu, gutxienez bat ideia pare, beraz, zeuk aukeratu da, azken finean, erabakitzen horien erabilera hurbiltzeko. MARIA: Sort nahi goi-mailako logikaren ulertzeko zer egin duzun galdetzen ari gara. DAVID MALAN: Zehazki. Eta, hain zuzen ere, Zamyla Walkthroughs ekarri Maiz erantzuteari Bertan, galdera eskatuko egin, hasi nintzen batez ere, zehaztapenak luze horiek dira pixka bat gogorra izango da testu guztia eta irudiak behar dutela ere. Beraz water.c, aurkituko duzu Nik amaitu ondoren, da benetan nahiko erraza. Inolaz dira mordo bat to bang joan Zure buruak hormaren kontra nahian irudikatu zergatik ez da konpilatzean edo zergatik ez da behar bezala exekutatzen. Baina Bukatutakoan behin Berarekin eta dituzunean Denbora pixka bat eman duen borroka baliteke duzu bugs da, aurkitu da egingo duzun programa oso laburrean. It gutxiren buruan egin daiteke Kode lerro, horietako gehienak Hemen ikusi dugu hitzaldia dagoeneko, bada Eraikin eskuineko blokeak muntatzen duzu. Eta iradoki dugun bezala Hemen, eskatu egingo da minutu zenbat zehaztu behar duzu Norbaitek campusean dutxa bat hartzen ari da. Zehaztu arazoa ere gaude ur korrontearen abiadura ezarri , bezala, behe-fluxua dutxa batean burua, askoz Seinfeld clip bezala atzo ikusi genuen edo Kontrakoa horren berri. Eta gero, besterik ez duzu Pixka bat egin matematika, really-- aritmetika C erabiliz esango zenbat, gutxi gorabehera, ur botila Baduzu baliokidea dela n minutuko dutxa bat hartzeko. Orain, mario.c ere, hau da joan programa zertxobait luzeagoa izan. It oraindik ez da, hau izango da luze joan. Bakan batzuk, lerro water.c baino luzeagoa. Baina aukera izango da eskola zaharra Mario birsortzeko Super Mario piramidearen Brothers edo jarraipen-batzuk. Ez da den prettier bezala begiratu joan edo inork han bezala koloretsua. Besterik ez gara hashtags gutxi erabili joan atsegin hemen pantailaren dugu ASCII testu erabilita. Baina ideia bera, gutxi gorabehera, izango da. Eta hori oso bat izango da baliatu Lehen begiratuan Badirudi nahiko simple-- besterik piramide sinple bat inprimatu. Baina ez da pare bat ezaugarri Hemen interesgarri direla. Iragarki eskuinekoa ertzean dagoela piramidearen benetan zabalera bi ditu. Beraz, ez dago bi berdina da altuera zutabeak, eta horrek egiten du apur bat behar da Pentsamendu pixka bat egin Ziur zehazki eskubidea, hala lortuko duzu primeran angeluarekin baten aurka lerroan. Beraz, hori muturreraino kasu pixka bat da baina benetako jokoa datorrenean. Eta, gainera, ez-bistako lehen at da Begirada zuri espazio nola inprimatu. Beraz, noiz begiratu at I lagin irteera hemen eta gainera, ez da spec mantentzen da motatako laukizuzen baten itxura du, baina diagonal bat Laukizuzen izan moztu, eta besterik espazio zuriak, beraz, hitz egiten da. Eta beraz, a Maiz Galdera hemen da beti, bai, nola ez hashtags mugitu dut eskubidea baino gehiago? Edo, nola ez, inprimatu dut hutsunerik? Eta, egia esan, errazagoa baino ikasle gehienek uste. Eskuin? Bisualki hurbiltzea duzu besterik arabera espazioaren bar behin edo bitan sakatuz edo hiru aldiz. Eta, beraz, nahiz eta printf ia dugun arren Beti inprimatu kate bat edo int bat edo hala nola "Kaixo hitz bat, mundu "edo hitz-sorta, Era berean, ezin duzu besterik inprimatu aurrekontua, espazioa, unquote. Eta hori benetan emango you espazio zuri bat dago. Beraz, kontuan izan hori eta ez Overthink honetan. Zuk benetan nahi dute erabakitzeko ilara lerro moduan, Ez zure Adibidez bezala bat Une duela, nola horietako asko zutabeak espazio zuria izan behar du, eta hashtags horietako zenbatek izan behar du. Denbora pixka bat hartu ahal izango da, baina ez da azken finean, logika ordenatzen puzzle bat. MARIA: Bai. Baina joan errenkadaz errenkada logikaren oso baliagarria izan behar da hemen. DAVID MALAN: Bai. Lagin kodea are gave-- duzu uste dut Ez zen programa osoa arren. Oraindik behar duzu int eta nagusiak eta hutsune eta # besteak beste stdio.h, hitzaldia gauza asko. Baina eraikin bloke Badirudi han egon. Eta gero, azkenik zerbait da apur bat gehiago algoritmikoak. Eta gertatu da noiznahi duzula CVS edo erosotasuna denda edozein sartu eta norbait eskuak at kutxazainak fakturak edo txanpon aldaketaren ondorioz, bihurtzen da dutela, gizakiak, ala ez dakite edo ez, dira ziurrenik zer erabiliz Greedy algoritmoa deitzen, Horren bidez, zuk zor bazabiltza, esan, $ 21 aldaketa delako arrazoiren batengatik Oso merke zerbait erosi duzu CVS faktura oso handi batekin, benetan gogaikarriak izanez litzatekeela kutxazainak eman zenuen 21 single edo, okerrago hala ere, txanponak asko. Hobeto esanda, zer zentzuzko pertsona bat da ziurrenik egin egingo da ari dira hartzen 20 bat $ eta, ondoren, bat $ 1-faktura, eta Eskuz kasu horretan fakturak bi besterik ez. MARIA: Beraz ari den minimizatu bila dute aldaketa atzera eman dutela nahi. DAVID MALAN: Zehazki. Eta akordio bera txanponak, baita. Zuk zor bazabiltza, esan, $ 0.50, zorionez, ez duzu 50 pennies nahi. Bi Nahi ordez laurden, esate baterako. Orain, hau ez du bere gain hartzen kutxazainak duela deitura bakoitzaren nahikoa dela Ematen den liteke berak nahi. Baina uzten ez dugu nahi bere gain hartzen duzu bezainbeste arazoa ere. Eta helburua, azken finean, da C kodea ezartzea Greedy algoritmoa. Beraz, erabiltzaileak onartzen da idazten zenbat he aldatu edo zuen dolar zor eta zentimo, puntu mugikorreko nolabaiteko balio seguruenik. Eta gero, math egin behar duzu, eta irudikatu karguen taldeak, bai, zenbat txanpon ezin dizut eman Zauri duzu emango zehazki aldaketaren zenbatekoa. Baina ez da bat izango da delikatua zati batzuk hemen, ezta? Like ez osora iristeko zehaztugabetasunak alea. MARIA: Zehazki. Puntu Beraz mugikorreko balioak imprecision. Ba gaur honi buruz hitz egiten dugu hitzaldia? DAVID MALAN: dugu egin du hitzaldia denbora azken. Zehaztugabetasunak buruz hitz egin dugu. Eta ez duzu erabiltzaileari tranparik nahi zenbat aldaketaren berak zor zaio. Eta beraz gidatua, in arazo multzo zehaztapena, Pentsamendu batzuk emateko, azken finean, behar bezala nola horiek arintzeko ditzakezu zehaztugabetasunak akatsak, potentzialki. Saihesgarriak da, zalantzarik gabe, for Sarrerek hizketan ari garen. Eta, hain zuzen ere, pennies-- Agian Zamyla nahi zaitugu atzeratu, , Uste dut trikimailuak ez da. Beraz, azken finean, bat aurkituko duzu arazoak aurrerapena aste honetan, Horietatik lehena, nahiko txikia da, gero inguru, gero pixka bat handiagoa. Baina horiek guztiak eraikinean erabili Iragan aste honetatik blokeak, supersection honetatik, Arazo multzo zehaztapena jartzen baliabide ugari ditu. Baina, oraindik ere, kontuan hartuz gero guztia borrokan, batez ere hain eroso artean aurretiko no atzeko, bulego orduetan etortzen astelehenean eta asteartean eta Asteazken eta ostegunean. CS50 Joan eztabaidatu bidez Ikastaro web, bertan bidez chat dezakezu langileak eta ikaskideekin. Baina, azken finean, uste dut Aholkularitza onena da, besterik gabe, hasteko goiz. Ez da klase mota It duzula asteazkenean psets hasita behar gauez, edo okerrago, ostegun gauean. MARIA: Nire aholkua da onena Gehiago astelehenean hasi dira. DAVID MALAN: astelehena. Beraz, bada, ez duzu hasi already-- ez. Baina, nahiz eta ez astelehena, ondoren, asteartean. The lehenago hobe. Eta hori da arrazoia da Ikastaroaren amaieran egun hainbeste ditu duzu pixka bat emateko presio psikologikoa lehenago hasteko, baina oraindik utzi Gauzak irrist gauza hartu behar bezala espero ez bezala. MARIA: Eta erabili egin nahi duzu bulego orduetan ahal duzun bezala, gehiegi. DAVID MALAN: zalantzaren bat? Ados. Beno, zergatik ez hemen adjourn?