[Bideo-erreprodukzioa] A-matematiko garaipena eta trebetasun mekanikoak da hau automatiko berriaren handia Harvard Unibertsitateko kalkulagailua. Matematika arazoak korapilatsu makina bidez jarri inprimaki kodetuak zinta zehaztasunez batean konpondu Minutu denbora zati beharrezkoak giza kalkulua. Diseinatutako mota guztiak azkartzeko ikerketa matematiko eta zientifikoa, erraldoi mekaniko garuneko izango lan egiteko Ameriketako Estatu Batuetako Armadaren Gerra amaitu arte. [END erreprodukzioa] DAVID J. MALAN: Hau, CS50. Iraganean magiko bat izan zen lekua, baina duzun inoiz bada galdetu gailu hori zer da Harvard Science Center-en, hain zuzen ere, zati Harvard Mark I, eta hori da, ikusgai dago orain iragan urte askotan. Eta zer ikusiko duzu Arazo multzo murgildurik bat du atzealdean begirada bat da tan zer gailua ez da egin, eta ez du, Harry Lewis, nor da bertatik informatika sailaren hemen. Beraz, horretan gehiago pixka bat besterik ez da. Baina gaur hasiko trantsizio dugu astetik honetarako, eta ekarri dugu aipamen argazki bat hemen hori da benetan nahiko famatua. Norbaitek ezagutzen zer hau Hemen pantailan da? Gutxienez mito arabera. Bai. Ikusleak: lehen birusa. DAVID J. MALAN: Beraz, ustez izan zen Ordenagailu bat ere benetako lehen errorearen. Orain errealitatea hitza bug, programa batean akats bat, gurekin izan da batzuentzat mundu fisikoan denbora, eta hau izan zen lehenengo bat aldiz dokumentatuta non norbait benetan moth handi bat pultsatuzko Mark kanpo II ordenagailua, jarri loki, eta gero grabatu da Lehenengo bug dakigunez Egia esan, fisikoki suertatu da. Beraz, beraz, sartu zen Gaur egungo lore sartu dela. Azken guztia Aste online eskuragarri dago. Baliabide berezi batzuk ere dituzun ez du zertan nabarituko, batez ere, Hona etortzeko pertsonan bada. Beraz, irakaskuntza bekadun bat behin Urte ohar multzoa kanonikoak bat egiten du, beraz, ez behar duzu mantentzeko Zure burua behera, dudarik gabe gehienetan ezer transkribatu Hemen gerta liteke klasean. Beraz, konturatzen horiek deiturikoak [? Scribd?] Notak daude online, zalantzarik gabe, diapositibak eta iturburu-kodea erabiltzen duten klasean dugu. Dokumentuaren testu osoa transkripzioak egin dugu baita eskuragarri. Beraz duzu vaguely gogoratzen batzuk epe, eta nahi den itxura apur bat erraz, konturatzen guztiak Horren online bilagarriak da. Baita walkthroughs baita. Izan ere, gaur egun begiratzen hasten gara maila txikiagoa programazio hizkuntza, laster Jar beharreko ezaguna C bezala, eta oso erraza da lortzeko moduko gutxiren buruan ondoren galdu une denbora, eta, ondoren, harritzekoa moduko nola benetan batzuk gehiago lortu dugu errazena adibide konplexuak. Eta orain konturatzen gerezi egingo dugu batzuk klasean zehar jaso Adibide ordezkariaren, baina konturatzen da, beraz, askoz ere gehiago da, halaber, eskuragarri online beraz, lan egin dezakezu horren bidez, zure erritmoan, ordea Oraindik erosoena. Baina utzi dugun ekin Hori besterik ez da hau izan ziren programak. Beraz, egin klik I bandera berdea, eta zer esan nahi du programa hau? Dio, kaixo, mundua. Katua esan Egiten kaixo bere mundu txiki Ezkerreko aldean gainean Scratch erabiltzaile interfazea da. Baina aurkeztuko hasi ginen terminologia batzuk joan den astean. Eta, beraz, hau bezalako gauzak zer deitzen dugun? Zer da hau termino generiko izan liteke? Bai. Metodo bat edo adierazpen bat. Noski, ekintza bat da. Ez hau. Eta, hala ere, ez ziren urratu beste forma, horiek deiturikoak gain En un comunicado, halaber ziren hau bezalako gauzak, eta horrek zer deitzen dugun? Bai. Beraz, begizta bat. Eta, kasu honetan, gauza hau errepikatzen, jakina, 10 aldiz. Ez dago betiko bloke bat da. Ez dago beste pare bat da. Eta gaur egun ari gara ikusteko nola joan itzuli honetan mundu moderno bat da, izango bada, ez da, nahiz eta Lehen begiratuan agertzen joan Askoz gehiago urrutira izateko. Baina horiek izan ziren, hain zuzen dabilen. Eta gero gauzak ditugu hau, eta horrek forma zeukaten: eta funtsean galderak. Eta aipatzen zer gisa horiei dugu? Ikusleak: Espresio boolearra. DAVID J. MALAN: Bai. Espresio boolearra. Zerbait bai egia edo faltsua, bai edo ez, bat edo zero, baina munduan ikusi nahi duzun. Baina Boolean horiek deitzen dugu adierazpenak, eta horiek plug dugu baldintzak, edo adarrak sartu. Eta munduan Scratch, dena ondo bere forma aldetik interlocks, Zentzu logikoa egiten badu, horretarako, baina, ez duzu besterik ez gelditzeko Gauza bat egiten baldintzatuan, proverbial bat izan dezakezu errepidea bidegurutze eta egin bai hau edo hori bada Baldintza egia edo ez da. Eta gero, ikusiko den bezala, ez baduzu dagoeneko, habia Ditzakezu bloke horietan. Beraz Scratch hazten forma bete baliteke bertara sartu txertatu nahi, beraz, benetan adierazteko dezakezu gehien Hori egin nahi duzun edozein logika. Iragarkiaren hitzetan Orain gutxi barru bai hemen eta New Haven da. Gaur Beraz zatitze hasten da. Horretarako URL Ikastaro hamarkadan abian da webgunean, ezagunenak dira. Atalak bat izango da Aukera batera iritsi askoz intimista ingurune batean baino [? Sanders?] Ahalbidetzen du, 10 eta 20 batekin ikaskideekin Irakasle Lagun ibilbideak desberdinetan, eta erritmo ezberdinak, baduzu beraz aukeratu. Izan ere, jakina eskaintzak Atal ezberdinetan horiek gutxiago erosoa, gehiago eroso, eta nonbait artean, eta thumb hemen rola, da Han definizio formal ez da, baina zu hain eroso bada, motatako badakizu. Pixka bat buruz ausart ari zara oinez joatea, agian, atzera ideia ikasgelan, edo erakusten atal artean bat sortu. Nik programazioa bada geroztik Sei urte, erosoago izan ziren, agian duzu. Eta zozketa-up bat mota da, bada hori zehazki zer tarteko du ekarri zuen. Orain, bien bitartean, Klase bat tamaina horretarako, digu denbora luzez irauten atala da denek, beraz, izan deiturikoak dugu, super ataletan, gora datorren Asteburu eta hurrengo astean, beraz ikastaroaren web begirada bat hartu horiek dira ikastaro zabala, eta, gainera, horiek filmatu ezin duten horiek. Eta atal hasiko beraiek Asteko CS50 zero indizea hiru. Arazoa multzo 0 da dagoeneko ikastaroaren web orrian. Eta konturatzen hori ez duzu Bederatzi egun berandu seihileko honetan. Hau, beraz, azken berritze bat da urtean, bost egun berandu izan genuen. Beraz, galdetzen ari bazara, Bederatzi arazoa ezartzen ditugu. Bederatzi egun berandu, eta horietako bakoitzak behar duzu bat bakarrik eman ahal izango duzu astean. Hori eraginkortasunez guztia egiten du Arazoa ezartzen dela eta ostiralean, baina helburua da apur bat jarri presio psikologiko pixka zuk lortu saiatu Gauzak ostegunean delako laster aurkituko bezala, onerako zein txarrerako, gehienak software munduan dena ondorioz sortu askoz luzeagoa aurreratzen baino you hartuz. Beraz, uste dute moduko bat aukera laguntzeko of helburu yourself ostegunean, baina hartu erosotasuna dela ere, hori bai, Dena dela, ondorioz, ostiralean. Eta aurkeztu duzun bada Osteguna, hori zoragarria da. Ez dago bonus puntu edo aparteko Epea betetzeko kreditu. Horrek esan nahi du makulu bat bakarrik izan. Eta bulego orduetan, bai Hemen eta New Haven, pertsona, nahi duzu bada litzaidake Gure ikastaro norbaitekin topo bekadun eta Eus laguntza eskatzeko irakastea. Guztiak eskubidea. Beraz, gaur egun, dezagun hau errealagoa. Eta une batez bertan hasten da joan apur bat gehiago urrutira iritsi, baina oso Azkar ostiralean eta datorren astean izango dugu baino askoz gehiago egin ahal beraz, Scratch urrun genezake. Beraz, azken kodea sartu dugu astean, Pictoral arren. Puzzle pieza izan zen. Eta formalizatu ditugu dela iturburu-kodea izeneko zerbait, baina begiratu litzateke zuen bezala? Beno, pixka bat begiratu da honen antzeko zerbait. Eta, hain zuzen ere, besterik motatako tease non dugun honekin joan daiteke. Aurrera joan noa eta ireki leiho bat hemen, eta besterik ez dut File berria aukeratzeko. Eta ez dut fitxategi hau gorde egingo da kaixo dot c antzeko zerbait bezala. Aukera Horretan gehiago Momentu bat besterik ez hitz. Eta hau da, norbaitek nola liteke programa bat joan idazten. Besteak beste, I standard / O dot h, int main hutsunea, eta, ondoren, open kizkur giltza, hurbil kizkur giltza, printf kaixo koma munduan, backslash n, puntu eta koma, gorde, egin. OK. Idatzi dut nire lehen programa, baina joan da Izugarri underwhelmed izan nahi du nuenean benetan delako programa hau exekutatu, noski, lehen idatziz egin kaixo, eta ondoren dot barra kaixo, eta dizkizugu honen bidez askoz ere xehetasun gehiago Une batean, hori da dena egiten du. Ez du pop irekita leihorik. Ez du ezer egin bereziki dotoreetan. Guztiak ere ez da zer esan nahi dut egin, baina nola lortuko dugu? Eta nola ez, eraiki dugun pentsatzeko? Beno, dezagun aurkezten gutxi barru kontzeptuak hemen. Bat, beraz, hastear gaude konpilatzailea izeneko programa baten bidez. Konpiladore A Mac OS, Windows ez badago, Linux, edozein sistema eragileak kopurua, eta laster izango ditugu, aurkeztu behar ingurune erabili behar izango dugula, baina konpiladore bat besterik ez da, oro har, bat software pieza bat termino duten iturburu-kodea hartu eta objektu-kodean ekoizten bertatik. Beste era batera esanda, baduzu sarrera zure iturri gisa dute kodea, zer idatzi dut antzeko zerbait, azken finean, objektu-kode ekoizten da. Eta objektu-kodea da benetan eguneroko irteerak esaten modu dotore bat zero eta norberaren. Beste era batera esanda, iturri kodea, da, nahiz Urrutira itxura apur bat joan, eta apur bat gutxiago errespetatzen Lehen begiratuan Scratch baino, gutxienez zerbait dugu gizakiak ulertu daiteke. Motatako dirudi eta doinua du English oso laburra bada ere. Zero en programazioaren Berriz eta norberaren, gure aurrekoek egin izan den bezala, Duela urte batzuk, ez zen bat bereziki fun erronka. Eta, hala ere, hau da, zer egin ordenagailua oraindik ulertzen. Beraz konpilatzailea lortzen gugandik iturburu-kodea objektu-kodearekin. Fitxategi batean batera irekitzea bezala da konpiladorea, eta betiere gorde duzu, zero eta horiek lortzen duzu. Beraz, ikusiko dugu nola egin une bat besterik ez dela. Baina dezagun orain saiatu bat emateko Azken aste eta honen arteko zubi, beraz, ez dugu zintzilik jaikitzen are gisa kizkur giltza bezalako gauzak, eta koma, eta parentesi, eta horiek intelektualki interesgarri guztiak programazio alderdiak, hori oso Ulergarria bidaia pertsona gora goiz, konturatzen ideia guztiek gaur, azken berberak dira. Beraz, azken, adibide honetan ikusi genuen Hemen, Hello World programa. Beno, gaur hasita, nahi badugu berean, programa martxan jarri ahal izateko, Honez baten itxura joan txiki honen antzeko zerbait. Eta zer int luzea dugu aurretik azaldu, eta nagusia, eta baliorik gabe, eta hori guztia da, baina, gutxienez, hemen ikusten dut Dagoeneko ezagunak Hello World. Bien bitartean, gauzak bezala funtzioa, agurtu, hau da, oso besterik gabe bat izango da hau bezalako adierazpen oso erraza. Printf kaixo mundua, zenbait aipatzen, backslash batekin, puntu eta koma, baina horretan gehiago etorri. Loops, bere aldetik, hau loop bat da hori, jakina, dio kaixo mundua betiko, Eta hau da, bat begiratzera joan gutxi aurrekoan baino weirder, baina zerbait esan nahi nizuke bezala, egia, berriz, I daiteke, ondoren Hello world inprimatu eta behin eta berriro, behin eta berriro berriro. Eta gero nolako ahal duzun Hemen inferitzera hasteko, erabiltzearen konbentzio honetan kizkur giltza mota of the hartzea koskarik kode lerro ez. Printf kode lerro askoz bezala horiak puzzle pieza sortu gainetik. Beraz, ez gabiltza betiko esateko, den egia, berriz, esan goaz, baina ikusten zergatik pixka bat besterik ez dugu. Bien bitartean, begizta bat dugu hau bezalako baduzu, non zerbait mugatu batean errepikatzen duzu Zenbaki aldiz, hau ere egiten da Pixka bat hartu du, ohitu erabiltzen den, baina nik nahi int esan joan i lortzen zero, i 10 baino gutxiago, i ++, eta, ondoren, printf berriro. Baina ez da patroi izango. Eta ezagutzen duzuenontzat AP Computer Science, edo Java batera, edo beste edozein hizkuntza-zenbakia, ia guztiak egitura horietako beraz, orain arte, batez ere, ezaguna begiratu behar. Beraz, aldagai. Hortaz, hona hemen Scratch Puska sinple bat zero kontagailu izeneko aldagai bat ezartzen du, eta, ondoren, betiko counter dio, eta ondoren, counter aldatzen da. Beraz, zero batekin hasten da, eta, ondoren, bat, bi, hiru. Beno, nola liteke hori aurkeztu dugu Hizkuntza berri hau, apur bat era berean? Int counter berdinen zero, egia bitartean, bertan aurretik ideia hori bera da zerbait betiko egiteko, eta besterik ez dut, printf. Eta orain, apur bat arraroa da lortzean, Berea izan dut, baina horretan gehiago etortzen dira, baina ideia horiek berdinak dira. Besterik gaur egun dugun atxikitzen sintaxia ordenagailua da nahi digu agintzen joan. Espresio boolearra, antzeko zerbait sx y baino gutxiago edo xy baino gutxiago, eta y z baino gutxiago. Honez zerbait apur bat itxura joan Hau atsegin, parentesi besterik batera bezalako neurri ona matematika besterik bermatuko duten eragiketak ordena da eskeiniko ditugu. Eta orain, baldintza. Beraz y baino gutxiago x, esaten bada x da gutxiago y baino, xy baino handiagoa da, bestela, bada, esan xy baino handiagoa da, bestela logikoki, x y berdina izan behar du. Beraz, agian ezartzeko honen antzeko zerbait Scratch, edo agian ezartzeko sintaxia honetan. Eta berriro ere, kizkur giltza motatako dira forma bera emango digu puzzle gisa zuzenak, baina sintaxia, orain, agian eredu batzuk jarraitu behar hasita. Beraz, zer honek ematen digu hemen ez? Beraz, itzuli ondoren, gure programa nagusian egongo gara. Dezagun benetan, orain, harekin zerbait egiteko. Beraz, hau ere oso lehen lerro zorrotz ikusiko ditugu, besteak beste, I standard / O, dot h, eta ondoren, zenbait bitxi angelu Hori azpitik Parentesi. int main hutsunea, eta, ondoren, printf kaixo mundua. Beraz, besterik gabe, urrats bat. Norbait Orain inoiz baino lehenago programatu, gutxienez azaldu lerro horietako bat. Agian batzuk erabiliz Astetik jargon du. Zer da printf, adibidez? Bai. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Funtzio bat, edo adierazpen bat da, Azken astean terminologia from. Eta ekintza bat da hori zerbait egiten. Orain funtzio hori, edo adierazpen hau, egiten du Sarrera-mota batzuk hartu direla itxura? Eta zer zentzu egiten du Badirudi sarrerako hartzeko, beraz, bada? Sarrerako, zer esan nahi dut? Bai. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Beraz Urratu bat gutxi puzzle piezak non parametrize dezakezu. Errepikatu du, ezin duzu esan zenbat aldiz errepikatu blokeatu, beraz, sarrera izan zen era, eta besterik Scratch bezala placeholder zuri txiki bat izan kopuruak ere idatzi behar duzu, Hori egiteko erabiltzen dugun honetan Testu mundu parentesi gurekin forma zirkular hori emateko bertan sartu gure sarrera plug dezakegu. Azken finean, Duela urte hamarnaka denean hizkuntza hau, C deitzen, zela inork ez asmatu aurreikusi gutariko bat da, Urte hauetan batzuk geroago, genuke Hori dio kaixo funtzio bat nahi. Eskuin? Polita izan da litzaidake ez balitz a puzzle pieza, hitz gakoak a, dela deritzo kaixo, hori literalki dio kaixo. Baina ez dugu behar dela. Zerbait askoz txikiagoa izan dezakegu Maila, atsegin inprimatu generikotzat komandoa sarrera hartzen, eta grabatuak nahi dugun edozein. Beraz, konturatu orain patroia azaleratzen hasiko da. Open paren, itxi paren da itxuraz sarrerako besarkatzen, eta, ondoren, bikoitza ikusten dut bi muturretan aipatzen. Oraindik ez dago backslash bitxi n, baina, gaur egun, zorionez duzu gutxienez hori ikusarazteko has daiteke printf da sarrera inprimaki batzuk hartzeko. Ez erabiltzaile gisa errespetatzen gisa Urratu, baina besterik ez da ondoren balio batzuk ez entxufatuta bezala. Ondo da, orain dezagun benetan honekin zerbait egin. Beraz, batzuk bertatik jakin liteke klasearen aurretik erosketaren bat izatea, lagunekin solasean, dela urte asko Zerbait izeneko erabiliko dugu CS50 tresna. Hau teknologia bat deskribatzen duen terminoa izan zen makina birtualean, izeneko software pieza bat da, zure aurrekoek deskargatu litzateke off Ikastaro horrek doan webgunean. Halaber pieza aske bat deskargatu lukete izeneko hypervisor software, VMware bezalako zerbait izeneko, edo VirtualBox, edo edozein zenbaki beste tresna batzuk, eta Mac edo PC euren edo dena ordenagailu iaz izan zuten eta urte iragan dira klik ikono bat bikoiztuko litzateke software exekutatzeko hypervisor deritzo. Eta gero, programa horren barruan CS50 aparatuaren zabalduko lukete. Eta ondorioa izan zela ala hire aurrekoak zen Mac OS edo exekutatzen Windows, berak orduan Geroago, beste leiho bat izan beren pantaila CS50 ingurumena martxan. Beraz, makina birtual bat ematen dizu bat exekutatzen baduzu sistema eragilea beste baten barruan, eta hori zehazki zer egin genuen. Jakina dugu gehienetan zehar izeneko sistema eragile bat erabili Linux, zehazki, Ubuntu Linux, eta hau ere antzinako modu oso polita da guztiontzat dela ziurtatu egiteko ikastaroa besterik ingurumena bera izan. Eta edozein motatako erabili ahal izango duzu ordenagailu benetan nahi dituzun. Downsides artean, ordea, ziren bi gigabyte bezala Gauza hau deskargatzeko. Ez du zertan lan super ondo an zeinen ordenagailuak jendea agian bakarrik Kontzertu bat izan edo RAM beraz, edo ez CPU abiadura gigahertz gehiegi, eta, beraz, aurten, for arrazoi hori eta beste, trantsizio dugu izan dute ingurune honetan. The CS50 IDE deiturikoak, hau da, oinarritutako kode irekiko softwarea, eta onartzen plataforma bat Hori Cloud9 izeneko enpresa Europan onartzen, hori ematen du, funtsean gurekin duten ingurune zehatza bera bezala Aurreko urteetan, baina hodeia deiturikoak. Beraz, zer hodeia da? Seguruenik duzu bertan klik Bere zure Mac edo PC ikonoa. Zer da hodeia? Bai? Apur bat altuagoa. Bai. Besterik ez da ordenagailuak mordo bat ditu beste nonbait duten denda datuak eta run software eta antzekoak. Beraz, benetan besterik hitza de horri deskribatzen duen [of jure? rentable?] beste nonbait bizi diren ordenagailuak. Zu zara, zeure burua, ez dute zertan jabea. Beraz, zure datuak, edo zure programak, hodeia dira, esan nahi du, besterik ez da norbait beste ordenagailuak beste nonbait, eta ez, ziurrenik, zure eramangarria edo desktop fisikoak. Eta beraz, zer CS50 IDE da orain. Guehiagoric joan jakin bat beharko duzu URL bat aurkeztuko dute den, arazo ezarri 1, geroago honetan astean, hori izango da, ondoren, barruan sartuta, ingurune honek emango dizu. Eta askoz ere atsegin Scratch izan bat hartzen duten panelak ezberdinak batzuk, Beraz, ez CS50 IDE dute zehazki hori. Ezkerreko aldean goi hemen, zaren familiar fitxategia nabigatzailea bat ikusteko joan. Beraz, edozein artxibo duzula ingurune hori jarri besterik ez dira han biltzen diren unea iritsi da. Fitxategiak eta karpetak. Goiko aldean hementxe, leku bat ikusteko joan zaren non benetan idatzi ahal izango duzu zure kodea. Hasieran C, beranduago hasi du PHP eta JavaScript terminoa, eta, agian, final for proiektuak, Ruby edo Java edo Python edo edozein hizkuntzatara dira ingurune honetan. Ez da batere lotuta Zehazki CS50. Eta gero, beheko izkinan hemen ere, batez ere erosoago egiteko, zerbait egin behar duzu terminal-leiho bat deitzen. Eta terminal-leiho hau ahalbidetzen Edozein komandoa exekutatzen duzun duzula hodei ingurune honetan nahi. Honetarako instalatzea ahalbidetzen ditu edozein software gehigarria Zuk deiturikoak duelako nahi duzula erro, edo administratzaile eskubideak. Beraz, beste era batera esanda, nahiz eta hau, nahiz hau da, azken finean, hodeia ostatutako, eta daukagun arren sinplifikatu da neurri batean besterik ezean, literalki sartuz, Dan Armendariz, eta Dino esker, eta Dan Bradley CS50 taldeak baino gehiago Hilabete asko iragan, bat gutxiago erosoa asko ezkutatzen duen modua Hasiera batean nahasia oharkabetasunak. Dena ez den existitzen ordenagailuaren sistema batek adierazten baliteke mundu errealean erabili. Beraz, zer du honek guztiak esan nahi du, eta Zer egin dezakegu benetan berarekin? Dezagun begiratu bat hartu benetan en programa batean. Beraz, ez dut ireki nahi joan Benetako ingurunea hemen, bertan gure Chrome da nabigatzailea, horrek Firefox izan daiteke, Internet Explorer izan daiteke, edo beste nabigatzaile batzuk ere bai. Honez osoa hemen proiektatuko oraingoz. Eta benetan aurre egiten nahi dut aparte zer programa hau izan zen. Beraz, dezagun begirada bat, Hurbildu up arabera Gora, zer egin nuen etxean, eta nola lortu nuen. Hortaz, hona hemen horiek zehatza Kode lerro bera. Beraz, hau adierazpena da, Arestian esan duzun bezala. Funtzioa dio kaixo. Kizkur giltza, on lau lerro eta lerro sei, zentzuzkoa envelop mota linea dela lotzeko Nire programaren funtsa batera. Beraz, hain zuzen ere, gako nagusia hau, Hori da han hiru lerro, Hori dela pentsa dezakezu baliokidea Bandera Berdea klik denean hartako, Scratch blokeatu. Beraz, hori da dena hemen dugu, denean, Bandera Berdea klik, inprimatu, edo esatea, kaixo mundua. Baina dezagun etxebizitza bat, orain, zer Lehenengo, gehiago urrutira lerro hau, da. Zorrotz artean, open angeluarekin tartean, non I standard / O dot h, angeluarekin parentesi ixteko. Zer da hori, agian, egiten, batez ere, programatutako duzunez bada beste hizkuntza batzuetan baino lehen. Bai? Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Hain zuzen ere. Beraz, hau da sartzeko bat emanez liburutegia, nolabait esateko, funtzioen. Eta funtzioen liburutegia bat da funtzio hori beste norbaitek idatzi zuen, bai, duela gutxi edo aspaldi, eta, beraz, ez dute gurpila asmatu. Esate baterako, ez dugu ezagutu, 2015ean dute, Jartzen nola kodea idazteko nire pantailan pertsonaia bat. Beste norbaitek duenez, hurrena printf funtzioa egindako ahal izango duten I abstraktuen ordenatzeko orain urrun, edo geruza gainean bere kodea, eta orain hartu emandako edozein programaren dut idatzi duten pantailara zerbait inprimatzeko. Beraz, lehen lerroan dago bat urratsean goiburu fitxategi deiturikoak barne hartzen Liburutegi estandarrak da. Beraz, ikusi, hizkuntza hori bertan, orain ari gara lanean liburutegi estandar bat izan funtzio asko. Printf horietako bat da, eta Hori kodearen lehen lerroan esan sarbidea ematen dit funtzio horiek, eta, beraz, I ez dute gurpila dela asmatu. Orain, goazen beheko leihoa en eta egin aurretik zehatz-mehatz zer egin nuen. Une bat lehenago, noiz izan zen I kodearen bidez txistuka hegan, idazten egindako lehen aldiz, Oso azkar idatzi dut, kaixo. Zer izan da hori guztia buruz litzateke asmatzen duzu? Zer ari nintzen? Bai? Berdin da. OK da. Bai. IKUSLEEN: biltzea. DAVID J. MALAN: Bai. Besterik ez da konpilatzean zen. Eskuin? Nahiz eta hau guztiz Ohituta duzu, nahiko English bezalakoa da. Zalantzarik gabe, ez zeroz eta bai, beraz, I oraindik dela deiturikoaren bidez exekutatu behar programa, konpiladore bat, hori joan sarrera gisa hartu eta irteera sortzen. Eta, gutxienez, oraingoz, in Linux ingurune honetan, baina ez da hau aurrebaldintza, hau da, besterik gabe, non hasiko dugu, Oro har, elkarreragin duzu ordenagailu honetan moduko sistema Komando-lerroan deiturikoak arabera. Beraz keinuka batekin abisatu eta zure teklatua, eta ez hainbeste sagua, eta ez Hainbeste leihoak eta ikonoak eta menuak, baizik eta dena textual da. Eta hori sentitzen, nahiz eta hasiera batean begiratu, agian, beste urrats bat bezala atzeratua, Egia esan, askoz gehiago modu indartsu eta adierazkorra Ordenagailu bat kontrolatzeko batez ere, zuk bezala, yourself, gero gutxiago erosoa. Honez asko egin ahal izateko joan besterik zer Microsoft baino gauza gehiago edo Apple batera egiteko aukera ematen duena bere sistema eragilearen grafikoa. Beraz, noiz sartu hit I, orain, nothing denbora honetan gertatzen itxuraz delako programa kaixo eguneratuta dago. Eta zer izan zen komandoa Ran I ondoren? Dot barra kaixo, eta kaixo mundua. Orain dezagun urrats bat Momentu bat besterik ez atzera. Bihurtzen da egiten duten kaixo besterik da programa bat bildu modu erraztua. Dezagun aurkeztu nahiko luke jargon zati bat, baina gero, urrundu Bertatik, ez da geroztik guztiak interesgarria dela gaur egungo helburuetarako. Konpiladoreak erabiltzen hasteko goaz deritzo Clang, C hizkuntza da. Eta hori besterik ez da luzatuko den programa bat da atsegin zuen komando lerroan han egon ginen. Eta hala bada nahi dut programa bat bildu dudala Izan kaixo dot izeneko fitxategi batean idatzita c, literalki idatzi dut clang kaixo c sartu. Gauza dibertigarria da, arrazoi historiko, ez badut zehaztu Programaren izena Outputa nahi dut, ez badut Zehaztu fitxategi izen zero horiek egiteko eta bai, oso arraroa Duela konbentzio onartu zen urte non a moduko sentitu unean erantzun ona, Ondo utzi inori deitu du Lehenengo programa dot bat bildu dugu hura. A dator lehen alfabetoaren. Out, irteera da. Beraz, programa deituko dizugu lehenetsita dot bat atera zuen. Eta hori da isuna bada delako nahi dut programa abiatzean oinarritutako testu honetan ingurumena, idazten dut dot slash dot bat out sartu. Eta zehazki orain arte bezala exekutatu litzateke. Beraz, ikus dezagun benetako azkar. Beraz, atzera egin dut, nahi izanez gero, nire source CS50 IDE kodea, eta horren ordez, egin behar dut, astintzen kaixo sehaska c sartu, aldez aurretik abisatu ezer gutxi gertatzen, baina ia beti Linux ingurune honetan, denean ez da ezer txarra dela dirudi, gertatuko dela esan nahi du benetan zerbait ona gertatu. Izan ez baduzu Akats baten ikusi mezua, guztiak da, ziurrenik, bai. Eta hain zuzen ere, gaur egun egiten badut barra dot dot bat egindako sartzeaz, nire programa bera dut exekutatu. Oraindik kaixo programa daukat lehenago, hain zuzen ere, delako hain atsegina besterik ez da idatzi ordez gogoratuz ren enkantamenduak horiek agindu, baina ikus dezagun nola egiten dugu Baliteke hau hobetzeko gainean, hala ere. Beraz, hau komandoa da Kodea biltzeko. Abiaraziko den komandoa hau da konpilatu kodea gutxira. Nola egin dezaket fitxategi izen bat zehaztu dut? Beno utzi aurkeztu nahiko luke jargon pieza bat gehiago. Noiz Oraindik honetan duzu Testu oinarritutako ingurumena, den zehaztu nahi ari zaren joan izeneko komando lerroko argumentuak gauzak. Zein esaten modu dotore bat besterik ez da, Beste era batera esanda gonbitan dagoela portaera alda whatever programa exekutatzen ari zaren. Beraz, zehazki programaren naiz , korrika izen Clang idatzita, Clang izeneko programa da. Beraz, hau da, edo eskola zaharra klik bikoitza baliokidea Microsoft Word edo on programa batzuk ikonoa. Naiz besterik ordez bere izenak erabili, baina komandoa bertsio honetan, Gero dut etenaren o espazioa kaixo kaixo espazio dot c. Nik inoiz Beraz, nahiz eta zuk Mundu honetan jokatu aurretik, Etxebizitza bat besterik ez hartu zer duela etenaren o kaixo egin? Edo zer Clang esan du egin? Bai. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Fitxategia irteera ezartzen zerbait nahi izan kaixo ordez sillier dot bat out of. Eta, hain zuzen ere, saiatu honekin utzi. Beraz, orain ez dut bada, lehen egin dezagun, r m kaixo. Hori kendu. Eta hori kendu esanen fitxategi arrunta kaixo, bertan da alferrik urrutira, baina besterik Bitarteko egin du fitxategia ezabatu nahi duzula, eta y idazten dudanean bai da. Eta nabarituko, bat hobekien glancing ari bada ezkerretik, zuen desagertuko da hor gelditu. Demagun orain egin me Clang etenaren o, eta Aurrera joan eta egin kaixo noa, txanoak guztiak, kaixo dot c. Orain, ez dut dot barra bada kaixo, zer espero duzu? Agian kasu sentikorra da. Agian ez da. Ikus dezagun. Ez dago halako fitxategi edo direktorioa. Eta ezin dugu motatako iruzur arabera besterik goiko ezkerreko begira. Zer jakina egin nuen programaren izenarekin gorde? Guztiak txapelak kaixo. Beraz, hain zuzen ere, hori da joan diferentzia bat egiteko. Beraz, orain kaixo mundua itzuli da. Orain hau da, fina eta ona, eta guztiak oso mind-numbing, get moduko behera bogged horietan xehetasunak, baina haiek ulertzeko ona da. Idazten horiek gero eta enkantamenduak luzea batez ere izan nahi du, ez da joan fun, beraz, munduko pertsona beste programa bat asmatu, Duela urte batzuk, izeneko egiteko, nahiko besterik gabe make idatz aukera ematen du, programaren izenarekin egin nahi duzu, eta egin Smart da, zeren eta berau ere begiratu beharko uneko karpetan, aka direktorioa, eta fitxategia badaukazu kaixo dot c deitzen, dituen fitxategia bilduko da Zuretzat izeneko kaixo programa batean. Beraz, bat modu askoz errazagoa da gehiago críptica betetzeagatik lehenago egin dugula. Eta izan aurretik konfiguratutako dugu CS50 IDE jakin Hori etenaren o eta zenbaki bat egin behar da beste banderak, edo komando lerroko argumentuak, luze baino lehen ikusiko dugu hori. Baina, orain, benetan egiten utzi Zerbait interesgarria. Just idatzi kaixo mundu guztiak denbora ez da guztia sinesgarria. Beraz, aurrera eta aldaketa joan me Programa honetan, eta esan, kaixo David. Orain ez naiz hemen behera joan da. Aurrera joan eta kaixo egin ez noa. Eta berriro ere, gaur egun ikusten ari zaren egin da erakusten duzun luzeagoa Komando sekuentzia dela, egin dugu aurretik konfiguratutako delako egiten bide horretatik, baina ez dugu Ez oraingoz kezkatu behar zer beste da baino egiten da konpilatzean dot barrarik kaixo, kaixo mundua. Zer gertatzen da? Bai. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Beraz, Noobie neurtu. Nabarituko dut, hau da super sotila, baina izartxoa hemen, fitxan, Bakarrik esan nahi du ez duzula gordeta, eta nabigatzaile eta beste programak Hori da batzuetan. Beraz, kontrol s edo komandoa gorde egin beharko s. Orain utzi aurretik joan eta programa berriro exekutatu. Konpilatzen. Eskuin, beraz, multi-prozesuan urrats bat da. Horietatik bat ere ez da bereziki konplexua, baina edonoiz fitxategia aldatu dugu, resulting aldatu behar dugu zeroen eta bai, eta dot barra kaixo. Wow. Beraz, hau da, oso underwhelming besterik inprimatutako dugu out hori. Dezagun gauzak egiteko bat gutxi dinamikoagoa, orain. Beno bihurtzen da, nahi duten Scratch, C aldagai onartzen. Eta bihurtzen du hala nahi baduzu aldagai dendetan dute, Ez dugu atsegin kopuru bat normalean Scratch egin, baina hitz bat bezala, edo Esaldi edo izen bat, zuk aldagai bat zehaztu dezakezu den mota katea izan. Beraz, ez dugu gehiago ikusiko Momentu bat besterik ez, baina bihurtzen da C dela, eta Gustatu asko hizkuntzak, aldagai mota oso zehatzak dituzte. Ez da besterik nahi algebra, non x, y, eta z lortuko duzu eta horiek besterik ez dira beti zenbakiak, programazio hizkuntza batean zenbakiak gorde ahal izango duzu, ezin duzu karaktere bakunak gordetzeko, Hitz osoak gordetzeko ahal izango duzu, ezin duzu Irudi osotasunean soinu artxiboak osotasunean, gordetzeko, eta antzekoak. Beraz, zer zehaztu behar dugu Gure aldagai mota da. Eta konbentzio, naiz deitzera joan nire s aldakorra laburra da, besterik ez delako, eta s katea dago. Eta ondoren, naiz gordetzeko joan aldagai horren barruan, Scratch gustatzen denean set blokea erabili dut, Erabili noa esleitzeko C operadore, bertan nicely nahikoa da berdina du sinatu dute, baina berdin ikurra du honek. Zerbait mugitzen sartu eskuinetik egindako It ezkerreko eskua adierazpena aldean. Beraz, zer egin dut, argi izan behar linea bost, hau da zuk aldagai bat deklaratu dut. I ordenagailua esan dut, emaidazu aldagai baten memoria, deitu s, eta aldez aurretik jakin noa den kate bat jarriz bertan. Eta kate bat besterik ez da karaktere adierazteko. Hitz batean, edo esaldi bat, edo paragrafo da, baina karaktere-sekuentzia bat da. Ez da zenbakiak. Zer katea Ni izan nintzen joan aldagai hori jartzea? Beno, itxuraz aipatu unquote, "Hannah". Orain konturatu eredua dela sortzen ari diren. Ez dago ezker eskua adierazpen bat da. Ez dago bat eskuineko eskua adierazpen da, Berdintasun ikurraren bidez bereizita. Eta besterik ez, etxebizitza bat hartu, bada Ohituta hala ere, semicolon zer egiten ari den batekin. Zer ari da, ustez, guretzat egiten? Bai? Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Besterik lerro amaitutzat. Eskuin? Ordenagailuak irekiro izan nahi esan, hitzez hitz, zer egin. Kakahuete gurina bezalakoa eta gelatina sandwich adibidez, ez baduzu zehaztu zehazki zer nahi duzu, epaia edo error u tzi liteke. Semicolon esan nahi du, Hori da komando hau egiteko. Super da zehatza izatea, eta hori da, oso gauza erraza da off uzteko. Beraz, orain, programa honek ez duela esan nahi dirudi egon ezberdinean edozein portatzen nintzen arte bizitasuna. Beraz, gogor beharrean nuke nire kabuz izendatzeko, utzi placeholder balio bat jarri zidan. Eta bihurtzen da, eta ez dakit, dokumentazioa izatea irakurri, eta urte funtzioak erabiltzen, hori printf dinamikoa izateko garatu zen. Ez duzu aldez aurretik jakin zein hitz egiten jarri nahi baduzu. You beharrean izan daiteke bat placeholder, ehuneko s, adibidez, horiek da kontatzeko joan ordenagailua, jarri hemen kate bat. Zein katea ez dago jarri nahi al dugu? Will bihurtzen horien artean dagoela parentesi, horrek gogoratu, mugatzen funtzio bat sarrera du, baldin baduzu Aukerak Kudeaketa gauza zerrenda hemen, askotara benetan bagenu funtzio bat sarrera. Beraz, Scratch batzuk gustatzen blokeak, agian ez duzu Beraiekin jokatu Zure proiektuak oraindik edo batere, Scratch bloke batzuk bi sarrera dute. Bi kutxak zuri ahal duzun zenbakiak edo hitz idatz sartu. Beraz, ez da C bezalako funtzioekin duten bi sarrera hartu ahal printf. Eta berriro ere, koma honetan da horiek bereizten. Beraz, ingelesez, berriro, nahiz Nik ez duzu inoiz programatu, by logika printf duten funtzio bat da, bi sarrera, hartzen eta horietako batek leku-marka bat, zer egingo zenuke espero duzun da printf da, sarrera honek berarekin? Honez kaixo esan joan Hannah, zorionez. Beraz, hau da gorde behar dugu zer egin. Urruntzeko noa. Atzera jaisteko hemen noa eta esan, kaixo, sartu. Oh. Zerbait gertatzen da, eta, egia esan, hau da, nahiko erabatekoa. Sei kode lerro daukat eta 12 akatsak ildo bezala. Beraz, aurrera begiratu honetarako. Beraz, zer gertatzen da hemen? Beraz, arau onena hemen, batez ere, noiz hasten zaren, ez distraitu arabera behealdean gauza. Izan ere, oso nahita I besterik korritutako eman Oso sarritan, ordenagailu bat dagoelako Ez gailu baten distiratsua duten guztiak. Honez nahastu behar. Gauza bat ikusten baduzu, hori ez du ulertzen, baliteke beste akatsa da Kode lerro oker gisa, primeran fin ari dira, nahiz eta. Beraz, beti lan egin nahi duzu Gora behera Errore artean. Eta aitortzen dut hori da super urrutira une. Akatsa, undeclared erabilera identifier katea. Ba estandar esan nahi dut? Ez, katea, esan nahi dut. Eta at da seinalatuz, agian, typo bat da. Sort nahi, ortografia-batean Oso geeky horrela, baina arrazoia hemen, eta jakin ahal izango duzu hau besterik praktika arabera, da bihurtzen da kate hori ez du C. existitzen Izan ere, C Hizkuntza bereziki zahar bat da, eta maila oso altua da, Eta ez du ezaugarri asko duzula hazi liteke baduzu, hain zuzen ere, programatutako dituzten Java, batzuk jo dute, baina irakasteko dezakezu gauza berriak. Eta hain zuzen ere, CS50 hau egin dugu, are seihilekoaren amaieran arren, prestakuntza gurpilak horiek guztiak Izan kendu egingo dira, Zer egin, horiek ere aste pare lehen Hasieran ere izan dugu besteak duzu CS50 dot h. Zein goiburua fitxategia da. Etorkizunean Horretan gehiago. Funtzio dituen fitxategia da dugun zuretzat idatzia. Eta funtzio horiek artean dago sarrera lortzeko funtzioak erabiltzaileak, kateak bezala, eta bertatik zenbakiak eta zenbaki errealak, eta gehiago. Baina batzuk lasterbideak bat ere badu. Boolear bat datu-mota bat bezala definitzen du. C ez dute egia edo gezurra. Baina eman ahal izango dugu nozioa Egia edo liburutegian honen bidez faltsua. Eta hori, gainera, ez du kate bat izan lerro honetan sartzen ditugu arte eraiki. Beraz, kode-lerro honetan kontatzen konpiladorea, hey, Clang, begiratu Fitxategi hau oso bat ere kodea sorta CS50 idatzi du, beraz, Edozeinek fitxategi hau erabiltzen Emandako hartu ahal Ezaugarri gehitu dute. Beraz, gaur egun utzi aurretik joan eta pantaila garbitu, eta bitxia bada besterik ez naiz kontrol esanez l aldi bakoitzean pantaila garbitzeko, edo argi idatz dezakezu. Besterik ez naiz orain aurrera joan eta mota egin kaixo, eta guztiak ongi. Hala eta guztiz ere urrutira irteera bat, baina Ez da mezuaren okerrak. Orain dot egiten badut barra kaixo, eta gisa alde batera utzita, dot barra Ohituta da gehien bat. Besterik ez du esan, dot bitartekoak uneko direktorioa. Beraz, bada inoiz erabiltzen bada DOS, edo Linux edo Unix duzu zerbait egin liteke cd dot dot, non like dot dot esan atzeraka joatea ere denbora, edo gorago atzeraka joatea, edo Zure direktorioa. Dot besterik esan begiratu batean uneko direktorioa. Kaixo, nahi dut, hau da, hemen. Eta hain zuzen ere, gaur egun, dio kaixo Hannah. Eta hori aldatu dut berriro bada Maria izateko, berkonpilatu kaixo, dot barra luke kaixo, programa aldatuz mantentzen. Baina hau ez da oraindik bat nahiko ergela programa. Programa honen ontziratu nahi badut, edo eman lagun bati, edo eman Maria edo Hannah den egia esan, hori da isuna. I pertsonalizatu ahal biak, baina inoiz dinamikoa izango da. Ezin dute aldatuko da behin ari konpilatu behera zero eta horiek sartu. Beraz, zer zerbait smarter egin dugu? Zer gertatuko da, ordez, hard-kodetze programa, pertsona horrek bere izenarekin sartu, zer dugu lortu besterik ez bada Eskariaren araberako katea? Beraz, beste era batera esanda, utzi egin zidan. Programa honen berkonpilatu noa. Eta gerturatzeko me utzi behealdean orain. Kaixo dot barra kaixo. Orain ez da ezer gertatzen. Daiteke boluntario azkar bat lortu dugu zerbait gerta dadin? Goazen sortu. Zein da zure izena? Pancho: Pancho. DAVID J. MALAN: Pacho? Goazen sortu. Behin jaiki duzu hemen, hau da, Oso underwhelming izango da, baina interesgarriagoa da idazten ni baino. Aurrera joan eta idatzi nahi baduzu, zure izena, programa hau egin dut besterik ez duzu. Idatzi zure izena. Sartu. Wonderful. Ondo, eskerrik asko. Pancho: Eskerrik asko. DAVID J. MALAN: OK. [Txaloak] Hori oso atsegina zen. Hemen duzu joan. Zer egin dugu? Beraz, azkenik, gutxienez, Programa honen dinamikoa egin. Orain da zalantzarik gabe oraindik diseinu underwhelming arabera, baina azkenik gaitasuna dugu orain kodea idatzi aurretik, askoz printf egileek bezala, eta, ondoren, era dinamiko egokitzeko sarrerara gauden oinarritzen entregatu, bai programatzaile arabera, edo giza-ek nor benetan programan elkarreraginean. Hargatik, benetan, orain saiatu a eraikuntzen beste batzuk egin eta ikusi ezin badugu programak egiteko sofistikatua gehiago bere burua. Beraz, goazen aurrera eta ordez Hutsetik bat hau idazten, Gaurko sartu naiz iturburu-kodea, eta hori guztia Jakina da hamarkadan buruzko informaziorik webgunean, eta, arrastatu eta askatu ahal izango duzu zeure ingurunea sartu zatoz ostiralean arazoa behin Multzo 1 ematen dizu agindua, edo ezin duzu ez da komando lerroan gisa bai, baina gehiago nahi p etorriko ezarri 1. Ea zer da programa honetan utzi Hemen izeneko, gaineratzaile dot c. Orain Jadanik iruzkindu dut da, baina zer da berri? Hasera batean, zer linea kodearen da erabat berria? Seguruenik, ez da, funtsean, Ohituta orain. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai, beraz, int x berdinen lortu n. Ez dugu inoiz ikusi honen edozein aurretik, baina int da seguruenik zer nolako ikurra aldakorra, [? batetik?] zenbaki osoa. Beraz, zenbaki for int. Besterik gehiago izatea succinct. x besterik arbitrarioa da. x eta y eta z daude oraindik Nahiko zenbakiak arrazoizkoa, baina, oro har, hitzen behin erabiliko dugu gure programak lortu konplexuagoak. Talde int, noski, lortu katea bezala, hau da, ziurrenik, iritsi erabiltzaileari int, eta, ondoren, goazen joan Gauza bera egin y batera. Eta itxuraz, hau ere Azken lerroan, 24, itxura konplexuagoa, nik hau guztien batuketa esanen eta hori beste gauza hau da. Eta, adi, ehuneko i ziurrenik denotatzen zer? Zein paper berea egiten du itxuraz balioko i? Placeholders besterik ez da. Eskuin? Ehuneko s katea izan da, ehuneko i zenbaki oso bat da. Ez da ehuneko f izango da Puntu balio, flotarien bertan dezimal batekin zenbaki bat besterik ez da. Beste era batera esanda, zenbaki erreal bat. Hargatik, benetan bildu honetan programa benetako azkar eta ez egin gaineratzaile. Whoops. Aukera ona da. Beraz, konturatu hemen, denbora honetan guztian nire erabiltzaile izendatzeko for kontu hau jharvard. Naiz CS50 IDE ere, aka IDE50. Eta orain urdin hemen ere, aipatzekoa da, baina ingurumena, non naizen from. Eta hain zuzen ere, hurbiltzeko badut gora goian hemen, konturatu IDE50 bat banuela eta hitz hau ikusi dut, nolako baduzu of zure burua buelta alde, laneko area. Hitz batean, hain zuzen, Tilde slash laneko area ikusten dut esan nahi du, testu honetan oinarritutako komando ingurumena, Naiz testu baliokidea ere hau hemen karpetatik grafiko bat ireki. Beraz, ez dut dot barra gaineratzaile, araua ez du esaten helburu gaineratzaile geldialdia egiteko. Ez dakit zer esan nahi duen, baina arrazoi batzuk txarra da. Ez dago halako fitxategi edo direktorioa are argiagoa da. Non dago orduan? Oinarritutako klik egindako I ireki fitxategia lehenago. Non izan zitekeen? Seguruenik fuente w bat, asteazkena, eta nik ezin dut ikusi, hain zuzen ere, Hori ireki dut bada. Ez dago gaineratzaile dot c da, baina ere testuan oinarritutako honek ingurumena, Berriro, super esplizitua izan behar dut. Zerrendak aldatzeko sartu nahi badut iturri asteazkena, hau egin beharko dut, cd espazio iturri Asteazkena, sartu eta orain nire aldaketak gonbita eman dit bisuala duten , Naiz, hain zuzen ere, beste hainbat lekutan Nire ingurunean, baina orain ez egin ahal izango dut gaineratzaile, badirudi lan egiten, dot barra gaineratzaile, ematen dit zenbaki osoa. One. Bi. Bat eta bi batura hiru da. Baina ez badut lankidetzan aritzeko, ikus dezagun zer lortu int du. Give me zenbaki oso bat. No. Saiatu da berriro. OK. Arte. 50. 50. Guztiak eskubidea. Beraz, azkenean, lan egiten du. Eta hori da batzuk funtzionalitate funtzio horiek eraiki ahal izango duzu duzu. Beraz ezartzeko barruan lortu int, zer programazioa astetik eraikitzea da, ziurrenik ere Han berriz saia portaera hau behartzen, saiatu da berriro, saiatu da berriro? Bai, ez da, seguruenik begizta nolabaiteko. Honez sintaktikoki itxura joan Scratch bloke desberdinak, baina hori da, hain zuzen ere fitxategia barruan zer da. Eta aste gutxi barru zaitugu benetan CS50 liburutegia begiratzeko Zer da nahi bezain barruan, baina ez da begizta bat zehazki hori inposatu. Dezagun play apur bat silly Joko hemen fitxategi honekin. Baldintza zero dot c. Ari gara, oro har joan hasteko zero at kontatuta. Eta iragan korritu mantentzeko I goian stuff batzuk. Hemen Urdinez, guztiak batera demarcated ko horiek eta barrak du, programatu duzuenontzat aurretik, zer da hori? Zergatik baino batetara uzten mantendu dugu? Zer? Ikusleak: iruzkin bat da. DAVID J. MALAN: Bai. Iruzkin bat besterik ez da. Hau gizakientzat iruzkin bat da irakurri, gure kasuan hori, esaten digu zer fitxategi baten izena da, berau idatzi zuen, eta zer ez, beraz, ez duzu kodearen bidez irakurri Fitxategi hau zer guztiei buruz jakin. Deskripzio bat besterik ez da, baina, funtzionalki inolako garrantzirik. Eta ezin dut, nahiz eta ezaba ditzakezu nire fitxategia da eta ez dauka eraginik. Mamitsuena lerroak dira hauek Lehenengo bi hemen, orain. int hutsune nagusia baliokidea da Bandera Berdea klik gure denean, beraz ari gara hori izan utziko Gaurko, eta itzuli egingo dugu, azkenean, behar bezala zer int eta hutsune daude, baina, gaur egun, zer egin dut nabarituko hemen ere, baita ere, lerro bat baldin baduzu komentatzeko, baldin baduzu pentsatu partekatu nahi dituzun Kode-lerro jakin bati buruzko, C hitzarmena da slash egin barra, eta succinct hitz orduz gutxi batzuk, Ez bat esaldi osoa, Oro har, ez paragrafo bat, Hori besterik ez duzu behar, azaldu du, edo zure TF, edo beste irakurle edo lankideek, Zein da zure kodea egiten ari da. Beraz, baizik eta behar baino begiratzen hau eta lerro infer bederatzi eta 10, zer da honek, egiten line zortzi urtean Iruzkin bat eman besterik ez dut eskatu erabiltzaileari zenbaki oso bat, ondoren, ez daukat too hard pentsatzea Bederatzi eta 10 lerro zertaz dira. Ezagutzen dut hori, eta zer kolektiboki egiten ari dira. Nola? Beno, hemen gonbita da. Hemen da int du lortzean. Eta Aurrekoa oinarritzat hartuta portaera, badirudi lortu int bezala smart nahikoa ziur Giza Coopera eta emaiten zenbaki oso bat. Baina orain ikusten dugu. Eta hau Scratch gogora. Aldarrikatzen ari naiz naizela Erabiltzaile sarrera aztertzeko, baina zertxobait inaccurately. Eta hau itxuraz C da nola bat ez bada adierazi nahi dugu, adar bat, errepidea bidegurutze bat, baina ez dut zertxobait inaccurately esateko. Zer da programa honetan bug? About Atzerago? Bai. Ikusleak: [INAUDIBLE] zero. DAVID J. MALAN: Bai. Beraz idazten dudanean zero bazaude, kontuan hartu dezagun zehazki, kasu, edo txoko kasu horretan, izango bada. Beraz idazten dudanean zero ere bada, zein Bloke da itxuraz probesten joan? The bada edo, bestela,? The beste, eta nik esango, Zenbaki negatibo bat jaso duzu. Eta hain zuzen ere, zero ez zaio positiboa edo negatiboa izan daiteke; eta beraz ezegokian litzateke. Hori akats bat izango litzateke. Beraz, nola konpondu dugu? Nork ez du inoiz aurretik programatutako norbait? Ba want-- duzu Ikusleak: [INAUDIBLE] DAVID J. MALAN: atzera botatzea? Ikusleak: [INAUDIBLE] DAVID J. MALAN: Oh, duzu? Norbait ez du inoiz aurretik programatutako. Zure eskuko saiatu nahi hau da, kamiseta gorriz? Goazen sortu. Oh bai, goazen gora, ez baduzu axola. Beraz, inoiz ez balitz programatutako aurretik, zer da zure izena? LAUREN: Lauren. DAVID J. MALAN: Lauren, konforme. Beraz bug hau konpondu guretzat. Ez duzu ikusten C, ustez, eta seguruenik beste hizkuntza ez. Beraz, programa hau guretzat konpondu. Nice ya asetzeko. Presioa ez. LAUREN: Bai. DAVID J. MALAN: Baina, berriro ere, hau bada apustua plan arabera doa, hemen izango eramateko izan, eta berriz, hasteko ereduak eta nabarituko Existitzen den sintaxia infer Nola liteke bestela adierazteko yourself, Pun ez xedea, ordena Egoera gehigarri batzuk ateratzeko. Beraz, bestela bada esaten dugu. printf, ona. Eta CS50 nabarituko IDE, eta frankly-- IDE Integratuko standak Garapen ingurunea. Esaten modu dotore bat besterik ez da you programa laguntzeko programa. Lagungarri bezala gauza egiten denean parentesi bat idazten duzunean, Automatikoki ere erakusten ditu, beste. Presuntzioa izateaz zarela Azkenean hori idatzi nahi du, eta, gainera, ez da hura komatxo. Beraz, lerro 23 gustatzen zait. Bidean% 99. Norbaitek nahi chime punta batekin? Semicolon entzun nuen ikusleek. Ona. Beraz, hori osatzen duen. Eta orain, besterik ez dut pixka bat 21 linea batera nahigabetuta. Nola hau adierazi nahi dugu? Zer galdera egin nahi dugu galdetu, uste duzu? Beraz, aurreko galdera galdetu dugu, n zero baino handiagoa bada, hori egin. Bestela, ez dagoela. Beraz, bat aukeratu behar dugu Galdera hemen galdetu. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Ongi. Beraz, bada n berdin zero. Bikain. Hargatik pausatu hemen. Eskerrik asko hau braving askoz. Utzidazue apur bat merezitako estresa baloia, agian ez. Beraz, ia ez gara han. Izan ere, Lauren, ez baduzu kontuan, utzi egin me hemen alda bat, besterik koherentea, nahiz eta elkarrekin egoteko zer ikusi, Scratch dugu, zer egin lerroak egin nahi dut 21 eta 24, eta berriz oinarritutako hau nola egin dugu Scratch, akaso? Ikusleak: Eraman gora. DAVID J. MALAN: Bai, mugitu gora. Beraz, bestela, baldintza hirugarrenean, edo Laugarren, edo bosgarren, edo azken adarra, Hain zuzen ere, etorri behar gutxira, eta hori besterik ez konbentzio, besterik izango bada delako. Beraz, behar dut pentsatzen hau egiteko. Eta nire jarri behar dut kizkur giltza hemen. Eta orain, programa honetan bildu egingo dira. Hain hurbil gaude, baina ez dago Oso, oso sotila bug bat. Ikusi dezagun zer gertatzen den. Lehenik eta behin, utzi aurrera me eta txikiagotzeko. Aurrera joan noa eta Idazten baldintza zero egiteko. Oh, gezurra esan dut. Orain konpiladorea da Egia esan, nahiko smart. Eta ez dut ulertzen errore mezua da. Esleipen baten ondorioz erabiliz parentesi gabe baldintza gisa, itxuraz txarra. Baina zer esan nahi du horrek? Beno, berriro ere, ereduak bila kode hori ikusi dugu aurretik, zer linea 17 benetan egiten ari da, are Lauren zertxobait xedea arren bestela? Bai. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Beraz, gogoratu berdin ikurra, itxuraz aurretik dugu erabili ditut bezala, ez da berdin. Bere esleitzeko, eskuinetik ezkerrera. Beraz, lerro 17 une baldintza da, eta hori da, parentesi barruan exekutatzen kodea, baina kodea duten exekutatzen denean, zer da zero balioa gertatzea? Zer da, n balio gertatzea? Zero bihurtzea. Beraz n bilakatu bada zero, eta berriro, azken astean bezala, Oro har, zero dela esaten dugu faltsua da, eta inork ez da egia, edo bai bat da eta ez da zero. Beraz, egia eta gezurra, bata eta 0. N lerro 17ko gisa izan bada Emandako 0 balioa, zero da egia? No. Definizioz, zero faltsua da. Hitzarmenaren egiten dugu aurrera cling joan. 20 lerro, beraz, 18, 19, eta inoiz aplikatu orain, logikoki? Ezin dute. Beraz, galdera galdetu dugu baina, hain zuzen ere, ez da nahiko, eta ez duzu jakin hau izan ezean Ikusten duzu, C konponbidea denean adierazi nahi duzu berdintasuna, esan duzu berdin berdin. Beraz, berdin ikurra erabili egin eman esleitzeko arabera, eskuinetik ezkerrera. Berdin berdin bitartekoak dira. Eta benetan duzu zure burua nahi baduzu makurtu behar izan, Ikusteko Javascript-a eta PHP, ez da berdin berdin berdin, eta horrek Esan nahi beste zerbait guztiz, baina hori lortu dugu, luze baino lehen. Beraz, hau konpondu sinple bat da, baina konturatzen super erraza da akats hau egiteko, eta orduan harriturik eta borroka minutu, ez ordu bat izanez gero, Horregatik, nire kodea ez dago exekutatzean dut nahi bezala? Da ez duzulako kontatzeko hain zuzen ere, zuk ekarri du. Beraz, hori izan zen ia perfektua, handia izan zen, eta hura stumbled garela bi txiki horiek zeharkatuz Gauza horiek zuzentzeko orain dugunean, eta baldintza zero egin egin nuen dot barra Egoera zero, Zenbaki oso bat mesedez nuke. Ikus dezagun. No. Honez behartzeko me da egin behar. Beraz, 42. Zenbaki positibo bat jaso nuen. Beraz, orain nola egiten duzue Programa honen zuzena? Oraindik matematikari bat bada, ezin duzu benetan frogatzeko hau haztamuz, ezta? Ez soilik froga lagun dezakezu Adibidez, baina, gutxienez, programatzaile gisa ez gara oraingoz frogatzeko saiatuko da hau da, benetan zuzena, baina ziurrenik behar dut Zenbait kasutan ordezkari probatzeko. Nik probatu dut 42. 43 probatu ahal izan dut. 44 probatu ahal izan dut. Proba 45. Eskuin? Baina hau benetan luze egin izan dut. Zer batzuk gehiago izango litzateke kasu interesgarri saiatu? Ikusleak: [INAUDIBLE] zero. DAVID J. MALAN: Beraz, zero. Zalantzarik gabe. Eta ona, lortu dugu, garai honetan, Lauren kodearen berriei esker. Zer da beste kasu ona saiatu? Ikusleak: bata negatiboak. DAVID J. MALAN: inork negatiboak, eta agian, zerbait apur bat handiagoa da, beraz, agian, ezezko 42, baina, oro har, betiere Zure programak probatzen Aurrera, Oraindik pentsatzea nahi joan zeure buruari, like zer funtsezko kasu ezberdinak dira. Eta, kasu negatibo bat esango nuke, Kasu positibo bat, eta zero kasu bat Nahiko askoz errondak haiek. Dezagun begiratu arren honen aldaera batean. Baldintza bat. Hau irtenbide zuzena da hemen, beraz, bi eta ikusiko duzu online, zehar oinez baduzu Walkthroughs, oro har, Kontatzailea stepwise horiek arte zehazki planteamendu egokia lortzeko. Zer galdetu nahi badugu Bi galdera aldi berean? Ireki me honen ordez. Ez aldatu, arrazoiak direla eta Garai hartan beste ikusiko dugu. Zer berri sintaktikoki hemen? Gaur egun I joko bat jotzen ari naiz non ordenagailu kontatzea Niri, ematen dit zenbaki oso bat bat eta 10 artean, eta, gero, erabiltzailearen sarrera epaitzen ari naiz. Ingelesez, basada Kodea hemen ikusten duzun Urdinez, zer programa hau egiten? Ikusleak: [INAUDIBLE] jaso kopuru handi edo txiki bat. DAVID J. MALAN: Bai. Besterik ala seguruena Handi bat, edo ertain jaso dut, edo kopuru txikiak oinarritutako oso batean txiki, ertain definizioa arbitrarioak, eta hemen handiak, baina oharra sintaxia hori berria da hau. Ez dago int edo berdina baino gutxiago sinatu, edo edo berdin zeinu handiagoa, non bat bestearen gainean dago, duzula adierazi ahal izango duzu Microsoft Word bezalako. Beraz, programazio hizkuntza batean duzu normalean bi pertsonaia egin, bata bestearen atzetik. Eta zer esan nahi du honek seguruenik adierazten, ampersand ampersand. Ikusleak: [INAUDIBLE] DAVID J. MALAN: Bai. Besterik ez du esan, eta delako bihurtzen C egileek ampersand bakar bat erabiltzen da, horrek agian uste duzu nozioa ezin hobea izango litzateke eta, dagoeneko erabilita dago, ampersand beraz ampersand benetan kasu benetan nahi dugun harrapatzen. Hargatik, bi gauza zeharkatuz en stumble orain. Dezagun aurrera eta ireki bat. Zerbait hori apur bat kezkagarria da. Zehaztugabetasunak dot c. Demagun bi gauza aurkeztera me hemen. One, ohar horretan egin ahal izango dugu matematika, egiten duten moduan betiere aurretik egin dugu eta bi zenbakiak, x eta y. Zer da programa hau, itxuraz egiten? Ez dut oraindik, komentatu du, eta sartu Nik ehuneko f, baina berehala esan nuen lehenago ehuneko f puntu mugikorreko esan balio, zein zenbaki erreala da. Batekin zerbait puntua, eta hori ez da zenbaki osoa. Zure ustez, zer programa hau da me erakusteko pantailaren alde batetik saiatzen? Bai? Ikusleak: 10 urtetik gorako baten emaitza. DAVID J. MALAN: Bai. Zer da inor emaitza 10 banatuta. Eskuin denok ziurrenik delako hazita 10 baino bat dela jakitea zer da? Bai, besterik ez da 1/10 edo 0,1. Eskuin? Beraz, ikus dezagun zer den hori benetan da. Hargatik aurrera me eta gorde hau. Behera joan me hemen. Egin zehaztugabetasunak dot barra zehaztugabetasunak, eta oharra ere, Linux ingurunean, ez duzu idatzi behar izan zehaztugabetasunak eta hartu dute egun osoan zehar. Oro har, Tab asmatuz gero, hura Zure pentsamendu amaitzeko izango duzu, oinarritutako diren hitz on uneko direktorioa eskuragarri. OK. Beraz, arrazoi zenuen. One 10 arabera banatzen da, hain zuzen ere, 0.1. Baina apur bat bitxia naiz. Eta bihurtzen da printf Ezaugarri batzuk onartzen Horren bidez, baino gehiago adieraz dezakezu default hamarren kopurua. Beraz, 10 hamartar ikusi nahi badut I berea egin ahal puntuak, placeholder ikurra, sakabanatutako 10, emadazu 10 hamarren, eta gero, oraindik ere puntu mugikorreko balio, eta, alde batera utzita, zer da backslash n hau itxuraz mantendu erabiliz dugu? Zera gertatzen da, bat da linea berri baten sinboloa. Modu oso esplizituak da Ordenagailua erraiteko, mugitu kurtsorea hurrengo ondoren lerro Bukatutakoan. Eta ikusiko dugu zer gertatzen den eta ez dugu hori egin. Let me berkonpilatu zehaztugabetasunak egiteko. Orain dot barra imprecision. OK. Oraindik eskubidea. One 10 banatuta. Orain ari naiz bat gutxi Bitxia da, baina. Zer begiratzen dut 20 hamartar bada adierazi, berkonpilatu, berrabiarazi, Eta alde batera jo Abiadura, ere erabili ahal izango duzu Zure geziak gora eta behera Zure historian zehar mugitzeko, beraz, ez duzu gorde Komando hauek idazten, sartu. Eh. Ez nuen ikasteko duten eskola kalifikazioa. Ondo da, beraz, let me 29 leku out bezala ikusi. Agian kasualitate bat besterik ez da. Agian nire ordenagailuan bitxi antzeztea. Hori ez da gauza bat, ezta? Zerbait deterministically egiten ditu. Beraz, zehaztugabetasunak. Ados, hori messed sortu. Beraz, zer gertatzen da? Beraz, itxuraz, zure Irakasle ditu etzanda egon duzu, denbora hori guztia arrazoi hori luze baino lehen ikusiko dugu. Baina dezagun amaitzeko beste programa batekin. Honek programa txiki bat da norbait duela urte batzuk idatzi, eta, egia esan, lehiaketa baten parte. Inor ez da benetan idazten kodea Hau atsegin, eta egiten baduzu, hau da estilistikoki arazo bat. Baina jendeak egin bragging eskubideak. Nahasia idazteko Bila programa hori hala ere, zerbait interesgarria egiten du. Eta oharraren litzaidake utziko dugu pentsatu nuen gaur, Colton juega digu hemendik aitzinera, da programa hau exekutatu, bertan, nahiz eta, besterik gabe erabiliz Testuan oinarritutako honetan C ingurumena, ematen digu honek. Dammit. [Barreak] Stand by. [INAUDIBLE] c etenaren l m. Magikoa ikusten ari zara enkantamenduari duten luze baino lehen ikusiko dugu. [INAUDIBLE] Ondo. Eta orain are dezakezu hau bezalako gauzak egin. Hori da. CS50 dugun modura, ostiralean duzu ikusiko. [Musika jotzen] [Txaloak]