Jason Hirschhorn: Mirë se vini. Pra, vetëm disa paralajmërime para se të fillojë. Pra seksione, secili duhet kanë sectioned tashmë. Seksionet normalisht të drejtuar nga e diela deri të martën. Pra, ju djema duhet të merrni detyrat tuaja. Dhe atëherë unë mendoj se javën e ardhshme ju do të jetë me TFS tuaj aktuale. Pra, nëse ju keni ndonjë pyetje, ose probleme, ose keni harruar të nenit. Disa njerëz bëjnë atë. Vetëm na tregoni. Na xhiruar një email në kokat. Atëherë orarit të punës. Ne kemi filluar orarin e punës javën e kaluar. Orari i punës çdo javë. Hëna është në Leveret 8:00-11:00. Marteve në kuadrat, kështu Cabot 8:00-11:00. E mërkurë, Mather 8:30-11:30. Dhe të enjten Annenberg 8:00-11:00. Pra Scratch, shumë njerëz nuk kanë nevojë për orarin e punës ndihmë për Scratch, të cilat është krejtësisht gjobë. Nëse ju bëni, kjo është absolutisht mirë si. Por në të ardhmen, problemi vendos, ata marrin shumë më të vështirë. Pra, kjo do të jetë miku juaj. Patjetër të shkoni për të orarit të punës. Planifikoni në vazhdim e sipër të orarit të punës. Kur ju merrni për problemin vendosur katër, pesë, gjashtë, shtatë, ju duhet të shkoni për të orarit të punës. Kjo është ku një shumë ndihmë dhe puna merr bërë. Unë mendoj se vitin e kaluar, vetëm për shembull, të enjten night-- kështu që unë mendoj se problemi grupe ishin për shkak të premten. Pra natën e të enjtes, ne do të kemi 200, 250 studentë në orarit të punës. Pra, patjetër të bëjë përdorimin e tyre. Këto janë miqtë tuaj më të mirë. Ashtu si kjo është ajo ku në qoftë se ju jeni mbërthyer në një grup të problemit, kjo është ajo ku ju ndoshta do të merrni ndihmë. Pra orarit të punës. OK kështu që ato janë paralajmërime. Njoftime janë bërë, kështu që le të fillojë. OK, aplikim. A download gjithë por aplikim? Jo. Si në mënyrë kaq. Unë lloj i shkarkuar pajisjen. E drejta në mënyrë që pajisja është e re këtë vit, kështu që ne jemi me siguri do të ketë disa bugs në të. Pra ju lutem shkarkoni sa më shpejt që të jetë e mundur. Pra, problemi i caktuar njëra do të tregojë ju saktësisht se si për ta shkarkuar atë. Duke filluar instalimi drejtë këtu. Kjo do të ju tregojnë se si për të shkarkuar pajisjen. Pra, definitivisht shkarko aplikim më shpejt se sa më vonë. Udhëzimet janë në spekulim P caktuar. Pra, nëse ju prisni deri të mërkurën natën, dhe atëherë ju keni probleme, dhe ju të na dërgoni një email në mesnatës në natën e mërkurë që ju nuk mund të shkarkoni aplikim, kjo është nuk është një arsye legit për një zgjatje. Ju duhet ta bëni këtë tani, dhe ju do të keni probleme. Unë u përpoqa për ta shkarkuar atë natën e fundit. Unë u zhvillua në një pak telashe. Nëse ju do të kandidojë në telashe instalimi, patjetër hit përsëritjen, sepse unë vetëm goditi rigjykuar a çift ​​herë, dhe në fund ai ka punuar, i cili nuk e bën asnjë kuptim, por ajo bën. Pra, patjetër të provoni përsëri, por në qoftë se ju dalë kundër një mur me tulla, na xhiruar një email në kokë, dhe ne do të të jetë më shumë se i lumtur për t'ju ndihmuar djema. Çfarë është up? STUDENT: Vetëm një pyetje të shpejtë. Nëse ata kontrolloni stil, ka një pjesë që thotë se ne nuk kemi përfshirë këtë. Jason Hirschhorn: Ende. STUDENT: Ajo thotë ekzekutuar atë. Si mund të ekzekutojnë që të sigurohuni që ajo është në sistemin tuaj? Jason Hirschhorn: Ju jeni shkuar për të drejtuar një komandë bash. Unë do të shkoj për këtë më vonë. Ftohtë. Kështu që pajisja mund të jetë një pak frikësuese, për shkak se ju jeni duke përdorur për të lloj konkurrojnë në grafik user interface. Pra Scratch ishte një grafik user interface, kështu që çfarë dua të them me këtë? Çfarë dua të them është se kur ju jeni të programimit, ju jeni në thelb duke përdorur blloqe të kodit. Ju mund të shihni kodin dhe stuff like that. Aplikim, ju jeni do të jetë bërë gjërat në një mjedis command line. Dhe kështu që për pjesën tjetër të jetën tuaj të programimit, ju jeni do të jetë bërë gjëra në mjedis command line. Pra, kjo është e mirë për të hidhen në fillim dhe për të marrë disa përvoja. Pra, le ta bëjmë atë. Pra, kjo është Rob. OK, kështu që le të vetëm të kërcejnë në linjë të komandës gjëra. Pra, kjo është aplikim. Dikush mund të më thoni pse ne përdorim një aplikim? Çfarë është aplikim? A e dini? Çfarë është up? STUDENT: Kjo është vetëm një makinë virtuale që ju të kandidojë kompjuterin tuaj në mënyrë që ju të mund të merrni mbi OS mosmarrëveshjet mes Mac dhe PC. Jason Hirschhorn: Perfect. STUDENT: Kjo është një template universal. Jason Hirschhorn: Po, është e si një template universale. Është i përsosur. Pra, vërtet, kjo është një makinë virtuale. Pra, kjo është në thelb një sistem operativ. Ky është një sistem operativ. Kjo është ekuivalente me tuaj Mac, ose ju PC, apo Linux tuaj. Kjo është njëjtë e saktë. Dhe kështu që ju mund të bëni gjëra të ngjashme. Në qoftë se ju të kërkuar për të, ju mund të shkoni online për shembull. Ju nuk mund të vërtetë shoh atë, por të drejtë këtu, Google Chrome. Ju mund të shkoni në internet në qoftë se ju doni të. Ky është një sistem operativ. Dhe arsyeja që ne bëjmë këtë është për shkak se kjo është shumë më e lehtë, kur ne jemi dorëzuar jashtë udhëzimet dhe çdo gjë. Në qoftë se kjo është vetëm një mjedis uniform, kjo është shumë më e lehtë për ne, dhe kjo është shumë më e lehtë për ju. Ju nuk jeni duke shkuar për të kandiduar në të kandidojë në ndonjë veçantitë kur ju jeni të programimit. Ne e dimë saktësisht se çfarë ju jeni do të kandidojë në. Pra aplikim është këtu. Pra, kur ju jeni duke filluar programimit, ju jeni do të zbresin në qoshe dorën e majtë. Ka një kuti të vogël. Ju jeni duke shkuar për të click it. Kjo është dritarja e juaj terminal. Pra, kjo është ajo ku ju do të jeni të jetë një shumë e semestrit. Pra më lejoni të zoom në një pak. OK, kështu që duke marrë rreth një terminal Dritarja është pak ndryshe. Së pari, nuk ka asnjë ikonat. Unë nuk mund të klikoni asgjë. Nuk ka asgjë për të klikoni. Kështu që ju duhet të gjej një mënyrë për të kuptoj se ku jeni, çfarë është këtu, dhe si të lëvizë. Pra, dy komandat më të dobishme ndoshta janë ls-- kështu që çfarë mendoni ls bën? STUDENT: Lista. Jason Hirschhorn: Listat, vërtet. Ajo vetëm liston algoritma brenda directory. Dhe pastaj cd. Pra, le të thonë se unë të kërkuar për të cd CS50, çfarë ka që të bëjmë? Vërtet? STUDENT: Ndryshimet dosjen tuaj. Jason Hirschhorn: Perfect, vërtet. Ajo thjesht ndryshon directory. Pra, le të kthehemi. Pra, si mund të kthehem? Pra, le të thonë se unë të kërkuar për të shkuar mbështetur në dosjen e mëparshëm. Po sigurt. STUDENT: Unë mendoj se ju shkruani cd vetëm pa asgjë. Jason Hirschhorn: Ju mund të bëni atë. Në mënyrë të përsosur. Pra, nëse unë shkruaj cd, kjo është në të vërtetë do të pop mua mbështetur në directory shtëpi. Kështu që ju shihni këtë Tilde, që do të pop mua rrugën prapa deri ku tildë është. Pra, ajo do të pop-up mua përsëri në directory shtëpi. Por le të thonë se kam bërë diçka si kjo. Le të thonë cd CS50. ls përsëri. Unë kam marrë sende të tjera. Seksioni super cd. fotografi cd, kështu që unë jam duke shkuar thellë. Dhe pastaj le të thonë se unë dua të vetëm pop up përsëri në krye. cd. Le të thonë se unë nuk dua të bëj atë. Le të thonë se unë vetëm dua të pop përsëri deri në Lista që ishte e drejtë mbi mua. Si mund ta bëjë këtë? Pra, le të themi cd CS50. supersection cd. Pra, le që unë jam këtu. Le të thonë se unë vetëm dua të pop up një herë. Si mund ta bëjë këtë? Po, çfarë është lart? STUDENT: Ju vetëm lloji cd supersection përsëri. Jason Hirschhorn: Ju mund të bëni atë. E pra unë jam në supersection. STUDENT: Oh, ai më parë. Jason Hirschhorn: Po, kështu që ju mund të bëni atë. Ju bëni cd ~ CS50. Pra, nëse ju shikoni këtu, kjo është rruga jote e drejtë këtu. Kjo është rruga e juaj. Kështu që ju mund të seriozisht thjesht shkoni cd ~ / CS50. Boom, ju jeni atje. Çfarë është një mënyrë e lehtë për të bërë atë pse? Kjo ishte krejtësisht e saktë, por çfarë është një mënyrë pak më të lehtë ta bëjë atë, sepse shumë e herë ju do të jeni për t'u hedhur në directories, hedhur nga directories. Pra, le të kthehemi. supersection cd. Pra, le të thonë se unë dua të kthehet të vërtetë të shpejtë. Ju mund të bëni diçka si cd dot dot. Kjo do të pop ju mbështetur të vërtetë të shpejtë. Pra, cd supersection. Fotografi cd. Le të thonë se unë jam këtu. Nga rruga, e qartë është e mirë, sepse tim Dritarja ishte duke marrë një pak çrregullt. Pra ls, kështu që unë nuk dua të të jetë këtu. cd dot dot. Merrni mua një dorë. Cd dot dot merr mua një dorë. Cd dot dot dhe të kthehet në shtëpinë time. OK, kështu cd, ls. Ndoshta më e rëndësishme gjërat, sepse ju jeni do të duhet të dini se ku ju jeni. ls do të thoni ju ku jeni, dhe cd është se si ju jeni duke shkuar për të kërcejnë rreth. Ju gjithashtu mund të bëjë disa gjëra të tjera të ftohtë. Kështu për shembull ls. ls është vetëm do të ju tregojnë drejtoritë në dosjen tuaj. Kjo gjithashtu do të ju tregojnë fotografi. Por kjo është vetëm do të të ju tregojnë se çfarë është atje. Nëse keni kërkuar diçka pak më të freskët, dhe ju do të jeni të bëjë në fakt kjo në disa javë. ls dash l. Kjo kopje out a pak më shumë informacion. Mund të mendoj dikush në anën e majtë anën e drwx, rwx dhe stuff like that. A ka dikush një ide se çka mund të thotë? STUDENT: Lejet. Jason Hirschhorn: Po, të përsosur. Permissions. Pra, ju jeni duke shkuar për të duhet të merren me këtë kur ju bëni programimit web vonë. Nëse ju keni shkuar ndonjëherë në internet, dhe ju keni klikuar në një imazh ose klikuar në një fushë, dhe ai tha permission-- si leje nuk lejohen, apo si leja nuk jepet apo çfarëdo, kjo është për shkak se kur ata janë të programimit, ata nuk kanë vendosur këto lejet për të ju lejojnë të bëni këtë. Pra, ku që vjen nga. OK, kështu që është cool. Pra, ne u hodh rreth. Ne mund të shohim në sende në directory tonë. Por si mund të bëjmë gjëra? Unë kam marrë directories këtu. Kjo është awesome. Si mund ta bëjë një directory të re? Thonë se unë dua të bëjë një të ri Lista për tani. Ju mund të bëni diçka si kjo, mkdir. Pra, ti directory. Pra, çfarë ju dëshironi të e quajnë këtë direktori? STUDENT: mbresëlënës. Jason Hirschhorn: mbresëlënës. I love it. Bëni directory awesome. Dhe ju shkoni atje. Pra, ne kemi nevojë për një listë. Ju keni një directory të re. Dhe ju mund të them se është një Lista në pajisjen tuaj sepse ai e mori këtë ngjyrë, të drejtë? Pra, kjo është si një kaltërosh purpurt ose çfarëdo. Pra, le të ndryshojë. Le të ndryshojë directory. Le të shkojnë në directory-- vërtet, çfarë është lart? STUDENTORE: A ka një listë të të gjitha këto [padëgjueshme] online? Jason Hirschhorn: Po, unë do të vënë ata up on-- ne do të kemi slides. Ajo do të jetë një PDF. Ne do të vënë ato për të gjithë. Yeah, keq kjo është një shumë e komandave. në qoftë se ju doni mua për të ngadalësuar, apo kthehem, apo diçka të tillë, patjetër let me know. Kjo është një shumë për të absorbuar menjëherë. Çfarë është up? STUDENTORE: A mund të të pyes a Pyetja potencialisht budalla? Jason Hirschhorn: Ka Nuk ka pyetje budallaqe. STUDENT: Nuk janë. Një Lista është për vetëm në kërkim në informacion, ku ju ruani atë. Jason Hirschhorn: Po. STUDENTORE: A është kjo në thelb çfarë jeni duke bërë? Pra, kur ne bëjmë diçka, Hello World apo çfarëdo, është e ruajtur në directory, po? Jason Hirschhorn: Po. STUDENTORE: A është e vërtetë për çdo gjë. Çdo gjë është ruajtur në directory. Jason Hirschhorn: Po. Kurdo që ju të bëni atë, çfarëdo directory ju jeni në, ajo do të në thelb ruajtur atë në këtë directory. STUDENT: Dhe kur ne jemi duke e quajtur atë, ne jemi duke e quajtur atë nga directory. Jason Hirschhorn: Yeah, kështu që Lista është aty ku ajo es. Pra, kjo është lloj i si në qoftë se ju keni një dosje të re në tavolinën e punës tuaj dhe pastaj ju shkruani një tekst fotografi, e vënë atë në atë dosje, kjo skedë është në atë dosje. Ka që e bëjnë kuptim? STUDENT: Po. Jason Hirschhorn: Po, çfarë është lart? STUDENT: Mund vetëm të ju pyes për e bëjnë atë një pak më e madhe? Jason Hirschhorn: Oh, po. Më vjen keq. Projektues është aq e keqe. Ne kemi pasur aq shumë probleme me këtë më herët. A është kjo e mirë? Është se shumë i madh? STUDENT: Jo, jo nuk është. Jason Hirschhorn: Jo, nuk është. Është shumë e vogël? Çfarë është up? STUDENT: Unë jam i keq, çfarë është komanda për pastrimin? Jason Hirschhorn: Oh, e qartë. Nëse ju doni të qartë, vetëm lloji i qartë. qartë të hyjë. Në aplikim të fundit, atë që në thelb bën, kjo nuk do të qartë informacionin tuaj, ajo vetëm lloj të zhvendoset gjithçka poshtë një ekran. Pra, nëse ju typed clear-- për shembull le të thonë se unë jam scrolling up. Unë mund të shkoni lart. Kjo është gjithçka që kam bërë. Por në qoftë se unë lloji i qartë, dhe pastaj I shkoni up, këtu është stuff im. Pra, kjo nuk është fshirja atë, kjo është vetëm thelb ju dhënë një kornizë të re. STUDENT: Si të bëni ju [Padëgjueshme] a directory? Jason Hirschhorn: Ne do të merrni atje. [Qeshura] Slow roll tuaj. Dakord. OK, kështu që kështu që ne jemi në një Lista tani. Kështu Davidi, unë mendoj se në leksionin Ai bëri disa cool stuff. Pra, le të shkruajë një program. Kështu që ju mund të bëni që një numër mënyrash të ndryshme. Ju mund të përdorni çdo lloj editor teksti. Ju mund të përdorni Nano, ju mund të përdorni VIM, Emacs. Ata që janë pak më të komplikuara. Ose ju mund të përdorni diçka në këtu është quajtur gedit. Më vjen keq. gedit nuk është i lumtur. Pra gedit është në thelb vetëm një editor teksti. Ashtu si unë text redakto fjalës procesor ose diçka të tillë. Pra, ajo e mori një të mirë Ndërfaqja ashtu si kjo. Kështu që ju të bëni diçka të tillë. Pra, në fakt më lejoni të jap emrin sepse unë kurrë nuk e bëri atë. Pra, çfarë ju dëshironi të përmendur programin tonë të parë? Është vetëm do të thonë hi. STUDENT: [padëgjueshme]. Jason Hirschhorn: Ju mungon imagjinata. OK, gedit. Hi. Unë jam duke shkuar për të bërë txt. OK, kështu që këtu është. Pra, le të shkruajë një program. Kështu që unë mendoj se ju e panë këtë në leksion. Ju duhet një funksion kryesor. Boop. Pra, kjo është vetëm një funksion kryesor. Bigger? Po, sorry. OK kështu që ju duhet një funksion kryesor. Unë mendoj se unë jam duke kërcyer armë pak, por ajo nuk është e keqe për të marrë përdorur për këtë lloj të gjëra. Pra, një funksion kryesor, çdo program C jeni do të shkruaj për pjesën tjetër të këtij Sigurisht do të ketë një funksion kryesor. A e dini pse? Çfarë është up? STUDENT: Fillimi. Jason Hirschhorn: Pikërisht, kështu që tregon programi juaj se ku të fillojë. Pra, nëse ju nuk keni një funksion kryesor, dhe ju përpilojnë këtë dhe sende, kjo nuk do të dinë se do të fillojë. Kryesor është gjithmonë aty ku fillon. Pra, ju keni një funksion kryesor, dhe pastaj ka dikush kujtohet se si për të shkruar? STUDENT: printf. Jason Hirschhorn: Po, printf. printf hi. OK, tani kam vendosur që ju djema deri të dështojë, por do të këtë të përpilojnë. STUDENT: Jo Jason Hirschhorn: Pse? Ka arsye të shumta pse. Të sigurt. STUDENT: Nuk ka standardi [padëgjueshme]. Jason Hirschhorn: Perfect. Pra, çfarë është kjo quhet deri këtu? STUDENT: [padëgjueshme] Jason Hirschhorn: Është e a header file, e drejtë? Kjo është një header fotografi. Dhe ju jeni saktësisht e drejtë. Dy prej jush janë të drejta. Pra, për të përfshirë atë, unë vetëm bëj paund përfshijnë standarde .h output input. Jam i mirë për të shkuar tani? Do të hartojë këtë? STUDENT: Jo Jason Hirschhorn: Pse jo? STUDENT: Kjo është një [padëgjueshme] teksti. Jason Hirschhorn: Po, awesome. Kështu që unë vetëm e bëri atë. Kështu që unë shpëtoi, por gedit hi.txt. Deri tani, nëse unë bëj ls, këtu është. Drejtë këtu. Oh, kjo nuk është në awesome. Unë duhet të ketë dalë. Oh, të përsosur. Si nuk kemi vënë këtë në awesome? Kështu që unë nuk dua atë këtu në shtëpinë time Lista me çdo gjë tjetër. Unë dua të vënë atë në dosje. Si mund ta bëjë këtë? Jo shumë e vështirë. Leviz. Pra, ne kemi mësuar tashmë ls, lista. cd të ndryshojë directories. cd dot dot të përplasem jashtë directories. Dhe tani ne jemi duke shkuar për fillojnë të lëvizin përreth fotografi. Pra, për të lëvizur vetëm lëvizin hi.txt, dhe Unë jam duke shkuar për të vënë atë në awesome. Vetëm të jenë të kujdesshëm. Kurdo që ju jeni me shkrim në command line, çështjet çdo gjë. Çështje kaq uppercase. Nëse unë kisha bërë vogle a, është e nuk do të dinë se çfarë po ndodh. Pra, çështjet çdo gjë të jetë shumë e veçantë. Vraponi në mënyrë që ls. Nuk është më këtu. Le të ndryshojë në dosjen awesome. ls. Boom, është atje. Dhe dikush përmendi pse kjo nuk do të përpilojnë. Pse nuk do të përpilojë përsëri? Vërtet? STUDENT: Kjo nuk është në .c. Jason Hirschhorn: Perfect. Kjo nuk është një .c, s aq sa jam unë do ta riemërtoni atë në një .c? Çfarë është një mënyrë e lehtë për të bërë atë? Le të përdorim komandën ne vetëm e bëri. Pra, ne jemi vetëm duke shkuar për të lëvizin hi.txt të hi.c. ls hi.c. Dhe pastaj vetëm për argëtim, le të vetëm të kërcejnë në këtë të shpejtë të vërtetë. hi.c. Ju do të vëreni se është e bukur dhe të gjallë. Pra, këto janë vetëm lloj të dobishme ngjyrat, kur ju jeni të programimit. Pra, int dhe i pavlefshëm, ato janë lloje të të dhënave. Ne do të shkojnë më shumë se ata që janë në një të dytë. Hi është një string. Por ngjyra të dobishme. Pra, nëse ju ndonjëherë aksidentalisht zgjidhni gabuar extension, ju duhet të keni këto ngjyra. Çfarë është up? STUDENT: Si mund të kopjoni në a paraqesë [padëgjueshme] në një skedar? Jason Hirschhorn: Oh, unë jam do të ju tregojnë se shumë. Pra kopje hiqni janë në bankën e të akuzuarve. Le të bëjmë këtë. Sigurohuni që ajo punon. Bëni hi. Punon, e drejtuar atë. Pra ./hi awesome. Kjo është programi juaj i parë. Më lejoni të bëjë atë të mëdha. Pra, a me të vërtetë good-- Yeah, çfarë është lart? STUDENT: Pse do të jetë se kur unë të marrë Gedit, kjo nuk më jep mua një tjetër linjë për Gedit hi.txt? Ajo vetëm vë kursorin në një linjë. STUDENT: Po. [Padëgjueshme]. Jason Hirschhorn: Prisni, kështu thonë se përsëri. STUDENT: Kur unë lloji Gedit, e hera e parë, line-- parë Jason Hirschhorn: Up atje në krye? STUDENT: ka asnjë J Harvard aplikim, dhe kursori është vetëm të gjitha rrugën në të majtë. Jason Hirschhorn: All mënyra në të majtë? STUDENT: Po. A ka dikush tjetër të ketë kjo? Jason Hirschhorn: Oh, mirë J Harvard është vetëm si emër. Pra, kjo është vetëm emrin standarde. STUDENT: Është ndalesa përgjigjej. Jason Hirschhorn: Oh, ajo ndalon përgjigjej. OK, kështu që ajo që ju duhet të bëni është të ju keni për të mbyllur jashtë gedit. Aq afër nga gedit, dhe ai duhet të kthehet. Pra, është e gedit hapur në tuaj aplikim të drejtë tani? Nëse dilni nga ajo, ajo duhet kthehet dhe ju duhet të jetë mirë për të shkuar. A atë punë? STUDENT: Kështu bëri që ju të përdorni komanda gedit të open-- Jason Hirschhorn: Jo, e parë Komanda gedit ishte një gabim. Komanda parë gedit, Unë të bëj gedit hi.txt. Kështu që unë t'i jepte një emër, hi.txt kështu gedit. hi.txt është emri i file. I pari ishte vetëm një gabim, dhe pastaj I mbyllur shpejt nga programi. Pra, pyetja ishte në qoftë se unë bëj Gedit, unë nuk jam do të jetë në gjendje të vërtetë të bëjë çdo gjë tjetër në linjën time të komandës deri sa unë mbyllur që gedit, kështu që unë Mendoj se kjo është ajo që ata u përplas. Pra mbyllë gedit. Ajo do të kthehet nga ajo program, dhe pastaj ju do të të jenë në gjendje që në fakt të tipit në vijën komanduese përsëri. A është kjo e mirë? Dope. Pra, vetëm sigurohuni që për të mbyllur ajo në qoftë se ju drejtuar në telashe. OK, kështu që një pyetje të vërtetë të mirë një sekondë më parë ka kopjuar. Deri tani unë kam hi.c. Por le të thonë se unë dua për të ndryshuar atë. Unë dua që ajo të jetë pak më të mirë. Unë dua të them klasë hi. Por unë dua të mbajtur këtë template. Unë nuk kam për të rishkruar gjithë programi përsëri. Unë dua për të mbajtur template. Si mund të kopje? Easy. Pra cp hi.c newhi.c. Tani unë kam dy. Dhe atëherë unë mund të hapur deri newhi.c, dhe në vend të vetëm duke thënë se hi, Unë do të them klasë hi! Kështu që unë do të kthehem. Dil jashtë. Kthehu mbrapa në linjën time të komandës. ls bëjnë newhi. Drejtuar atë. Atje. Është më mirë, shumë më mirë. Pra, nëse ju doni të kopjoni diçka, lehtë si ajo. cp është kopje. Pra, ne kemi shkuar mbi lëvizje, bërë directories, kopjim. Le të shohim se çfarë tjetër duhet të shkoj mbi? Oh, po. Le të shkojë mbi këtë. Pra, kjo ishte awesome. Le të thonë se unë doja to-- oh prisni. Unë jam duke shkuar për të shkuar mbrapa në awesome. Le të thonë se unë nuk dua këto fotografi të drejtë këtu. Le të thonë se unë dua ato në një të re directory si në directory awesome. Unë dua të fillojë organizimin, kështu që tani unë jam duke shkuar që të ketë një directory të re të quajtur hi. Ajo mori të gjitha programet Unë shkruaj quajtur hi. Pra, si do të bëjmë këtë? STUDENT: Ndryshimi directory. Jason Hirschhorn: Po. hi. Boop. mkdir hi_dir. Ajo është ankuar për shkak se I tashmë kishte një hi këtu. Deri tani unë kam një directory hi. Pra, tani unë dua të shkojë çdo gjë, të gjitha programet e kam shkruar, Unë dua për të lëvizur në directory hi. Vetëm të pastër sende up. Si mund ta bëjë këtë? STUDENT: [padëgjueshme]. Jason Hirschhorn: Moving atë, e drejtë? Pra, le të shkojë. Vërtet? STUDENTORE: Çfarë është dallimi në mes hi dhe hi.c se ne tashmë kemi. Jason Hirschhorn: Oh, hi.c është aktuale. Pra, kjo është fotografi që ju ka shkruajtur. Pra, në qoftë se keni qenë duke shkuar për të të hapur atë në gedit apo Nano, kjo është ajo që ju jeni të shtypni. Kur ju përpiloni atë, atëherë që ju të merrni një skedë të ekzekutueshme. Kjo është e hi. Pra, nëse ju hapur hi, kjo do të jetë një bandë e dërdëllisje për ju. Ajo në thelb do të jetë bandë e udhëzimeve kompjuterike. Çfarë është up? STUDENTORE: Çfarë do të thotë të gjitha ngjyrat? Blu është ndoshta directory. Çfarë është e verdhë? Jason Hirschhorn: Ata janë fotografi ekzekutueshme. Pra, kur unë kam bërë hi.c, atë dha me-- kështu që unë mund ta bëjë këtë. Jumping armë. Pra, hiqni hi po. Pra, atëherë le të bëjë ls. Unë nuk kam hi më. Pra, kur ju bëni, kjo është kur ju marrë programin që ju ka shkruajtur dhe ju bëni një skedë të ekzekutueshme. Pra, ti hi.c-- mirë, të bëjë hi. Unë mendoj se ai kaloi këtë në leksion. Këto janë bandë e udhëzime përpiluesit. Pra, në vend të pasur nevojë të vërtetë shkruaj tingëllim me të gjitha këto. Këto janë flamuj. Ju vetëm shkruani bëni. Pra, kjo e bën fotografi ekzekutueshme. Pra, kur ju bëni ls, tani ju keni hi. Pra, kjo është ajo që ju jeni do të vërtetë të drejtuar. Dhe kështu që ju drejtuar atë duke bërë ./hi, dhe ajo shkon programin tuaj. Por në qoftë se unë të përpiqet të bëjë atë me të hi.c, jo, ajo nuk do të punojnë. Po, ka që e bëjnë kuptim? STUDENT: Mm-HM. Jason Hirschhorn: ftohtë. Prisni, desha të them diçka tjetër. Vetëm të vërtetë të shpejtë, në rast dikush është i interesuar, kur hidhesh nga nje directory, kjo është dot dot. A ka dikush një ide të asaj që ndoshta vetëm njëjës dot mjetet? STUDENT: [padëgjueshme]. Jason Hirschhorn: Është e në fakt directory aktuale. Pra, kjo është directory tuaj të tanishme. Kështu që unë jam këtu. Unë jam në awesome. Nëse unë bëj cd dot, ajo nuk ka të bëjë asgjë. Ajo merr mua për directory time aktuale. Pra, a të tepërta pak, por ju keni për të bërë këtë, kështu që ./ emrin e programit tuaj, në mënyrë që të kandidojë tuaj program, ju duhet të bëni atë. OK. STUDENT: Nëse ju bëni cd dot dot dot, megjithatë shumë dots do të vetëm të marrë ju deri se shumë directories? Jason Hirschhorn: Ju do të thotë si cd dot dot dot dot? STUDENT: Po. Jason Hirschhorn: No. Pra, në fakt Mos harroni që unë kam l ls? Në qoftë se unë bëj diçka tjetër, unë mund ls -A. Pra, çfarë thotë ky është -A ju tregon gjithçka. Pra, kjo ju tregon gjëra të cilat janë të fshehur dhe gjëra që nuk janë të fshehura. Pra, nëse ju vëreni se kur kam bërë vetëm ls, unë pashë vetëm atë stuff, gjëra kam bërë. Nëse unë bëj -A, ajo do të më tregoni gjithçka. Dhe directory aq aktuale, directory mbi të. Ka që e bëjnë kuptim? Vërtet? STUDENT: Por, ata nuk janë të aktualisht në directory. Lista aktuale nuk është në vetvete, kështu që pse të tregojnë ato me pika brenda? Jason Hirschhorn: Ju do të thotë se është si ajo nuk është në directory. STUDENTORE: E drejta. Pra, ne kemi një listë të gjërave që janë në dosjen. Jason Hirschhorn: Unë mendoj se ajo është në direktoriumin. Ashtu si -një tregon çdo gjë, madje edhe nëse është e fshehur brenda directory. Kështu që unë mendoj se kjo është vetëm një rrugë për të Lista aktuale në qoftë se ka kuptim. Kjo është një rekursive pak. Është si Fillestar. Çfarë është up? STUDENT: Pra, ju tha tregon -Një [padëgjueshme]? Jason Hirschhorn: -a, vërtet. STUDENTORE: Çfarë e bën atë [e padëgjueshme]? Jason Hirschhorn: Well, për shembull, le të shkojë mbrapa deri në krye. Kjo është zakonisht gjëra që ju nuk duhet të rrëmujë me dhe ju nuk keni nevojë për t'u shqetësuar rreth. Pra, kjo është lloj i shtëpisë. Nëse unë bëj -a, unë të marrë ton e gjëra. Të gjitha që stuff. Dhe ju nuk keni nevojë për të bela me ndonjë të këtij stuff. Definitely nuk do të fillojnë të shkojnë këtu dhe vetëm për të hequr sende. [Qeshura] Po, kjo ishte pak më shumë Sende të qetë, por është mirë të dihet. Unë mendoj se është mirë të dihet. Por në qoftë se ju nuk doni të shkruani -A në tërësi të këtij kursi, vetëm harrojmë atë. Çfarë është up? STUDENTORE: Çfarë është ls -l? Jason Hirschhorn: Kjo ju tregon leje. Në thelb ju përdorni atë për leje, kështu l. Kjo ju tregon pak pak më shumë informacion, por përsëri, kjo është pak pak gjëra më të qetë. Këto janë vetëm lejet. Kështu lejet e dosjeve. Pra, vetëm për shembull, le të thonë se unë bëra një dosje, kështu d përfaqëson directory. Pra, ata janë të directories. Dhe pastaj lexojnë, shkruajnë, ekzekutuar. Pra, ata janë lejet për Unë mendoj se përdoruesit, grup, bota. Krejtësisht shkuar shumë larg. Ju jeni duke shkuar për të shkuar në këtë si javë nga tani, por vetëm në mënyrë ju e dini, ato janë lejet. Çfarë është up? STUDENTORE: A mund të qartë se sa vetëm kaloni gjë tjetër, mund të you-- Jason Hirschhorn: Ti do të thotë në të vërtetë fshini? Nuk e di. Unë kurrë nuk e bëjnë këtë. Pse do të doni të bëni atë? Pse do të bëni atë? I like it. Ju jetoni në buzë. Ju jeni si unë nuk dua asgjë nga këto. Kjo është intensive. STUDENT: [padëgjueshme]. Jason Hirschhorn: Po, ne mund të bëjmë atë. Na vjen keq, messing me madhësi është krejtësisht freaking me jashtë tani. Le të shkojnë deri. Yeah, kështu që tani unë nuk mund të shkojnë deri më. Pra, çdo gjë që unë mësuar ju është zhdukur përgjithmonë. Falemnderit. Ne kemi bërë directories tona. Ne kemi bërë dosjet tona dhe stuff like se, kështu që ne ende kemi të gjithë që stuff. OK, unë do të shkoj shpejt. Në mënyrë të vërtetë të shpejtë. Pra, le të thonë se unë jam në awesome. Le të thonë se unë të kërkuar për të lëvizur gjithçka në directory ri sepse unë vetëm dua për të organizuar atë, e drejtë? Pra, si do ta bëjë këtë. Leviz. Ne jemi duke shkuar për të përdorur lëvizje përsëri. Pra lëvizin hi.c. Dhe çfarë ju mund të bëni është ju filloni listë sende, dhe gjëja e fundit që ju listë është ku do të lëvizin atë. Pra lëvizin hi.c, hi newhi newhi.c, hi_dir. Dhe kështu që u zhvendos gjithçka në gjëja e fundit që ju përmendët. Pra, pastaj të ndryshojë directory, ls hi_dir. Çdo gjë është në atje. Pra, kjo është e bukur dhe më të organizuar. OK, le të thonë se unë e urrej programi im origjinal hi. Unë dua të shpëtoj prej tij. Si mund ta shpëtoj prej tij? Çfarë është up? STUDENT: [padëgjueshme]. Jason Hirschhorn: Le të thonë se unë vetëm duan për të hequr programin, kështu që vetëm hi. Jo, ju jeni të drejtë. Pra, kjo është rm, por ju bëni rm hi. Kjo do të ju jap një paralajmërim të vogël. Ajo do të thonë se jeni të sigurt që ju doni të fshini këtë, dhe po bëj. Nëse ju nuk dëshironi të të nxitet si kjo sepse ju nuk keni kohë për paralajmërime, hiqni -F. Kjo është një tjetër flamur. Është si l. Është si -A. Këto janë vetëm flamujt që ju jeni duke i dhënë për këto komanda. Pra, hiqni -F. f f do të thotë fuqi. Pra, të detyrojë atë. Unë nuk dua që të nxitet. Pra, hiqni -F. Le të bëjmë hi.c. Vetëm mori shpëtoj prej tij. Ajo nuk më thoni. Por le të thonë se në vend që unë jam bërë me këtë directory. Unë dua të shpëtoj prej directory. Kështu që unë do të hiqni hi_dir. Jo, kjo nuk funksionon. Jo, kështu që nuk do të le Më hiqni një directory. A ka dikush një ide? STUDENTORE: A është hequr dir? Jason Hirschhorn: Pra hiqni si kjo? STUDENT: Jo Vetëm [padëgjueshme]. Jason Hirschhorn: Jo, tani nuk ka hi. Ka vetëm hi_dir. Pra, kjo është directory. Pra, në të vërtetë atë që ju doni të bëni is-- oh, ju keni një ide? Unë e shoh si një dorë e gjysmë. STUDENT: [padëgjueshme]. Jason Hirschhorn: OK. STUDENT: [padëgjueshme]. Jason Hirschhorn: OK. Pra, nëse unë dua të hiqni një directory, hiqni -r. Kjo është gjithkund rekursive. Pra, hiqni atë directory rekursive. Kështu që unë dua që ju të shkoni në atë directory, hiqni çdo gjë në directory, dhe pastaj të heqin qafe e directory. Dhe atëherë unë jam duke shkuar për f, si edhe, për shkak se unë nuk duan që ajo të menjëhershëm mua me paralajmërime pasi ajo heq çdo skedë të vetme. Pra, hiqni hi_dir -rf. Boom, është e shkuar. Vetëm të jenë të kujdesshëm kur ju përdorni atë. Unë jam duke shkuar për të përdorin atë edhe këtu. -rf awesome. Ajo e shkuar. Të jenë të kujdesshëm kur ju përdorni atë. Në qoftë se ju përdorni atë këtu dhe shkruani diçka si kjo, nuk do të bëjë kurrë atë. Kjo do të fshijë çdo gjë në tuaj aplikim ndonjëherë pa paralajmërim ju. Dhe unë e kam bërë këtë. Problemi Nota vendos në 04:00, unë isha duke u përpjekur për të hequr problematike directories të përcaktuara, dhe unë e bëri këtë. Dhe unë isha si oh my god. Mos do-- Unë u përpoqa ta anuloni atë. Ju mund të anuloni. Komanda C vetëm anulon çdo gjë, por unë tashmë fshihet si 75%. Kështu që unë shkatërruar atë. Dhe njerëzit e bëjnë këtë. Gjithkush e bën këtë. A nuk e bëjnë këtë edhe këtë semestër. Ajo sucks. Unë jam i shqetësuar duke pasur këtu. Unë jam duke shkuar për të fshirë atë. [Qeshura] Mund ta imagjinoni? OK, pyetje. Po? STUDENT: Pra, nëse ne bëjmë gjithçka ju jeni duke bërë këtu, është kjo njëjtë pasi vetëm duke shkuar në të vërtetë paraqesë ruaj si [e padëgjueshme]. Jason Hirschhorn: Oh, do të thotë nëpërmjet gedit. STUDENT: Po. Jason Hirschhorn: Po është. gedit është e dobishme. Pra gedit është shumë i dobishëm. Në këtë klasë, ju mund të bëni një shumë gjëra përmes gedit. Ju mund të ruani. Ju mund të riemërtoni. Ju mund të lëvizin fotografi dhe gjëra si kjo, por vetëm të vërtetën, kur ju shkoni në 50-- edhe ju jeni në 50-- 51, në qoftë se ju shkoni në 61, kjo do të jetë jeta juaj. Kjo është linja e komandës. Kjo është ajo ku ju do të programoni për pjesën tjetër të jetës tuaj, kështu që patjetër të përdorin Gedit në qoftë se ju dëshironi. Definitely një mënyrë e mirë për të filluar. Për problemi i parë përcakton, patjetër përdorin, por çdo herë në një kohë përpiqen për të marrë më të përdorura më të rehatshme me argumente command line. Por ju mund të, patjetër. Çfarë është up? STUDENT: Pra, kur ne duam të fshini një prej dosjeve që ne kemi bërë, ka dy mënyra. [Padëgjueshme]. A ka ndonjë mënyrë, kur ju jeni fshirjes një direktori të kërkoni shpejtë kështu ju nuk do të deri në fund fshirjes atë? Jason Hirschhorn: rm -R. Pra, nuk e detyrojnë atë. Pra rm -R. Ajo do të shkojë nëpër rekurzive, fshini çdo gjë, t'ju kërkojë pas çdo gjë, e cila do të dëbojë ju arra. Ashtu si unë pothuajse ekskluzivisht bëj rm -f dhe rm -rf, vetëm vazhdimisht. Unë jam si unë nuk kam kohë. Unë jam një njeri i zënë. Në rregull, çfarë është lart? Po. STUDENTORE: A ka një undo, ose një bin plehra, apo diçka të tillë? Jason Hirschhorn: No. [Qeshura] Unë mund të ktheheni mbrapsh dhe të merrni tim aplikim që unë vetëm fshihet, nr. Jo, jo, jo. Nëse ju bëni rm, ajo duhet të jetë zhdukur. Çfarë është up? STUDENT: Pra, ju mund të [Padëgjueshme] së bashku. Jason Hirschhorn: Po, tamam si kjo. Kështu për shembull, ju pa -rf rm. Le të thonë se unë dua të bëj ls -la, ajo tregon mua çdo gjë, madje edhe fshehur gjëra me leje të tyre. STUDENT: Pra, atëherë r, e -R Flamuri, në qoftë se ne nuk kemi atë, ne nuk mund të fshini një drejtori, e drejtë? Jason Hirschhorn: E drejta. STUDENT: Kështu që thotë se ne duam të bëjë diçka me directory? Është se çka do të thotë? Jason Hirschhorn: -r thotë rekurzive. Pra një directory do të kanë fotografi në të, e drejtë? Pra, çfarë ju doni të bëni është që ju duan të shkojnë në atë directory, fshini çdo gjë, të gjithë fotografi në këtë direktori, pastaj pop out dhe të fshini Lista aktuale. Pra, -R thotë rekursive, të bëjë atë të gjitha Recursively nëse kjo ka kuptim. Po. STUDENT: Pra directories kanë [Padëgjueshme] dhe vetëm fshini atë. Apo ju still-- Jason Hirschhorn: Le të provoni. Pra mkdir bosh. Hiq bosh. Jo. STUDENT: Jo, kështu që ju ende nevojë për the-- Jason Hirschhorn: Po, gjithmonë. Pra -R, -rf, bosh. Awesome. Më pyetje? Unë mendoj se është në përplasje juaj Sigurisht on line command gjëra. Çfarëdo pyetjeje, sepse ne jemi duke shkuar për hidhen mbi të llojeve të të dhënave, dhe unazore, dhe të gjitha këto gjëra? Çfarë është up? STUDENT: Unë nuk kam CS50 duke treguar si një nga drejtoritë e mia. A është kjo normale? Jason Hirschhorn: Oh, po. Kjo është e imja. Po, kjo është ajo ku e mia zgjidhje për stuff tuaj është. [Qeshura] Pra, vërtet, kjo është absolutisht normale. Unë mendoj se ju do të ndoshta vetëm kanë këto katër. Unë mendoj se mund të jetë normale. Po. OK, asnjë pyetje? Unë e di se ishte super të shpejtë. Çfarë është up? STUDENT: Unë pashë ngjyrën blu e gjelbër. Çfarë është kjo? Jason Hirschhorn: Kjo do të thotë drejtori. STUDENT: Dhe kjo blu? Jason Hirschhorn: Oh, ju do të thotë ky gjelbër blu? STUDENT: Jo Jason Hirschhorn: Ky gjelbër blu? STUDENT: Jo Kur ju listed-- Jason Hirschhorn: Oh. Ashtu si kjo? STUDENT: Po, ikonat. Jason Hirschhorn: Oh, kjo. Nuk e di. Çfarë do të thotë kjo? Pra, kjo duket të jetë treguar në një directory. STUDENT: Është pothuajse duket si një pseudonim. Jason Hirschhorn: Kjo mund të jetë. Ju nuk keni nevojë të dini se. Më pyetje? Awesome. Nëse keni ndonjë pyetje, Unë e di se ishte shumë. Një shumë e këtij informacioni do të jetë online. Unë do të vënë atë në internet për ju djema. Seksioni B do të jetë online, si dhe. Ose në qoftë se ju keni pyetje, vetëm të dalë dhe të pyesni mua. Këtu ju shkoni. Deri tani Sharon dhe Hannah do të shkoj për disa e logjikës pas problemit të vendosur një të tillë. SHARON: Oh my god. Problemet. HANNAH: Në ndërkohë, unë jam Hanna. Kjo është e Sharon. Ne jemi të dy CS50 TFS, dhe ne jemi duke shkuar për të ju jap një intro të vogël në një çift të rëndësishme gjëra për problemin vendosur një të tillë. Çdo gjë nga llojet e të dhënave për conditionals për për sythe. Sythe në përgjithësi. SHARON: Dhe në fund, ne kemi do të marrë një sy në P vendosur një, dhe çfarë ju duhet të dini për të. Pra, le të fillojë me lloje të të dhënave. Ju djema duhet të jenë të njohur me ato që janë theksuar në ngjyrë blu. Pra, ne mund të fillojmë me ints. ints janë integers, kështu që një, dy, tre, katër. gjithandej, lundrues pikë. Ashtu si me integers dhjetore, kështu 5.2 apo edhe 5.0. Chars janë karaktere të tilla si A, B, C. Dhe një string, ju djema të gjithë e dimë. Ashtu si CS50 apo përshëndetje dhe bota. Bool është një Boolean, kështu që ne kemi e vërtetë dhe të rreme si Boolean tonë. Pra, nëse diçka llogarit në truth-- 5 barabartë me 5, që llogarit të vërtetë, dhe në qoftë se ne kemi 5 barabartë me 4, kjo është false, në mënyrë që llogarit të rreme. Dhe këtu ne kemi të lidhur madhësia e të gjitha këtyre llojeve të të dhënave. Dhe ju do të duhet të dini kjo për kuize tuaj, kështu që kjo mund të jetë e dobishme për të mos harroni, por ne do të postoni ato. Në fakt ata janë postuar tashmë. Kështu që ju duhet të jenë të njohur me ato theksuar në ngjyrë blu. Jason Hirschhorn: Real të shpejtë, vetëm në rast se ju duan të dinë dallimin midis një char dhe një varg. Pra, kur ju jeni me shkrim sende, kur ju keni diçka si "hi" kjo do të jetë një string. Pra, në qoftë se ka dy Kuotat, kjo është një string. Por në qoftë se unë ishin në një "h" si kjo, kjo është një string. Por në qoftë se unë vetëm një të tillë quote, kjo është një char. Dhe kështu që çfarë është Dallimi ju mund të kërkoni. E pra, dallimi është kjo është një bajt e kujtesës. Kjo është 4 bytes i kujtesës. SHARON: noton? Përshkruani atë përsëri? OK, kjo është lloj i si një numër që ka një pikë dhjetore me të, kështu 5.2 apo edhe 5.0 është një noton kundrejt vetëm 5 është një int. STUDENT: [padëgjueshme]. SHARON: Oh, ajo mund të ketë shumë pikë dhjetore, kështu 5,675-3,1415. Po? STUDENTORE: A kemi nevojë të dimë të gjitha madhësive për këtë? SHARON: Po. STUDENT: [padëgjueshme]. SHARON: Ju nuk shqetësohen për ato bardhë vetëm ende. HANNAH: Shënimet janë postuar në CS50.net/sections. STUDENT: Vetëm nga kuriozitet, a ka një dobi për të ditur madhësinë e dosjeve ju jeni duke e quajtur në mënyrë që ne duhet të dimë se? SHARON: Pra, këto janë llojet e të dhënave, por po. Pra, në këtë rast, që një mbanit marrë më shumë memorie apo më shumë hapësirë? Jason Hirschhorn: Pra për një shembull konkret, në Unë mendoj vendosur problemeve katër ose pesë, ne jemi do të ju jap një bandë e të dhënave, dhe që në thelb duhet të kaloj nëpër atë dhënat. Pra, është e dobishme të dinë se në qoftë se ju keni kaq shumë integers, që do të jetë se çfarë. Pra, le të thonë se unë ju dhashë dhjetë integers, çfarë është madhësia e kësaj? STUDENT: 40. Jason Hirschhorn: 40 bytes, e drejtë. Kështu që ju mund të kenë nevojë të dini se OK, unë duhet të hidhen 40 bytes. Pra, le të thonë se në vend është 40 karakteresh, then-- le të thonë se unë ju dha 10 chars, atëherë ju e dini, OK, unë vetëm duhet të hidhen 10 bytes. Pra, kjo është shumë e dobishme të dinë Madhësia e llojeve të të dhënave aktuale, për shkak se një herë ju do lot të hedhur rreth të dhënave, kështu që ju duhet të dini se sa larg të hidhen. STUDENTORE: Çfarë është dallimi midis kuotat dhe një kuotë? Jason Hirschhorn: OK, Dy citate është një string. Një japin kuotën e tyre është një char. STUDENT: Si operative, çfarë është dallimi? Ata të dy thonë hi. Jason Hirschhorn: Oh, sorry. Kjo është vetëm h. Na vjen keq, kjo nuk është e qartë. STUDENT: Pra top one-- Jason Hirschhorn: Kjo është një string, vërtet. Pra, kjo është dy karaktere, e drejtë? String, hi. Por le të thonë se unë vetëm kishte një karakter të vetëm, në qoftë se kam vënë dy citate rreth vetëm h, që është një string. Kjo është një h string. Ka që e bëjnë kuptim? Pra, kjo është katër bytes. Por le të thonë se unë hoqa qafe e se vetëm vënë një. Një japin kuotën e tyre. Kjo është tani një char, një h char. Pra, të njëjtën gjë e saktë, lloj të ndryshme të të dhënave. Kjo është vetëm një bajt, ndërsa string ishte katër bytes. Po. STUDENT: Pra, nëse keni qenë duke u përpjekur për të ruajtur një fjalë si Davidi, ju do të dëshironi të përdorni një varg, sepse pavarësisht se sa kohë string është, ajo do të marrë vetëm katër bytes përveç nëse kjo është një kohë e gjatë ose një dyfishtë, ku case-- kështu nëse atë shtrihet përtej katër karaktere, atëherë ju doni të bëni atë në varg. A është kjo logjika e përgjithshme prapa. Jason Hirschhorn: Nëse shtrihet përtej një karakter, kjo është një string. STUDENT: Pra nuk ka asnjë [padëgjueshme] për ruajtjen e një letër katër Fjala si katër individ apo tre gërma Fjala si tre karaktere individuale sepse kjo do të jetë vetëm tre bytes, në krahasim me vargun e tri pjesë. Jason Hirschhorn: Ju mund të bëni atë. Ju mund të bëni atë, por unë nuk e bëj mendoj se është me të vërtetë i vlefshëm, sepse ju jeni vetëm duke kursyer një bajt. Ti e di se çfarë jam duke thënë unë? Në skemën e madhe të gjërave, që nuk do të me të vërtetë rëndësi. Por, për shembull, printf, nëse ju jeni shtypjen f dhe ju kanë tre chars ju mund të shtypura që out-- le të thonë se ju C-A-T, ju mund të shtypura jashtë mace vetëm nga bërë një char një char një char, ose ju mund të shtypura nga cat string. Është e saktë të njëjtën gjë. Kështu që ju mund të bëni atë si kjo, but-- STUDENT: Kjo nuk po ndodh për të shpëtuar atë shumë. Jason Hirschhorn: Po. Dhimbje koke se ajo do të shkaktoj nuk është e vlefshme. Vërtet? STUDENT: Për shembull, keni pasur h me një kundrejt dy, kuotat e vetme apo të dyfishtë. Pse do të doni të ruani një letër të vetme si një varg. Çfarë qëllimi ka që ndonjëherë shërbejnë? Jason Hirschhorn: Unë nuk e di. Unë do të thotë, me të vërtetë varet programin. Për shembull, unë mendoj se më vonë ju do të merrni në command line stuff. Kështu për shembull, në vend meje duke kërkuar ju për një keq integer--, mund të flas në ju? HANNAH: Po. Jason Hirschhorn: Pra për shembull, në vend mua duke kërkuar për diçka me fund të marrin, e cila Unë mendoj se ju mund të keni parë një leksion, mund të ketë një linjë komande. Ju vetëm shkruani atë në në vijën komanduese. Ajo do të jetë si - / hello4 ose diçka, ose helloh h, çfarëdo. Ju bëni atë në command line në vend të duke u kërkuar për të, që command line është gjithmonë një string, nëse kjo është një katër apo një h, se është gjithmonë një string. Pra, kjo është një shembull kur ju mund të kanë një letër njëjës ose një njëjës Numri i përfaqësuar si një varg. SHARON: Në rregull. Dhe pastaj këtu janë disa operatorë themelore. Shpresojmë që ju jeni të njohur me katër të parë vetëm në përgjithësi. Kështu që nuk është shtuar, zbritur, shumëzuar, e ndarë, dhe sigurohuni që ju përdorni tasteve të drejtë. Dhe pastaj nuk ka modulo edhe, të cilat disa prej jush mund të mos jetë shumë e njohur me të. Dhe çfarë modulo nuk është se në qoftë se ne kemi marrë këtë shembull 4% 2, ajo merr pjesën e mbetur të atë që ka në ndarjen. Kështu 4 ndarë nga 2 është 2, dhe nuk ka asnjë tjetër. 4 ndarje me 3 eshte 1 dhe 1/3, dhe kështu pjesa 1. Pra, ajo llogarit për një. Dhe pastaj 4% 5 është fraksion 4/5, dhe pjesa tjetër është 4. Ka që e bëjnë kuptim? OK, cool. Dhe ne ndjekim PEMDAS këtu. Pra, disa shprehje Boolean. Pra, ju djema keni parë është e barabartë me të barabartëve për të krahasuar, të themi, dy numra. Pra, nëse 5 barabartë barabartë 5, që llogarit të vërtetë. Sigurohuni që ju keni vetëm një është e barabartë me shenjë. Për jo të barabartëve, është e zhurmë apo thirrje. Hannah: Dy shenja të barabarta kur ju bëni barazi. SHARON: Oh, po. Sigurohuni që ju nuk e bëni kanë një barabartë shenjë. Dhe pastaj për jo të barabartëve, kjo është Bang barabartë. Dhe pastaj ju mund të shohim përmes për më pak se, e madhe se. Dhe pastaj ne kemi logjike dhe dhe logjike apo të drejtë këtu. Dhe ajo që nuk është, në qoftë se ju kujtohet në Scratch kur keni pasur këtë bllok tha se dhe, dhe pastaj ju mund të përshtatet dy copa të ndryshme atje, kjo është ajo që kjo e bën. Dhe sigurohuni që ju të bëni dy ampersands. Dhe kjo kyç që ju mund të gjeni në drejtim të drejtë, e drejtë nën butonin tuaj Delete. Pyetje? STUDENT: Cili ishte [e padëgjueshme]? SHARON: OK, kështu që nëse ju bëni vetëm një, ju jeni të krahasuar bit. Pra, nëse ju kujtohet çfarë bit janë, ata janë 0 dhe 1 i, dhe kështu që është krahasuar diçka tjetër. Pra, ne jemi duke shkuar për të përqëndrohet në këtë tani për tani. Jason Hirschhorn: Pra, një është e barabartë është si detyrë, e drejtë? Pra, si int x është e barabartë me 4. Ju jeni duke thënë se ndryshorja x është e barabartë me 4. Pra 1 barabartë është detyrë, por edhe ands dhe tuba ose bare, ashtu si Sharon thanë, ata janë operatorët bitwise. Ju nuk duhet të shqetësohen për këtë. STUDENT: Kur ju përdorni logjike dhe dhe logjik apo përsëri? Unë vetëm harruar kur ju bëni atë. HANNAH: Sigurisht, kështu që nëse ju dëshironi ndonjëherë për të parë nëse dy gjëra janë të vërteta, për shembull, le të thonë se unë dua të shikoni se një numër është në mes të 5 dhe 15, Unë do të thoja të bëni të sigurtë që Numri është më i madh se 5. Pra, le të themi, nëse x është më i madh sesa 5 dhe më pak se 15. Pra, në mënyrë që për atë tërësi Deklarata për të vlerësuar me të vërtetë, ju keni nevojë për të dy llojin e nën deklarata për të vlerësuar e vërtetë. Me ose ju duhet vetëm një nga dy ose të dyja. STUDENT: Great, ju faleminderit. SHARON: Dhe edhe në Scratch, unë jam e sigurt në një shumë prej projekteve tuaja keni pasur rast prekur buzë apo nëse prekur një tjetër Sprite pastaj të kërcej apo diçka. HANNAH: Të gjithë të drejtë, kështu që pse nuk kemi kujdesen për të gjitha këto Booleans? Ne kemi këto struktura që ju keni shihet në Scratch quajtur conditionals. Dhe conditionals janë asgjë e formojnë nëse disa kushti apo ndonjë Boolean është e vërtetë, atëherë bëni kodin ndërmjet këtyre formatimin e teksteve kaçurrel. Kështu që ju mund të shihni në të djathtë këtu është bllok Scratch. Ju keni këtë në qoftë se, dhe çdo gjë që shkon në atë formë pak se duket si this-- i nuk e di se çfarë ju do të telefononi that-- që do të të jetë Boolean apo kusht. Pra, përsëri, një Boolean ose kusht është asgjë që ose të vlerësojë të vërtetë apo false. Dhe përsëri, ju mund të kombinohen Booleans. Mund të ketë, përsëri, x është më i madh se 5 dhe X është më pak se 15. Ose ju mund të ketë vetëm një të tillë nga këto X është më pak se 5. OK, kështu që në C Kjo është në të majtë. Është vetëm në qoftë se fjalen. Në kllapa, kusht ose Boolean. Dhe pastaj kodi në mes këto dy formatimin e teksteve kaçurrel vetëm do të ekzekutojë, do të kandidojë vetëm nëse se gjendja ose Boolean është e vërtetë. Ka që e bëjnë kuptim? Awesome. OK. Dhe pastaj si ju mund të kemi parë në Scratch, ne gjithashtu mund të shtoni në një tjetër, e cila është në thelb çdo gjë në mes formatimin e teksteve kaçurrel nën tjetër do të ekzekutojë vetëm nëse gjendja është e rreme. Kuptim? Çdo pyetje në këto dy? Awesome. Ftohtë. Kështu që këtu është një shembull të shpejtë. Le të thonë se ne duam të përcaktuar, bazuar në kohë, nëse ne duhet të themi të mirë mëngjes ose në mbrëmje të mirë. Unë do të them nëse është e para 12:00 në mesditë, ne jemi duke shkuar për të thënë mirëmëngjes, përndryshe ne jemi duke shkuar për të thënë në mbrëmje të mirë. Dhe kur kam thënë se ndryshe, kjo është ekuivalente në C të këtij tjetër. Pra, ne jemi duke shkuar për të parë nëse Ora ushtarake është më pak se në orën 12:00, thonë mirëmëngjes. Përndryshe thonë mbrëmje të mirë. STUDENT: Pra, ne do të vërtetë të merrni atë të dhëna për kohën ushtarake me vargun get. HANNAH: E drejta. A Diku tjetër ne do të vërtetë duhet të japin këtë informacion. Këtu nuk ka asnjë vlerë. Ne kurrë nuk e deklaroi atë. Unë supozoj se diku lart ky program I deklaruar kohë, ose kërkoi kohë, or-- çdo gjë tjetër me këtë shembull? Awesome. OK, tani ne kemi më tepër të thjeshtë, nëse format tjetër, ne kemi dy struktura të tjera të ndryshme. Pra, së pari, ne kemi të kaloni Deklarata, dhe këtu është Forma e përgjithshme e një deklarate të kaloni. Ju keni fjalen kaloni të njëjtën mënyrë ju keni fjalen nëse. Dhe pastaj një input, në këtë rast n. Pra, kjo mund të punojnë vetëm me integers. Kështu që input n ka të jetë një numër të plotë, OK? Dhe ne jemi duke shkuar për të ndjekin një prej këtyre rasteve në varësi të asaj se vlera e n është. Pra, në këtë rast, ju së pari të krahasoni është n barabartë me një të vazhdueshme, në qoftë se ajo është, të bëjë gjithçka lloj i prerë mbi këtu. Unë mund të tregojnë për atë, sepse unë jam shumë e shkurtër. Në qoftë se kjo nuk është e barabartë me një konstante dhe është e barabartë me vend konstante dy, ne jemi duke shkuar për të ndjekur atë bllok të dytë, dhe ne mund të bëjmë këtë për aq shumë herë si ne duam, dhe pastaj se e parazgjedhur është nëse ajo nuk korespondon me ndonjë prej rasteve të mësipërme, ekzekutuar atë kod. Ndonjë pyetje këtu? Kjo është pak më e komplikuar. Vërtet? STUDENT: Pushim të treguar çfarë? HANNAH: Sigurisht, kështu që sapo kemi hyrë se blloku, në qoftë se ne gjejmë, le të themi, n jonë është në fakt e barabartë me një të vazhdueshme, ne kemi hyrë në këtë bllok pas zorrës së trashë. Ne bëjmë çdo gjë që është në kjo linjë të komentuar, dhe pastaj ne pushim, do të thotë që ne të merrni nga i kësaj deklarate kaloni tërësisht. STUDENT: OK. HANNAH: Mm-hm? STUDENTORE: A është e prerë është e nevojshme, ose nuk keni nevojë [e padëgjueshme]? HANNAH: Sigurisht. Pra, si gjithmonë, gjurmë nuk është e domosdoshme. Kompjuteri nuk intereson nëse ju porosis. Ne, si njerëz të cilët janë të lexuar kodin tuaj, bëni kujdes. Pra, kjo është një shumë më e lehtë për të shikoni në ekran dhe shikoni, oh, unë e di saktësisht se çfarë ndodh kur n eshte e barabarte me nje konstante. Po të kisha Kryeradhë rastit, I nuk do të jetë në gjendje për të të treguar në mënyrë të lehtë. Vërtet? STUDENT: Pra, nëse donte një përdorues të zgjidhni një nga opsionet që ne kemi në listë, do të ne përdorim, I guess, [e padëgjueshme], por të marrë një numër të plotë nga ata dhe të vënë atë në n? HANNAH: Pikërisht drejtë. Pra, le të themi që kemi dashur për të kontrolluar se çfarë integer. Ne tha oh, të hyjë në një numër të plotë në mes të 0 dhe 5, le të themi. Ne mund të kërkoni që n, kërkoni për atë vlerë, dhe pastaj kanë secila prej këtyre raste. Dhe përsëri, kjo është diçka që ne mund të shumë lehtë të bëjë me të, nëse deklaratat, e drejtë? Ne mund të kemi nëse e barabartë me rasti një, qoftë të barabartë tek LËNDËS dy, nëse e barabartë me rastin e tre, kështu me radhë e kështu me radhë. Kjo është një pak më të shpejtë dhe një pastruese pak. Kjo është lloj i vetëm një strukturë të mirë tani. STUDENT: Faster si në shkrim? Ose e bën atë të drejtuar kompjuter një pak më të shpejtë? HANNAH: Është shkon pak më të shpejtë. Vërtet? STUDENT: Pra dyfishtë dash është vetëm komentojë or-- HANNAH: Oh, unë jam aq i keq. Unë nuk e theksoj se nga. OK, në qoftë se ju keni atë //, është një koment. Vetëm // është një koment. Pra, çdo kohë kompjuter sheh se, ajo do për të thënë OK, çdo gjë që pason këtë, unë jam vetëm duke shkuar për të injorojë. Unë jam duke shkuar për të pretendojë ju kurrë nuk shkroi se. STUDENT: Pra, kjo [e padëgjueshme]. HANNAH: Kjo bën absolutisht asgjë. Por në qoftë se kam shkruar diçka si në komenti i parë i shkruar në vend printf thonë urime keni hyrë një konstante, që do të jetë diçka. Vërtet? STUDENT: Pra, në jetën reale, Rasti do thjesht të jetë një numër dhe pastaj [e padëgjueshme] do të jetë një tjetër numër të plotë. HANNAH: Pikërisht. STUDENT: Dhe keni nevojë për elipsa? HANNAH: Na vjen keq? STUDENTORE: A keni nevojë për këtë? HANNAH: Oh, jo. Unë jam i keq. Kjo ishte vetëm për të treguar se ju mund të të shkojnë më për sa më shumë raste si ju dëshironi. Le të bëjmë një shembull konkret se mund të bëjë gjërat pak më të qarta. OK, kështu që le të thonë se unë them, OK, më jepni një numër të plotë n që përfaqëson një numër të klasës, veçanërisht një klasë shkenca kompjuterike Numri i. Pra, nëse ju jepni 50, Unë jam duke shkuar për të thënë të madh. CS50 është një hyrje në kompjuter shkencës, dhe atëherë unë jam duke shkuar për të thyer. Kështu që do të thotë që unë hidhem nga kjo deklaratë e tërë kaloni, kështu që tani unë jam duke bërë kodin, OK? Nëse ju dha në vend 51, unë do të printoni deklaratën e dytë. Dhe pastaj nëse ju dhatë disa numër që nuk ishte 50 apo 51, Unë jam duke shkuar për të thënë vjen keq, unë jam nuk e njohin me atë klasë. Vërtet? STUDENT: Ju nuk keni pushim. HANNAH: Më vjen keq, unë nuk kam pushim? STUDENTORE: Çfarë ndodh nëse. HANNAH: Oh, çfarë nëse ju nuk keni pushim? Pyetje e shkëlqyer. Pra, çfarë do të ndodhë është që ju do të shkoni në, dhe ju do të shikoni unë jam i barabartë me 50? Dhe le të themi, po, keni qenë të barabartë 50, ju do të printoni deklaratën. Dhe pastaj ju do të vazhdojë ekzekutimin, kështu që ju do të thonë se unë jam i barabartë me 51? Dhe ju do të shkoni në dhe të shkojnë përmes çdo rast të tillë? Po? STUDENTORE: A është linja e parazgjedhur analoge me thënë tjetër? HANNAH: Pikërisht. Shumë mirë. Është si lloj të kapur të gjithë. STUDENT: Pra, nëse ju nuk keni pushim dhe atëherë një nga deklaratat e rastit ishte e vërtetë, dhe pastaj atë tha rritja n me 1, atëherë ajo do të automatikisht të bëjë një tjetër. Ajo do të kontrolloni rast 51, dhe pastaj shfaqin se si? HANNAH: Po, unë mendoj se do të punojë. Kështu që ju mund të lloj të merrni çrregullt, kështu një pushim është një gjë e mirë që të ketë. Vërtet? STUDENT: Pa pushim do të bëjë default? HANNAH: Kjo është një pyetje e mirë. Jason Hirschhorn: Unë mendoj se ajo vetëm shkon. Pra, nëse ju nuk keni break-- kështu le të thonë se unë e bëri 50 dhe kontrolluar 50, dhe ajo do të shtypura atë jashtë. Print jashtë CS50 si hyrje për shkenca kompjuterike. Ju nuk keni pushim, ajo duhet të shkojë dhe do të mbajë deri sa ajo godet një pushim. Kështu që nëse nuk ka pushim, ajo do të do të mbajë. Kjo do të shtypur çdo gjë tjetër jashtë. HANNAH: Kështu që unë mendoj se do të të jetë i përfshirë default. Jason Hirschhorn: Po. HANNAH: Pyetje e mirë. Vërtet? STUDENTORE: A është rasti konsiderohet si një funksion? HANNAH: Unë jam i keq? STUDENTORE: A është rasti konsiderohet si një funksion? HANNAH: Është rasti konsiderohet si një funksion. Unë do të hezitoj të them se. Jason Hirschhorn: Pra normalisht kur ju shihni funksionet ata do të jenë në formatimin e teksteve kaçurrel. Kështu për shembull, kur ju shikoni në kodin tuaj, për shembull, kryesore. Ajo ishte Paren kryesore të hapura, pastaj i pavlefshëm, Paren ngushtë. Functions-- ata janë në thelb gjithmonë ju do të shihni kllapa. Pra, nëse në rast nuk kanë ndonjë kllapa, kjo është dhënë e juaj se kjo nuk është një funksion. Por kjo nuk është. Vërtet? STUDENT: Pra, atëherë e bën atë të bëjë kaloni një funksion? HANNAH: A që e bën kaloni një funksion. STUDENT: Në kuptimin që ju të vënë diçka në, kjo ju jep një nga rastet. Jason Hirschhorn: I nuk do të thërrasë atë një funksion. Jo çdo gjë me parens është një funksion. Unë do të thotë se është një çelës që ajo është një funksion. Unë nuk do të them switch është një Funksioni për shkak se ajo nuk është e vërtetë kthehen asgjë. Ju do të merrni në atë më shumë. HANNAH: Po, ashtu mendoj atë si një strukturë nëse. STUDENT: Mund të ju fole këtë në një nëse strukturë? HANNAH: Po, ti fole pretty much çdo gjë. STUDENT: Barry tha se kuotat janë lloj si njëjtë si të tjerët. Kështu që ju mund të zëvendësojë kuotat me të tjerët? HANNAH: Jo në këtë të veçantë Struktura sepse kaloni Deklarata pret fjalën parazgjedhur. Kompjuteri di se prezgjedhur do të thotë diçka të veçantë, që do të thotë të kapur të gjithë. Çdo gjë tjetër në këtë. Ne kemi një shumë për të marrë përmes. Vërtet? STUDENT: [padëgjueshme]. HANNAH: Diferenca në mes të duke përdorur një pikëpresje dhe zorrës së trashë. Pra, një pikëpresje është gjithmonë për të treguar kompjuter Unë jam bërë me këtë linjë. Ju mund të shkoni përpara dhe të ekzekutuar atë. Kjo është një linjë të plotë. Një zorrës së trashë do të, në këtë rast, t'ju çoj në një bllok të veçantë. Pra semicolons janë përdorni përherë në fund linja. Kolonat janë përdorur për një shumëllojshmëri e raste të tjera. STUDENTORE: A është kjo ekuivalente me vetëm duke thënë se nëse n është e barabartë me 50, atëherë blah blah blah. HANNAH: Mm-HM. STUDENT: Është vetëm njëjtë [padëgjueshme]. HANNAH: Pikërisht. Dhe kemi thënë se shkon pak më të shpejtë. Në qoftë se ne nuk e kishte pushim, kjo do të jetë si në qoftë se, në qoftë se, në qoftë se. Nëse ne bëjmë të ketë pushim, është e si në qoftë tjetër në qoftë tjetër në qoftë se tjetër rast. Ftohtë? Jason Hirschhorn: Pra, kur coding, ju mund të përdorni vetëm në qoftë se të tjerët, por unë mendoj se vitin e kaluar në quiz ne kishte ato shkruajnë një deklaratë switch, kështu që vetëm në rast. HANNAH: Por definitivisht asgjë të keqe. Ne nuk presim që ju të shqetësuar rreth performancës gjëra të çmendur. Vetëm në qoftë se tjetër është krejtësisht e mirë. Këto janë vetëm të mira gjëra të jetë i vetëdijshëm. Dhe këtu është një jonë e fundit ky lloj i bie nën këtë kategori kushtëzuar. Ne kemi diçka të gjendja e përgjithshme formë?, dhe pastaj një pjesë të vogël të kodit që ndodh nëse gjendja është e vërtetë. Dhe pastaj zorrës së trashë, pak pjesë të kodit që ekzekuton nëse kusht është false, pikëpresje. Ne jemi bërë me këtë linjë. Pra, sintaksore kjo është pak e shëmtuar. Ne jemi duke shkuar për të shkuar nëpërmjet një shembull Unë mendoj se është më e qartë. Pra, ne duam të caktojë profesor string në një nga këto dy vlera, ose David Malan apo jo David Malan, OK? Kështu që ju duhet të jetë i njohur me vargun, profesor =. Ne jemi duke shkuar për të caktuar një varg profesorit ndryshueshme quajtur. Tani ne duam të kontrolloni a kusht të veçantë. Në këtë rast, gjendja jonë është class_num = = 50. Dhe tani mund të jetë një kohë e mirë për të vënë në dukje kur ne kemi profesor string =, Kjo është një shenjë e barabartë. Kjo është detyrë. Ndërsa në class_num = = 50, kjo është dy shenja të barabarta. Kjo është një kontroll të cilësisë. Pra, ne jemi duke shkuar për të thonë se është Numri i klasit të barabartë me 50? Nëse është kështu, të caktojë Profesor David Malan. Nëse jo, të caktojë profesor që nuk rri Davidi i Malan. Ndonjë pyetje atje? Përsëri, kjo është vetëm diçka që është e mirë për të dini. Ju mund ta bëni këtë me të, nëse tjetër. Një problem praktikë e mirë mund të jetë për të, kur ju shkoni në shtëpi, të drejtën e njëjtë e saktë kushtëzuar në një formë tjetër, nëse, sepse ju mund të bëni atë. Ndonjë pyetje këtu? Në rregull, unë mendoj se ne jemi do të shkojnë për në sythe. Awesome. SHARON: OK, le të flasim rreth ndërsa sythe. Pra, së pari në të majtë ju shihni here-- OK që thotë, ndërsa, ndërsa (kusht). Dhe pastaj ju bëni this-- mund të ndryshojë kjo? Jason Hirschhorn: Është e prerë. SHARON: OK, dhe pastaj ka janë edhe formatimin e teksteve kaçurrel. Pra, pretendon se kaçurrel formatimin e teksteve janë atje lart dhe nën të bëjë këtë përsëri dhe përsëri. Pra, nëse gjendja në ato kllapa vlerëson të vërtetë, atëherë ju duhet të vazhdojmë të bëjmë çdo gjë që është në lak ndërsa. Kështu për shembull, ne mund të të bëjë një problem praktikë. Unë jam veshur dy palë vathë tani, kështu që le të themi në qoftë se unë jam i veshur me të paktën një dëgjimit, duartrokas duart tuaja. Pra, në qoftë se ne jemi duke shkuar për të shkuar me anë të kësaj, ne jemi going-- [Duartrokitje] E drejtë? Dhe unë jam i veshur me një, and-- OK. Po. Unë nuk jam duke veshur një palë vathë më, kështu që nuk ka më shumë. OK, kështu që atëherë kjo është kur ju do të ndalet. Dhe kjo ju mund të thonë se është ekuivalente me gati variablave. Le të thonë se ju keni një Numri ndryshueshme e palë vathë. Kështu, ndërsa numri i palë vathë është më i madh se ose e barabartë me 1, të duartrokasin. Dhe pastaj pas rrahin duart, një palë vathë pakësim. A si një palë vathë minus 1. Pra, pakësim numrin e palë vathë, dhe atëherë ju do të shkoni nëpër lak, ndërsa dy herë. Dhe në qoftë se gjendja është gjithmonë true-- kështu që nëse, le të themi, 2 = = 2, dhe 2 është gjithmonë e barabartë me 2, drejtë? Pastaj ju do të gjithmonë të bëjë diçka në atje, dhe kjo është ekuivalente me gati përgjithmonë loop që kemi pasur në Scratch. Po? STUDENTORE: A janë të dy palët vetëm mënyra të ndryshme të të shkruarit e një lak, ndërsa? SHARON: Pra, ne jemi fokusuar për këtë një të parë. Dhe pastaj kështu që le të krahasojmë ajo me një të bërë, ndërsa loop. Pra, ata janë pak më të ndryshme. OK, kështu që le të thonë se gjendja është ende e ndërsa unë jam veshur të paktën një vathë, dhe unë nuk jam i veshur Çdo palë vathë tani. Dhe le të themi të bëjë dhe ende rrahin kohë Unë jam veshur të paktën një vathë. Çfarë duhet të ndodhë? [Rreh] Uh oh, djema. OK, kështu që ju jeni duke menduar për të duartrokas një herë, sepse në thelb ju shkojnë përmes pjesës së parë të kodit. Ju bëni këtë pa marrë parasysh se çfarë, dhe atëherë ju shihni gjendjen ndërsa dhe ju shkoni përsëri në se loop nëse është e vërtetë. A kjo ka kuptim? STUDENT: Ju gjithmonë bërë atë herë të parë. SHARON: Ju gjithmonë bëni atë të hera e parë, pavarësisht nëse apo jo se gjendja është e vërtetë apo jo. Jason Hirschhorn: Kur të bëni ju mendoni se ju mund të përdorni këtë? Kur nuk ka kuptim për të përdorur këtë? HANNAH: Po? STUDENT: [padëgjueshme]. Jason Hirschhorn: E drejta. HANNAH: Shumë mirë. Jason Hirschhorn: Pra kur ju të shkaktojë një përdorues, ju jeni do të duan gjithmonë të për të nxitur një përdorues një herë. Ju jeni gjithmonë do të duan të menjëhershëm të përdoruesit një herë. Pra, në vend të vënë në një lak, ndërsa, ju vënë në të bërë, ndërsa lak, sepse ju jeni gjithmonë do të bëjë atë një herë. Nëse ata ju japin përgjigje të saktë, ju jeni bërë. Nëse ata nuk e bëjnë, atëherë ju ri-të shpejtë të tyre. SHARON: Të gjithë të drejtë, për sythe. Pra në Scratch, kemi pasur blloqe të përsëritur. Pra, kemi dashur të përsëris diçka, le të themi, shtatë herë. Pra, ne vetëm tha të përsëritur shtatë, dhe thonë se unë jam këtu për t'ju ndihmuar Snow White! Në C, ne kemi për sythe, nëse ne doni të shkoni me diçka një numër specifik i kohës. Le të thonë se në qoftë se ne nisja dwarves ndryshueshme dhe të bëjë sure-- kështu bllokun e parë drejtë ka para pikëpresje parë, ne nisja ndryshore tonë për të, dhe ne kemi vendosur atë në 0. Dhe ndryshueshme ynë ka është një numër i plotë, INT. Dhe emri ndryshueshme është dwarves, dhe ne kemi vendosur dwarves në 0. Dhe pjesa e dytë mes Dy semicolons është gjendja jonë. Dhe kështu për aq kohë sa dwarves është më pak se shtatë, ne do të vazhdojmë duke shkuar nëpër këtë për lak. Dhe pastaj pjesa e fundit është ajo që të bëjë bëjmë në fund të kësaj për lak? dwarves ++, dhe kjo do të thotë ne rrisim dwarves nga një çdo kohë. Pra, çfarë do të ndodhë këtu? Pra, së pari, ne jemi duke shkuar për të shkuar deri. Ne kemi dwarves si 0, dhe pastaj ne jemi duke shkuar për të shkruar Unë jam këtu për t'ju ndihmojë Snow White! Dhe pastaj dwarves do të rritet, sepse kemi thënë dwarves ++. Dwarves do të jetë 1. Dhe pastaj ne compare-- dwarves është 1. Ne e krahasojnë atë me dwarves është më pak se 7? Po. Unë jam duke shkuar për të shkuar nëpër këtë përsëri. Unë jam këtu për t'ju ndihmuar Snow White! Dhe pastaj dwarves bëhet 2, dhe pastaj krahasojnë atë. 2 është më pak se 7? Po. Ne jemi duke shkuar për të mbajtur duke kaluar nëpër. Dhe ne jemi duke shkuar për të shkuar nëpër këtë shtatë herë. Pra, në fund, ne jemi duke shkuar për kanë Dwarves = 0 të shtypura jashtë unë jam këtu për t'ju ndihmuar Snow White! dwarves barabartë me 1, 2, 3, 4, 5 dhe 6. Mos harroni ne indeksi në 0. Pra, ne fillojmë me 0. Po? STUDENT: Pra, kjo është i ndryshëm nga e detyrave sepse kjo nuk do të shtypura out fillimisht në fillim. Kështu që ju mund të vazhdoni të njëjtën gjë. Mund ta bëni këtë edhe me lak për ta bërë? Ashtu si të njëjtin proces. Kushti është dwarves më pak se 7 apo çfarëdo. Përgjigje është më pak se 7. SHARON: Pra, ju mund teknikisht. Pra, nëse ne kthehemi to-- folur tuaj rreth lak, ndërsa, e drejtë? Pra, për ta bërë, ndërsa loop është paksa e ndryshme sepse ne garantojmë të paktën pasi që ne do të shkojnë nëpërmjet saj, kështu që është ndryshimi më i madh. Por me lak, ndërsa ne mund të të thënë ndërsa dwarves është më pak se 7, bëjnë këtë, dhe pastaj rrisim dwarves nga një. Dhe atëherë ne duhet të iniciojnë dwarves para kësaj deklarate të gjithë se ajo është e barabartë me 0. Pra, vërtet, ne mund të bëjmë atë me këtë. Mm-hm? STUDENTORE: A mund të kthehemi në [padëgjueshme]? SHARON: Për lak? STUDENT: Yeah, kështu që me dwarves ++, Duket sikur kjo është ajo që ju bëni pas ju keni u zhvillua disa mjete të tjera. SHARON: Correct. STUDENT: Mund ju vetëm nuk kanë atë dhe të vënë it-- SHARON: Ju mund. STUDENT: Pra, është [e padëgjueshme] menjëherë pas shtypura në linjë tjetër nën. SHARON: Po, ju mund të vënë atë atje. Por pastaj ju do të vetëm lënë atë bosh. Jason Hirschhorn: Ju ende duhet zorrës së trashë gjysmë pse. SHARON: Ajo duket pak i vështirë, por ju mund të bëni atë teknikisht. Teknikisht. Ju lutem, mos. Po? STUDENTORE: A ka ndonjë alternativat për ++? A ka ndonjë gjë tjetër [padëgjueshme]? SHARON: Teknikisht kjo është e dwarves. Një është e barabartë shenjë që ne jemi duke shkuar për të vendosur atë në dwarves plus 1. Pra, teknikisht kjo është çfarë Dwarves ++ do të thotë. Ka që e bëjnë kuptim? STUDENT: Po, por ka ndonjë alternativë? Ashtu si në qoftë se ju ever-- SHARON: Po, ju mund të bëni dwarves - -. STUDENT: [padëgjueshme]. SHARON: Po, ju mund të të bëjë një mori të gjëra. HANNAH: Dhe ju mund të rrisim nga 2. Ju mund të rrisim me 3. Çdo gjë që do të jetë ndryshuar, ai do të të bëjë gjendjen. STUDENT: Pra, nëse do të donit që të rrisim me 2, si do ta shkruani atë? HANNAH: Ju mund të shkruani ose dwarves-- ju mund të shkruani në këtë gjë gjithë jashtë. dwarves = dwarves + 2. Ose një stenografi pak. Unë jam vetëm duke shkuar për të shkruar + barabartë 2. STUDENT: OK, dhe ju do të shkruani se pikërisht atje ku dwarves ++ është atje. HANNAH: Pikërisht. SHARON: Correct. Nuk ishte një tjetër pyetje? Vërtet? STUDENT: [padëgjueshme] dwarves ++? SHARON: Pra, ju don't-- Jason Hirschhorn: Po, nuk kanë nevojë për ajo atje. [Padëgjueshme] shumë të përfundojë. Kështu që ju të bëni [padëgjueshme] ato për shkak se ju jeni lloj ndarjen deri inicializimit, kusht, dhe ndryshimi. Në fund, ju nuk keni nevojë për atë. SHARON: Gjithashtu njoftim ju nuk kanë nevojë për pikëpresje pas të gjithë të tërë për lak. STUDENT: Si do të fillojë me një numër fillestar i negative, për shembull? SHARON: Ju mund të iniciojnë dwarves barabartë me negativ 2. STUDENTORE: A ju vetëm keni dash 2? SHARON: Po, kështu shenjë negative, dash 2. STUDENTORE: A është [e padëgjueshme] për nisja si dwarves [padëgjueshme]? SHARON: Po. Pra, në qoftë se ne sapo kishte nisur dwarves më parë, vetëm të bëjë pikëpresje int dwarves, dhe pastaj nuk mund të bëjmë dwarves vendosur që të barabartë me 0. STUDENTORE: A mund të bëjmë atë më herët në Programi thënë int dwarves = 0, dhe pastaj just-- SHARON: Vetëm jo aq have-- nuk do të jetë një hapësirë ​​përsëri, por ju ende do të duhet një pikëpresje. Po. Mm-hm? STUDENTORE: A thotë ky kod çfarë vlera e dwarves është më pas. Nëse ju kërkoni atë pas gjithë kësaj është bërë për të shkruar vlerën e dwarves. SHARON: Ju mund të kërkoni atë për të bërë atë. STUDENT: OK. SHARON: Por ju do të duhet të pyesni atë për të bërë atë. Kjo nuk e bën atë për ju. Unë jam i frikësuar për të vënë një palë vathë mia përsëri në. Bëjë atë në fund për duartrokitje. Just kidding. Jason Hirschhorn: Pra, kjo është e njëjtë. Pra, nisja në krye. Kusht, të shtypura, të ndryshojë. Pra, kjo është pikërisht njëjtë si se në qoftë se dikush mund të shihni se. STUDENT: Pse nuk keni pikëpresje në rreshtin e parë? SHARON: Ku? STUDENT: Pas rreshtin e parë. SHARON: Pas 4 në kllapa? Sepse ne duam të shkojnë të nëpërmjet në këtë lak. Dhe në qoftë se ju merrni një vështrim në sythe në përgjithësi, ata nuk kanë pikpresje. Kjo nuk është praktike. A jemi të mirë? Një shumë pyetje, dy më shumë. Vërtet? STUDENT: Kjo mund të jetë pak të avancuar, por të bëjë dwarves kanë një ndryshe [padëgjueshme] nga një variabël [padëgjueshme]. SHARON: Shumë mirë. STUDENT: [padëgjueshme]. SHARON: Po, kjo është. Çfarë? Jason Hirschhorn: Yeah, kështu që ajo bën. Pra, normalisht qëllimi i diçka është në formatimin e teksteve kaçurrel. Pra, fushëveprimi është gjithmonë do të jetë në formatimin e teksteve kaçurrel, por kjo nuk do të bëjë ndjenjë shumë e për lak sepse ne initialized dwarves në atë Brace kaçurrel. Pra, normalisht qëllimi i dwarves, që variabël nuk do të zgjasë kaluara se. Ky është një rast i veçantë pse. Pra, ju nisja atë brenda këtyre kllapa, dhe pastaj ju keni qëllimin më vonë. Rast në mënyrë të veçantë. Ata nuk duhet të kenë atë, dhe që was-- Që e bëjnë kuptim? STUDENT: Jo Jason Hirschhorn: Unë mund të shkojnë mbi të. Pra, çfarë jeni ende të hutuar në lidhje me? STUDENT: Si në ju mund të përdorni dwarves-- ju natyrisht mund të përdorni dwarves [padëgjueshme] jashtë formulës shumë? Jason Hirschhorn: Jo, jo. Pra, qëllimi i saj është vetëm brenda formatimin e teksteve kaçurrel per për lak, vërtet. SHARON: Por nëse ju nisja dwarves jashtë për lak, pastaj ju mund ta përdorni atë diku tjetër Nuk është një pyetje shumë? Nuk ka? OK. Pra, folëm pak për shturë për sythe apo conditionals fole, nëse deklaratat. Kështu që këtu është një shembull ku ne mund fole një për lak. Le të thonë se ne ishim printim kjo tabelë të x është e drejtë këtu. Ne mund të duam to-- të parë nëse ne thjesht nuk e shikojmë në kodin dhe ne vetëm mendojmë për këtë, ne doni të shkoni nëpër çdo rresht dhe të shtypura çdo kolonë, e drejtë? Ka që e bëjnë kuptim? OK. Pra, këtu ne jemi duke shkuar nëpër çdo rresht për thelb çdo rresht, dhe ka tre rreshta. Dhe pastaj brenda çdo rresht për çdo kolonë, dhe atje janë katër kolona, ​​të shtypura një x. kështu. Kur rresht është 0 dhe kolona është 0, kemi shkruar këtë x. Dhe pastaj ne do të mbajë nëpërmjet kolonës lak. Rresht është ende 0, por është një kolonë. Dhe pastaj kolona është 2, dhe pastaj kolona është 3. Dhe pastaj ne të dalë nga kjo loop sepse atëherë kolonën nuk është më pak se 4. Dhe pastaj ne të shkruar një linjë të re, dhe ne do të shkojmë në linjë të re. Dhe pastaj ne do të shkojmë nëpër ardhshme rresht, dhe rresht merr incremented, dhe ne do të shkojmë nëpër atë përsëri. Ka që e bëjnë kuptim? Po? STUDENT: Pra, për fole [padëgjueshme] është vetëm vënë atë brenda e për lak? SHARON: do të thotë pra fole se ne kanë një për lak brenda një për lak, si Fillestar. STUDENT: Ju nuk keni nevojë për një Rotacioni të veçantë apo ndonjë gjë? Ju vetëm ngjit atë të drejtë brenda saj? SHARON: Correct. Po? STUDENT: Mund të jetë [e padëgjueshme], por duket sikur ka një hapësirë ​​shtesë në mes të të gjitha x-të e. Unë nuk e di nëse that's-- Nëse kjo ishin në fakt të bërë programin, do të bëjë diçka të tillë? SHARON: Pra nuk ka. Kjo ishte shtypur Enter. Kjo ishte e keqe nga ana jonë. Kërkoj falje. HANNAH: Si do ta ndryshojë këtë program në qoftë se keni kryer një linjë shtesë? STUDENT: [padëgjueshme]. SHARON: punë e mirë. STUDENT: Ju gjithashtu mund të shkruar të njëjtën gjë gjë nga kalimi nëpër kolona, e drejtë? SHARON: Hm? STUDENT: Pra, për të shtypur little tuaj xxx, rreshtin e parë mund të themi të shtypura, dhe në vend të thënë rresht, ai thotë kolona. SHARON: Pra, ju mund të ndryshojë emrat e ndryshueshme për të bërë këtë. Është se çfarë ju jeni duke thënë? STUDENT: Jo, unë jam vetëm duke thënë se that-- kështu që ju jeni rreshtave shtypjen e parë dhe pastaj shtypjen kolona. Gjithashtu mund të shtypura kolona e parë dhe pastaj rreshtave për të marrë të njëjtën diagramin? SHARON: Ju mund, por atëherë ju do të keni të jenë të kujdesshëm se ku ju vënë linjë të re. Dhe si do të hidhen përsëri? Jason Hirschhorn: Nese ju vetëm kaloi atë dhe vlerat janë të ndryshme, në vend të four-- çfarë është ajo? Tre nga katër. Unë Ju do të keni katër rreshtave dhe tre kolona. Ka që e bëjnë kuptim? STUDENT: Po. Jason Hirschhorn: Pra vërtet, ju mund të bëni atë. Po, patjetër. SHARON: Por kjo do të jetë fjalë për fjalë vetëm kalimi emrat e variablave. Mirë? OK. Të gjitha të drejtat, P vendosur një të tillë. OK, kështu që në pjesën e parë të saj ju do të jetë bërë këtë, Mario. Just kidding. Është më shumë si kjo. Dhe kështu që kur ne vetëm shikuar mbivendosur për sythe, duke e bërë atë tavolinë, mendoni se si ju mund të jetë në gjendje të shtypura nga këto hashtags në këtë mënyrë. Dhe pastaj të drejtë këtu se si do të printoni këtë të drejtë këtu, në këtë hapësirë ​​të hapur. STUDENT: [padëgjueshme]. SHARON: Yeah, ju vetëm printoni një hapësirë. OK, kështu që vetëm të mendojnë për këtë. HANNAH: Dhe pastaj njëjtë pjesë e problemit vendosur është një program të quajtur greedy.c, në mënyrë që ju jeni do të doni të mendoni rreth conditionals dhe duke u siguruar që ju mund të bëjë ndryshimin e duhur. Dhe një paralajmërim i vogël që kemi për ju po të jenë të kujdesshëm e lundrues vlerave pikë. Nëse kjo do të thotë absolutisht asgjë për ju, ajo do të jetë e mbuluar në leksion këtë javë dhe gjithashtu në [padëgjueshme] ecin nëpër, e cila ju djema do të mësojnë për dashuri në grupe me probleme. Një gjë që unë me të vërtetë sugjerojnë, sidomos me Mario.c, kur ju jeni duke bërë problem vendosur, në qoftë se ju merrni mbërthyer, të fillojë duke bërë atë në letër. Shkruani atë dhe në fakt ulen atje dhe pretendon të jetë kompjuteri, dhe shkoni through-- thonë I ishin kompjuter, si do të ndjekë këtë për lak përmes? Si do variablave mia në lak për ndryshim? Pra, duke e bërë atë në letër e bën atë 10 herë më e lehtë kur ju shkoni të ulen në kompjuter. Pra, vetëm plug im i vogël. SHARON: Dhe gjithashtu nuk mendoj se ju kanë për kodin çdo gjë përnjëherë. Sigurohuni që të merrni një proces përsëritës. A pak, të shtypura it out, shikoni se çfarë ndodh. Ndonjëherë kjo është një gjykim të vogël dhe gabim. Dhe të vijnë për të orarit të punës. Fun super. Jason Hirschhorn: Kështu ndonjë pyetje? Të gjithë djemtë e drejtë, se ishte Seksioni tuaj të parë. HANNAH: Faleminderit për të ardhur. Jason Hirschhorn: Faleminderit për të ardhur. SHARON: Ju faleminderit. [Duartrokitje]