DAVID Malan: Toto je CS50, a to je na začiatku v prvom týždni. A to, čo sme si povedali, že to je vytiahnuť späť záves na zariadenie, ktoré veľa ze ste pravdepodobne prešiel okolo teraz rokov, ale možno nikdy úplne vedel, čo to je. Takže toto zariadenie bude pravdepodobne vyzerať pozná väčšina z vás teraz. [PLAYBACK] -Triumf matematické a mechanické zručnosti je tento skvelý nový automatický kalkulátor na Harvard University. Zložité problémy v matematike dať do zariadenia v kódovanej forme na páska presne rieši za minútu zlomok času potrebného pre ľudský výpočet. Navrhnuté pre urýchlenie všetkých foriem matematický a vedecký výskum, obrie mechanický mozog práce pre Spojené štáty Navy do konca vojny. [END PLAYBACK] DAVID Malan: Takže to je to, čo vidíte Science Center, čo je miesto, kde ktoré je stroj umiestnený. Ste vlastne vidieť iba jeho časť. Iba časť je v súčasnej dobe na displeji, a to s názvom zariadenia Mark I, a to bolo v podstate naozaj obrovská kalkulačka. To bol nasledovaný Mark II, a je to z Mark II, ktorý sme vlastne si trochu slovníka. Toto je prvý zaznamenaný príklad niečo, čo ste o tom, aby sa stal všetky príliš oboznámení s nad Priebeh semestra - totiž chyba. Tak sa ukázalo, že na jednom mieste je ochranná známka II bol prístroj nefunguje správne, a pri bližšom skúmaní, tam bola naozaj chyba - mora - že mora - vnútri. A od tej doby, sme sa len chyby v programoch, ako chyby. Takže viac o tom prísť. Keď už hovoríme o videá rovnako, ak tak ešte neurobili, vedzte, že CS50 je zrejme natočený. Prednášky typicky ísť vpravo po trieda v akejsi pre-release nezostrihané formát, a potom deň alebo dva neskôr, dáme do vyššieho rozlíšenia a kvalitnejšie verzie. Možno si spomínate, Vanessa, ktorá mala šťastie hrať s Google Glass, ktoré som si spomenul účtovať tentoraz. Takže ak chcete prísť po hodine a hrať sa, že by mal fungovať aj dnes. A ak by ste chceli vidieť, čo Vanessa videl druhý deň, čo uvidíte tu - dovoľte mi, aby som zvýšenie hlasitosti tu na mojom notebooku. [PLAYBACK] -Tak mi dovoľte fronta je to hore. Dobrá. Tak to dotknúť. Dobrá. OK, sklo. Nahrávanie videa. Dobrá. Vanessa? [END PLAYBACK] DAVID Malan: Dobre, takže dôvod že to nefunguje pre väčšinu z vás na koniec triedy, pretože som postupoval nahrať hodinu, ktorá záznam ukazujúci na seba po Dal som okuliare dole. Takže dnes, nechám je preč, ale vďaka môžete Vanessa za to, že takýto dobrý šport. Medzitým niekoľko oznámení predtým, než sme vpred dnes. Takže človek, CS50 tradíciu má robiť čo môžeme snažiť, aby veľmi rozsiahla skupina cíti menšie. A na tento účel, väčšinou každý piatok, sa schádzame v reštaurácii v námestia, oheň a ľad, sa 30 alebo 40 z vašich spolužiakov, sám, niektoré pedagogickí pracovníci, a my sme majú veľmi neformálne obed. Často sme pozvať priateľov z priemyslu, absolventi triedy, absolventi koľaj, naozaj len na chate každý ďalšie hore, hovorí o živote po vysoké školy, život v škole, a podobne. Takže ak by ste chceli podieľať na tomto Prvý taký obed v piatok na 13:15, vedúce k tomu URL na nejakom mieste. Počet miest je obmedzený, takže budeme robiť kto skôr príde, ten skôr melie. Ale urobíme to znovu opakujúce sa základ, takže nie sa báť, ak nemáte aby sa do tejto prvej várky. Teraz, pokiaľ ide o zdroje za predpokladu, curricularly v kurze, je tu celá zabil, a ak nemáte vytiahol kurzu na webových stránkach už, najmä v rámci prednášok, Zistíte, že všetko, sme sa minulý týždeň je tam, ako video a nejaký druh elektronickej podobe. Ale za videí nájdete že tam sú teraz v plnom znení prepisy, napríklad, každej prednášky. Takže ak sme skutočne vrátiť k tejto obrazovke tu s Vanessou a prejdite na dolnom rohu obrazovky, zistíte, že v skutočnosti, nie pre Piatková prednáška, ale ak sa budeme vrátiť do Streda, pretože táto funkcia má niekoľko dní, zistíte, že môžete vlastne vytiahnuť, pre lepšie alebo pre horšie, každé slovo, ktoré som ani dobrovoľník na javisku povedal. A viac než len to. Môžete si skutočne hľadať, môžete kliknite na niektorý z týchto viet, skákať k tomuto bodu vo videu, všetko k a koniec sprístupnenie materiálu všetkých viac splavný. Ale ak nechcete nasledovať tak podrobne, zistíte, pre inštancie, tento malý ponuka tu 1.5x rýchlosť, 2x rýchlosť, alebo i f i už hovorí príliš rýchlo na vás, 0.75x rýchlosť. Takže si uvedomiť, že je všetko K dispozícii tu pre vás. Ale za to, že pre prednášky, si uvedomujú, že aj tieto zdroje tiež k dispozícii. Šmykľavky, ukážkový kód, niečo, čo som robiť na javisku alebo pred triedou, budeme písať tam, takže môžete hrať spolu doma alebo v Sandersa. Ale to, čo sme si povedali, že aj to rok po prvýkrát, je tiež poskytnúť vám návody z týchto príkladov. Stále viac, ako som premýšľal o hodnota prednášok CS50 to, čo som začala na otázku, ako je užitočné pre vy tam sedieť, pre mňa stať tu, a pre mňa hovoriť na vás, najmä preto, že materiál, príklady, dostať zložitejšie. Vzhľadom k tomu, vždy po určitý počet minút, niekto zóny von a potom Vám chýbajú niektoré kľúčové prehľad niektorých príklad, a potom ste v podstate preč zostávajúcu časť triedy, čo nie je najlepšie využitie svoj čas, alebo, naozaj, naše spoločne ako trieda. A tak to, čo sme si mysleli, že sa pokúsi urobiť, najmä pre niektoré z viac komplexné príklady, ktoré som sa nemusia robiť spravodlivosť v triede, že by sme nemuseli mať čas v triede, alebo môžete Len zóna počas ich budeme vyrábať séria návody z týchto príklady tak, že keď idete k, inštancie, posledný piatkový video stránka tu v príkladoch uvidíte, že na piatok, je tu teraz toto odkazy na návody. A formát týchto bude v čase meniť. Zatiaľ sme použili jednoduchý YouTube playlist. Ale to, čo som urobil s naším výrobným družstvom potom bol prejsť každý a každý z týchto príkladov znova, dúfajme, že poukazuje na oveľa väčšie jasnosť presne to, čo takeaways by mohla byť, alebo by mali byť od seba. Tak zistíte, napríklad z poslednej týždeň, všetky stieracích príkladov prešli sme hotoví lineárne v tomto móde. Tak neváhajte zapojiť alebo nie sa do tohto materiálu. Naozaj témou tohto konkrétneho kurzu je to, že tam je asi viac v ceste zdrojov ako vy by mohlo absorbovať cez priebehu semestra. Ale to je zámer. To malo byť tak, že ako jednotliví žiaci môžu na základe vlastného výberu na základe vášho štýlu učenia. Takže ak prednášky pracovať pre vás, skvelé. Ak sú úseky pracovať pre vás, skvelé. Pokiaľ návody pre prácu lepšie, skvelé. Je to naozaj bude len na vás vybrať si Aké zdroje pracovať pre vás najlepšie. A konečne, vďaka absolventom Samozrejme, že sme tiež kánonický sada pisára poznámok. Takže skôr než mať Vy hlavy v prednáškach klikiháky dole veci, ktoré prichádzajú do triedy, sme my, personál, vám poskytne to, čo sme cítiť sa kánonický súbor poznámok k oslobodiť tohto rozptýlenie, aby Ak ste tu a zaoberá, ste skutočne zaoberal s tým, čo sa deje, sa vaši spolužiaci robia sa na fázu, s tým, čo sa deje na obrazovke, a nie len písanie sa doslovne čo sa stalo bolo povedané. Takže si uvedomiť všetky tieto zdroje sú vám k dispozícii. Krájanie, v odpovedi na otázky, začne túto stredu. Sme v podstate čakať, až potom, čo väčšina iné triedy sa vykonáva tak, že môžeme minimalizovať počet zmien že musíme urobiť. Ale prichádza tento víkend, počnúc Nedeľa, bude raz inštancie to, čo nazývame super sekcií. To bude natočený pre tých, ktorí nemôžu zúčastniť, av podstate, Samozrejme hlavami bude chodiť k nám cez niektoré z časti C kurzu ku koncu roka problém nastaviť jeden, ktorý bude naša prvá vychádza C Problém set. A to bude len voliteľné sekcie v očakávaní toho, čo bude sa opakujúce viedli sekcie V blízkosti ihriska je 50 plus výučby týždenne chlapi. V nedeľu alebo pondelok alebo utorok, my má 90 minút sekcie veľmi tradičnom slova zmysle, ktorý bude príležitosti pre ruky na viac intímne preskúmanie Samozrejme je materiál. Bez ďalších okolkov, dovoľte, aby som vám predstavil Kurz je vedúci, ktorí sú v zákulisí so mnou, robiť všetko stalo. Ak sa ti tu dnes mohol so mnou, Rob a Lauren, Josef, Lucas, všetky z ktorých boli s Kurz na nejakú dobu. RJ je tretí v poradí členom nášho tímu. Nemohol tu byť dnes, ale Požiadal ma, aby som ukázať fotku z neho. Nie som si istý, že to chcela jeden, ale tam je. A dovoľte mi, aby tím mohol povedať, ahoj a predstaviť sa tak, že spoznáte ich, rovnako ako vaše vlastné učebné kolega tento termín. LAUREN Carvalho: Ahoj. Moje meno je Lauren Carvalho. Som rezident učiteľ Leverett v dome. Som tiež nadšený super byť hlava televízie na CS50 tohto roka. CS50 je veľmi náročná trieda rovnako ako veľmi veľké triedy, takže ak máte máte akékoľvek obavy, ak máte pocit, ste pozadu, neváhajte osloviť každý z nás heads@cs50.het, alebo so mnou, keby ste chcel hrať môj zlatý retriever šteňa. Tu je Lucas. LUCAS FREITAS: Ahoj, chlapci. Moje meno je Lucas Freitas. Som junior [nepočuteľný] informatika a lingvistika. V skutočnosti som z Brazílie, a tiež som uvedomiť východoázijských štúdií. Takže ak máte nejaké otázky týkajúce sa výpočtová technika, alebo jazyk, alebo niečo, dajte mi vedieť. Alebo CS50, najmä. JOSEPH ONG: Ahoj. Ja som Jozef. Som senior študovať počítača veda Elliott House. Takže, poďme sa pozrieť. Uvidíte ma po vykonaní jeden z týchto obrovských kamier. Som bydliska zamestnanca fotografom Pre 50 rovnako, a študenti často niekedy mylne ma Ázijské turista. Takže ak ste ma vidieť s kamerou, neutekajú. Len úsmev a nehanbite sa. A dúfam, že si môžete vychutnať 50. Páčilo sa mi to moc, keď som ho vzal, a to je dôvod, prečo som pre TFing Tieto tri roky. ROB BOWDEN: Ahoj. Som Rob. To je môj štvrtý semester sa CS50. Práve som absolvoval v máji. Bol som v Kirkland. Som nadšený pre tento semester, a dúfam, že ste príliš. DAVID Malan: Ďakujem tohtoročné hlavy, a RJ rovnako. Takže len pár poznámok na konečné zdroje. Jeden, p-ak nastavená 0 ​​je už hore. Ten existuje iba v štandardnom vydania, ktorý je určený pre celistvosť triedy. Počnúc p set 1, bude hacker vydanie väčšiny problémových súborov, ktorý opäť bude vzťahovať na materiál s trochu väčšou výzvou, zatiaľ čo ešte zmienil o niektorých z rovnakých tém. Do pozrite sa na kurze stránkach pre túto špecifikáciu súboru p 0. Úradné hodiny tiež začne tento týždeň, dnes, zajtra, v stredu, a vo štvrtok v rôznych stolovanie haly na akademickej pôde. Pozrite sa na cs50.net/ohs pre kancelárie hodiny kurzu, a uvedomiť si to bude veľmi neformálne príležitosti, iste, na začiatku semester, prísť s vaším notebook počas prestávky mozgu. Prineste nejaké priateľov a rozprávať sa Samozrejme v TFS a CAS s niektorou otázky, ktoré môžete mať. A ja nemôžem dostatočne zdôrazniť, a to aj pre poškriabaniu a problémov k 0, je naozaj nie je hlúpa otázka. Neexistuje žiadny študent príliš nepohodlné klásť otázky. Prosím, neváhajte využiť tohto zdroja. Bude tam recurringly počas semestra, ako bude CS50 Diskutovať. V tomto kurze je online diskusie Diskusie v tejto adresy. Čo budeme robiť aj počas prednášky je tiež sledovať to, vďaka Samozrejme je tím učiteľov. A tak ak máte nejakú otázku počas prednášať, pretože som niečo povedal zle alebo vôbec, a to všetkými prostriedkami, opýtajte sa že v reálnom čase, ak máte notebook alebo telefón na webové stránky, a my sa budeme snažiť takmer v reálnom čase na reagovať. Existujú nejaké otázky ohľadom CS 50? Potom jeden posledný poznámky bane. Že problematika SAT UNSAT. Ako ste dokončiť svoje študijné karty, ak tak ešte neurobili, si uvedomiť, že zastrešujúca vízie SAT UNSAT, K dispozícii pre všetkých študentov, je naozaj pomôcť sa zmiernilo z kurzu takto, aby som tak povedal, takže ak Ocitnete neskoro v noci, 2 hodiny ráno, 3 hodiny ráno, naozaj búchal hlavou proti stena, na ktorej viete, že ste 99% spôsob, ako tam do konca, ale majú toľko iných vecí na práci, Myslím, že lepšie využitie, často z čas študentov je skutočne presunúť na tie ďalšie veci, takže si môžete optimalizovať svoj čas všade okolo. A SAT UNSAT je mechanizmus, prostredníctvom ktorého si môžete vziať komfort v tom, , Že 99%, ako sa má stále čertovsky dobre. Podobne, aj keď ste prišiel do Kurz bez predchádzajúceho podkladu, alebo zďaleka nie toľko ako vy pozadie myslíte, že vaši spolužiaci môžu mať, pravda, alebo nie, si uvedomujú, že je to možnosť zašpiniť ruky s kurzom, dajte prsty v vody, aby som tak povedal, rovnako ako som sám som pred rokmi Pass / Fail. Ako som povedal minulý týždeň, mal tento kurz, rovnako ako ostatné, nie je k dispozícii vyhovel / nevyhovel v tej dobe, asi by som nie je kedy vstúpil nohu triedy, aj keď som urobil, päť týždňov neskôr rozmyslím, ktoré môže byť rovnako, a prejsť na alebo z listu triedeného stave. Dobrá. Tak sme sa na veci, ako je to na Piatok a my sme veľmi rýchlo ísť prechodu k niečomu, čo vyzerá tajomný dnes. Ale je to však Rovnaký základný nápad. Aký bol všeobecný termín, ktorý sa používa na opis kúsok skladačky ktorý vyzeral takto? Takže vyhlásenia. A môžete volať o nič rad vecí. Ale budeme len zavolať, že vyhlásenie, a vyhlásenie, Len hovorí programu - alebo v prípade Scratch, sprite - niečo urobiť. Pozdravte v tomto prípade. Niečo také sme namiesto toho zavolal, čo? Jo, to logický výraz. Logický výraz je proste niečo, že je pravdivý alebo nepravdivý, a tak Scratch čerpá je s týmto tvarom, ale tiež s otáznikom oznámiť Predstava, že odpoveď na túto otázku je buď true alebo false, áno alebo nie jeden, 1 alebo 0. A budeme používať booleovské výrazy vnútri konštrukcie, ako sú tieto, ktoré hovoríme, čo? Takže, stav alebo pobočka. A stav vidíte tu v Scratch má trochu zástupný symbol pre skladačky z tohto tvaru, účel z nich je tak, že môžete pretiahnite a umiestnite ho na vrchole a potom diktovať programe, ak to logický výraz je pravdivý, vykonajte tento súbor Návod, tento set výkazov, inak to tú druhú sadu pokynov. A pripomínajú, že môžete hniezdo tieto veci. Aj keď tam nie je moc miesta vizuálne v tejto skladačky, Scratch bude rásť a zmenšovať, aby sa zmestili bez ohľadu na skladačky preťahovať do tam, takže sa môžete skutočne hniezdo a to mať trojcestný rázcestí. Je-li, inak, ak inak. A dokonca môžete ísť nad rámec, ktorý by hniezdenia ďalej a ďalej podľa potreby. Tak konečne sme videli konštrukty, ako je , Inak známy ako slučka. A to je proste niečo, čo robí niečo znovu a znovu a znovu. V tomto prípade, sa to stane, že je konečný koľkokrát, ale tiež videl príklad, kedy je počet časy nastali z premennej, takže je sa môže zmeniť. A sme tiež videli úplne iný blok nazýva blok, ktorý navždy nám umožnilo slučky nekonečne dlho. Takže jeden ďalší konštrukcie, ktorá Scratch 2.0 má - a tie z vás, viac pohodlné s predchádzajúcim pozadí sú už dobre oboznámení s týmto postaviť - Tieto veci hovoríme, čo? Tak sme nazvali túto funkciu, inak známy ako postupy. K dispozícii je malá sémantický rozdiel, ale budeme im hovoriť len funkcie. A funkcie v prípade Scratch, je vlastné puzzle kus, ktorý vy sami môžete vytvoriť tak, že máte nový kúsok skladačky, že v tomto prípad, že sa nazýva kašeľ, že Zobrazí sa medzi všetkými ostatnými K dispozícii dieliky v začiatku. Aj keď MIT nevynašiel tento kúsok skladačky, povedal. Takže funkcia umožňuje vytvárať nové správanie, dať mu názov funkcie, a potom hovoria, aby som tak povedal. Naozaj ju použiť v programoch, znovu a znovu a znovu, aby bolo nutné čakať pre niekoho, ako je MIT po ceste vymýšľať nové funkcie od nuly. Vy sami môžete vytvoriť tieto puzzle kúsky seba, a potom znovu využiť vo vlastných programoch. A uvidíme opakujúce príklad z toho dnes a dopredu. Takže dnes sme prechod teraz na niečo tajomného. Ale na konci dňa, niečo silnejšie a výraznejšie a viac Zástupca cesty, že budeme na všetkých semestra celého radu jazykov - že z kódu alebo zdrojového kódu. A zdrojový kód, sa ukázalo, nie je to, čo počítač zvyčajne v skutočnosti beží. Zdrojový kód vyzerá takto. Tak to je, opäť, možno najjednoduchšie Program môžeme písať jazyk s názvom C. začneme podpichovať Tento aparthotel sa onedlho, a ak je to naozaj vyzerá ako grécky aby vás práve teraz, ver mi. Vnútri len týždeň alebo dva v tej dobe, toto bude až príliš dobre známe a vlastne , Veľmi dobre sedí na stále komplexné príklady, s ktorými budete tiež získať oveľa pohodlnejšie. Ale nemôžete len spustiť tento druh kódu zvyčajne. Musíte sa obrátiť do niečoho, čo samotný počítač rozumie. A tak to, že potrebujeme niečo budeme volať kompilátor. Kompilátor je program, ktorý sa zdrojový kód, ako ste práve videli, ako vstupu, a to vytvára nuly a ty výstup, inak známy ako objektový kód. A to sú tie nuly a tie, ktoré môže vyzerať celkom takto, že nakoniec sa rozumie v počítači Mac alebo PC. Ak ste niekedy počuli marketing Výraz Intel Inside, že práve znamená, že spoločnosť s názvom Intel vyrába Mozgom počítača - inak známy ako CPU, Centrálna procesorová jednotka - a to je práve tá vec, ktorá chápe vzory núl a ty. A tak tým, že zmení zdrojový kód do kód objektu v rámci tohto procesu tu že budeme robiť s dvojicou príkazov v len trochu, ste vytvárať vzory núl a tie, že zamestnanci na Intel rozhodol reprezentovať určité výroky. Teraz som vlastne poriadne nevieme, ktoré ktorý je jednoduchým pohľadom na Tieto nuly a ty. Väčšina ľudí v týchto dňoch nemajú. Ale niekde tam je vzor nuly a tie, ktoré predstavuje Vyhlásenie o tlač. Niekde tam by mohol byť iný súbor núl a tie, ktoré predstavujú pojem navždy alebo opakovať 10 krát alebo dokonca mňau, ak je to vlastne program, ktorý môže zahŕňať niektoré zvuky. Takže v skratke, ľudia sa rozhodol, podobne ako tomu bolo v ASCII - pre písmená abecedy minulý týždeň - ľudia sa rozhodli, že aj zložitejšie vzory núl a tie, predstavujú viac komplexné správanie ako tlač alebo hovoriť alebo mňaukanie. A tak dnes, a do značnej miery dopredu v semestri, vezmeme za samozrejmé, že niekto prišiel ako k tomu, že mapovanie. Ale my, v súlade s touto myšlienkou vrstvenie na vrchole prácu ľudí ktorí prišli pred nami, bude trvať udelil skutočnosť, že táto sa deje pod kapotou. Ale my sme oveľa viac zaujímajú stavebné veci, ktoré sú viac zaujímavé na vrchole toho všetkého. A tak vskutku, prvý program, ktorý sme napísal Scratch bol to výborný jednoduchý jeden, Hello World. A vy môžete myslieť na to, ako je Hlavný program, ktorý riadi Scratch je správanie od minulého piatku. Dnes budeme začať prekladať Stieracie dielikov do zdrojový kód v tomto jazyku zvanom C tak, že to, čo vyzeralo to na Piatok, odo dneška a ďalej, je teraz bude vyzerať takto. Je pravda viac zložitejšie. Je to celkom rušivé a triedenie mysli znecitlivujúce vidieť všetky citáty a bodkočiarky a zátvorky a tak ďalej. Ale keď začnete ignorovať všetko, čo Tomu nerozumiem, a naozaj sa v podstate bieleho textu na obrazovka, iste viete, ako ja, "Hello, world". To, že sa zoradia s fialová vyhlásenie Navrchu a ukazuje na to, že kľúčové slovo hlavné sa chystá zoradiť koncepčne sa, keď zelená vlajka klikli. Takže inými slovami, zatiaľ čo v Scratch, sa vykonávania tohto programu Hello World s týmito dvoma kúskami skladačky, v C, budeme vykonávať je s to Štyri trochu mystické linky. Ale ako sme sa ponoriť hlbšie do toho, budete vidieť, že každý z nich biele znaky na obrazovke skutočne má nejaký podstatný význam, a väčšina našich programov budú pozrite konštrukčne úplne rovnaké. Takže tvrdenie, aby bolo jasné, čo sa vyzeral ako "pozdraviť" na svete Piatok sa chystá začať hľadať takhle v pondelok. printf ("Hello, world"). A tam je nejaký divný spätné lomítko n, tam zátvorky, tam je bodkočiarkami. Ale na konci dňa, kľúč stánok s jedlom dneška je, že všetko, čo robíme prekladá veci z obrázka tvoria sa textovej podobe. Takže slučka, ktorá vyzerala takto minulý týždeň sa bude teraz vyzerať niečo také. A dovoľte mi odmietajú, rovnako ako v Scratch, je to rôzne spôsoby, ako Pre dosiahnutie rovnakého cieľa. Rovnako v C. Nie som zobrazujúci iba spôsob, ako robiť veci, ale jediný spôsob, ako to preložiť navždy blokovať ku slučke v jazyku C. Tenhle, opakujte 10 krát. Tahle je naozaj druh zákrutách myseľ prvýkrát ho vidíte. Ale realizovať, že odteraz budeme používať pre sláčiky, aby som tak povedal. A jasne, že je nejaký syntax, ktorá je trochu areálu s I a rovné a 0, ale akonáhle sme sa ponoriť do toho dnes vpred, ste práve deje vidieť, že to je všetko jednoducho robiť nejaké základné aritmetické, aby nás z 0 až na 9 alebo 10 v tomto prípade. A konečne, s premennými, budete si spomínate že premenná je kus skladovanie. No, čo sme mali na ľavej strane je posledný týždeň bude vyzerať trochu niečo také tento týždeň. Ale znovu, viac na to prísť. Mali sme booleovských výrazov, ktoré Minulý týždeň vyzeral takto. Tento týždeň dopredu, sa chystajú začať vyzerať trochu ako to. A toto je vlastne trochu upokojujúce. Je to vlastne skoro rovnako jednoduché ako zelené bloky. Ale tu máme opäť nejakú novú syntax s ampersand, ale môžete snáď hádať kým v Scratch, môžete povedať A-N-D, zrejme v C, sme poviem ampersand ampersand. Ale to všetko bude prírodné onedlho. Podmienky. Minulý týždeň to vyzeralo, že to na ľavej strane. Tento týždeň, na pravej strane, je to bude vyzerať, že. Ale znovu, kľúč stánok s jedlom je, že ako vidíte také veci, že na vpravo, a to najmä v prípade menej pohodlné, je to trochu nad svojimi hlava, dostanete trochu zahltení, že Ja naozaj nemám potuchy, ako som mohol prípadne prísť s že od začiatku - žiadna slovná hračka určená - len si uvedomiť, že je to naozaj rovnaké Predstava, že asi cítil oveľa viac prírodné minulý týždeň. A aj keď ste skočil do Problém set 0, trúfam si tvrdiť, zistíte, že kúsky skladačky sú pomerne intuitívne, alebo aspoň sa tak v priebehu času. Takže poďme sa ponoriť dovnútra Poďme si naše špinavé ruky tu tento prvý jednoduchý program. A jednoduché je, samozrejme, relatívna. Ak to chcete, budem meniť obrazovky do tohto zariadenia som volal CS50 spotrebiča. CS50 Spotrebič je kus softvér, ktorý beží vnútri okná na mojom Macu, a môžete tiež spustiť sa v okne vnútri vášho PC, ktorý mi umožňuje mať rovnaký presný prostredie počítača ako každý TF, as každý CA, ako každý študent v triede. Pretože CS50 zariadenie je doslova iný operačný systém s názvom Linux - konkrétne Fedora Linux - a my, zamestnanci, boli nakonfigurované Proces inštalácie tohto operačný systém takým spôsobom, že jeden, je to trochu CS50 logo stredná, dva, je to vlastné menu v dno a tri, pedagogicky, sme zjednodušili užívateľské rozhranie pokiaľ možno tak, že keď najprv zaviesť túto vec až na vlastnú päsť Mac alebo PC, máte rovnaký prostredie, ako všetci ostatní, a mať všetky nástroje, ktoré budete potrebovať do kurzu, bez toho aby musel prísť na to, ako nainštalovať každý a každý nástroj samostatne. Takže to vyzerá relatívne ako je Mac OS alebo Windows. V ľavom dolnom rohu, je majú v zásade ponuky Štart druhy alebo ponuky Apple. A potom ste to, čo máme podozrenie, bude byť vaša tri najčastejšie ikony. Jedným z nich je Chrome. K dispozícii je prehliadač vnútri spotrebiča. Dva je program s názvom gedit, ktorý sme videli minulý týždeň krátko, čo je len grafický editor. A za tretie je terminálový program, ktorý je čierna a biela okná z minulý rok, ktorý nám umožňuje písať viac tajomné, ale výkonnejší príkazy na naše klávesnice. Takže budem pokračovať a kliknite na gedit, a buďte si istý, že tento problém sada 1, byť prepustený v piatok, bude vás prevedie všetkými týmito rovnakých krokov. Všimnite si, že mám celkom jednoduchá užívateľské rozhranie sa z troch častí. Na ľavej strane, mám veľký prázdny Okno tzv zdrojový kód. To je miesto, kde budem chcete zobraziť súhrn akéhokoľvek kódu, ktorý píšem. Na pravej strane, mám veľký karta, v súčasnej dobe neuložené, a to kde môj kód pôjde. A na spodnej strane, som vložený Okno terminálu, čierna a biela výzvou, na ktorú môžem písať príkazy kompilácie a spustenie svoje programy - ktoré je, aby sa aj spustiť svoje programy. Tak začnime jednoduché. Nechaj ma ísť až na Súbor, Uložiť. Chystám sa ísť dopredu a ísť do jharvard. Tak zariadení, bez ohľadu na to, čo Vaše meno je patrí k pomenované chlapa John Harvard, ktorý má jharvard domov adresár vnútri ktorej všetky svoje Súbory pôjde. Je to vaša vlastná kópiu svojho účtu, takže nie sme všetci zdieľajú rovnaký pevný disk. Musíte len ilúzia vlastných Johna Harvarde. V predstihu, som vlastne nainštalovaný Dropbox. Prístroj je dodávaný s pripravených Dropbox, takže ak sa niečo pokazí v priebehu semestra, ak ste nakonfigurované spotrebič bez Dropbox účet, budú všetky vaše súbory automaticky zálohované, takže môže veľmi ľahko obnoviť. A ja idem do môjho Dropbox adresáre, a tam už ide Ak chcete byť pár ďalších vecí tam. Ale ja idem do toho a prejdite na Súbor, Uložiť. Chystám sa ísť do jharvard, Dropbox, a tu, idem dať môj program super jednoduchý meno, hello.c a uložte. Takže mám rovnaké rozhranie teraz. Jediná vec, ktorá sa zmenila je karta Navrchu. Takže som veľmi rýchlo bude znova tento program od kĺže pred chvíľou. Takže do main (void), a potom printf, "Hello, world", trochu mystický spätné lomítko n, v blízkosti citujem, zatvorte zátvorka, bodkočiarka, a potom Ctrl S uložte. A všimnite si, ako bokom, čo sa práve sa tu objavuje v ľavom hornom rohu. A to nie je vhodné dnes, ale bude užitočné v priebehu času. Práve ste vidieť opäť zhrnutie kód, ktorý ste napísali. A pretože som napísal niečo, čo nazýva hlavné, to je dôvod, prečo slovo hlavný vyskočila tamto. Ale z väčšej časti, sa nepotrebujú, že dnes. Dobre, tak tvrdím, že to je moje prvý program napísaný v programovacom jazyk s názvom C. vieme od piatku že to, čo to, čo sa chystá urobiť veľmi uninterestingly, keď som spustiť je to len zobrazenie - inými slovami, tlač, ako počítač vedec by povedal - hello world na obrazovke. Tak, ako to urobiť, zistíte, že mám ísť dole až k mojej terminálu okná, a teraz mám blikajúce výzva. Ale teraz je to klávesnica verzia môj John Harvard domovský adresár. Je to spôsob, ako pomocou klávesnice, ktorá navigovať svoj pevný disk. Takže nemôžem vlastne písať ako ja minulý týždeň, aby ahoj, pretože je to hovoriť žiadne pravidlo, aby sa ciele - Niečo je zle. Ja vlastne poriadne nevieme, čo táto správa prostriedky, ale to je preto, že v predvolenom nastavení, keď sa to čiernej a bielej okno otvoril, som vnútri John Harvarde domovský adresár. Ale tam, kde som okrem toho, že program? V mojej zložke Dropbox. Teraz každý z nás vyrástli s počítača, kde stačí dvakrát kliknite na zložku ikone, že otvára, a je to tu. To je miesto, kde súbor s názvom hello.c bude. Takže v skutočnosti, ideme na to. Nechaj ma ísť dopredu a minimalizovať gedit rovnako ako by ste písali na Windows alebo Mac OS. Nechaj ma ísť do domova Zložka vľavo hore. Uvidíme tu veľa zložiek. Tu je moja zložka Dropbox. V Zaškrtnutie znamená, že je už synchronizovaná. A je tu pár vecí tu, ale zistíte, že je hello.c naozaj tu. A tak v Mac OS alebo Windows, zvyčajne, Ja by som poklepte to, že to otvára v bez ohľadu na program, a som dobré ísť. Ale teraz, aspoň začína dnes, sme je potrebné vziať krok späť len vám niektoré základné nástroje pre váš náradie, s ktorou, aby sa viac silné veci pred dlho. Takže na túto výzvu, musím urobiť ekvivalent dvojitým kliknutím Dropbox zložku. A na to, že budem písať na CD zmeňte adresár, Dropbox, zadajte. A teraz Všimnite si okrúhlych zátvoriek na my tzv prompt teraz tvrdia, že som v tilda, malý zakrútený symbol v ľavom hornom rohu väčšina klávesníc, / Dropbox. To je len skrátený zápis pre hovorí človek, teraz ste vo vnútri zložka Dropbox, rovnako ako by ste si poklepanie na neho. Takže teraz, keď pôjdem napred a zadajte, aby Dobrý deň, zadajte, vidím veľmi mystický príkaz, ale chybové hlásenie, Zdá sa, a potom sa ďalšie blikajúce výzva. A pokiaľ si spomínam, niekedy tak rýchlo, V piatok sme to urobili. . / Ahoj. Čo ste asi vidieť, je výsledkom môjho spustenie tohto programu, alebo v Mac OS a PC pojmy, keby som normálne dvojnásobok kliknite na programe - app. program alebo. exe, otvorí sa okná a beží. Písanie. / Ahoj je rovnako ako double Kliknutím program spustiť, ale pomocou môjho klávesnice. Zadajte, hello world. A je to. Takže poďme dráždiť to od seba tak, aby necíti moc ako Grék. Tak. / Znamená čo? Každý, kto sa kedy navigoval klávesnica prostredie, ako je táto, čo je bodka na mysli? Aktuálny adresár. Takže je aktuálny adresár len synonymom pre zložky. Takže tým, bodka lomítko, hovorím, pozrite sa na program s názvom ahoj v aktuálny adresár - v aktuálnej zložke. Inými slovami, moja Dropbox zložku. A to je dôvod, prečo by ste stlačili Enter potom vlastne beží tento program. Keby som teraz typ LS, všimnite si, že vidím všetko v mojom zložky Dropbox. Ako Started.pdf, ktoré Dropbox vám dáva zadarmo, mojich fotografií adresár, verejný adresár, neuložené Dokument 1, ktorý som omylom na Pred chvíľou foo.c, ktoré som robil predtým dnes, a potom dva riadky - hello.c a ahoj. Hello.c je program, ktorý som písal s gedit, a čo je ahoj v zelenej? Ahoj zelene je spustiteľný súbor. Inými slovami, keď som bežal tento príkaz pred chvíľou - dovoľte mi vrátiť späť v čase - Keď som bežal, aby ahoj, to je stredná krok tu. A trvalo hello.c ako vstup - AKA zdrojový kód - a to produkovalo súbor s názvom Dobrý deň výstup, ktorý obsahuje všetky z týchto núl a jednotiek. A to je dôvod, prečo na konci, môžem v skutočnosti spustí príkaz ako /. Dobrý deň. Pretože Intel Inside, môj operačný systém, Linux, otvára tie nuly a tie, kŕmi ich do Mozgom počítača - CPU - a že CPU vie, oh, tu je vzor núl a jednotiek, ktoré hovorí, Vytlačte si nasledujúce vec na obrazovke. Čo je to nasledujúce veci? Citovať Unquote, "hello world". V poriadku, takže rýchly prehľad niektorých Tieto príkazy tak, že môžeme začať brať za samozrejmosť. Dovoľte mi, preskočte na kde sme skončili. A budete pripomenúť, že sme mali CD na chrbte skončiť pred chvíľou. To sú, trúfam si povedať, pre dnešné účely - Možno tento týždeň - iba príkazy sa Možno bude potrebné zadať na príkazovom vyzve, aby vedľa. Takže CD sa za čo? Zmeňte adresár. Je to len ekvivalent double Kliknutím na priečinok. A stranou, ak sa dostanete stratil niekedy vnútri vášho spotrebič tak, že Dropbox - Chcem sa vrátiť do jharvard adresár - v prípade pochybností, CD, zadajte, bez akéhokoľvek ďalšieho slová, a to len zipsy vám späť na miesto, kde ste začali, čo je pekný malý zástupca. Dobre, takže teraz ďalšie príkazy. LS. Napísal som, že pred chvíľou. Čo si myslíte LS znamená? Takže, zoznam, nie? Späť v deň, kedy ľudia prišli s týmito príkazmi, ktoré Snažili sa byť efektívna a pomerne zadajte z L-I-S-T Enter, ktoré rozhodol LS. To je v poriadku. Znie to dosť ako zoznam. Povedzme, typ LS vstúpi, a to zoznam súborov alebo priečinkov v mojom aktuálny priečinok. mkdir, môžete pravdepodobne hádať. Vytvoriť adresár. Takže nemusíte ísť do nejakej ponuky Súbor a vybrať novú zložku v tomto prostredí. Skôr, môžete zadať príkaz mkdir priestor a potom názov priečinka , Ktorý chcete vytvoriť, a bude hotovo. rm, môžete pravdepodobne hádať. Odstránenie alebo odstránenie. Takže ak chcete zmazať súbor, budete si musieť vybrať pozri problému nastaviť spôsob Môžete to urobiť. A rmdir, odstráňte adresár. Takže ešte raz, budem mať tendenciu letieť cez niektoré z týchto údajov, jedným, pretože že to nie je tak moc zábavné stráviť čas ďalej, ale dva, dáme vám v oveľa väčší detail v niektorom z Samozrejme je problém sady, a to najmä štandardná edícia, niektorý z krokov že možno budete musieť zadať, aby že dostanete viac pohodlné s týmito vecami. Ale teraz mi dovoľte srandista oddelene jedna vec. Keď sme napísali, aby ahoj pred chvíľou, sme videli záhadný postupnosť príkazov. Videli sme, opäť, aby ahoj. OK, poďme na to. Chystal som sa urobiť chybu, ale [Nepočuteľné] sa priznať, že som sa chystal a to zámerne. Čo som urobil zle práve teraz? Jo, nie som v Dropbox adresár, pretože pred chvíľou som napísaný CD a jednoducho stlačiť Enter. To zväčšenom ma späť tam, kde som začal, ktoré nie je tam, kde má súbor je, takže som naozaj potrebujete urobiť, CD Dropbox vstúpiť, a teraz môžem urobiť rm Dobrý deň, zadajte odstráňte obyčajný súbor ahoj. Neviem, prečo je to tak tajomný. To len znamená, že ste si istí, Ak chcete odstrániť ahoj? Môžete zadať Y áno, zadajte, a teraz je to preč. A teraz keď píšem, aby Ahoj, je to bude znovu môj objektový kód, obnoviť tie núl a jednotiek. Ale čo je vysporiadať sa s Tento veľmi dlhý príkaz? No, budeme dráždiť tento rozdiel netrvalo dlho, ale uistite sa, - Povedal som trochu bielej lži pred - nie kompilátor. Urobiť, je program, ktorý automaticky postavy z ako spustiť kompilátor pre vás. Takže príkaz, ktorý v skutočnosti malo byť beží s cieľom premeny hello.c do ahoj vlastne vyzerá trochu ako je tento. A nedaj bože máme skutočne pamätať vôbec písať, že celý postupnosť príkazov von. Účelom urobiť v živote je si uvedomiť, že stupeň zložitosti pre nám a automatizáciu, ktorá by inak byť veľmi nudné kroky. Ale môžem priblížiť, že. Takže na tomto malom ťahák tu, som môžeme priblížiť, čo to je príkaz robiť jednoducho napísaním rinčaním, ktorý je názov prekladača budeme pomocou tohto semestra. Ak sa niekto z vás niekedy urobil iOS Vývoj pre iPhone a iPad Zvonenie je program, ktorý ste použili v Xcode, aby sa vaše aplikácie. Zvoniť, aj keď je to len ďalší program, ktorého meno je možné zadať na príkazovom riadku a zavedením teraz, Môžem predstaviť niečo, čo je málo reprezentatívne príkazov, ktoré príde. Tak nech ma to urobiť ručne. Takže rm ahoj, a teraz oznámenia v prípade, Ja, rovnako ako zdravý rozum check - . / Dobrý deň, čo si myslíš, že som Mali by ste vidieť, či som to urobiť? Nejaký druh chyby. Žiadny takýto súbor adresár. Tak ten je vlastne celkom priama. Takže teraz mi dovoľte vyčistiť obrazovku. Ovládanie S len vymaže obrazovku odstrániť niektoré rozptýlenie. A teraz idem ručne Typ zvonenia-o ahoj hello.c. Takže čo je to asi robiť? Presne to isté, čo robiť urobil pre nás, ale ja som vyhodiť niektoré nadbytočné slová. Zvonenie je program, ktorý sa bude vziať. c súbor ako vstup a vytvárať núl a jedničiek ako výstup. Ale-o odteraz bude nazývať spínač alebo vlajky. To je len techie žargónu hovorí to je slovo, ktoré zadáte na výzvu ktoré nejakým spôsobom ovplyvňuje správanie programu, ktorý používate. Takže niekto chce hádať čo-o odovzdáva? Výstup. Je to len niekto rozhodol-o prostriedky výstupný súbor s názvom ahoj a brať ako Vstup bez ohľadu na posledné slovo výzva je hello.c, takže keď som narazila Zadajte teraz sa zdanlivo nič nedeje. A napodiv, v tomto svete programovanie, ak sa nič nestane, to je asi dobrá vec pretože tam žiadna chyba správy na obrazovke. Dobrý deň, Enter. Môj program je teraz spustený. Ale môžem robiť stupídne veci, ako je to. zvonenie-o, hihihi, hello.c, vstúpiť, a teraz mám rovnaké program s názvom hihihi. Sa chová rovnako, ale meno tak trochu inak. Takže je to len povedať, že ak chcete, ovplyvniť správanie programu, budeme stále pozri zvané veci Argumenty príkazového riadka. Toto je línia. Píšete príkazy. Ergo, príkazový riadok. A argumenty príkazového riadku sú len slová alebo malé kúsky syntax, ktorá nejakým spôsobom ovplyvniť správanie programy, ktoré sme v prevádzke. Dobre, to je možno najviac nuda programu môžeme písať a uvidíme. Poďme sa teraz niečo urobiť zaujímavejšie. Nechaj ma ísť ďalej a vytvoriť nový súbor. Chystám sa ísť dopredu a uložiť to v John Harvard domovský adresár, as, nazvime ju custom.c, byť trochu vlastný program. Chystám sa priblížiť na mojom vrchole jazýčky tu a začať znovu. Zahrnúť štandardné stdio.h. Viac si o tom za chvíľu. int main (void), viac na že za chvíľu. printf ("ahoj, David"). Oveľa zaujímavejšie, že jo? Takže teraz, ak - nie kvôli mojom mene, len preto, že je to inak - aby zákazku zadať. Vlastné, ahoj, David. Ale aj to, že aj to je lož. Tento program môže tiež byť nazývaný david.c, pretože to nie je zvyk správanie vôbec. Naozaj, chcem program, ktorý sa spýta užívateľ na ich mená. Tak ako to mám urobiť? No, dovoľte mi posunúť nahor tady. A než som sa použiť vyhlásenie, vo Scratch, než som použiť printf, inak známy ako funkcia, dovoľte mi, aby som najprv opýta užívateľa nejaký vstup. Tak, ako to urobiť, musím urobiť pár vecí. Po prvé, musím miesto pre uloženie užívateľa meno potom, čo som sa ho opýtal, alebo jej za to. Čo konštrukt musím používať pravdepodobne pre uloženie hodnoty, ako je? Variabilný. Takže na rozdiel od nuly, kde stačí mať pekný kúsok skladačky, tu, musíme použitie, samozrejme, slová vyjadrujeme. A ďalej, kedykoľvek budete chcieť slovo alebo fráza, plánovanie, budeme hovoriť, že reťazec. Takže reťazec je slovo alebo fráza. Je to sekvencia nula alebo viac znakov, viac formálne. A ak chcete takú premennú existujú, musíte povedať, aby mi jednu. A spôsob, akým to urobiť, je povedať, reťazca s bodkočiarka, kde ich môže byť čo chcete. V skutočnosti, s je trochu nezaujatý. Nechaj ma ísť napred a viac jasne hovoria, že meno. Daj mi reťazec s názvom meno. Ale teraz, čo je odsúdený meno štandardne? No, v prípade, že človek nemá nič pisat v, samozrejme, tam sa deje byť žiadna hodnota v názve. A ukázalo sa v C, ak nechcete, aby premenná hodnota, bude to majú odpadky hodnotu. To by mohlo mať nejaké náhodné nuly a ty, tak ste práve uvidia odpadky, naozaj, na obrazovke ak sa pokúsite zobraziť. Ale môžem to napraviť tým, že hovorí, v skutočnosti, obchod vnútri mená na nasledujúce hodnoty. Spôsob, akým budete ukladať hodnoty do premenných je Ak máte názov premennej na doľava, budete musieť nejako dať to, čo chcete uložiť v ňom na pravej strane, a Syntax, čo sa deje byť nasledovné. Sme nevideli predtým, ale prevziať na viere na chvíľu, že existuje existuje ďalšie vyhlásenie vo svete že budem opäť volať funkciu, a táto funkcia je nazýva sa reťazec. A to doslova, že. To nejako dostane postupnosť znakov od človeka a potom robí niečo s ním. A to vyzerá ako tajomný syntaxe. Za normálnych okolností, ak používate rovnaké príznaky - ste vo svete, povedzme, algebra, a vy ste vlastne ostatní x sa rovná 1. Tu Nehovoríme, že Meno rovná sa reťazec. Hovoríme obchod, v mene toho, čo je na pravej strane z toho rovnítka. Znamienko rovnosti predstavuje operátor priradenia. Je to skladba, ktorá hovorí, že dať to, čo je na na pravej strane vo vnútri, čo je na ľavej strane. Tak sa reťazec je nový kus funkcie, ktoré nielenže niečo - žiada užívateľov na reťazec - to tiež vráti, aby som tak povedal. Takže poďme sa pozrieť, čo sa deje aby sa stalo tu. Chystám sa ísť dopredu a teraz sa vzdialite, a budem mať pár chyby na môj dotaz. Budem písať, aby zvyk, zadajte. Wow. Veľa chýb. Dobre, takže to je celkom ohromujúci, iste na prvý, ale ukázalo sa, všetky tieto veľmi síce záhadné chybové správy sú s odkazom na niektoré vzory, ktoré začneme vidieť v priebehu času. Tak toto budem trhať preč, pretože je to prvýkrát. Použitie nelegálnej identifikátora reťazca. To len znamená, že gedit alebo rinčanie, v tomto prípade nevie, čo tým myslím reťazca. A to preto, že v C, programovanie jazyk, tam vlastne nie je premenná typu reťazec. C nevie, že existujú reťazca. Ale my, CS50 personál, robiť. A tak v predstihu triedy, sme vytvoril súbor s názvom CS50.h. A vnútri tohto súboru - a viac na syntax prísť - vnútri tohto súboru je definícia z toho, čo som práve definoval slovne ako reťazec. Takže jednoducho tým, že uzavretie tejto jeden riadok kódu v mojom programe, teraz som Výučba gedit a robiť a zvonenie všetko zase to, čo je reťazec. Ja neviem ako ešte. Za niekoľko týždňov, budeme kôra späť, že vrstva. Ale teraz viem, že to učí kompilátor čo reťazec v skutočnosti je. Takže teraz mi jasné, môj terminál sem. Dovoľte mi, aby som znovu spustiť, aby zvyk a ja vyriešiť všetky tieto problémy. Tak to taky bude je vracajúci sa téma. Len som napísal 9. riadku programu, a napriek tomu som mal 18 riadkov chýb. To je trochu zastrašujúce. Ale uvedomiť, že sa často ako kaskáda že jedna malá chyba spúšťa zmätok pre kompilátor, a vyzerá to oveľa horšie, než to je. Takže teraz bystrý pozorovateľ bude vedieť že som stále reťazec od užívateľ, ale nie som v skutočnosti robí to, čo s tým? Nie som vlastne robí niečo s ním. Takže keď som sa skutočne prejdená zákazku znova, to bude len sedieť. Čo sa deje? Môj program sa zdá byť prilepené na Čo riadok, to hovoríš? Takže je to vlastne prilepené na riadku 7. A my sme to nevideli skôr, ale na linke 7, je tu znova, to vyhlásenie sa reťazec. A robí to, čo hovorí. Čaká sa na človeka aby sa reťazec. To je úplne unintuitive ku mne, človek, pretože som neboli povedal, čo robiť. Ale nechaj ma ísť dopredu na viere a dovoľte mi, aby som predstieral, že je Rob. Enter. To nie je program, ktorý som zamýšľal. Tak máme prvý blog. Ale skúsme rozum, cez prečo tomu tak je. Najprv mi dovoľte, aby som opraviť tento prvý problém. Dovoľte mi pridať riadok, ktorý hovorí, že tu printf, aké je vaše meno? Urobme úzku ponuku, zatvorenie zátvorky. Teraz mi dovoľte znova spustiť program. Problém. Nevidím to. Presne tak. Nechcel som znova kompilujte. Takže v jazyku, ako je C, pretože zmeniť zdrojový kód, neznamená, že ste zmenili kód objektu generovať nový objektový kód, nové núl a jednotiek. Musíte prekompilovať. Keby som teraz znovu spustiť vlastné, zadajte, ah, trochu jasnejšie. Volám sa Rob. Stále buggy. A ja by som tvrdiť, že je pár chýb teraz. To len vyzerá ohavná, úprimne povedané. Rovnako ako, minimálne, mal som priestor tam, alebo presunúť kurzora na nový riadok. A vlastne nový riadok. To je niečo ako kľúčové frázy, ktoré tu Videli sme, ale nie je definovaná. Spôsob, akým sa text prejsť na ďalší riadok, nemusíte to urobiť. To je mätúce k počítaču. Vyzerá to ako dva samostatné riadky kódu, z ktorých ani jedna , Je úplne správne. Tie namiesto toho, aby sa viac explicitné a povedal, daj mi nový riadok, ktorý sme predstavujú v C s lomítkom n Takže je tu pár takých znakov. Spätné lomítko n opravíme estetická. Dovoľte mi, aby som prekompilovať svoj program. Dovoľte mi, aby som znovu spustiť svoj program. To vyzerá lepšie. Je to ešte celkom primitívne, ale je to tiež stále buggy. Takže je tu ešte jedna - aj keď ste nikdy naprogramované, môžete pravdepodobne hádajte na to, prečo je tento program stále chybné. Čo potrebujem k tomu, že Neurobil som ešte? Takže mám vlastne robiť niečo sa menom. Rovnako ako v začiatku, možno ste skutočne priradiť premenné, ako je N alebo čeliť, ako sme to urobili v minulom týždeň - hodnota. Ale ak nechcete robiť niečo s to, nič sa nestane. Dobre, tak nech opraviť. Dovoľte mi, aby som zadajte svoj premennej tam, a nechaj ma ísť sem. Dovoľte mi, aby som znovu skompilovať, dovoľte mi, aby som znovu-run, Rob. Teraz som len idiot, že jo? Takže to nie je naozaj dostať ma ďalej. Ale to bolo úplne prirodzené inštinkt, ja tvrdím, že jo? V prípade, že premenná sa nazýva meno, a ja chcem, aby tam, prečo nie ja len zadajte ho tam? No, samozrejme, máme rozlíšiť teraz medzi tým, čo je reťazec? Všimnite si, že citácie Unquote tu, ahoj meno? To samo o sebe je vlastne reťazec. Je to pevne dané. To nie je z človeka. Je to odo mňa, pôvodný programátor, ale je to stále reťazec. Takže ak ste doslova napísať N-A-m-E vo vnútri z radu, čo sa deje na vypisované? Dobre, N-A-M-E. My namiesto toho treba povedať printf, netlačia sa doslova pomenovať. Vytlačte si hodnotu mena. A k tomu, čo robíme nasledujúce. A to je len ľudská konvencie. My zase hovoria,% s, a to je skratka pre reťazca. A potom na konci mojich blízkych úvodzoviek, Chystám sa dať čiarku a prejsť druhý argument do tohto vyhlásenia. Budem písať meno. Takže teraz máme všimnete ľahko Nová syntaxe. Máme ešte dve zátvorky a ďalej mi dovoľte povedať, že veci, v zátvorkách predstavuje argumentov do funkcie - vstupy, ktoré sú nejako deje ovplyvniť jeho správanie. Takže podľa tejto logiky, koľko argumentov printf sa zdajú byť pričom v tomto momente? Takže sa zdá, že to trvá dva, a to je naozaj predpokladané podľa čiarkou tu. Takže to je jeden argument medzi úvodzovkami. Aj keď to má čiarku v tom, všetko, čo je v úvodzovkách, čo znamená, je to jeden dlhý reťazec. Čiarka, názov premennej. Takže teraz mi dovoľte oddialiť. Dovoľte mi, aby som znovu ho spustiť. Rob. Sakra, čo som urobil zle? Dobre, takže budete musieť prekompilovať. Takže znova, jednoduché chyby, aby sa čoskoro znova a znova. Takže teraz znovu spustiť vlastné, Rob, vstúpiť, a je to tu. Teraz máme vlastný program. Takže som teraz mať program, ktorý pomocou niekoľkých charakteristík že stojí za zmienku. Po prvé, ja som s použitím CS50.h, inak známy ako CS50 knižnice. A vnútri CS50 knižnice sú funkcie, ktoré ostatní ľudia písali - menovite personál - pre vás na použitie, a získať Reťazec je jedným z nich. Vnútri riadku 2 je stdio.h, a prečo je to tam? Urobte si hádať. Čo existuje vnútri štandardné IO rodičom? Printf. Takže printf, nevidíte to kdekoľvek inde na obrazovke. Je potrebné prísť s počítač nejako. Kde sa to vzalo? Je to vo vnútri - to vyhlásil, aby som tak povedal, vnútri súbor s názvom stdio.h. Teraz, toto, vrátime sa nakoniec, pretože je to trochu rušivé teraz. Jedná sa o návrate typu. To sa týka argumentu. Ale dnes sme sa zamerala práve tu na týchto tratiach. Takže string name, len zhrnúť, Čo sa to urobiť pre mňa? Tak to vyhlásil premennú typu reťazec. Tak to má byť slová, nie pre čísla. Rovnako ako stranou, keď chcel som že sa jedná o číslo, povedal by som, že niečo ako int. Keby som chcel byť s plávajúcou desatinnou čiarkou hodnota, niečo s desatinnou čiarkou, Povedal by som, že plavák. Ale dnes som práve povedal reťazec. A Dal som túto premennú názov názov, ale nemohol som hovorili, že nič. V skutočnosti, pôvodne som to nazval S. Toto je len ďalšie vyhlásenie. Koľko argumenty je to Vyhlásenie o prijatí? Takže je to len s jednou, a to je jednoducho estetický detail niečo zobrazovanie na na obrazovke so mnou. Čo je to linka 8 robí Laicky povedané? Je to dostať hodnotu z užívateľ - totiž reťazec - a čo to robí s ním? Je to v podstate odovzdaním chlap na ľavej strane znamienko rovná sa, aby v tomto prípade Názov premennej môže skutočne uložiť. A potom printf je ďalší inštancie funkcie. A my hovoríme, aby volanie funkcie. Ak chcete použiť funkciu je volať funkciu. To, čo zrejme prijíma dva argumenty. Ten, čiarka, tento. Ten sám o sebe je len reťazec ktorý obsahuje zástupný symbol. % S znamená dať ďalší reťazec tu. A tak tým, že meno po čiarka, ktorá je vkladanie tá vec pre mňa. Takže môžem robiť iné veci stále. Nechaj ma ísť do toho hneď a urobiť trochu Program hlúpe, ale dovoľte mi, aby som toto hodnotenie odstrániť, a dovoľte mi vytvoriť slučku. Je síce pravda. Symbol pravda, samozrejme vždy bude pravda. Takže, aký druh slučky som navodzujúce písomne ​​riadok podobný tomuto? Takže nekonečná slučka, nie? Len keď pravda. Neexistuje žiadny spôsob, ako môžem zmeniť slovo pravda, že je niečo iné, takže je to len tak bežať navždy. Takže ak ste niekedy mali vlastne program v počítači Mac alebo PC, ktorý sa zdá aby zavreli, alebo to robí niečo a niečo, a práve nemôže dostať vec skončiť, ak vás reštartujte počítač alebo vytiahnuť Správcu úloh a podobne, tu je taký príklad. Môžem povedať, "Som buggy programu." Zavrieť citát, zatvorte zátvorka, bodkočiarka. Takže znova, všimnite si vzory. Aj keď niektoré z našich syntaxe je nový, kľúčové slovo, zatiaľ čo kľúčové slovo pravda, Všimnite si, že majú rovnaké druh zložených zátvoriek. Mám bodkočiarka a zátvorky. Takže teraz poďme ďalej a zostaviť to. Urobiť vlastné, zvyk. Takže v tomto bode, nemusíte sa reštartujte zariadenie, v poriadku? Tak jednoduché ponaučenie je s dva prsty, Control C, budeme ukončiť tento program. Ale môžete vidieť presne to, prečo tá vec sa opakuje znovu a znovu. Môžem urobiť niečo trochu zložitejšie, ako ukážku. Chystám sa ísť dopredu a povedať nasledovné. Pre int, čo je celé číslo, aj len všeobecný názov dávame najviac premenné v programovaní, keď ste len počítanie, sa rovná 0. Nechaj ma ísť ďalej a povedať, keď som ich, povedzme, menej než 100, aj plus plus. Budeme Späť do tejto syntaxe, ale to len znamená, zvyšovať aj znova a znova. A čo chcem robiť? Printf ", že sa môžem spoľahnúť na i." Ide o program, buggy. Čo som vlastne v úmysle tu? Percento nie s, ale nebudete hádať to. % D je desiatkové celé číslo. Čiarka i. Dovoľte mi vrátiť sa späť. Dovoľte mi teraz prekompilovať s make. Dovoľte mi, aby som znova sa zvykom. Že sa môžem spoľahnúť naozaj sakramentsky rýchlo, keď Som napísať program, ako je tento. Teraz sa poďme niečo urobiť s trochu neúmyselné. Čo ideme na to, keď som je väčší alebo rovné 0. Čo to bude indukovať? Takže logicky, to nie je tak múdry, pretože teraz keď som to znova, rozprávať, Teraz môžem počítať naozaj vysoká. Bohužiaľ, asi tak vysoko, ako to pôjde počet je 4 miliardy, tak to bude chvíľu trvať. Tak prečo by sme nechať to ako nášho Cliffhanger, sľubovať, že na Streda, uvidíme, či sa tento program je hotovo. Dva popíšeme, ako ste sami napísať vlastnú funkciu tak, aby veľmi rýchlo do stredy, budeme, ako sme Prechod od nuly do C, začnite písanie stále čoraz zložitejšie Programy, ktoré väčšinou, oveľa viac než to. Uvidíme sa potom. [APPLAUSE] Reproduktor 1: V ďalšom CS50, Puzzle Deň sa vydaril.