LUCAS FREITAS: OK, luulisin nyt olemme elää. Tervetuloa CS50 Supersection. Olemme vähemmän mukavaksi. Nimeni on Lucas Freitas. Olen yksi CS50 Head TFs. Tämä on Lauren. LAUREN CARVALHO: Hei, olen Lauren. Olen myös Head TF CS50. LUCAS FREITAS: Tänään juuri menossa antaa yleiskuva siitä, mitä kaikki te kaverit ovat oppineet viikolla yksi, toivottavasti antaa teille hyvää järkeä mitä sinun tulisi tietää ongelmien asetettu. Vain pari ilmoituksia. Ensinnäkin, virka-aikana. Virka-aikana tapahtuu maanantaista torstaihin eri talojen Annenberg joka päivä. He ovat erittäin hyvä resurssi sinulle kaverit tulla ja kysyä kysymyksiä, ja puhua TF: t, ja jopa vaihto ajatuksia muiden opiskelijoiden. Joten muista käyttää tätä resurssia eduksesi. Toinen asia on CS50 Appliance. Viimeiset [äänetön] te ei tarvitse itse on laite. Teit kaiken tietokoneeseen. Mutta tähän ongelmaan, sinulla todella on on virtuaalikoneen, joten Muista ladata CS50 Laitteen ja asettaa se. Ja kolmas asia on varmasti Käynnistä ongelma asettaa ASAP vain koska se on paljon helpompi löytää auttaa, kun olet Viikon alussa. Koska ihmiset yleensä odotettava viime hetkeen aloittaa ongelman asetettu, ja sitten menet virka, ja siellä on paljon ihmisiä. Jos jos mennä maanantaina, olet menossa nähdä, että voit puhua TFs melko paljon koko yön, ja he aikovat olla yli autamme mielellämme. LAUREN CARVALHO: Voinko vain lopettaa olet vain yhden sekunnin? On jokainen voinut ladata CS50 Appliance? Ovatko ihmiset yrittivät? LUCAS FREITAS: Voit ladata, jonka Näin voit saada ohjeita cs50.net/appliance. LAUREN CARVALHO: Oikea. Ja se vie vähän aikaa meidän sys ylläpitäjät saada sinut ajokortin avain, joten ilmoittautua ilmainen kokeiluversio ensin. Näin sinulla on se 30 päivää, ja sitten odottaa lisenssiavaimesi jonka pitäisi antaa se teille vuodessa. LUCAS FREITAS: Ensinnäkin, Puhutaanpa hieman noin CS50 Appliance. CS50 Appliance on oikeastaan ​​virtuaalinen kone, joka olet menossa ajaa oman tietokoneen, joka on pohjimmiltaan käynnissä toiseen tietokoneeseen sisällä oma tietokone. Joka on aika siistiä. Ja oikeastaan ​​sitä käytetään kaikkialla. Ihmiset, jotka tech tietäisi, että tätä käytetään koko ajan. sinä? Voi olla useita tietokoneita samassa laitteessa. Katsotaanpa itse katsomaan klo Appliance. Kun menet Appliance jälkeen rekisteröitymättä, olet menossa on laita nimesi ja kirjaudu sisään Harvard jotta voimme saada sinut kaikille rekisteröityneille. Olet menossa nähdä pohjimmiltaan vain taustakuvan ja sitten kotiin ja Trash, ja sitten nämä pienet kuvakkeet. Tämä kolmen kuvakkeet ovat oikeastaan ​​kaikkein tärkeitä asioita, joita voit olla laitteesi. Ensimmäinen on gedit, joka on tekstiä editori, kuten Muistiossa tai kuten kaikenlaista tekstieditori. Se on vain jotain, että käytämme kirjoittaa koodin ja sitten tehdä juttuja sen kanssa. Toinen asia, että me on tässä Chrome. Joten jos haluat käyttää Internetiä laitteeseen, joka on mitä voit käyttää. Ja kolmas asia on terminaali, joka on itse asiassa erittäin makea. Ihmiset yleensä ovat sellaisia ​​pelkää terminaalin koska se on tässä hyvin vanhanaikaisia ​​sovellus, jossa vain periaatteessa kirjoittaa kaiken kanssa näppäimistön. Ei ole paljon vuorovaikutusta hiirellä. Mutta todellisuudessa terminaalin tekee erittäin hyviä asioita. Ensinnäkin, haluan vain mennä läpi jotkut komennot, joita voi käyttää terminaali. LAUREN CARVALHO: Ja rohkeasti lopettaa meille jos sinulla on kysyttävää. LUCAS FREITAS: Joo. Joten ensimmäinen komento, että meillä on päätelaitteelle on ls. ls tarkoittaa periaatteessa lista kaikesta, kaikki tiedostot ja kaikki johtajat, että minulla on paikassa, että olen. Joten jos en tee ls täällä, aion nähdä että minulla on joitakin hakemistoja. Minulla on työpöytä, lataukset, lokit, ja vhosts. Nuo ovat sininen, koska ne ovat kaikki hakemistot. Sitten on joitakin muita tiedostoja. Sinulla on kuin hei ja hello.c, joka ovat vain tiedostoja, ja he ovat eri värejä. Joten tämä on erittäin tärkeä komentoa aivan näet, mitä ovat tiedostot ja hakemistoja että sinulla on hakemistosta, että olet terminaalissa. Kun näet jharvard @ laitetta ja sitten pikku symboli siellä, tilde, että vain sitä, että se on hakemiston, että olet tällä hetkellä. LAUREN CARVALHO: Joten kirjoittamalla ls on lähes kuten klikkaamalla kansiota joka on listattu tuolla, se osoittaa te kaikki sisältö, jotka ovat kyseisen kansion. Yleisö: Onko teksti sen jälkeen, kun hello.c? LAUREN CARVALHO: Ai, et voi nähdä, että, koska se on sininen. LUCAS FREITAS: Siinä sanotaan lokit ja vhosts. LAUREN CARVALHO: Nämä ovat vain muut kansiot. Olen pahoillani, se on todella vaikea nähdä. Ehkä jos me sammutti valot? Colton, haluatko yrittää löytää valokytkin? Pahoillani siitä. En ajattele sitä. LUCAS FREITAS: Mutta se on pohjimmiltaan - joo, jos voisit - LAUREN CARVALHO: Suurenna näytön. LUCAS FREITAS: En on kyseistä ominaisuutta. LAUREN CARVALHO: [kuultavissa]. OK. No, siellä on vain paljon luonnon valoa tässä huoneessa samoin. LUCAS FREITAS: Katsotaanpa vain olettaa, että on olemassa kaksi muuta hakemistoja siellä. LAUREN CARVALHO: Vain pitää kanssamme. Tämä on vain osa, että sinun Tarkastelemme terminaaliin. LUCAS FREITAS: seuraava komento on pohjimmiltaan ehkä haluat järjestää tiedostot - esimerkiksi kaikki C tiedostot yhdessä hakemisto-mutta sinulla ei ole hakemistosta vain C-tiedostoja vielä. Voit periaatteessa luoda hakemisto käyttäen terminaalin sekä, mikä on sama asia kuin hiiren oikealla painikkeella ja sanoi Uusi kansio. Komento on tehdä hakemiston, joka on mkdir, joten periaatteessa "tehdä" ja "Hakemisto." Ja sitten voit laittaa hakemiston nimi. Oletetaan, että halusin kutsua, En tiedä, sanotaanko pset1 Doing tätä, olen juuri luonut hakemistoon. Haluan vain tarkistaa, että se on siellä. Joten jos en tee ls, nyt näen lokit, ja Sitten pset1, ja sitten vhosts. Joten minulla on uusi hakemisto siellä. Ja sitten kun olet uuden hakemiston, ehkä haluat navigoida siihen, niin seuraava komento tämän cd, joka vain tarkoittaa periaatteessa mennä nimettyyn hakemistoon. Joten jos haluan mennä pset1, Voin vain tehdä cd pset1. LAUREN CARVALHO: cd sanoista muutos hakemistoon, [äänetön] pystyy Muista, että. LUCAS FREITAS: Ja nyt näet, että sijaan vain ottaa jharvard laite, olen jharvard laite, ja sitten pset1, koska se osoittaa missä olen tässä tietokoneessa. Nyt jos haluan palata hakemiston, joka oli ennen tätä, olen voi tehdä cd dot dot, mikä tarkoittaa vain mennä hakemistoon, että olin ennen, kuten vanhemman tämän hakemistoon, periaatteessa. Ja nyt näen, että olen takaisin jharvard. Seuraava asia, että voin tehdä sen on rm, joka on poistaa tiedoston. Esimerkiksi, katsotaanpa ensin tehdä ls nähdä, mitä minulla on täällä. Minulla on hei ja hello.c. Oletetaan, että haluan poistaa ne. Voin tehdä rm hei. Se tulee sanoa "poistaa tavallinen tiedosto haloo? "Ja minä sanon" kyllä. "Ja jos nyt tehdä ls, näen, että se on ei siellä enää. Jos yritän käyttää rm hakemistoon, vaikka se ei tule jotta voit tehdä mitään. Se aikoo sanoa, hei, te voi poistaa hakemiston. Joten meillä on tämä muu tulleet kutsutaan rmdir, joka vain periaatteessa sitä Poista hakemistosta. Voin esimerkiksi poistaa pset1. Ja jos en tee ls, en enää ollut sitä. Kysyttävää? Ei? Joo? Yleisö: Onko tärkeää, että jätät space jälkeen - aina alkaa kirjoittaa jotain? LUCAS FREITAS: Joo. Jos teen kuten CD ja hakemiston, Minun täytyy laittaa välilyönti. Mitä tilaa oikein puhut? LAUREN CARVALHO: väli cd-ja [äänetön]. LUCAS FREITAS: Joo, sinun täytyy laittaa tilat, koska CD on komento, ja sitten seuraava merkkijono kirjoittamasi on pohjimmiltaan hakemistossa. Joten se on kuin argumentti. Joo? Yleisö: Kun luetella kaikki ne ovat erilaisia ​​hakemistoja, eikö? LUCAS FREITAS: Joo, ne ovat hakemistosta. Yleisö: Mikä on eroja keskuudessa hakemistoja? LUCAS FREITAS: Ne ovat vain eri kansioihin. Hakemisto on kansio tietokoneellesi. Yleisö: Avaa kansio. LUCAS FREITAS: Joo, se on vain avoin kansio. LAUREN CARVALHO: Tänne, niistä jotka ovat sinisellä ovat todellisia hakemistoja, voit päästä ja sitten nähdä joukko asioita, jotka ovat kyseisessä, mikä on valitettavaa koska et voi itse lukea pienimmille sininen. Ja pienimmille valkoinen ovat vain tiedostoja jotka kuuluvat nykyiseen hakemistoon. LUCAS FREITAS: So hakemistot ovat kansioita. Toisilla ovat tiedostoja. Yleisö: Mikä komento nollata sitä tai poistaa sen? LUCAS FREITAS: Voit poistaa? LAUREN CARVALHO: Voit poistaa? LUCAS FREITAS: Luulen se on "selvä." Joo. Joten sinun tarvitsee vain kirjoittaa selvää, jos näytön on liian sotkuinen. Muuta kysyttävää? Ja opit joukko muita komennot vain luonnostaan ​​aikana lukukausi koska ne ovat hyvin hyödyllisiä. Joten nyt puhutaanpa kokoamisessa. Puhuimme pseudokoodina ja lähdekoodi ja kohde-koodi. Ja siellä on paljon koodeja, ja ehkä te olette hämmentynyt siitä. Puhutaanpa hieman siitä, mitä tapahtuu, kun kirjoitat ohjelman, ja käännät sen, ja siitä tulee suoritettavaa tiedostoa. Nämä ovat kaikki sanat, jotka te luultavasti kuullut, ja ehkä et ole aivan varma, mitä on tekeillä. Sanotaan esimerkiksi, että haluan Kirjoita ohjelma, joka sanoo "hei." Ensimmäinen asia joka tulee mieleen on Tavallaan yritä ajatella miten olet aio tehdä sitä mielessäsi, ja olet luultavasti ajattelevat Englanti tai jotain muuta kieltä, kuten luonnon kielen, luultavasti. Ja sitten luulet, hyvin, jos haluan, esimerkiksi kirjoittaa ohjelma, joka sanoo "hei" Haluaisin aloittaa ohjelman, Painan hei, ja sitten minä sulje ohjelma. Tämä on pseudokoodina. Tämä on vain pohjimmiltaan yrität keksiä tapahtumaketju että aiot tehdä, jotta osaa kirjoittaa ohjelman. Sitten on lähdekoodia, ja lähdekoodi ei tarvitse nimenomaan olla C. Puhumme noin lähdekoodin C, koska se on kieltä olemme oppimista, mutta kurssi koodi voi olla melko paljon mitään ohjelmointikieli, että sinulla on. Myöhemmin lukukauden, olet menossa oppimaan muita kieliä. Se on myös lähdekoodi. Esimerkiksi täällä, tämä on minun lähde koodi, ja sitten olen myös kirjasto, ja sitten aloitan tärkein, ja sitten tulostaa. Ja Laura aikoo puhua vähän vähän tästä kaikesta. Joten tämä on lähdekoodi. Ja mikä on esine koodi? Objekti on joukko nollia ja niitä, periaatteessa. Mitä tapahtuu, on sinun ensin on pseudokoodina, joka on kaikki Englanti. Ja tarkoitan, ymmärrät sen. Todennäköisesti ystäväsi ymmärtää sitä, ja useimmat ihmiset haluaisivat ymmärtää idea. Mutta tietokoneet ovat todella tyhmää, ja ne eivät ymmärrä Englanti, joten sinun ovat siirtääkseen jotain, yleensä käännetty joissakin ohjelmointikieli. Ja voit ajatella ohjelmoinnin kieltä ikään kuin kielen että kerrot tietokoneen miten puhua ja ymmärtää. Olet periaatteessa kirjoitat jotain kieli että molemmat sinun ja tietokone ymmärtää. Se lähdekoodia. Niin menee muodossa pseudokoodina lähde koodia, se on sinun. Se on pohjimmiltaan teet oman ohjelman. Mutta ongelma on, että tietokone ei edes ymmärtää ohjelmointikieli. Se ei ymmärrä lähdekoodia ollenkaan. Se oikeastaan ​​vain ymmärtää nollia ja ykkösiä. Joten meillä on tämä erittäin maaginen asia sanottu kääntäjä, joka pohjimmiltaan on aikoo saada lähde nimeltään, että olet kirjoitti kielellä sekä sinulle ja tietokoneen puhu, ja nyt olet menossa muuttaa, että nollia ja ykkösiä. Joten periaatteessa mitä kääntäjä tekee, on se saa lähdekoodi, tässä tapauksessa C, se tulee muuntaa se nollia ja ne, jotka tietokone ymmärtää ja osaa tehdä exe-tiedoston irti. Onko järkeä? Voit ajatelkaa kääntäjä kuin jonkinlainen kääntäjä, joka on auttaa sinua selittää tietokoneen mitä sen pitäisi tehdä. Mutta miten voin koota. Mennään takaisin Appliance, ja sanotaanko, että olen tekemässä, että ohjelma. Ensimmäinen aion luoda hakemistoon täällä, ja aion kutsua sitä "Käytäntö." Nyt aion siirtyä hakemistoon, niin cd käytännössä. Nyt olen sisällä käytännössä. Nyt haluan aloittaa gedit, niin miten teen sen? Voin joko klikkaa tästä, tai voin vain kirjaimellisesti kirjoita "gedit", ja se menee avaa minulle. Nyt aion kirjoittaa oma ohjelma, joten mitä kirjoitin liukumäki. Olen julistamisesta kirjasto. Teen int main, void. Ja nyt olen tekemässä printf, hei. Nyt aion tallentaa tämän. Sanon sen käytännössä, ja Aion kutsua tätä hello.c. Joten nyt se on tallennettu. Jos haluan kääntää sen, olen itse voi tehdä sen kahdessa eri paikassa. Voin joko tehdä sen pääteikkunaa joten tämä iso, tai voit käyttää gedit joka todella on pääteikkunaa täällä. Joten voit kätevästi vain tehdä koodi, ja sitten voit vain kirjoittaa mitä täällä, ja yrittää kääntää sen. Joten miten voin kääntää koodin? Helpoin tapa, että meillä on käyttää tehdä, mikä on toiminto, joka on periaatteessa menossa kääntää koodia. Täytyy vain sanoa tehdä hello, joten "Tee" ja ohjelman nimi. Oho. Tämä on hankala. LAUREN CARVALHO: Voitko [kuultavissa]? LUCAS FREITAS: Anteeksi. En tallenna se oikeassa hakemistossa. Tule harjoitella, ja nyt tallenna se hello.c. Olen pahoillani. Nyt se on tallennettu. Haluan vain tehdä ls ja olla varma, että se on täällä. OK, nyt se on täällä. Joten nyt jos en tee hei, se sylkee paljon tavaraa, mutta sitten se vain antaa minulle toinen linja terminaali, joka tarkoittaa sitä, että se oli onnistunut. Joten nyt jos teen ls uudestaan, olen itse tätä tiedostoa vihreä, joka on exe-tiedoston. Ja sitten jos haluan käyttää sitä, kaikki, Minun täytyy tehdä, on piste slash hei. Se tulee tervehtimään täällä, joten se on juuri mitä olen pyytänyt sitä. On vielä yksi tapa kerätä, joka käyttää kalahtaa. Kalahtaa on vain kääntäjä, joka meillä on, ja se on hieman yksityiskohtaisempi ja kääntää sen. Mutta se toimii yhtä hyvin. Joten jos en tee kalahtaa, ja sitten-o, ja sitten nimi, että haluan antaa exe-tiedoston, joten sanokaamme "Hei." Ja sitten tiedostoa, jonka haluan koota, hello.c. Se myös aikoo koota. Ja sinulla on tiedosto täällä, ja Voin vain suorittaa sen hyvin. Joten molemmat toimivat. Onko järkeä? Kaikki kysymykset? Yleisö: Voitko zoomata vuonna hieman? LUCAS FREITAS: Anteeksi? Yleisö: Zoom in? LAUREN CARVALHO: Mielestäni sinun voi vain käskeä plus. LUCAS FREITAS: Command mitä? LAUREN CARVALHO: Command plus. LUCAS FREITAS: Ei. LAUREN CARVALHO: Voi, se ei ole menossa töihin, koska - se johtuu asetamme päätöslauselman tämän asian. LUCAS FREITAS: En että voimme zoomata sisään Joo, emme voi zoomata. Onko sinulla muita kysymyksiä? Anteeksi. Yleisö: Voitko toistaa kalahtaa? LUCAS FREITAS: kalahtaa? Kalahtaa on sama asia kuin tehdä, mutta Erona on, että ensimmäinen aion kirjoittaa sointi, joka on komento, Sitten aion tehdä -0, kaikki, mikä on juuri sitä mitä aiomme oppia myöhemmin lippu. Joten vain ajatella, että olet aina täytyy laittaa-o. Ja sitten ensimmäinen, olet menossa laittaa nimi exe-tiedoston, pohjimmiltaan tiedosto, jonka olet aikoo luoda. Voin siis sanoa, esimerkiksi hello2 ja sitten tiedostoa, jonka haluan koota, mikä on. C-tiedosto. Niin, että hello.c. Onko järkeä? Yleisö: Hei, mitä? Mikä se on? LUCAS FREITAS: hello.c. Ja jos minä kääntää sen, ja jos En ls, minulla on myös hello2 että olen juuri koonnut. Ja jos yritän käyttää sitä, se tulee tehdä täsmälleen sama asia kuin hello, vain tulostaa hei. Yleisö: Kuinka tullut make voit laittaa hello.c jälkeen? LUCAS FREITAS: Make, voit ei tarvitse laittaa. c. Make, sanoit Ohjelman nimi. Sinun ei tarvitse sanoa. C. Mutta kalahtaa, sinun pitäisi. Yleisö: Kun kalahtaa sinä myös täytyy lisätä [kuultavissa] LAUREN CARVALHO: Joo. Joten sinun on myös kirjasto. LUCAS FREITAS: Joo, se on jotain aiomme käyttää myöhemmin. Sitä kutsutaan yhdistää, ja mielestäni olemme aio puhua siitä myöhemmin. Toinen kysymys? Yleisö: Laitatko dot slash kalahtaa? LUCAS FREITAS: Ei. Dot slash on vain avata exe-tiedoston. Joten kalahtaa, voit vain kirjoittaa "kalahtaa" ja Sitten jos haluat avata exe-tiedoston, että juuri koonnut, niin et dot kauttaviiva ja nimi. Onko järkeä? Yleisö: Jos sinun pitäisi vain muuttaa [Äänetön] ja hello world, oletteko täytyy kääntää se? LUCAS FREITAS: Joo. jos haluan sanoa esimerkiksi, "hei siellä ", voin vain tallentaa sen nyt, ja minä vain kääntää sen uudelleen. Joten anna minun tehdä make hei. Ja jos en hei, se tulee sanoa "hello there." Järkevää? Muuta kysyttävää? Yleisö: Onko sinulla sisällyttää vakio I / O työn yhteensovittamiseksi? LUCAS FREITAS: Joo. Vakio I / O on pohjimmiltaan kirjasto, joka on täytäntöönpanoa varten printf. Jotta asia aivan top sisältää vakiotulosteesi. Joka on myös kirjasto, joka on periaatteessa joukko eri työkaluja, joita voit käyttää. yksi? Niistä on Printf, että on tehtävä että pohjimmiltaan tulosteita viestejä näytön. Muuta kysyttävää? Ei? OK. Joten nyt puhutaan - LAUREN CARVALHO: Toivotaan vain Siirry stilisointioppaan. Haluatko vain löytää se täällä? LUCAS FREITAS: Menemme siis puhua tyyliin. LAUREN CARVALHO: Oh, David ei valmistunut. OK. Miksi emme tule takaisin tyyli aivan lopussa? Se on oikeastaan ​​ole päivitetty tälläkin hetkellä. LUCAS FREITAS: Joo. Jäädän David lopettaa sen. LAUREN CARVALHO: Can siirrymme todella? Joten toivon, että kaikki on ollut nauttia Scratch. Valitettavasti se on aika siirtyä pois tästä - valitettavasti se on aika siirtyä pois Näistä melko Lohkojen ohjelmointi kiinni C. Mutta onneksi kaikki ohjelmointi rakentaa että olet työskennellyt Scratch ovat suoraan käännettävissä C, ja olemme aikoo aloittaa oppia jotkut heistä juuri nyt. Katsotaanpa ensin puhua olosuhteissa Boolen ilmaisuja. Tämä on käynnissä varauksesta akkua. LUCAS FREITAS: Miten että ei toimi? OK. Menet sinne, aion saada - LAUREN CARVALHO: Joten olosuhteet ovat tärkeitä, koska ne antavat meille mahdollisuuden käyttöön logiikkaa meidän ohjelmia. Tässä on esimerkki kunnossa sisällä C-ohjelma. Katsotaanpa huomata, kuinka tämä - Joten tämä ehto lohko täällä, tämä printf julkilausumassa ei suorita jollei kunnossa muutamassa sulkeissa n suurempi kuin 0, on tosi. Nyt kaikki oloihin f lausunnot ovat Boolen operaattoreilla, mikä tarkoittaa, että On vain kaksi vaihtoehtoa. Ne voisivat joko on tosi, tai ne voivat epätosi. Joten tässä, joten tämä on järkevää, eikö? n suurempi kuin 0, eli se on positiivinen lukumäärä, mikä tarkoittaa, että se tulostaa out "nostit positiivinen luku." Siellä on paljon Boolen , joka voi muodostaa kunnossa init julkilausuman. Meillä on alle. Tämä on vähemmän kuin tai yhtä suuri kuin. Tämä on vain hauska [kuultavissa]. Jos haluat printf esiintyä, jos se on on suurempi tai yhtä suuri kuin 0, niin te valitsisitte tämän. Joten yhtäläinen vain liittää oikea jälkeen suurempi kuin-merkki. Equal yhtä, joka on erilainen kuin vain yksi yhtäläisyysmerkki, equal equal todella tarkoittaa, että mitä on päällä Vasemmalla puolella tämä on sama kuin mitä on oikealla puolella tämän jossa yksi yhtäläisyysmerkki on mitä? Mikä on vain yksi yhtäläisyysmerkki? Tehtävä. LUCAS FREITAS: Kuka sanoi? Onko tuo karkkia? Voi ei. Anteeksi. Anteeksi. Te molemmat saavat karkkia. Oh, OK! Kolme ihmiset saavat karkkia! LAUREN CARVALHO: Eli tämä yksi täällä on huutomerkkioperaattori edellisen yhtäläisyysmerkki, niin se on ei vastaa. Joten jos tämä on sisällä kunnossa, elin ehto olisi suorittaa vain, jos mitä n vasemmalla ei ole sama kuin mitä on oikea. Voin myös olla vain huutomerkki. Oikeastaan ​​me nähdä ominaisuus dia, miten tämä voitaisiin käyttää. LUCAS FREITAS: Kaikki kysymykset? Ei? LAUREN CARVALHO: Voimme yhdistää nämä Boolen rakentaa lisää monimutkainen ehtolauseiden. Joten tässä, jos mitä on vasemmalla laidassa kaksoisviivana tai mitä on oikealla puolella kaksoisviivana on tosi, sitten me tulostaa kelpaa. Ja sitten tänne, jos mitä on vasemmalla puolella kaksi et-ja mitä on oikealla puolella kaksi et- on tosi, niin me tulostaa voimassa. Kaksoisviivana kutsutaan looginen OR-operaattori kaksinkertainen &-merkit nimeltään looginen AND-operaattorilla. Kyllä? Yleisö: Ovatko nuo juuri pienet kirjaimet l's? LAUREN CARVALHO: Ei. He todella - tiedät takaisku, kuten yläpuolella Return-näppäintä? Näetkö tuon? LUCAS FREITAS: Se on oikeastaan ​​baari. LAUREN CARVALHO: Se on oikeastaan vain kaksi baaria. Yleisö: Voitko käyttää equal equal jousille? LUCAS FREITAS: Ei. Aiomme oppia myöhemmin jotain. LAUREN CARVALHO: Ei toimintoa joita voit käyttää. Mutta sinun ei tarvitse pelkäävät, että aivan vielä. Mitä jos annan tämän ohjelman numero 5? Mitä tulostaa? Yleisö: [kuultavissa] voimassa. LAUREN CARVALHO: Voimassa? Joo. En tiedä, kuka sai tuon. [Naurua] LAUREN CARVALHO: Sellainen pelottavia [kuultavissa]. Yleisö: Niin kaksinkertainen ja että vain sitä ja? LAUREN CARVALHO: Joo. Joten numero 5 on sekä suurempi kuin 0 ja pienempi kuin 100. Yleisö: Miksi se olisi yksi? LAUREN CARVALHO: Yksi ampersand on todella jotain erilaista, ja se on bittioperaattori, joka sinun oppia myöhemmin. Mutta se on jotain, joka todella toimii jossa bittien määrän. LUCAS FREITAS: Ajatelkaapa ne eivät tarvitse murehtia sitä nyt. LAUREN CARVALHO: Minusta se on luultavasti tulossa ensi viikolla. LUCAS FREITAS: Muita kysymyksiä? Ei? LAUREN CARVALHO: Joten olemme nähneet, että se estää voi seistä yksin, mutta se voi myös pariksi ja muu lohko. Joten tässä tapauksessa, jos n on suurempi kuin 0, aiomme tulostaa "You poimittu positiivinen luku. "muuten, mikä tarkoittaa jos se on 0 tai jos se on vähemmän kuin 0, aiomme tulostaa, "Valitsit negatiivinen luku." Mielenkiintoista on, että nämä ovat toisensa poissulkevia. Ei ole koskaan olemaan tapaus , jossa tämä ja tämä voi sekä tulostaa. Olen varma, että olet työskennellyt kanssa, jos / muu laatikko Scratch, joten tämän ei pitäisi olla tuttuja. Kyllä? Yleisö: Tarvitaanko väliin int n = GetInt sitten tilaa jos ilmoitus? Kuin käytämme linjan [kuultavissa] LAUREN CARVALHO: Voi, tilaa täällä? Yleisö: niin, mutta tuplaat tilaa. Ei, mene ylös. Nousevat. LUCAS FREITAS: Vain linja? Yleisö: Joo. LUCAS FREITAS: Vain tyhjä rivi? Yleisö: Joo. LAUREN CARVALHO: Tyhjä rivi? Ei. Se on vain tyylillinen juttu. LUCAS FREITAS: Se on aivan kuin joskus voit hypätä joitakin yhteyksiä niin että koodi ei näytä valtava lohkon tekstiä. LAUREN CARVALHO: Mielestäni se, mitä tapahtui oli se, että meillä oli kommentti, mutta en veti sen ulos, niin että te olisi ajatella koodi melko kuin vain lukea minun kommentti. Yleensä välit eivät oikeastaan vaikuttaa siihen, miten ohjelma toimii. Se on enemmän tyylillinen asia. Ja kun meillä on stilisointioppaan päivitetty ja valmis menemään loppuun mennessä supersection, niin jutellaan siitä enemmän. Siinä on jotain vikaa tämä ohjelma, eikö? Koska 0 ei oikeastaan negatiivinen luku. Katsotaanpa, jos voimme korjata sen. Voit varmaan kuvitella jossa tämä kertoo, eikö? Jos n on suurempi kuin 0, me painamme "Sinä poimittu positiivinen luku. "Sitten muuta jos n on pienempi kuin 0, "Otit negatiivinen luku. "muualla" Otit 0. " Nyt mielenkiintoinen asia on se, että tämä voisi jatkua loputtomiin. Sinulla voi olla, jos lohko, if lohko, toinen muu, jos lohko, if, if, if, muuta, periaatteessa niin kauan kuin haluat. Ja kun on rakennettu näin, nämä ovat kaikki olemaan toisensa poissulkevia. Kyllä? Yleisö: Miksi et voi vain käyttää toinen jos sen sijaan [äänetön]? LAUREN CARVALHO: Tässä tapauksessa kyllä voisi käyttää toista, jos, ja se olisi täysin kunnossa, koska olosuhteet ovat itse toisensa poissulkevia. Mutta jos edellytykset eivät yksinoikeudella toisiaan, tämä johtaisi pakottaa ne koskaan molempia arvioida, jos se on järkevää. Yleisö: Siinä tapauksessa, voisimmeko pesä Toinen jos ensimmäisessä jos? LAUREN CARVALHO: Jos - mitä tarkoitat? Yleisö: Jos kaksi ehtoa eivät ole toisiaan poissulkevia? LAUREN CARVALHO: Jos ehdot eivät ole toisiaan poissulkevia? Mutta haluat vain yksi heistä ajaa? Yleisö: Haluat vain jos sen sijaan muu. LAUREN CARVALHO: Joo. Aina tulee olemaan paljon tapoja, joilla voit tehdä tämän. Voit varmasti pesä niitä. Ja näet tulevaan dian sinulla voi olla useita jossittelua, vain yksi toisensa jälkeen. Mutta tämä on tapa loogisesti järjestämällä virtaus oman ohjelman. LUCAS FREITAS: Ja vielä yksi asia on, että kysyit laskemisesta jos ja sitten toinen, jos. Joka toimisi täydellisesti, mutta se on huono suunnittelu, koska pohjimmiltaan jos tarkista ensin, jos, ja huomaat, että luku on suurempi kuin 0, voit voi vain lopettaa ohjelman. Sinun ei tarvitse tarkistaa, jos se on alle 0, eikö? Mutta jos et, jos, jos se aikoo tarkistaa molemmat, mutta jos teen jos muu on, se tulee tarkistaa, jos se on suurempi kuin 0. Jos se on, se ei tule edes katsoa toisessa riviä koodia. Joten olet periaatteessa tarkistaa sen kaltaiset kahdesti tarpeettomasti, joten siksi me tehdä, jos if. Muuta kysyttävää? Yleisö: Niin toiminnallisuutta ja muuta, jos on sama kuin jos se oli vain jos? LAUREN CARVALHO: Ei. Olet todella menossa nähdä minun seuraava työnnä esimerkki, jossa se voi olla erilainen. Tässä tapauksessa se on lähes sama. Joten tässä meillä on esimerkki useiden jos lausunnot, ja toiminnallisuus ei ole sama kuin olisin juuri sanonut, jos muu, jos muu, jos muu. Toivotaan vain miettiä mitä tulostaa , jos astun numero 95 tähän ohjelmaan. Yleisö: [kuultavissa] LAUREN CARVALHO: Ja sitten? Yleisö: [kuultavissa] LAUREN CARVALHO: Joo. Joten tässä tapauksessa, nämä ehdot ovat ole toisiaan poissulkevia toisistaan. Ja koska ei ole mitään pysäyttäminen tämän edellytyksen arvioidaan tämän yksi on jo, ne ovat vain kaikki menee tulostaa. Joten miten voisin korjata tämän? Yleisö: muu jossittelua? LAUREN CARVALHO: Voit käyttää muuta jossittelua. Voisin muuttaa järjestystä näistä, eikö? Jos tein tämä ensin? No, itse asiassa, ei. Se ei toimi 95. LUCAS FREITAS: Ei, juuri muuta jossittelua. LAUREN CARVALHO: muu jossittelua olisi kiinteä tätä. Tarkoittaako tämä selvittää sekavuus välillä jossittelua ja muuta jossittelua? Yleisö: Halusin vain kysyä, jos et käytä if, se lopettaa? LAUREN CARVALHO: Oikea. Joten vain tämä ensimmäinen. Jos olen antanut numeron 95, vain tämä olisi tulostaa, ja se ei koskaan olisi edennyt muuta. LUCAS FREITAS: Just sellainen ajatella se ikään kuin näin tapahtuu, toimi seuraavasti. Muuten on kuin jos ei, tarkista tätä, ja sitten tehdä sitä. Niin kuin he kaikki toisiaan yksinoikeudella. Et voi saada kahteen näinä. Yleisö: Voitko käyttää loogista JA tästä tilanteesta? LAUREN CARVALHO: Joo. Se on toinen tapa, että voisimme korjannut tämän ongelman. Olemme voineet määritelty vaihtelee, eikö? Joten en voinut sanoa, jos n on suurempi kuin 90 ja alle - No, kai tämä ei oikeastaan väliä, mutta täällä olen voinut sanoa, jos n on suurempi kuin 80 ja pienempi kuin 90. Yli 70, alle 80. Se olisi myös toiminut. [Naurua] LUCAS FREITAS: Hän on peloissaan. LAUREN CARVALHO: Älä pelkää. LUCAS FREITAS: Se ei ole että se on väärin. Se on vain, että se on tarpeettoman monisanainen. Kuten tietotekniikassa, pitäisi olla mahdollisimman yksinkertainen niin kauan kuin sinulla on toiminnallisuus. Haluatko karkkia? Yleisö: Ei tarvitse sitä. LAUREN CARVALHO: Pelotat kaikille, Lucas. LUCAS FREITAS: Anteeksi. LAUREN CARVALHO: David mainitsi myös Näiden kytkin selvitys luokassa. Periaatteessa mitä tapahtuu on kytkin lausuma vie muuttuja. Tässä tapauksessa otamme kokonaisluku. Jos kokonaisluku on 1, aiomme tulostaa, "Otit pieni numero. "Jos kokonaisluku on 1," You poimittu Keskikokoinen. "Jos kokonaisluku on 3, "Otit korkea numero. "Ja olen myös ollut oletusmarginaali täällä, mutta se ei näy up, joka on liian huono. Pohjimmiltaan tämä on vain muuta syntaksia. Olisimme voineet toteuttaa juuri tämän Sama juttu jos ja else if lausuntoja. Mutta kun on olemassa paljon erilaisia ehtoja ja paljon erilaisia muunnelmia, mitä haluat tehdä ohjelmalähdekohtaisesti tämä on vaihtoehto. Joten se on vain hyvä syntaksin tietää. Kyllä? Yleisö: Miksi on olemassa ole kenoviiva n vuonna ensimmäisen? LAUREN CARVALHO: For siellä? Ei ole kenoviiva n sinne koska GetInt - jos yrität tätä, se antaa tämän ajallaan. Anna minulle kokonaisluku välillä 1 ja 3. Ja jos laitan takaisku n, se olisi Vie minut seuraavalle riville, mutta en vain halusi heidän kirjoittaa kokonaisluku heti paksusuolessa. Olisit voinut laittaa takaisku n. Se ei ole iso juttu. Joo? Yleisö: Tätä koodia, on tämä Jos yksi on se, että koska se on ensimmäinen tapaus? Koska - LAUREN CARVALHO: Ei, ei, ei. Joten tämä on antaa minulle kokonaisluku välillä 1 ja 3. Jos n on 1, voin tulostaa tästä. Jos olisin pyytänyt kirjeitä, olisin voinut sanoi anna minulle kirjeen välillä ja C. Sitten tämä olisi tapaus A. Yleisö: [kuultavissa]. Tapauksessa olisi vain [kuultavissa] LAUREN CARVALHO: Niin varmaan. Joo? Yleisö: Mitä jos halusi olla enemmän suhteellinen yhtälö? Joten sen sijaan sanomalla n on 1, [äänetön] n on suurempi kuin 1 ensimmäisessä tapauksessa? LAUREN CARVALHO: Oikeastaan, jos en määrittää joitakin näistä tapauksista, tämä johtaisi saa kuljettaa alas. Joten oikeastaan, ehkä tämä ei ole mitä pyydät. LUCAS FREITAS: Luulen että hän kysyy Tapaus oli n suurempi kuin 0, kotelo alle 0. LAUREN CARVALHO: Ehkä kytkin lausuma ei ole oikeastaan ​​mitä haluat käyttää kyseisessä tapauksessa. LUCAS FREITAS: kytkin selvitys on vain arvon, joten olet tarkkailun ja arvo on näin tai että. Joten et voi oikeastaan laittaa olosuhteissa. Yleisö: Mitä jos henkilö tyyppejä [kuultavissa]? LAUREN CARVALHO: Se olisi ollut my default tapauksessa, joka valitettavasti et voi nähdä. LUCAS FREITAS: [kuultavissa] puhua heille. LAUREN CARVALHO: Oikeastaan, Tiedätkö mitä? Mennään vain opiskelemaan 50 ja minä vain zoomata liukuu tutkimus 50, koska tämä on vain ärsyttävää. Joten anna minun itse mennä kunnossa. Tämä on juuri menossa kestää vähän aikaa. Selvä. Joten, olen pahoillani. Ainakin nyt pystymme näkemään kaiken ilman sitä katkaisemalla. Selvä. Joten jos ne laittaa 10, olisimme default täällä minun oletus tapauksessa ja minä olisi vain tulostaa pätemätön, koska olen pyysi heitä syöttämään kokonaisluvun välillä 1 ja 3. Muuta kysyttävää? Joo? Yleisö: Sanotaan tapauksessa yksi asia kolme, sanot halusin sen olevan kaikille sama asia, joten otit numero se ei ole keskipitkällä numero. Tällöin se olisi tarpeeton? Voisitko muuttaa tekstiä sekä heistä, tai voisi olla jokin irtisanomisia? Onko mitään keinoa yhdistää [Äänetön]? LAUREN CARVALHO: On olemassa tapoja yhdistää ne, mutta uskon voit vain yhdistää vierekkäiset. Joten jos en määritellä mitään case kaksi, tämä olisi sovelletaan molemmissa tapauksissa. Voi, jos en laita mitään tapauksen yksi, tämä koskisi sekä Tällöin yksi ja kaksi. Jos se on järkevää. Yleisö: Voitko toistaa, että yksi? LUCAS FREITAS: OK. Jos et periaatteessa, kuten sinulla on sama asia, mutta et laita mitään täällä, olisit joko jos yksi tai tapauksessa kaksi, tehdä tämän. Oikea? Ja tämä tauko tarkoittaa, jos saat tämän tapauksen, jätä. Niin, että mitä jarruelinten. Joten jos tein tämän, näytät, se on Jos yksi, ja sinulla olisi vain tehdä tämän. Jos se oli tapauksessa kaksi, se olisi myös vain tulla tänne ja tehdä sitä. Yleisö: Mutta voit tehdä sen? Jos siinä on jotain Jos kahdella [kuultavissa] LAUREN CARVALHO: En usko voit tehdä sen. En usko, että voit ohittaa noin. Voitko tehdä sen, Rob? En usko. Yleisö: Eli vain yksi numero voi mennä, kun asia, eikö? Ei voi olla kyse yksi, pilkku, kaksi? LUCAS FREITAS: Ei, et voi. Et varmasti voi. LAUREN CARVALHO: Tarkoitan, kohta on Tämä on vaihtoehto, ja tämä ei välttämättä ole sopivaksi use case, niin sitten käyttäisi, jos olosuhteet. Yleisö: Joten miksi teet tämän? Kytkin? LAUREN CARVALHO: Haluaisin käyttää tätä jos sinulla on hyvin määritelty - todella, Lucas, on estät. LUCAS FREITAS: Anteeksi. LAUREN CARVALHO: Jos sinulla on hyvin määritelty käyttäytymistä, jonka haluat jokaisen panos, tämä voi olla hieman tiiviimpi kuin kirjoittamisen jos ilmoitus kullekin. Yleisö: Mitä break tarkoittaa uudelleen? LAUREN CARVALHO: tauko merkitsee lopettaa. Muista, jos en ole tätä taukoa täällä, olisimme juuri kaatunut osaksi seuraava tapaus. LUCAS FREITAS: Tauko merkitsee saada pois kytkin selvitys. Koska jos se on 1, haluan tulostaa tämän ja lähteä. En halua tarkistaa mitään muuta. Yleisö: Et halua tulostaa mitään muuta. LUCAS FREITAS: Joo. Koska se on toisensa poissulkevia. Yleisö: Ja tämä vain jatkaa seuraavaan, jos ensimmäinen tapaus ei ole totta? Vai onko se testata kaikki tapaukset samaan aikaan? LUCAS FREITAS: Ei, se tarkastuksia peräkkäin. Peräkkäin, joo. Vielä yksi kysymys, meidän täytyy eteenpäin, jotta voimme kattaa kaiken. Joo? Yleisö: Joten tapauksessa voisi olla tehnyt jotain lisäksi vain yksi? Voisitteko antaa se alue? LUCAS FREITAS: Ei. LAUREN CARVALHO: En usko voit antaa sen alue. LUCAS FREITAS: Et voi sinua voi antaa sitä välillä. Yleisö: tapaus on erityinen [Äänetön]. LUCAS FREITAS: Switch on tavallaan arvoja. Teet eri asioita riippuen on arvo, tietty arvo. Et voi tehdä erilaisia, et voi tehdä mitään muuta. Se on vain yksi työkalu nähdä. LAUREN CARVALHO: Useimmat ihmiset eivät käytä kytkin lausuntoja kovasti CS50, mutta se on olemassa. Selvä. Joten seuraava asia aiomme puhua siitä on kolmen komponentin operaattori. Tämä on vain yksi tyyppi Ehdollisen. Periaatteessa mitä tapahtuu tässä minä olen pyytää kokonaisluku, ja jos n on yli 100, aion tulostaa "Korkea". Jos se ei ole, aion tulostaa "alhainen." Joten mitä se tekee on ehto täällä suluissa, ja sinä voi sellaista ajatella kysymyksen koska olen kysyy tämä totta vai ei. Jos se on totta, aion tehdä sen ensin asia, ja jos se ei ole totta, olen aikoo tehdä tämän Toinen asia. Kysyttävää ternäärinen operaattori? LUCAS FREITAS: Haluan vain muistio David on, että jos sinulla on kunto - LAUREN CARVALHO: Luulen Davidin katsomassa kautta live stream. LUCAS FREITAS: Hän tekee elämä stream juuri nyt. Joten jos sinulla on sairaus, olet tarkoitus panna aaltosulkeita, aivan kuten meillä on kytkin lausuma täällä. Meillä on aaltosulkeita täällä. Jostain olosuhteissa olet pitäisi myös laittaa, että. LAUREN CARVALHO: Näet tämä stilisointioppaan. Meillä ei oikeastaan stilisointioppaan juuri nyt. Luulen Davidin vielä töissä. LUCAS FREITAS: Hän sanoi, että se vain toimii nyt. LAUREN CARVALHO: Voi, onko se toimi nyt? OK. Joten ilmeisesti tänä vuonna tyyliin ohjata, vaikka sinulla on vain yksi rivi, sinun täytyy laittaa ne aaltosulkeita sisään Sinun ei välttämättä tarvitse varten ohjelman toimivuudesta. Ja ehkä meidän pitäisi vain ottaa taukoa jälkeen olosuhteet ja mennä suoraan tyyli opas tyhjentää joitakin näistä asioista? LUCAS FREITAS: Joo. Onko sinulla kysymys? Yleisö: Ei, minä vain odottaa asti stilisointioppaan. Yleisö: Voisitko mennä takaisin on kolmen komponentin operaattori? LAUREN CARVALHO: Ternary, kyllä. LUCAS FREITAS: Ternary operaattori on pohjimmiltaan jos muu selvitys, mutta sen sijaan, että on kaksi riviä tarkistaa, jos ja sitten muu, sinulla on vain yksi rivi. Joten periaatteessa, jos haluan antaa merkkijono arvo korkea tai matala, ja minä haluavat tehdä korkea, jos n on suurempi kuin 100 tai matala, jos se on vähemmän, mitä voin tehdä tämä [äänetön] merkkijono tulee olemaan, ja sitten minä pyytää ohjelma on n suurempi kuin 100? Joten siksi minulla on tämä ilmaus suluissa ja sitten kysymysmerkki. Pyydän vain sen suurempi kuin 100? Jos se on, se tulee olemaan suuri. Jos se ei ole, se tulee olemaan alhainen. Joten periaatteessa mitä mieltä on kysyt kysymys, niin laitat suluissa kunnossa. Sitten laitat kysymysmerkki koska kysyt sitä. Ja jos tämä on totta, se tulee olemaan Ensimmäisessä arvo [kuultavissa] täällä. Jos se ei ole, aion laittaa arvo, joka on sen jälkeen paksusuolen. Onko mitään järkeä? Se on myös jotain, joka on kuin työkalu C, mutta sinun ei tarvitse käyttävät nimenomaan sitä. Mutta CS ihmiset yleensä haluavat, että koska se vain säästää linjat. LAUREN CARVALHO: Se on erittäin tyylikäs. Se tekee paljon vain yksi lausunto. Yleisö: Niin prosenttimerkkiä on vain mitä tuloksia edellisen rivin? LAUREN CARVALHO: Voi, olen pahoillani. Tämä prosenttimerkki on oikeastaan paikanvaraaja tämä s. Vuonna printf selvitys, sinulla tämän string täällä, mikä on mitä tulee tulostaa, mutta et voi vain laita tämä on tuolla. Muuten se tulostaa ulos s kirjaimellisesti. Joten laitoimme prosenttia täällä pitämässä tämä paikka hallussa jostain tulee pilkun jälkeen. Joten merkkijono, sinulla prosenttia s. Saat kokonaisluku, prosenttia i. Saat kellua, prosenttia f. Näet niitä kuin me Lisää esimerkkejä. Mutta ehkä sinun pitäisi puhua tyyli opas vähän aikaa, nyt että se on jopa. LUCAS FREITAS: Jos menet cs50.net/style, olet menossa katsomaan stilisointioppaan. Ongelma-sarjaa, sinun pisteet ongelma sarja koostuu sekä soveltamisalaa, mikä tarkoittaa periaatteessa sitä, jos teki kaiken osat ongelma asettaa tai jos yrittänyt jotain. Toinen asia on tarkkuutta, joka keino on ohjelma tekee mitä se oli tarkoitus tehdä, tai tekee sen on vikoja tai se ei tee sitä, mitä sen pitäisi tehdä. Kolmas asia on suunnittelu, joka tarkoittaa sinä täytäntöönpanossa hyvin, tai ovat Käytätkö tarpeettomia lausuntoja? Niinpä esimerkiksi, jos haluat toistaa numeroon 10 kertaa, kirjoitat silmukka tai olet juuri tekemässä 10 kertaa samanlaisen lausunnon, juuri tekemässä kopioi ja liitä. Joten suunnittelu on siitä. Ja lopuksi, sinulla on tyyliä. Tyyli on aivan päätellen Jos koodi näyttää luettava ja sellainen kaunis. Se vain tarkoittaa käytännössä sitä, on koodi luettavissa? Olisiko joku muu, joka oli etsimässä ovat koodi voi ymmärtää, mitä se tekee? Onko sillä kommentit ja vastaavat? Puhutaanpa tyyli sinun pitäisi käyttää. Ensimmäinen asia on kommentteja. Kommentit ovat erittäin tärkeitä oman koodia, koska joskus teet ohjelma, ja tiedät tarkalleen mitä haluat tehdä niin juuri alkaa koodaus, kirjoita ylös joukko C. Mutta jos joku muu etsii sinä olet koodia, he eivät aio pystyä ymmärtää sitä, koska he eivät tiedä asioita, jotka ovat omassa päässäsi, kuten pesudocode, joten ehkä he on vaikea ymmärtää mitä koodi tekee. Joten kommentit ovat todella hyödyllistä selventää jollekin, joka etsii koodi mitä se tekee, ja itse asiassa jopa sinulle, ne ovat erittäin hyödyllisiä. Kuten mennä kovempaa ja kovaa Psets, aiot nähdä, että koodin saa pidempään, ja sitten kommentit ovat todella tärkeää, jotta muistat mitä kukin osa ohjelma tekee. Voit laittaa kommentin, voit vain tehdä Slash Slash ja sitten kirjoittaa kommentin. Ja koko rivi on osa kommentti, ja mitä kirjoittaa, se ei tule olemaan käytetty koodi. Se on pohjimmiltaan kuin kääntäjä aikoo jättää tämän. Onko järkeä? Yleisö: Mitä teet uudelleen Voit kirjoittaa kommentin? LUCAS FREITAS: Tämä? Slash Slash? Aina kun kirjoitat Slash Slash riippumatta on, että linja ei tule katsotaan olevan C. Niin? Yleisö: Joten kun kommentin, sinun Syötä ja aloita uusi rivi? LUCAS FREITAS: Joo, aivan. LAUREN CARVALHO: Slash Slash on yhden rivin kommentteja. LUCAS FREITAS: Esimerkiksi tässä meillä on - haluaisin suurentaa - Esimerkiksi täällä olen julistamisesta kellua, mutta ehkä jos vain laittaa tämän koodissa, kuten sinulla ei ole aavistustakaan mitä tämä tekee, kuten itse joku, joka katselee tätä koodia tulee olemaan, kuten, mitä hittoa? Jos laitat kommentin sanomalla "muuntaa Fahrenheit Celsius, se tekee paljon enemmän järkeä. Olet, kuten, OK, olet teet muunnoksen. Onko järkeä? Joten se on vain jotain, joka auttaa ihmisiä valmis koodi ja myös Pystytkö järjestää koodia paremmin. Toinen asia on, että voit tehdä multi-kommentteja, niin on yksi kommentoida joukko viivoja. Sen sijaan, että laittaa Slash Slash, Ensimmäinen kommentteja, Slash Slash, toisen linjan, ja niin edelleen, voit voi käyttää slash tähti. Tapa, että voit tehdä se on, että ensimmäisen rivin kommentti, olet aikoo tehdä slash tähti tähti, niin vain. Aivan kuten täällä on alussa ohjelmaa, voit yleensä laittaa kuka olet ovat, mitä tämä ohjelma tekee, ja muuta vastaavaa. Se on tavallaan kuin header ohjelman. Jälleen, se ei ole jotain, että kääntäjä on menossa välitä, mutta on tärkeää tietää, mitä tämä ohjelma tekee tai muille ihmisille tietää, mitä ohjelma tekee. Joten et slash tähti tähti, ja sitten viimeinen rivi aiot tehdä tähti leikata pystyä sulkemaan tuon kommentin. Joten periaatteessa kaikki muut linjat, voit vain kirjoittaa mitä tahansa, ja tämä kaikki tulee jättää huomiotta. Ja myös, aivan kuten tyyli, näet, että kullekin viivalle on tähti, ja kaikki tähdet ovat linjassa. Nämä ovat tärkeitä asioita niin että koodi näyttää aika. Kuulostaako hyvältä? Nyt olosuhteet. Mitä David sanoi, että meidän pitäisi todella laittaa näissä dioja, että kun on kaikenlaista jos lausunnot tai minkäänlaista olosuhteissa sinun tulisi käyttää aaltosulkeita osoittaa, että tämä on mitä tulisi tapahtumaan kun olet kunnossa. Teknisesti kun on kunnossa ja sitten seuraava rivi on vain yksi line, sinulla ei teknisesti ole laittaa aaltosulkeiden. Periaatteessa kääntäjä ymmärtäisivät it anyway implisiittinä. Mutta CS50, pyydämme teitä tekemään aaltosulkeiden vain niin, että koodi on enemmän järjestetty ja luettavampi. Koska kyseisen koodin saa kauemmin, jos ei ole aaltosulkumerkkien ja tällainen. Se saa todella sotkuinen. LAUREN CARVALHO: Tämä on juuri mitä Daavid juuri huomautti edellisessä dioja. Se varmasti toimii ilman kihara housunkannattimet, mutta tyylivaikutuksen syistä aiomme pyytää, että et laittaa ne tuumaa Ja kun olet alkanut style50, joka on eräänlainen tarkistaa 50 tyyli, se muistuttaa sinua tekemään tämän. LUCAS FREITAS: Ja toinen asia on muista laittaa aaltosulkeiden pitkin jokaisella rivillä. Joten teet, esimerkiksi l's. Siirry seuraavalle riville, avaa kihara ahdin, sitten menet seuraavalle riville. Sisennys, joka on neljä aluetta. Sitten voit kirjoittaa mitä tahansa, sitten toinen linja, ja sulje kihara ahdin. Joten varmista, että näiden kahden kihara henkselit ovat eri radoilla. Yleisö: Joten jos tämä koodi oli kuin 10 muuta jossittelua, tämä olisi olla 10 sarjaa suluissa? LUCAS FREITAS: Joo, niistä jokaisesta. Joo. Joten, jos muuta, jos, ja niin edelleen. Yleisö: Ettekö paina Tab sisentää? LUCAS FREITAS: Pyydämme sinua kaverit käyttää neljä aluetta. Jotkut editorit kääntämään tab kuin neljä aluetta automaattisesti. gedit ei, niin sinun täytyy do space space space space. Tämä on myös asia, että jotkin ohjelmoijia vain tehdä välilehdet, jotkut ohjelmoijat vain tehdä neljä aluetta, ja jotkut muut ihmiset edes tehdä kaksi tai kolme tilat. Se on vain, että täällä kysyt te tehdä neljä aluetta. Yleisö: On tuskin ehdottomasti saanut olla tapa gedit kohteeseen automaattisesti [äänetön]. Kuin mikään [kuultavissa] tekee sen. LUCAS FREITAS: Joo. Mielestäni voit mennä Settings. Yleisö: Se jo tekee kaiken tuon. LUCAS FREITAS: Se jo tekee? OK. Joten vain olla varma, että on neljä aluetta. Yleisö: Onko meillä laittaa kihara suluissa silmukoita samoin? LUCAS FREITAS: Kyllä. LAUREN CARVALHO: Aina kun kapselointi koodiosion vain käytä aaltosulkeiden. Ja ennen kuin ajattelet, että olemme vain on sticklers tästä mitään hyvää syy, jos kaverit eivät mene saada tech harjoittelupaikkoja suuryritykset, he antavat sinulle stilisointioppaan, ja he kertovat teille, tämä on sitä, mitä koodi tulee näyttämään. Ja vaikka et oppinut koodia Tämän, ehkä teidän työharjoittelu sinun täytyy tehdä jotain täysin erilainen. He eivät odota sinun noudattaa heidän tyylinsä. LUCAS FREITAS: Ja vielä yksi asia on jotka eivät huomaat kuinka olen kuten x, tilaa, vähemmän, tilaa, 0? Aina kun on operaattori - se voi olla kuin plus, miinus, kertaa vähemmän, suurempi, mitä operaattori - sinun täytyy laittaa tilaa vasemmalla ja oikealle puolelle. LAUREN CARVALHO: Nämä ovat kutsutaan binary operandeja. Varmista vain aina tilaa out your binary operandeja. LUCAS FREITAS: Tämä on ei binary operandin. LAUREN CARVALHO: Tämä on koska se kestää kaksi. LUCAS FREITAS: Ai, joo. OK, kytkimet. Ensinnäkin, sinun täytyy nähdä, että aivan kuten if tai muu selvitys, sinulla on laittaa kihara ahdin on omalla rivillään ja alle kihara ahdin täällä. Huomaa, että on olemassa vain yksi tila jälkeen kytkin, ihan niinkuin jos ja muuta meillä oli yksi väli että ja suluissa. Joten sinun täytyy laittaa, että. Ja ei ole tilaa heti jokaisen on sulkeissa tai ennen loppua ja suluissa. Niin näet, että se on kaikki yhdessä, ja myös näistä täällä. Joo? LAUREN CARVALHO: Luulen Meidän on mentävä eteenpäin. LUCAS FREITAS: Eli tämä on osa tyyli opas, joka teillä on CS50. Muista mennä cs50.net/style ja katsomaan tätä. Nämä ovat kaikki erittäin tärkeitä tyyliisi pisteet. Anna minun mennä takaisin julkilausuman. LAUREN CARVALHO: Mieluummin vain käyttää style50. Olemme juuri menossa suoraan silmukoita. Selvä. Joten päästä takaisin sisältöä, nyt että olemme menneet yli stilisointioppaan. Silmukoita, olet nähnyt niitä Scratch ja aiomme puhua niistä C. Vuonna silmukka on kolmessa erässä ilmoitus tämän silmukan. Sinulla alustus jonka asetat muuttujia. Sinulla vointisi, jotka ovat tarkistaa, onko jokin tosi tai epätosi ja onko loop olisi jatkettava. Ja olet saanut päivityksen, joka on päivittää muuttujat. Haluan vain ottaa vilkaista joitakin C-koodi tämän silmukan toiminnassa. Mitä tapahtuu on täällä Alustuksen asetamme I 0. Vuonna kunnossa me tarkastamme onko i on pienempi kuin 10. Ja päivitys olemme lisäävä i. Joten mitä johtuviin Tämän silmukan? LUCAS FREITAS: Oikeastaan ​​ensinnäkin, Tiedättekö mitä minä + + on? Yleisö: Kasvoi 1. LUCAS FREITAS: kasvoi 1, kyllä. Joten tämä on sama asia kuin teet i on yhtä kuin i plus 1. Ja huomaa, että meillä ei ole tilaa välillä i ja + +. Joten Tiedättekö mitä tämä tekee? Voiko joku kertoa minulle? Ja ehkä saada joitakin karkkia tämän takia? Yleisö: [kuultavissa] LUCAS FREITAS: OK. [Äänetön] näyttää kaikille myöhemmin [kuultavissa]. Joo, se on menossa näyttämään "Tämä on CS50 "10 kertaa. LAUREN CARVALHO: Kai se oli otsikossa liukumäki. LUCAS FREITAS: Ai, joo. [Naurua] LUCAS FREITAS: Se auttaa. LAUREN CARVALHO: Joten ne ovat silmukoita. Aiomme nähdä lisää esimerkkejä For silmukoita myöhemmin. Mutta katsotaanpa itse katsomaan Toinen tyyppi silmukan tapaat C, ja sitä kutsutaan kun silmukka. Vuonna while-silmukka, olet juuri kunnossa. Ehto tarkistetaan alussa, ja jos tämä edellytys on tosi, niin koodiin elin, kun taas lohkon tulee suorittaa. Ja koodi jatkaa toteuttaa niin kauan kuin ehto on edelleen tosi. Tässä on esimerkki, kun silmukan C. Aiomme asettaa määrä on 10 aluksi. Niin kauan kuin määrä on suurempi kuin 0, aiomme pitää tulostaa tästä muuttuja täällä. Aiomme dekrementoidaan määrä ja tarkista kunnossa jälleen. Tulosta, vähennys, tarkista kunnossa taas. Tässä meillä on esimerkki, joka liittyy kysymykseesi aikaisemmin. Meillä oli prosentin s, kun olimme tulostaa merkkijonon, ja nyt olemme tulostamisen int, meillä on prosenttia I meidän paikkamerkki sijaan. Kirjeet kaikkien pitäisi olla aika intuitiivinen, s merkkijono, i int. Joten jos tämä koodi suoritetaan, sinun pitäisi laskea alas 10-0, tulostamalla Jokaisen luvun. LUCAS FREITAS: Ja voit ajatella prosenttia, koska se tuntuu tyhjä tilaa, ja sitten olet laskemisesta tämän muuttuja täällä, että tyhjä tila. Niinpä esimerkiksi tässä voisin minäkin tyhjä, ja sitten Laitan count oikeassa, arvo määrä. Onko järkeä? Voisinko tehdä kuten printf ja sitten lainaa, laskea? Olisiko se toimii? Yleisö: Ei. LUCAS FREITAS: Ei, koska se itse tulostaa sanan "count" sijaan tulostus arvosta. Näin teet sen tulostaa arvot kohti vaihteleva sijasta vain muuttujan nimi. Kaikki kysymykset? Yleisö: Miksi käytätte kuin vastakohtana aikaa? LAUREN CARVALHO: Haluaisin käyttää varten loop jos tiedän tarkalleen, kuinka monta toistojen Haluan silmukan ajaa. Tässä tapauksessa se ei ole väliä, koska Tarkoitan, olin vain yrittää ajatella todella yksinkertainen esimerkki tästä liukumäki. Mutta sanotaanko, että haluat jotain pitää käynnissä taas - LUCAS FREITAS: esimerkiksi olet pyytää panos kunnes henkilö antaa sinulle oikea tulo. Niin kuin vaikka tulo ei ole OK, pitää pyytää sitä. Tai kuten kun olet vanhemmat eivät anna rahaa, pitää kysyä sitä. [Naurua] LAUREN CARVALHO: Et tiedä miten monta kertaa sinun täytyy tehdä se. LUCAS FREITAS: Koska et tiedä kuinka monta kertaa se on menossa pitämään menossa. LAUREN CARVALHO: Mutta silmukka, sinun täytyy tietää, kuinka monta kertaa. Joo? Yleisö: Vain selventää, prosenttia sanoo, että tämä on jotain aikeissa tapahtua, i: t kokonaisluku, ja kenoviiva n - LAUREN CARVALHO: Keinot? Kuka tietää, mitä kenoviiva n tarkoittaa? Uusi linja, joo. Täsmälleen. LUCAS FREITAS: Voit ajatella n: n kuin uuden linjan. LAUREN CARVALHO: Nice. Yleisö: Mikä tuo määrä Dash Dash [kuultavissa]? LUCAS FREITAS: Count miinus miinus on sama asia kuin plus plus, mutta lisäämisen sijasta, se on laskua 1. LAUREN CARVALHO: Enempää kun silmukka kysymyksiä? Ei? Voi, meidän piti on ohitettu, että. Tämä on do while-silmukka. Hyvin samanlainen kuin while-silmukka paitsi Tässä tapauksessa voimme tarkistaa kunnossa jälkeen koodi kehossa silmukka suorittaa kerran. Joten me suorittaa koodia Ensimmäinen mitä tahansa. Sitten voimme tarkistaa kunnossa, suorita se uudelleen, jos ehto on tosi. Löydät itsesi käyttämällä tätä, kun pyydät käyttäjän syötettä. Koska olet aina menossa on kysy kerran, ja sitten riippuen siitä, mitä Toiminto on, saatat joutua reprompt ja kysyä uudestaan ​​ja uudestaan, jos tulo ei ollut mitä odotetaan sen olevan. Yleisö: Joten se on kuin muoto ihmiset täyttää. LAUREN CARVALHO: Joo, aivan. Löydät mielestäni teidän aivan ensimmäinen Pset, olet menossa on Käytä hyvä silmukan kerätä käyttäjän syötettä. Yleisö: Tilanteesta riippuen, teidän kun silmukoita on taipumus ajaa enemmän usein kuin samalla silmukoita, kuten yksi tai jotain? LAUREN CARVALHO: Jos se on tarkka - LUCAS FREITAS: Niiden pitäisi aina ajaa tarkkaa määrää kertaa, että olet haluat suorittaa sen. Kuten käytämme tehdä samalla, koska me todella halusi saada tuloon ainakin kerran. Vuonna samalla silmukoita, joskus et halua toteuttaa sitä lainkaan, jos se ei ole tapauksessa toteuttaa. Niin se riippuu suunnitteluun. Tarkoitan, voit joko käyttää tehdä samalla tai taas niin kauan kuin koodi tekee sen sen pitäisi tehdä. LAUREN CARVALHO: Mutta minulla ajatella vastaus Kysymys on luultavasti kyllä. Sanotaan ehto oli väärä. Yhdessä tapauksessa se kulkisi kerran, ja Toisessa tapauksessa se kulkisi nolla kertaa. Niin, joo. Kysyttävää? Kyllä? Yleisö: Voiko silmukan ehto olla silmukan suhteen muuttuvan muiden kuin [äänetön]. LAUREN CARVALHO: Joo, se voi olla mitä tahansa. Luultavasti alkaa Psets, voit ei tarvitse kohdata, että tapauksessa, mutta varmasti se voi olla mitä tahansa. LUCAS FREITAS: Luulen olemme tehneet täällä. LAUREN CARVALHO: Olemmeko? Ei? LUCAS FREITAS: silmukat? Joo. LAUREN CARVALHO: Meidän ei pitäisi olla. Voi, olemme tehneet silmukoita. OK. Oikeastaan, koska olemme puhuneet niin paljon, nyt oikeastaan ​​kaikki navigoida yli study.cs50.net/conditions. Ja aiot liikkua alaspäin ongelmiin widget. No, itse asiassa, kun ihmiset saavat tätä perustaa, CS50 Study on olemaan työkalu että TF: iä tulee käyttää valmistautua osia ja että te voi käyttää, jos unohdat kohdat. Se tulee sisältämään joukko dioja, muutamia vihjeitä kunkin aihe, ja joitakin käytännön ongelmia ratkaisuja. Miksi kaikki eivät vain katsomaan tätä ongelmaa täällä. Olen pahoillani, minun olisi pitänyt muistutti ihmisiä tuomaan läppäreissä tänään. Mutta jos sinulla ei ole kannettava tietokone, se on OK. Voit vain hiukkaakaan tämän alas paperi tai käydä läpi naapurin olkapää. Yritetään kirjoittaa ohjelma, joka kehottaa käyttäjää ottamaan arvaus, keskimääräinen lapsiluku perhettä kohti yksikkö Yhdysvalloissa. Tämä numero on 2, muuten, kun voi nähdä näistä esimerkeistä. Haluamme tulostaa keskimäärin lasta perhettä kohden Yhdysvalloissa, sitten me haluat mitä? Haluamme kerätä tulo käyttäjältä. Ja sitten sen mukaan, mitä käyttäjän tulo on, aiot tulostaa joko tämä on oikea tai tämä on väärä. Ja aivan ensimmäinen asia, että sinun katso, jos klikkaat pikku nuolta pohjaan ongelma widget on paikalla hiukkaakaan alas joitakin pseudokoodina. Joten et ole ohjelmoinnin vielä. Olet juuri sinun ideoita, joiden pohjalta. Haluaako joku auttaa Lucas keksiä oikea pseudokoodina tähän ongelmaan? LUCAS FREITAS: Mikä on ensimmäinen asia että meidän pitäisi luultavasti tehdä täällä? Mitä olette mieltä? Yleisö: [kuultavissa] LUCAS FREITAS: Joo, OK. Niin, tulostaa. Vain sanoa tulosta tämän keskiarvon joukko ihmisiä? OK. Tulosta kysymys, sanokaamme. Kun olen tulostaa tämän kysymyksen, mitä minun pitäisi tehdä? Yleisö: Get tulo. LUCAS FREITAS: Get tulo. Mitään muuta? Yleisö: kunto. LUCAS FREITAS: kunto. LAUREN CARVALHO: Mikä on, että ehto tulee? Yleisö: määrä [kuultavissa]. LAUREN CARVALHO: Oikea. LUCAS FREITAS: Joten mitä aion tarkistaa kunnossa? Yleisö: Jos se vastaa 2. LAUREN CARVALHO: Jos se vastaa 2. Täsmälleen. LUCAS FREITAS: Onko mitään muuta, että minun pitäisi tehdä? Yleisö: Count. LUCAS FREITAS: Joten jos se on yhtä suuri kuin 2, sanokaamme - haluan vain kirjoittaa, jos tulo on yhtä kuin 2, niin mitä aion vain tulostaa oikein. Ja sitten muuta, aion tulostaa virheellinen. Mitään muuta? Ei? LAUREN CARVALHO: Niin sinä voi klikata - Onko kaikilla tämän alas? LUCAS FREITAS: Onko mitään järkeä? Joten nyt yritetään koodata tätä. LAUREN CARVALHO: Jos valitset pikku nuoli, se todella säästää pseudokoodina, joka on todella jännittävä. Ja voit tehdä niitä tulee kommentteja, jos haluat vain ohjelipusta mitä tehdä. LUCAS FREITAS: Niinpä esimerkiksi, ensimmäinen Aion tulostaa kysymykseen, joten kuinka aion tehdä sen, oikeastaan? printf. Joten printf, ja kysymys on keskimäärin lasten lukumäärä kohden perhe Yhdysvalloissa. Sitten aion saada käyttäjän syötettä. Joten miten voin tehdä tämän? Yleisö: Get Int. LAUREN CARVALHO: GetInt. LUCAS FREITAS: OK. Joten ensin ilmoitettava, eikö? int, kutsukaamme sitä n on GetInt. Ja nyt kunnossa. Joten haluan sanoa, että olen menossa to tässä Katso vastaus. Joten ensin, jos tulo, joka on n, vastaa to - miten olen menossa kirjoittaa, että? Yleisö: Equal yhtä. LUCAS FREITAS: Perfect. Joten n. Ja huomaa, että en tilaa, vastaa, vastaa, tilaa, totta. Ja nyt, mitä minun pitäisi tehdä? Jotain hyvin tärkeää tyyliä. Aaltosulkeita. Ja sitten aion tulostaa. Miten voin tulostaa? printf. Yleisö: Voisiko se aktivoidaan? LUCAS FREITAS: Ei. Sen pitäisi olla pieniksi. Niin, että on oikea. Olisiko tämä riittää printf lausunnossaan, vai olenko puuttuu jotain? Yleisö: Uusi linja. LUCAS FREITAS: Uusi linja, joo. Ja nyt muuta. Yleisö: Onko tilaa jälkeen printf, vai ei? LAUREN CARVALHO: Meidän pitäisi tarkista stilisointioppaan. Yleisö: Sen ei pitäisi olla. LUCAS FREITAS: Ei pitäisi olla, OK. Niin muuten, printf, "Se on väärin." LAUREN CARVALHO: Oho, sinun lainausmerkkejä. LUCAS FREITAS: OK. Mitään muuta? Näyttääkö se hyvältä? LAUREN CARVALHO: Shall we kokeilla? LUCAS FREITAS: Joo, nyt käyttää sitä. Joten se käännetään ja se Näyttää siltä, ​​että se toimii. Kokeillaan kaksi lasta. Se on totta. Ja nyt juostaan ​​jälleen, mutta nyt sen sijaan asettaa kaksi lasta, nyt sanoa, että aion laittaa kuin viisi. Se on väärä. Näyttää siis siltä, ​​että se toimii. LAUREN CARVALHO: Miksi et näytä niitä mitä tapahtuu, jos laittaa jotain outo, kuten joitakin kirjeitä. LUCAS FREITAS: Ai, joo. Katsotaan myös tarkistaa, että. Mitä jos käyttäjä yrittää sotku ohjelman kanssa, ja he vain kirjoittaa, en tiedä kaksi. Se aikoo sanoa Uudelleen. LAUREN CARVALHO: So GetInt pyytää heitä yrittää uudelleen. Meillä ei ollut huolehtia tuon itse. LUCAS FREITAS: Joo. Joten ellen itse laittaa numero, se on aio pitää pyytää minua yrittämään uudelleen. Yleisö: Miten käytät sitä? LUCAS FREITAS: Napsauta Tämän tähden painiketta. LAUREN CARVALHO: Sinun pitäisi mennä ylös. Siellä mennään. LUCAS FREITAS: tähti painiketta oikeassa. Joo? Yleisö: Onko se kysyy [kuultavissa] kanssa desimaalilukuja liikaa? LAUREN CARVALHO: uskon sen. LUCAS FREITAS: Jos se tekee mitä? LAUREN CARVALHO: Jos he kirjoittavat vuonna desimaaliluku, luulen se tulee kysymään. LUCAS FREITAS: Katsotaanpa. LAUREN CARVALHO: Koska se ei ole int. LUCAS FREITAS: Joo. LAUREN CARVALHO: Joten se ei ole int, Get Int pyytää sinua yrittämään uudelleen. Yleisö: Missä, että koodi olisi desimaalin tarkkuudella, joka kehottaa käyttäjälle, että täytyy syöttää kokonaisluku erikseen? LAUREN CARVALHO: GetInt on oikeastaan tee sitä meille. Yleisö: Ei, tarkoitan jos haluaisimme tulla [kuultavissa] LUCAS FREITAS: Voit sanoa kuin keskimäärin lasten määrä Yhdysvalloissa. En tiedä. Voimme sanoa, esimerkiksi "hyvä syöttää kokonaisluvun. " LAUREN CARVALHO: kokonaisluku keskimääräinen lukumäärä. Tarkoitan, se on vain miten sinulle sanon sen, eikö? LUCAS FREITAS: Joo. Tämä ei ole osa itse koodausta. Se on enemmän kuin mitä olet menossa haluavat kirjoittaa oman ohjelman. Yleisö: Miten olisimme ajaa, jos se oli todella gedit [kuultavissa]. Painikkeen sijaan pelata? LUCAS FREITAS: Me ensin kääntää sen. Me voimme tehdä sen tekemällä make ja tiedoston nimi. Ja sitten ajaa se, teemme dot slash ja ohjelman nimi. Yleisö: Luulen, mitä tarkoitin oli, jos halusimme ohjelmassa voitaisiin vastata niiden virheellinen, virheellinen merkintä, sinun ei pitäisi laittaa - LUCAS FREITAS: Emme voi tehdä, koska koodin tämä kertoo yritä tulee Get Int joka on toiminto, joka on jo toteutettu meille kautta CS50 kirjasto, ja koska se on jo toteutettu siellä, me voi vain [kuultavissa]. LAUREN CARVALHO: Jos et käytä GetInt, niin voit tehdä sen. LUCAS FREITAS: Joo. Mutta jos käytät GetInt, et voi. Muuta kysyttävää? Yleisö: Olisitko voinut mennyt kuten GetFloat ja sitten voi laittaa sitä desimaalin? LUCAS FREITAS: Joo. Yleisö: OK. Sitten vain voinut syöttää float tasavertaiseen - LAUREN CARVALHO: Joo. Täsmälleen sama, paitsi kellua sijasta int. LUCAS FREITAS: Laita se tästä ja sitten GetFloat siellä. Yleisö: Kuten varmasti nähdä tai nähnyt - LAUREN CARVALHO: meillä on ole saanut siellä vielä. Yleisö: - tekee eriarvoisuutta kellukkeet ei [kuultavissa] Yleisö: Mitä puolipisteet tarkoittaa? LAUREN CARVALHO: puolipiste juuri tarkoittaa, että tämä lausunto on valmis, ja aiomme mennä päälle seuraavan dian. Yleisö: Joten se on tarpeen joka kerta? LAUREN CARVALHO: Joo. No, OK, joten ei näissä olosuhteissa, koska he ovat kapselointi-jotain. Joten periaatteessa jos jotain aiheuttaa voit sitten luoda kihara ahdin lohko, älä laita puolipistettä lopussa. LUCAS FREITAS: Mutta kaikki muuta, kyllä. Kun olet lausunnossaan, laittaa puolipiste. Ja jos unohdat puolipisteet kääntäjä nappaa sinulle vihainen, ja olet menossa on yrittää korjata sen. LAUREN CARVALHO: Jos laitan puolipiste täällä, joka lopettaa tämän, ja minä koskaan päästä suorittamaan mitä sisällä, muuten. Joten se on yksi niistä yhteisistä vikoja. Yleisö: Aina täytäntöönpanosta. LAUREN CARVALHO: Joo. Tässä tapauksessa meillä olisi aina täytäntöön, mitä on sisällä. Yleisö: Tyylisi [kuultavissa] liittää sen sinulle, ajattelin. LAUREN CARVALHO: Voi, se on totta. Yleisö: [kuultavissa] yhden line juttu [kuultavissa] Yleisö: Niin? Yleisö: Voitko olla useita tuloa yhdellä rivillä? Niin kuin voit pyytää käyttäjiä tulostaa kaksi asiaa? LAUREN CARVALHO: En - LUCAS FREITAS: Ei. Oletetaan, että haluan myös saat tämän kokonaisluku m. Minun täytyy tehdä se eri linjaa. Yleisö: Jos sinun pitäisi ajaa että, miten [äänetön]? Se tulostaa ajallaan siellä [äänetön] ja silloin kyllä ​​syöttää yhden ja - LAUREN CARVALHO: No, suorita se. Tarkoitan, ei ole mitään estää meitä juuri käynnissä se ja nähdä, mitä tapahtuisi. LUCAS FREITAS: Minusta se on menossa moittii meitä koska emme käyttäen - LAUREN CARVALHO: Oho. LUCAS FREITAS: Se valitti meille oikea nyt, koska emme käytä tätä muuttuja, mutta jos en, esimerkiksi n on yhtä kuin yhtä kuin, ja m on on yhtä kuin, mitä sitten tapahtuu tässä tapauksessa? Mitä tämä ohjelma tekee? Yleisö: Ihmettelen vain miten se - LAUREN CARVALHO: Hän vain haluaa tietää, miltä se näyttää kuten mielestäni oikeassa? Joten kesti yksi niistä, ja sitten se kesti toinen. Mielestäni meidän pitäisi liikkua, koska meillä on vielä yksi diaesitys mennä ennen - Haluatko vetää matematiikka? LUCAS FREITAS: Joo, matematiikka. LAUREN CARVALHO: Give minulle vain yksi sekunti. On olemassa muutamia erilaisia ​​numeerisia muuttujat C. Numeroarvot C voidaan luokitella eri tyyppeihin, ja nämä ovat niitä ll katso useimmiten. Ja int on kokonaisluku. Et voi olla mitään desimaaleja. Vuonna Appliance, se vie 32 bittiä tallentaa int. Float voi olla desimaaleja. Se myös vie 32 bittiä tallentaa float Appliance. Kaksinkertainen on numero desimaalin kohta, joka vie 64 bittiä tallentaa sen, mikä tarkoittaa, että voit vain tarkemmin, koska voit olla enemmän - mitä te kutsutte sitä? LUCAS FREITAS: Joo, se on enemmän. LAUREN CARVALHO: Lisää paikkoja desimaalipilkun jälkeen. Ja pitkä pitkä on kokonaisluku joka vie 64 bittiä kipeä se laitteeseen. LUCAS FREITAS: Joten se voi olla suurempi kuin ints voi olla. LAUREN CARVALHO: juttu tiedot nimikkeet C on, että he kertovat sinulle, mitä millaisia ​​tietoja voit tallentaa teidän muuttuja. Ne kertovat, miten voit käyttää tätä muuttuja ohjelmaan. On erittäin tärkeää vain seurata mitä tietotyyppiä käytät, ja jos sinun täytyy valettu tietotyyppi toiseen, varmista, että tiedät mitä tapahtuu, kun se valu tapahtuu. Ja näet esimerkki myöhemmin on näissä dioja virhe, että voi esiintyä. Katsotaanpa katsomaan joitakin matemaattisia C ja ajatella todella tarkkaan, luulisin, siitä, mitä tapahtuu, kun tämä matematiikka tapahtuu. Vuonna ensimmäinen linja, mitä tapahtuu kun Julistan x? Yleisö: Olet mahdollistaa x olla jotain? LAUREN CARVALHO: Joo. No, olen todella kysyi toiminta järjestelmän 32 bittiä muistia, eikö? , Jossa voin tallentaa int ja Aion soittaa että int x. LUCAS FREITAS: Periaatteessa menee muistiin ja löytää paikka, joka on 32 bittiä ja sanonta, hei, haluan tätä tilaa, ja se tulee kutsua x. Joten olet vain melko paljon havainto laatikko muistisi myymälä arvoja x. LAUREN CARVALHO: Ja sitten alustaa x, mikä tarkoittaa, että minä vain tallentaa arvo 2 tuossa paikassa, että kimpale muistin, että pyysimme toiminta järjestelmä. Ja tänne mitä teemme on olemme todella julistamisesta ja alustetaan y yhdellä rivillä sijasta kahdessa linjat kuten me teimme täällä, joka on myös täysin hieno, Olemme lisäämällä 1 x, ja olemme varastointia että arvo y. LUCAS FREITAS: Joten periaatteessa mitä tämä linja ei, se löytää nyt laatikko y, ja niin sen arvo, asia, joka aiot laittaa laatikon sisällä, on olemaan arvo x plus 1. Niin se on tämä jos y. Se saa arvon x, näyttää täällä, ja nähdä, että se on 2. Laittaa sen sinne, plus 1, joten se asettaa 3 siellä. Onko järkeä? Niin y olisi 2 tässä tapauksessa. LAUREN CARVALHO: Okei, viileä. Näimme lisäksi, joten katsotaanpa nyt ajatella noin divisioonan C. Tässä minä olen julistamisesta ja alustamisen float nimeltään vastaus ja jakamalla 1 10, ja sitten olen tulostamalla vastaus kahden desimaalin tarkkuudella. Ja huomata tässä, minun printf selvitys, kun haluan tulostaa jotain kaksi desimaalin tarkkuudella,% .2 f on mitä haluan käyttää. Joten kohta 2 on vain sanomalla Tarvitsen kaksi paikkaa jälkeen desimaalin tulostaa. Nyt, mitä tulee tapahtumaan jos juoksen tämän koodin? Onko kellään idea? Mitä tulostaa? LUCAS FREITAS: Mitkä ovat me toiveenaan saada. LAUREN CARVALHO: Mitä Haluamme ensinnäkin? LUCAS FREITAS: [kuultavissa] LAUREN CARVALHO: 0,1, joo. Mutta mitä tulostaa? Yleisö: [kuultavissa] LAUREN CARVALHO: No, ei oikeastaan. Tämä on mitä puhuin miksi täytyy pitää hyvin varovainen kirjaa tietosi tyyppejä. Joten, mikä tietotyyppi on tämä? On int, eikö? Ei ole desimaalin tarkkuudella. 10 on myös int. Ei ole desimaalin tarkkuudella. Jos minä jakaa int by int, saan int, joka ei ole 0,1, koska ints ei voi olla desimaaleja, mutta vain 0. Koska int vain katkaisee pois desimaalin tarkkuudella. LUCAS FREITAS: Joten jos et operaatioiden ints, olet menossa saada int kuin vastaus. Joten periaatteessa, mitä tietokone tekee, se jakaa 1 by 10, ja se saa 0,1. Mutta sitten se on kuin, odota, tämä on pitäisi olla kokonaisluku, joten sinun tarvitsee vain sivuuttaa 0,1, joten se on nyt vain 0. LAUREN CARVALHO: Joten kun voin tulostaa tästä ulos, saan 0,00 sijaan 0,10. LUCAS FREITAS: Onko järkeä? LAUREN CARVALHO: Sellainen valitettavia, eikö? LUCAS FREITAS: Joten kuinka voimme korjata tämän? LAUREN CARVALHO: Katsotaanpa yrittää korjata sitä. Tässä on esimerkki siitä, missä olen todella valu 1 ja 10 kelluu. Joten nyt 1 ei ole enää int. 1 on float. Muuten, tämä on vain syntaksin kun haluat heittää yhdestä tietotyyppi toiseen. Voit vain laittaa tietotyyppi suluissa ja on, että juuri ennen arvon että olet valu. Joten tässä, olen jakamalla float float saada kellua vastauksen. Ja kyllä, tämä johtaisi Itse asiassa tulosta 0,10. Onko järkeä? LUCAS FREITAS: Eli tyyppi valu on vain muuntaa yhdestä tyypistä toiseen. Joten kellua 1 on todella 1,000. Ei juuri tätä, mutta se on jotain kanssa desimaalin tarkkuudella että on oikeastaan ​​1. Onko järkeä? Joo? Yleisö: Mitä jos teit float vastaus tasavertaisina 1,0 jaettuna 10? LAUREN CARVALHO: Olet todella menossa nähdä, että seuraavan dian. Se on oikeastaan ​​meidän erittäin seuraavan dian. Tämä on itse asiassa mukavampaa kuin tyypin valu, luulen. Joten nämä kaksi ovat kelluu vain luonne siihen, että ne on desimaalin tarkkuudella. Kyllä? Yleisö: Mitä jos teit [kuultavissa] jaettuna 10? LAUREN CARVALHO: Oikeastaan ​​float jaettuna int todella antaa sinulle kellua, jotta toimisi hyvin. Odota, ei kaikki ymmärrä tätä? Koska tämä tulee olemaan todella iso juttu Pset1, todella. Kyllä? Yleisö: Voisitko nopeasti mene yli punaisen osan? LAUREN CARVALHO: punainen osa, joo. Lucas, sinä haluat? LUCAS FREITAS: OK. Niin muista, että prosenttia on paikkamerkki. Se on kuin tyhjä tila. Joten yritetään ymmärtää kaiken että täällä tapahtuu. Prosenttia tarkoittaa, että se on paikkamerkki. Sitten on f, mikä tarkoittaa, että tämä paikkamerkki on float. Viimeinen asia, että meillä on tässä 0,2, mikä tarkoittaa Haluan olla kaksi desimaalien float. Jos minulla vain oli% f, he se laittaa nippu desimaalin tarkkuudella. Joten voin vain laittaa 0,2 tai 0,1 tai 0,5 tai mitä tahansa, ja se tulee laittaa että desimaalien lukumäärä. Ainoa asia on, että jos laittaa like .100 Tai .1,000, se ei ole oikeastaan aikoo laittaa kaikki desimaalin tarkkuudella koska sillä ei ole riittävästi muistia on, että tarkkuutta. Muuta kysyttävää? Joo? Yleisö: Joten kellua vain sallii voit mennä pidemmälle kokonaislukuja? LUCAS FREITAS: Kyllä. LAUREN CARVALHO: No, float vain voit olla desimaalin tarkkuudella. LUCAS FREITAS: Se vain tarkoittaa, että sinun nyt voi olla desimaalilukuja. Yleisö: Miksi me koskaan käytä kokonaislukuja? LUCAS FREITAS: Miksi käytät kokonaislukuja? Ehkä Jos lasket 0-10, haluat käyttää todella kokonaisluku. Sinun ei tarvitse käyttää float. Joissakin tilanteissa, et tarvitse itse - LAUREN CARVALHO: Ehkä eivät halua desimaaleja. LUCAS FREITAS: Ehkä et haluat käyttää float. LAUREN CARVALHO: Toinen asia on, Muistan, molemmat laittaa float ja int ottaa 32 bittiä tallentaa ne, ja ehkä et halua tuhlata bittiä desimaalin tarkkuudella. LUCAS FREITAS: Joo. Joten kuten, ajattele tätä. Sinulla on 32 bittiä sekä int ja float. Saat int, kaikki nämä 32 bittiä Siirry kokonaislukuosan. Jos käytät float kanssa 32 bittiä, voit on osa tätä muistia käytetään varten numeron, kokonaisluku, ja toinen osa käytetään desimaalin tarkkuudella. Niin se tarkoittaa, että et voi saada erittäin suuri määrä kellukkeilla, koska float on jo käytetty runsaasti muisti desimaalin tarkkuudella. Joo? Yleisö: Tuo ensimmäinen vastaus, mitä se tekee? Onko se asettaa arvon float yhtä tähän paikkamerkki, että voit muistaa se seuraavalla rivillä? Se sanoo kellua vastaus. LUCAS FREITAS: Joo. Joten, float vastaus tarkoittaa saatko nyt hieman ämpäri muisti, joka omistaa float, ja että menee kutsua vastauksen. Niin, että mitä kellua vastaus tekee. Ja sitten te sanotte, että sisällä Tämän aiot laittaa tuloksena. Joten aiot tehdä 1,0 jaettuna 10,0, saat 0,1, ja sitten laitat että sisällä vastauksen. LAUREN CARVALHO: Eli yhdellä rivillä, olemme julistamisesta ja alustetaan tämän juoksun nimeltään vastaus. LUCAS FREITAS: Mielenkiintoista, vaikka tämä on vain yksi rivi, se tekee useita toimia. Se on vain tapa C vuokrauksesta käytät vähemmän koodia. Se on sama asia kuin kolmen komponentin operaattori, kuinka voit vain tehdä [Äänetön] yhdellä rivillä. Se todella tekee sama asia kuin tekee float vastaus, puolipiste, ja Sitten vastaus on yhtä suuri kuin tämän, mutta sen sijaan, mikä sinusta tehdä kaksi riviä, että se on kuin oikotie. Joo? Yleisö: Joten jos juoksi tämän, se olisi 0,10? LUCAS FREITAS: Kyllä. Joo? Yleisö: Onko vastata itse koodi, vai onko se vain nimi? LAUREN CARVALHO: Tämä on todella koodi. Tämä on mitä aiomme nimetä meidän muuttuja. Yleisö: Joten se on vain nimi [kuultavissa]. LAUREN CARVALHO: Joo. Olisin voinut sanoa kellua x on yhtä kuin 1,0. LUCAS FREITAS: asia on, että muuttujan nimi on jotain, että käytät. Se on sinulle tärkeää. Sillä varsinainen ohjelma, ainoa asia että asiat on arvo, jota on sisällä ämpäri. Syy miksi olet muuttujia ja nimet muuttujia on niin tietäisit mitä olet tekemisissä, kuten millaisia ​​tietoja olet saatavuuden kerrallaan. Mutta koodin itse, jos soitat se vastaus tai kysymys tai mitään, melko paljon, sillä ei ole väliä. Sillä ei ole väliä. Niin kauan kuin olet johdonmukainen jokaisessa esiintyminen sitä ja niin te kutsutte sitä jotain muuta. Joo? Yleisö: Onko muuttujat ylitetä toiminto? Kuin jos olisit luoda kiinnike [Äänetön], voisitko [Äänetön] vastata uudelleen? LAUREN CARVALHO: Ei. Yleisö: [kuultavissa] LAUREN CARVALHO: Ei. Se olisi soveltamisalan ulkopuolelle Tämän muuttujan. Ja oikeastaan ​​se on eräänlainen mielenkiintoinen, sillä kun meillä on asioita, kuten silmukoita tai niitä, jos ehtoja, jos julistaa muuttuja sisällä toinen joukko aaltosulkeita, se todella on olemassa vain näissä aaltosulkeita. Yleisö: Viimeinen huomautus [äänetön] kelluu. Miksi et koskaan halua käyttää ints? Tämä on enemmän Sivuhuomautuksena kuin mitään, mutta tietokone on huomattavasti paremmin käsittelyä ints kuin se on käsittelyä kelluu. Se on kuin järjestys aiempaa nopeammin. Joten jos me vain käsitellä vain kelluu, asiat olisivat paljon hitaampaa. LAUREN CARVALHO: Oikeastaan ​​näyttää olla ongelma kelluu. LUCAS FREITAS: Kind of syy että voit ajatella, miten binary voit ovat kokonaislukuja laittamalla 0: n ja 1: n. LAUREN CARVALHO: Tuo Seuraava asia. LUCAS FREITAS: OK. Mahtava. LAUREN CARVALHO: Just Pidä tuo ajatus. LUCAS FREITAS: OK, minä tell you later. LAUREN CARVALHO: Ennen kuin pääsemme siihen, mitä Lucas juuri sanoi, operaattori edelle. Tämä on tervettä järkeä. Olette tehnyt tätä tarpeeksi. Joten, vain jos jokin on suluissa, se tapahtuu ensin. Se kerto etusijalla yli Lisäksi vähennyslaskua, tuollaista. Joten oikeastaan, vain ei kukaan halua Kerro minulle, mitä numero yksi todella evaluoituu? Yleisö: 27. LAUREN CARVALHO: 27? Joo. LUCAS FREITAS: Annan karkkeja ihmisille. LAUREN CARVALHO: Selvä. Entä numero kaksi? Entä numero kaksi? Yleisö: 22. LAUREN CARVALHO: 22, joo. En tiedä, kuka sai tuon. Numero kolme? Yleisö: 10. LAUREN CARVALHO: 10, kyllä. Cool. Niin modulo. Lucas, haluatko selittää modulo? LUCAS FREITAS: modulotoiminto on tämä operaattori joka on itse asiassa erittäin hyödyllinen nippu ongelmia. Jos teen 55 modulo 10, mitä se tekee Tässä sanotaan, että haluan jakaa 55 10. Mitä saan? Se tuntuu aivan jos olen oikeastaan ​​vain tekee jako, mikä on ensimmäinen kerta, kun sain kokonaisluku? Yleisö: 5. LUCAS FREITAS: 5. Ja sitten loput on 5, eikö? Joten se on kuin 5 kertaa 10 plus 5. Periaatteessa, mitä modulo ei, se yrittää jakaa tätä lukua tämä, ja se näkee mitä on jäljellä jako. LAUREN CARVALHO: Niin se vain palauttaa loput. Joten numero yksi on mitä? 5. Numero kaksi? Yleisö: 3. LAUREN CARVALHO: 3. Numero kolme? 0. Ja neljä on 1. Täsmälleen. LUCAS FREITAS: Yksinkertainen, eikö? LAUREN CARVALHO: Miksi emme jätä tätä vain koska meillä ei oikeastaan ​​ole ajan, ja ihmiset tunnu ymmärtävän. Joten tässä mitä Lucas oli puhu vain. LUCAS FREITAS: Toinen syy miksi käyttäisi ints sijaan kelluu on että kelluu ovat hyvin epätarkkoja. Ja miksi niitä epätarkka? David sanoi, että edustaa kokonaisluku, Esimerkiksi käytämme 0: n ja 1: n, eikö? Ja sitten periaatteessa tehdä kerto, tehdä kaikki ne toimintojen tietää, mitä desimaaliluvun sinulla sijasta binary. Mitä nyt tapahtuu, jos yritän laittaa desimaaleja? Oikeastaan, esimerkiksi jos minulla on numero kuin 3,33333? Tuntuu kuin 10 yli 3. Kuinka olen menossa tallentaa kaikki 3 on, että minulla on sen jälkeen? On todella vaikea, eikö? Et voi vain kertoa tietokoneen, Hei, minulla on 3, ja sitten teet sen ikuisesti. Oikeastaan ​​tietokone ei ole fiksu tähän. Joten periaatteessa kaikki tietokoneessasi on että se yrittää laittaa niin monta numeroa kuin se voi jopa muistin, että sinulla on. Joten sanotaanko, että se tulee sanovat 3,3333, ja se on siinä. Joten se ei voi itse ilmaista juuri, että float on. LAUREN CARVALHO: Meillä on rajallinen määrä bittiä, mikä tarkoittaa, että ei ole jokainen desimaaliluvun tulee olemaan voitava edustettuna tarkasti. Ja niin tässä esimerkissä, jos olemme tulostamisen 0,1, olemme nyt tulostus pois 20 paikkaa. LUCAS FREITAS: Aivan kuten kerroin te, voit laittaa minkä tahansa määrän. Mutta jos teit kaksi paikkaa, saisitte 0,10, mutta jos laitat 20 paikkoja, se tulee näyttämään nippu 's, koska tämä on mitä voit laittaa muistiin, eikö? Mutta täällä, jopa 0, ja sitten on vain laittaa se joukko satunnaisia ​​numeroita. Tämä on ikään kuin jotkut - LAUREN CARVALHO: Tämä johtuu siitä, että olemme ei voi edustaa tämän desimaalin nimenomaan numero bittien meillä on. LUCAS FREITAS: Ja sitten tietokone on pohjimmiltaan antaa sinulle roskakoriin numero. Tämä ei ole oikeastaan määrän arvon. Yleisö: Se on niin lähellä kuin se voi saada [kuultavissa] käyttämällä [kuultavissa]. LAUREN CARVALHO: Niin seuraus tämä on se, että sanotaan, että sen sijaan, on 0.100014 riippumatta, mitä jos se oli 0,0999 - No okei. Leikitään, että todellinen vastaus Tämän oli 0,9999999. Se on hyvin lähellä 1, mutta se ei ole aivan 1. Se on 0,99999. Tämä tarkoittaa, että jos otan että 0.999, ja minä heitin sen int, saan 0. En tajua 1. LUCAS FREITAS: Koska muistaa, valu alkaen float int, juuri sivuuttaa kaikki desimaalin tarkkuudella. Sinä vain sivuuttaa niitä. Ei ole sellaista asiaa kuin pyöristäminen tai alasajon kun jklle totuttu rooli. Oikeastaan ​​on tämä toiminto ei pyöristystä, joka on hyvin tärkeää, mutta et vain ajattelevat, että kun teet tyypittely, se on vain menossa poistaa kaiken. Joten vaikka sinulla on 0,99999, se menee vain antaa 0 jos typecast [Äänetön] kokonaisluku. LAUREN CARVALHO: Joten vain olla todella tietoisia liukulukuoperaatioiden tarkkuus, varsinkin kun alkaa käyttää kelluu Pset1. Mutta kulkea pitäisi varoittaa, että samoin. LUCAS FREITAS: Ja itse asiassa se on todella kova, esimerkiksi jos en float vastaus 1 vastaa 1,0 yli 10, ja sitten kellua vastausta 2 vastaa 10,0 yli 100,0. Ne ovat sama numero, eikö? 0,1, eikö? 1 yli 10 tai 10 yli 100. Mutta nyt jos yritän nähdä tasa-arvoa, kuten jos vastaus 1 on yhtä vastata 2, Ehkä se ei ole todella menossa olevan sama asia. Joten kellukkeet ovat ikään kuin että. Ne ovat kuin tekee tasa-arvoa.