>> [Prehrávanie hudby]
[MUSIC - Rossini "Ranz DES Vaches "Od Viliam Tell]
>> [MUSIC - ENGLISH BEAT, "MAREC Z otočnej hlavy "]
>> [Potleskom a fandenie]
>> DAVID Malan: Tak toto je CS50.
Volám sa David Malan.
A 73% z vás nemá žiadnu predchádzajúcu skúsenosť s informatike,
v rozpore s tým, čo by ste si mohli myslieť.
Takže dnes sme si mysleli, že odštípat na to, že nedostatok vedomosti, ale tiež
dá vám pocit, pre tých z vás, s viac pohodlia, ktoré smery
môžete ísť v tomto semestri.
>> Takže začnime s tým.
Ja naozaj nemám potuchy, čo je vnútri počítač, aj keď, ako ste vy, som
Používam ho každý deň.
Ale je to nejaký druh poľa, a tam je nie je veľa vstupy do neho.
Minimálne tu, čo?
Pravdepodobne napájací kábel.
>> A skutočne s týmto jednej zložky, elektrickej energie, sa zdá, že je schopný
robí celkom dosť v týchto dňoch.
Ale na konci dňa, sa majú reprezentovať veci
že nám záleží.
Musíme zastupovať informácií v nejakej forme.
A potom ste pravdepodobne aspoň nejasne oboznámení s myšlienkou o binárne alebo
bity tak alebo onak, počítače znížená na núl a jednotiek.
Môžeme však prijať, že aj najmenej dať trochu svetla na to?
>> Tak som si to málo stolové lampy tu.
Mám elektrickú zásuvku tu.
A ja idem navrhnúť, aby vo vnútri zo svojho počítača, je aspoň jeden z
tieto veci, niečo schopný o zapnutie alebo vypnutie.
V tomto prípade je to naozaj stolná lampa, ale na nižšej úrovni, to je niečo, čo
tzv tranzistor.
>> Ale v našom svete, je to stolová lampa, takže Chystám sa ísť dopredu a zapojte tento
do môjho elektriny tu.
A tvrdím, že pomocou tohto jednoduchého, jednoduché zariadenie, tento jednoduchý prepínač, som
môžu predstavovať informácie.
Napríklad, práve teraz, som čo nič, že jo?
Ja som to, čo predstavuje zavolám 0 alebo false, protiklad niečoho
v skutočnosti je prítomná.
Ale keď stačí len zapnúť tento prepínač, teraz som si predstavoval jeden.
Takže pomocou tejto veľmi jednoduchý kus pamäť, ak chcete, môžem zastupovať
informácie.
>> Teraz bohužiaľ, môj počítač nemôže robiť všetko moc.
To môže predstavovať len dve hodnoty na celom svete -
0 alebo 1.
Ale to, čo je zrejmé riešenie, teraz, ak chceme rozšíriť náš počítač je
pamäť a reprezentujú viac než len 0 a 1?
>> Dobre, poďme urvat ďalšie takú trochu.
Poďme chytiť ďalší spínač, ďalšie tranzistor, ale chcete
o tom premýšľať.
Nechaj ma ísť napred a zapojte tento do svojho počítača tiež.
A budem tvrdiť, teraz, že používať trochu viac elektrickej energie a
sústruženie viac týchto prepínačov na a off, môžem predstavujú viac ako
informácie.
>> Takže práve teraz, je to jeden.
Ak chcem v súčasnosti predstavujú 2, mohol som to urobiť.
Ale zvyčajne, konvencie, ako my budeme nakoniec vidieť, bude ma to urobiť.
Tak to je 0, to je 1.
To by bolo 2.
A niet divu, bolo by to 3.
>> Takže týmto spôsobom, sa napriek tomu môžu počítame so ešte?
Ak dostanem tretiny trochu, tretí prepínač, čo je to najvyšší počet môžem teraz
počítať až od 0?
Takže keď som 7 začínajúce na 0, že jo?
Pretože keď som zase na toto svetlo a vlastne pripojiť tento tretí a posledný
svetlo do mojej zásuvky tu, potom mám schopnosť reprezentovať
akékoľvek z dvoch hodnôt, tu dve hodnoty, tu dve hodnoty tu -
a tak môžem reprezentovať 2 krát 2 krát 2, alebo osem možných hodnôt.
A keď začnem účtovníctva na 0, tak to je 0, 1, 2, 3, 4, 5, 6, 7.
>> Takže to binárny.
Je to naozaj tak jednoduché.
A ja by som tvrdiť, že je to vlastne docela pozná väčšina
všetci v tejto miestnosti.
Nechaj ma ísť dopredu a otvoriť malý textový editor tu.
>> A môžete vyvolať z základnej školy že sme mali veci ako stovky
miesto, desiatky miesto, a tie miesto.
A pripomínajú, že ak ste mali nejaké desatinné číslo číslo, ako niečo náhodného
ako je 123, v podstate by ste napísať, že v podobe
z týchto troch stĺpcov.
A prečo je 1, 2, 3, čo poznáme ako 123?
No, v ľavom stĺpci, musíme jedno sto a dve 10s, tak to je 120,
plus tri 1s, tak to je 123.
>> Teraz to svet, ktorý sme práve svieti je presne rovnaký ako
ste boli oboznámení s roky, s výnimkou teraz, naše stĺpce
nie sú sily 10.
Sú to len dve právomoci.
Takže vzhľadom k tomu, že je ti miesto, táto bude namiesto dvojky, je to
bude namiesto štvorky.
>> A pretože som iba s použitím najjednoduchšej mechanizmov, aby zhasol veci
zapnutie a vypnutie - elektrina prúdi alebo elektrina neprúdi -
Nemám úplne mať rovnakú expresívne rozsah ako 0 až deväť.
Budeme držať to výborný jednoduché v tomto svete počítačov.
Mám len 0 alebo 1 -
zapnutie alebo vypnutie, pravdivé, alebo nepravdivé.
>> A tak to, čo som práve teraz predstavuje 1, 1, 1, pretože každý z nich
svetlá svietia.
No, to mi dáva jeden 4 a ešte jeden dva, takže to je 6 plus jeden jeden, a to je 7..
A ergo robí túto sekvenciu troch bity predstavujú počet 7.
>> Takže celú tú dobu, vnútri vášho počítače, boli ľubovoľný počet
tranzistory, ľubovoľný počet bitov.
Ale na konci dňa, sa môže predstavovať informáciu
tak jednoducho, ako to.
Teraz bohužiaľ sme Započítava až 7 v CS50 tak ďaleko, ale
dúfajme, že môžeme urobiť niečo lepší než to.
A naozaj môžeme.
>> Predpokladajme, že sme ako ľudia len svojvoľne rozhodli, že budeme
spojiť čísla ako 1 a 2, 3, 4, 5, 6, 7, so špecifickými písmen
abeceda.
A z historických dôvodov, budem spustiť trochu umelo, ale ja som
chcel povedať, ľudí, budeme rozhodnúť ako štandard, na celom svete, že
65 predstavuje číslo písmeno A. 66 bude zastupovať B. bodka, bodka, bodka.
90 bude predstavovať písmeno Z.
>> A predpokladajme, ak chceme skutočne dať nejaký Myslel na to, mohli by sme prísť
s číslami na výkričníky veľké a malé písmená, a naozaj,
ostatní ľudia robili to pre nás.
Takže teraz sme mali kúsky, s ktorými môžeme predstavujú čísla, čísla, s ktorými
môžeme predstaviť listy, a s Písmená teraz môžeme začať skladať
e-mailov a tlač znaky na obrazovke.
>> Dovoľte mi teda pozvať, keby som mohol, Osem statočných dobrovoľníkov -
, Ktorým nevadí objavujú nielen na fotoaparáte, ale na internete -
prísť sem a reprezentovať osem ako bitov, skôr než títo traja.
Tak ako o jeden, dva?
Ako asi tri?
Ako asi štyri vo svetle modrá, päť na konci?
O niekom, než tu?
Šesť vpredu, sedem v prednej časti, a osem v prednej časti, ako je dobre.
>> Tak som len tak náhodou prišiel pripravený s celou partiou papieriky.
A na týchto kúskoch papiera sú čísla ktoré predstavujú to, čo stĺpce
vy sa chystáte zastupovať.
Takže si budú - Ako sa voláte?
>> STUDENT: Anna Leah.
>> DAVID Malan: Anna Leah, tie bude 128s stĺpec.
Ste?
>> STUDENT: Chris.
>> DAVID Malan: Chris bude byť 64s stĺpec.
Ste?
>> STUDENT: Dan.
>> DAVID Malan: Dan bude byť 32s stĺpec.
>> STUDENT: Pramit.
>> DAVID Malan: Pramit bude byť 16s stĺpec.
>> STUDENT: Lillian.
>> DAVID Malan: Lillian bude 8s.
>> STUDENT: Jill.
>> DAVID Malan: Jill bude byť 4s stĺpec.
>> STUDENT: Mary.
>> DAVID Malan: Mary budú 2s a?
>> STUDENT: David.
>> DAVID Malan: David bude byť 1s stĺpec.
Takže ak vy by mohla zvýšiť trochu dopredu tak, že každý môže vidieť.
Čo vy nevidíte, že na späť týchto prúžky papiera
malý ťahák, ktorý sa chystá pokyn týchto ôsmich bity buď
zdvihnú ruku, alebo nie zdvihnú ruku.
Ak sa ich ruka ide hore, sú predstavuje 1.
Ak sa ich ruka zostane na zemi, sú to predstavuje 0.
>> Medzitým sme publikum by malo byť schopný prísť na to, na základe toho
mapovanie, čo tri-slovo listu títo ľudia sú o hláskovať.
Takže za chvíľu, budete prečítať prvý riadok zo zadnej strany
Váš ťahák, a nech už ste zoženieme, alebo nie zdvihnúť ruku.
Ak ste jeden, môžete zvýšiť, ak ste 0, stojíte tam
rozpačito, rovnako ako to.
Prejsť.
Aké číslo, v prvom rade, sú títo ľudia predstavujú?
>> 66..
66, nie?
Máme jeden v stĺpci 64s, 1 v stĺpci 2s.
To mi dáva 66 tak, že sa objaví k predstavuje B. So
vy máte napísané -
OK, to stačí.
B.
>> Takže teraz poďme na náš druhý list.
Prejsť.
Kto je najrýchlejší v matematike tu?
Tak 79.
Opäť platí, že ak zrátame všetky stĺpce v ktorom je 1, v súčasnej dobe, práve
rovnako ako sme to urobili predtým s najjednoduchšou príkladov 7, teraz
Číslo získate 79.
Čo podľa nášho mapovania je List O. Takže sme skoro tam.
B, O. A konečne, ísť.
>> Čo to predstavuje teraz?
Menej zhoda.
To je proste absolútna šelest.
Áno, je to v skutočnosti 87.
Dobre.
>> Takže keď sme sa zmapovať, ktorí zálohujú do - povedzme začať volať našu ASCII tabuľku,
Americká norma pre Výmeny informácií.
To nám dáva list -
nie "bo", ale "luk". A to je perfektné narážka vy vziať luk
a hlava na chrbte.
Ďakujem mnohokrát.
>> [APPLAUSE]
>> DAVID Malan: Môžete si ich nechať.
Aj keď v skutočnosti by niekto ako stolná lampa, tiež?
>> [HOOT u divákov]
>> DAVID Malan: stolná lampa?
>> [Smiech]
>> DAVID Malan: Naozaj?
Stolné lampy pre všetkých?
Dobrá.
Takže počnúc veľmi najjednoduchšie Princípy, ktoré sme teraz nielen počíta
hore od 0 po celú cestu až 7, máme Predpokladá sa, že práve tým, že hodí viac
bitov alebo viac svetiel alebo viac tranzistory pri riešení tohto problému, môžeme
predstavujú čoraz väčšie čísla, a ergo, väčšie a väčšie rozsahy
abecied, ako angličtine.
A práve poďme na viere dnes že podobne by sme mohli začať
predstavujú grafiku a video a všetky rad ďalších médií, s ktorými sme
pozná dnes.
>> Tak to je CS50, a v tejto triede vedľa vás je opäť veľmi veľa
spolužiaci, ktorí majú tak málo, skúsenosti ako vy.
A Spomínam to len preto, že úplne často, a to aj v poslednej dobe ako jeden zo
prvák poradenstvo udalosti a na Vlani na jar v druháku poradenstvo
udalosť, často počúvame študenti odmietajú keď prichádza k stolu UO, dobre,
Premýšľal som o prijatí tejto intro trieda, ale ja naozaj nie som
výpočtovej človek.
Alebo, ale všetci iste vie viac ako ja.
A dal som to v najväčšej písmo je to možné, oznámiť túto správu, ktorá
že to nie je v skutočnosti prípad.
>> A ak vás zaujíma, mali Aj v skutočnosti byť?
Uvedomujeme si, že nielen že je tento kurz je Názov predmetu Úvod do počítača
Veda, to je úvod do počítača Veda I. Takže tam je naozaj
druhý taký úvod.
Takže nie si v skutočnosti, na zlom mieste.
A medzi cieľmi mám pre dnešok sú zmierniť Každé také námietky, ktoré by ste
môže mať, ale tiež maľovať obraz toho, čo je v obchode pre
Študenti menšie a pohodlnejšie podobne v tomto kurze.
>> Ale najprv pár slov o jednom z prospektov máte dnes, medzi ktorými
rad často kladených otázok.
Bol to Našou víziou nejakú dobu teraz zaviesť nový triedenie
možnosť do tohto kurzu - menovite, SAT / UNSAT.
Filozoficky pre mňa, je to oveľa, oveľa dôležitejšie, že
Študenti v tejto triede zapojiť materiál, je zastavená
materiál a starosti ďaleko, ďaleko menej o mechanici skutočných skóre
a list stupňa na semester je koniec, ale naozaj objať
kurz a jeho materiál.
A naozaj je to všetko, všeobecnejšie, za to, čo je zaujímavé pre nich, aby
cíti napadnutá a odmenení, ale bez strachu z neúspechu.
>> A naozaj, toto je tiež opakujúce sa tému v tomto a ďalších úvodný
Kurzy v iných oblastiach, ktoré majú to rozechvění, pokiaľ ide o
uvedenie niečí prsty na nohách neznáme vody.
Ja sám, v roku 1995, bol v prvom ročníku.
Bol som veľmi zameriavali na koncentrátor Gov tu.
A napriek tomu som vždy vyrastali s trochou podielu vo vede o počítačoch.
Vždy som bol zvedavý.
>> Ale vtedy, dokonca mal som strach aj posilnenie nôh v CS50, toľko
takže som sa ani nakupovať to prvák.
A jediný dôvod, prečo som dal nohu Dvere druháku, pretože som
bolo dovolené, aby sa to vyhovuje / nevyhovuje.
Ale aj vyhovel / nevyhovel vyžaduje, že som si do nervu, aby si schôdzku
s profesorom Kernehan v tej dobe, aby tento veľký hárok papiera a požiadajte
ho pre jeho podpis a jeho povolenie k objavovaniu
Tieto neznáme vody.
>> A to nepomohlo v posledných rokoch že pri tom v CS50, keď sme
býval vyhovel / nevyhovel, podobne ako by desiatky či stovky svojich spolužiakov
musieť prísť, nedajbože, na Predné Sanders s touto formou, že
v niektorých mysliach predstavuje neschopnosť, Trúfam si povedať, na vykonanie
sú na úrovni svojich rovesníkov.
Čo je smiešne, ale ja si myslím, tam je to mentalita.
A tam nikdy nebol v tejto kultúre zo SAT / UNSAT, alebo vyhovel / nevyhovel viac
Všeobecne platí, že v tomto kurze, alebo naozaj v tomto areáli.
>> Takže tento rok sme to zmenili.
Chcel by som byť vo vytržení polovicu táto trieda alebo viac ukončená
up s CS50 SAT / UNSAT.
V priebehu jedného roka, bolo by to skvelé keď takmer všetci.
Potom možno budeme pracovať na písmeno ročníkov na Harvarde
Vysoká škola všeobecne.
Ale teraz, urobíme to v rámci nášho vlastné gule, a ja by som srdečne
Odporúčame, aby ste si tieto časté otázky a klásť otázky, ako uznáte za vhodné, aby sa
dúfajme, že, na rozdiel odo mňa, nie celkom majú rovnaký strach faktorom pri
skúmať, čo je pravdepodobne neznáme miesto.
>> Takže to, čo je CS50?
Jedná sa o úvod do intelektuálne podniky počítači
veda a umenie programovania.
Ale čo to vlastne znamená?
>> No, tak ďaleko, rozprávali sme si veľmi stručne o zobrazovanie informácií.
Ale predpokladajme, že chceme skutočne aby s tým niečo urobiť.
Musíme zaviesť pojem čo zavoláme algoritmus.
Algoritmus je postup, proces, súbor inštrukcií pre
niečo robiť.
>> A algoritmus môže byť niečo, Super jednoduché.
Napríklad, príklad s ktorých niektoré z vás môže byť oboznámení je to
vec tu.
Takže táto kniha je tu stále dňa, ale kedysi to
obsahuje veľa mien a telefónne čísla.
A skutočne, keď som chcel nájsť niekto v tomto telefónnom zozname -
povedať, niekoho menom Mike Smith -
Nemohol som nájsť Mike Smith v ľubovoľnom počte z pomerne jednoduchých spôsobov.
Mohol by som začať od začiatku a prejsť na stránku 1, tam nie.
Strana 2, tam nie je.
Page 3.
Je to, že algoritmus, ktorý je proces, je to tak?
>> Tak to je v poriadku, že jo?
Som trochu idiot za to ju že spôsob, ale nakoniec budem
nájsť priezvisko S, a dúfajme, že Mike je v tomto oddiele, a ja budem stáť
urobil s mojím algoritmom.
Ale určite to nie je intuitívne.
Väčšina každý rozumný človek v tejto izba by nemal robiť.
Čo by ste urobili?
>> Ty by si ísť rovno do stredu, nie?
Zhruba do polovice.
A vy si uvedomíte, oh, to sú pani Takže Mike Smith, priezvisko je Smith,
nie je, teda zrejmé, že v Ľavá polovica knihy.
Musí byť k S je v práve.
A v tomto bode, aj keď väčšina z nás nerob to v skutočnosti, môžeme
doslova roztrhať tento problém na polovicu.
>> [Fandenie a potlesk]
>> DAVID Malan: Ďakujem.
>> [Fandenie a potlesk]
>> DAVID Malan: Môžete doslova roztrhať to problém v polovici, takže mi,
doslovne, čo je problém polovice tak veľký.
Takže ak tento telefón kniha bola - a je to Pravdepodobne bola - asi 1000 stránok, teraz
je to len 500 Sk.
Ak by som to znova a uvedomujem si, oh, sakra, som zašiel príliš ďaleko, som v Ts
časť, môžem podobne -
obrazne alebo doslovne -
rip telefónneho zoznamu - to bolo vlastne oveľa jednoduchšie, že čas.
Môžem doslova vyrvať telefónny zoznam na polovicu, takže ma teraz s
nie 1000, a to 500 -
250 strán.
A môžem ísť 125, a polovica z toho, a polovica z toho, a pol z toho,
až konečne budem odišiel s len jednu jedinú stránku.
>> [Smiech]
>> DAVID Malan: To je časť I zlyhať.
Jediná stránka, na ktorej Mike snáď je.
Teraz tieto rôzne algoritmy môžu byť druh alebo vyhodnotené v
rôznymi spôsobmi.
Prvý z nich bol veľmi lineárny, nie?
Otočte stránku, pozrite sa na Mika.
Je to veľmi lineárny.
Ak je tu ešte jedna stránka v telefóne kniha, to asi bude trvať ma
jeden druhého, jeden jednotku času, Avšak sme počítačového času.
>> Takže som mohol kresliť takhle tento riadok tu, pričom ako veľkosť
problém sa zvyšuje zľava doprava -
Telefónny zoznam sa zmenší na väčšie -
a čas sa bude zvyšovať v zvislá os, väčšie
telefónny zoznam.
Takže n je len všeobecne premenné, ktoré počítačové vedci používajú na reprezentáciu
nejakú hodnotu, nejaké číslo.
Tak n porastie lineárne.
Dvojnásobná veľkosť telefónneho zoznamu, je to ma vezme dvakrát toľko
čas, s najväčšou pravdepodobnosťou nájsť Miku.
>> Teraz som mohol byť inteligentný o tom, že jo?
Som sa nudiť rýchlo.
Mohol by to urobil po dvoch.
Takže dve stránky, potom štyri, potom šesť, potom osem.
A mohol by som lietať cez to trochu rýchlejšie, aj keď v menšej riziko
prekročenie Mike, ale že krivka nie je bude všetko inak.
Je to ešte bude rovný vedenia, ale o niečo rýchlejší.
>> Ale čo mám robiť?
Vlastne som urobil niečo zásadne lepší.
Som dosiahol to, čo budeme hovoriť logaritmickej čas, log n, pričom táto zelená
linka má oveľa, oveľa, oveľa menej rovná hrana na to.
A skôr to naznačuje, ako to nejako blíži k nekonečnu niekedy tak postupne,
že som mohol skutočne vziať 1000-page telefónny zoznam, zdvojnásobí svoju veľkosť
budúci rok - pretože predpokladám veľa viac ľudí presťahovať do mesta.
>> Takže teraz mám 2000 stránok, ale ako mnoho ďalších krokov, ktoré je múdrejší
Algoritmus bude trvať?
Len jeden.
Myslím, že je to mocná vec.
Ak pôjdeme na 4000 strán v budúcom roku, že to bude trvať ma
Iba ďalšie dva kroky.
Takže môžete hodiť väčšie a väčšie problémy sa na mňa, nie na rozdiel webe je
hádzanie väčšie problémy každý deň na Googlu a na Facebooks
svet, a to nie je tak veľký problém.
Pretože som si viac pozornosti a starostlivosti do môj algoritmus, s ktorým riešiť
problémy efektívne.
>> A v skutočnosti, že sa jeden z ciele tohto kurzu.
Budete, pozdĺž cesty, naučiť sa programovať.
Dozviete sa, ako sa programovať ľubovoľný počet jazykov.
Ale na konci dňa, je kurz o riešení problémov a získavanie
lepšie riešenie problémov - a, rovnako ako v prípady, ako je tento, riešenie problémov
efektívnejšie.
>> Teraz tak ďaleko, urobili sme to pomerne intuitívne.
Poďme si predstaviť niečo spravodlivo všeobecný volal pseudocode.
Takže budeme nakoniec dostal, V tomto kurze sa
rôzne programovacie jazyky.
Ale dnes to urobíme v anglicky ako syntax, kde sa tak trochu povedať,
čo máte na mysli, ale ty si niekedy tak stručné a vy sa nemusíte starať o
gramatika a celé vety.
Len vyjadriť sám seba ako stručne, ako je to možné.
>> Takže pseudokódu je angličtina-like syntax, ktorá predstavuje
programovací jazyk.
A na tento účel, dovoľte mi navrhnúť, aby začať modelovať proces sme len
popísané počítanie niečo trochu inak, tentoraz s
pozri sa na túto päť minút vyrobeného videá našimi priateľmi na TED, že
definuje, čo je pseudokódu, definuje to, čo algoritmické myslenie je, a dokonca
keď napríklad ste asi vidieť je v samo o sebe, super jednoduché, je to
začnú sa nám duševné model, slovnú zásobu, s ktorou sa
to oveľa zložitejšie algoritmy pomerne rýchlo.
>> [BEGIN Prehrávanie videa]
>> [Prehrávanie hudby]
>> Rozprávač: Čo je to algoritmus?
Vo vede o počítačoch, algoritmus je sada inštrukcií pre riešenie niektorých
Problém krok za krokom.
Obvykle sa robí algoritmy o počítačoch, ale my, ľudia majú
algoritmy, ako i
Napríklad, ako by ste o počítanie počtu
ľudí, ktorí v izbe?
No, ak ste rovnako ako ja, to by asi bod na každú osobu, po jednom
čas a počítať od 0.
1, 2, 3, 4, a tak ďalej.
>> No, to je algoritmus.
V skutočnosti, skúsme ho vyjadriť trochu viac formálne v pseudokódu -
Angličtina-ako syntax, ktorý sa podobá programovací jazyk.
Nech n rovné 0.
Pre každú osobu na izbe, nastavte N rovný N plus 1.
>> Ako interpretovať túto pseudocode?
No, jedna linka prehlasuje, aby som tak povedal, premenná s názvom N a inicializuje
jeho hodnotu na 0.
To jednoducho znamená, že na začiatku roka náš algoritmus, vec, s ktorou
Počítame má hodnotu 0.
Koniec koncov, než začneme počítať, sme sa nepočítajú zatiaľ nič.
Volanie tejto premennej N je len konvencie.
Mohol som to nazval takmer všetko.
>> Teraz riadok dva demarks začiatku slučky, sled krokov, ktoré
opakovať určitý počet opakovaní.
Takže v našom príklade krok berieme sa počtu osôb v miestnosti.
Pod riadok je riadok tri, , Ktorý opisuje, ako presne
budeme ísť o počítanie.
Odsadenie znamená, že je to riadok tri, ktoré sa bude opakovať.
>> Takže to, čo sa hovorí, je pseudokódu , Že po spustení na 0, pre každú
osoba v izbe, budeme zvyšujú o 1 N.
Teraz je tento algoritmus správne?
Dobre, poďme bang na to trochu.
Funguje to, ak existujú dvaja ľudia v miestnosti?
Poďme sa pozrieť.
>> V prvom riadku, sa inicializovať N na 0.
Pre každý z týchto dvoch ľudí, sme potom prírastok do N 1.
Takže na prvej ceste slučky, sa aktualizovať N 0-1.
Na druhú cestu cez ten rovnaký slučka, aktualizujeme N 1-2.
A tak týmto algoritmom je koniec, n je 2, ktorý skutočne zodpovedá počtu
ľudia v miestnosti.
>> Tak ďaleko, tak dobrý.
Ako sa o rohové prípade, aj keď?
Predpokladajme, že existujú ľudia, 0 v miestnosti - okrem mňa,
kto to robí počítanie.
V prvom riadku, sa inicializovať N na 0.
Tento čas však rad troch rokov nie spustiť vôbec, pretože tam nie je
osoba v izbe.
A tak zostáva N 0, čo zodpovedá počet ľudí v miestnosti.
Celkom jednoduché, nie?
>> Ale počítanie ľudia jeden po druhom je celkom neefektívne, tiež nie?
Iste môžeme urobiť lepšie.
Prečo nie počítať dvoch ľudí naraz?
Namiesto toho, aby počítanie 1, 2, 3, 4, 5, 6, 7, 8, a tak ďalej, prečo sa nepočíta, 2,
4, 6, 8, a tak ďalej?
Je to dokonca vyzerá rýchlejšie, a to iste je.
>> Poďme vyjadriť túto optimalizáciu v pseudokódu.
Nech n rovné 0.
Pre každú dvojicu ľudí v miestnosti, nastaviť N rovné N + 2.
Celkom jednoduchá zmena, nie?
Skôr než počet ľudí, jeden v dobe, namiesto toho sme počítať
je po dvoch.
Tento algoritmus je teda dvakrát tak rýchlo, ako posledný.
>> Ale je to správne?
Poďme sa pozrieť.
Funguje to, ak existujú dvaja ľudia v miestnosti?
V prvom riadku, sa inicializovať N na 0.
Pre ten jeden pár ľudí, sa potom zvýšiť N dvoma.
A tak týmto algoritmom je koniec, N 2, ktorý skutočne zodpovedá počtu
ľudia v miestnosti.
>> Predpokladajme, že existujú ďalšie 0 ľudí v miestnosti.
V prvom riadku, sa inicializovať N na 0.
Rovnako ako predtým, riadok tri nespustí vôbec, pretože tam nie sú žiadne pary
ľudí v miestnosti.
A tak zostáva N 0, čo napokon zodpovedá počtu
ľudia v miestnosti.
>> Ale čo keď sú tam tri ľudia v miestnosti?
Ako tento algoritmus cestovné?
Poďme sa pozrieť.
V prvom riadku, sa inicializovať N na 0.
Pre pár týchto ľudí, sme potom prírastok do N 2.
Ale čo potom?
Či je na plný pár ľudí v miestnosti, takže riadok dva nie
už neplatí.
A tak týmto algoritmom je koniec, N je stále 2, čo nie je správne.
>> V skutočnosti, je tento algoritmus hovorí, že je buggy, pretože má chybu.
Umožňuje nápravy s nejakým novým pseudokódu.
Nech n rovné 0 pre každú dvojicu ľudí v miestnosti.
Sada N rovné N + 2.
Ak jedna osoba zostáva nepárová, nastaviť N rovný N plus 1.
Ak chcete vyriešiť tento konkrétny problém, máme zaviedla v radový štvorvalec,
stav, inak známy ako zložka že sa vykoná len v prípade, že je jeden
osoba, ktoré sme nemohli dvojica s iným.
A tak teraz, či je jeden alebo tri alebo nepárny počet ľudí
izba, tento algoritmus bude teraz počítať.
>> Môžeme to urobiť ešte lepšie?
No, mohli by sme počítať 3s alebo 4s, alebo dokonca 5s a 10s, ale za to, že je to
dostane trochu ťažké bodu.
Na konci dňa, či už je vykonaná pomocou počítačov alebo ľudí,
algoritmy sú len súbor pokynov sa
ktorá rieši všetky problémy.
Títo boli len tri.
Aký problém ste vyriešili s algoritmom?
>> [END PLAYBACK]
>> DAVID Malan: To je jediný okamih, kedy Ja sa objaví vo forme karikatúry.
Ale kde ten príbeh skončí, teraz je, ako môžeme robiť lepšie?
Trojky a štvorky, tvrdíme, sa môžeme spoľahnúť ľudia oveľa rýchlejšie, ale môžeme
to zásadne lepšie, ako toto?
A stavím sa, môžeme.
>> Ak si predstavíme trochu naše vlastné pseudokódu tu, idem navrhnúť
že môžeme dosiahnuť riadok podobný tomuto.
Nebudeme počítať ľudí jeden, dva, tri, štyri.
Nebudeme chodiť dvaja, štyri, šesť, osem.
Chystáme sa robiť zásadne lepšie prehodnotením problém, a v tomto
prípad, využitím inak nevyužité zdroje.
>> Za chvíľu, dúfam, že mi odpustíte a humor nás tým, že stojí v
miesto, na ktorom mieste budeme požiadať každého z vás, aby sa vo vašom
mysli číslo 1.
Tie potom bude stále nemotorne, ako čas ubieha, nájsť
niekto iný, kto stojí, kombinovať vaše čísla dohromady
pridaním je.
Jeden z vás sa potom bude pretekať sedieť sa prvá a druhá osoba
bude opakovať.
>> Takže inými slovami, že sa nasadí všetky tie s číslom 1 a potom
kombinujúci tie 1s do 2s a tie 2s do 4s, s každým ďalej
sedieť, mali by sme sa na konci roka tento algoritmus, mať len jeden úver,
duša, ktorá nesadol dosť rýchlo, ale ktorý má celý publikum počet
v jeho mysli.
>> Takže ak chcete, poďme ďalej a - prvý krok - postaviť na mieste.
A spustiť.
>> [Dav mumlání]
>> DAVID Malan: Viete, kde Lauren je?
729?
>> [Dav mumlání]
>> DAVID Malan: V poriadku?
>> [Dav mumlání]
>> DAVID Malan: Dobre, mali by sme sa blíži ku koncu.
Vidíme jeden chlapík stojaci stále tu.
Kto iný potrebuje byť spárovaný?
Ak vy chcete spárovať.
Niekto sa hore.
Prečo nemôžem podať pomocnú ruku tu.
Pre veľmi málo ľudí, ktorí sú stále stojí, aké čísla sa vám
majú vo svojej mysli?
>> STUDENT: 78.
>> DAVID Malan: 78 plus -
kto by to stáť tu dole?
>> STUDENT: 39.
>> DAVID Malan: Plus 39.
Navyše, kto iný ešte stojí?
81?
OK, kto iný?
Ďalšie 81?
Wow.
A potom to, čo je v chrbte?
>> STUDENT: 49.
>> DAVID Malan: 49 plus?
>> STUDENT: 98.
>> DAVID Malan: 98 Plus?
Je to niekto iný?
12?
Dobrá práca.
>> [Smiech]
>> DAVID Malan: Oh, 112 -
oh.
Dobrá práca!
>> [Smiech]
>> [APPLAUSE]
>> DAVID Malan: Niekto iný ešte stojí?
Je nám ľúto?
>> STUDENT: 99.
>> DAVID Malan 99.
Niekto iný ešte stojí?
A celkový počet študentov tu je v skutočnosti, v závislosti na -
máte číslo?
Oh, skutočný počet ľudí miestnosti, v závislosti na účte, ktorý
učebné chlapi robili na každého cesta dovnútra, bolo 729.
Takže z miestnosti plnej študentov Harvardu ktorý počítal sám,
Odpoveď je 637.
>> [Smiech]
>> DAVID Malan: Tak blízko.
Ale napriek tomu.
OK, tak to je učenie moment, že jo?
To je to, čo teraz môžeme označiť za chybu.
Niekde po ceste sme urobili niektoré aritmetický zle, alebo niekto posadil,
alebo vľavo, alebo sa niečo pokazilo.
Ale to je v poriadku.
Pretože aj napriek tomu, sme dostal celkom blízko.
A ja by som tvrdiť, že sme sa dostali do zlej odpovedať mnoho rýchlejšie, než by som si
cez môj ďalší lineárny prístup.
>> Takže predpokladajme, že sme v skutočnosti, že sa opraviť, ale že teraz na to, čo
sa deje zakaždým, proti mojej vlastné naivné ukázal algoritmus.
Jedna, dva, tri.
V prípade, že sú skutočne 729 alebo 637 ľudí tu, to by ma vziať
doslova 637 alebo 729 pointings prsta a
zvyšovanie môj celkový počet.
A čo som mohol urobiť trochu lepšie ísť dva, štyri, šesť, osem a
zdvojnásobiť rýchlosť, možno aj troch alebo štvornásobný, podľa toho, ako dobre som si
tomu, že počítanie v mojej hlave.
>> Ale tento prístup, ktorý ste sa zásadne líši.
Vzhľadom k tomu, na začiatku, všetky z vás, vstal.
Takže všetko 729.
A potom doslova polovica z vás sa posadil.
A potom, ďalšie polovica z vás sa posadil.
>> A celkový počet, koľkokrát ste chlapci mohli posadil je zhruba
osem alebo deväť alebo desať celkovej časy, v závislosti na tom, čo náš celkový počet je.
A môžeme sa nejako urobiť to na druhú stranu.
Ak by sme mali 1024 ľudí v miestnosti, Celkový počet opakovaní by ste mohli
1024 polovicu ľudí je 10.
>> Teraz o tom premýšľať v opačným smerom.
Predpokladajme, smiešne, že sme mali, povedzme štyri miliardy ľudí v tejto miestnosti,
alebo o niečo väčší priestor.
Koľkokrát sme išli prostredníctvom tohto algoritmu, tak, že polovica
tejto triedy sadne?
Je to len bude trvať 32 ako operácie, a to aj v triede o veľkosti
štyri miliardy.
Prečo?
Pretože štyri miliardy pôjde na dva mld Sk, ide do jedného milióna, ide
500 miliónov ide na 250 miliónov, bodka, bodka, bodka.
Môžem robiť len týmto rozdelením nejakých 32 čas, na ktorom mieste, všetci, okrem
jedna osoba by mala zostať stáť.
>> A to je tiež trochu silný Predstava, že čoraz viac sa budeme snažiť
využiť v tomto kurze, a programovania a počítačovej vedy viac
Všeobecne platí, že tieto zárodky nápadu s ktoré potom môžu riešiť problémy oveľa,
oveľa silnejšie.
Začali sme celkom jednoduché s tým pseudokódu a chlap v miestnosti, ale
teraz s celej miestnosti plnej ľudí sme urobili podstatne lepšie.
>> Dobre, poďme sa prechod od pseudokódu nejaké skutočné kódu.
Tento jazyk sa chystáte, aby sa stalo byť nazývaný JavaScript, a
vrátime sa k tomu Semester je koniec.
Je to programovací jazyk, ktorý použiť, aby sa webové stránky a iné takéto
softvér v týchto dňoch.
A my sme použili, vďaka priateľovi náš na Stanforde, kódovať
nejaký skrytý informácií nájdete tu.
To je umenie steganografie, aby som tak povedal, kde sa môžete schovať
informácie v tom, čo sa zdá inak byť šum alebo úplne iná
obrázok dohromady.
Ale vložený v tomto obrázku je naozaj tajná správa druhov.
>> Tak ma nechaj ísť dopredu a vytiahnite rovnaký obraz tu, toto
tentoraz vo webovom prehliadači.
A budem mávať ruku na niektoré z podrobnosti pre dnešok, najmä
pre tých z vás, ktorí to vyzerá ako nielen JavaScript, ale grécka, ako
úplne neznáme jazykom.
Ale to je príklad programovací jazyk.
>> A teraz sa na viere, že Prvý riadok kódu -
a podľa kódu, práve som na mysli text.
Text, ktorý som mohol doslova napísal do aplikácie Microsoft Word, keby som mal
správny softvér do tej doby s tým niečo urobiť.
Zdrojového kódu, programovanie kód, je naozaj len textu, a to
vyzerá inak, na základe toho, čo jazyk , Ktorú používate, nie je na rozdiel od angličtiny a
Španielčina a ruština všetko vyzerať inak Pri písaní je na vašej klávesnici.
>> Takže ten prvý riadok, teraz sa na viera, jednoducho otvorí grafiku z
internet, že hlučné grafický sme práve videli.
Tento ďalší riadok je tu príklad slučka, a sme skutočne videli, že rovnaký
žargón vo videu TED.
Slučka je niečo, čo sa stane znova a znova, a to aj napriek tomu,
absolútne vyzerá tajomný, s Kľúčové slovo pre, a niektoré zátvorky a
niektoré bodkočiarkami.
Vrátime sa k tomu onedlho, ale, že slučka je v podstate je
hovorí programu, iterovat cez všetky z týchto bodov hlučných zľava
doprava, zhora nadol.
>> Vzhľadom k tomu, na konci dňa, obrázok takhle - a môžete skutočne
druh vidieť na tomto projektore -
je naozaj len mriežka bodov.
Takže môžeme určiť každý z týchto bodov pomocou súradníc x, y, a to
Program možno teraz začneme niečo na tie bodky.
>> Takže ja idem dopredu a tu to je Chystám sa urobiť nejaké zmeny.
Prvý Chystám sa ísť dopredu a zbaviť na všetkých, ktoré zelenkavá a modra
hluk, a ja idem do toho a zadajte nasledujúce
síce tajomné syntaxe.
im pre obraz.
nastaviť modré na súradniciach x, čiarka, umiestnenia y, na 0.
Inými slovami, chcem len vypnite všetky modré
bodky v tomto obrázku.
>> Chystám sa ísť dopredu a kliknite to Run / tlačidlo Uložiť, a budete
Všimnite si na pravej strane, výsledný obraz objaví.
Teraz je Super zelená, ale to nie je prekvapujúce, pretože som doslova obrátil
off, tým, že 1 je 0, všetci modrá v uvedenom obrázku.
>> No, teraz poďme to urobiť trochu viac.
im pre obraz, bodka setGreen, x, y.
A to len znamená, že iterate zľava doprava a zhora nadol.
Vypni to s hodnotou 0, rovnako.
Uložiť.
A na projektore, môžete v skutočnosti naozaj vidieť vôbec nič.
>> Na mojom notebooku obrazovke, keď som nahliadnuť do práve správna cesta, vidím trochu
obrázok, pretože sú stále nejaký červený tam.
Ak ste niekedy počuli skratku RGB -
červená, zelená, modrá -
to s odkazom na toto zloženie z obrazu pomocou
Len tieto tri farby.
A práve teraz sme vyhodiť všetky zelené, celé modré, ale
že to nie je moc červené.
>> Takže dovoľte mi nahodiť červené.
Ako to môžem urobiť?
No, v prvom, idem sa opýtať tento program otázka.
Chystám sa ísť do toho a hovorme ju premenné, rovnako ako v algebre.
Môžete mať x alebo y alebo z
Budem deklarovať premennú a povedať, dať do tejto premennej,
dočasne, hodnota obrazy getRed hodnotu na x, y.
>> A opäť vrátime sa na všetky tohto detailu v budúcnosti.
Ale teraz, len sa na viere, že táto položka sa pýta program, čo
je hodnota červenej na x, y?
V tomto konkrétnom bode?
>> Potom budem robiť niečo k tomu.
Potom budem robiť obrázku dot sada červená na x, y, y, ale tentoraz budem
podporiť ju robí červené krát, povedzme, 10.
Tak zvýšiť o faktor 10.
Dovoľte mi, aby som oddialiť teraz kliknite na tlačidlo Spustiť mohol / Uložiť.
A voila, že tam bol celý čas, aj keď naše ľudské oči
nedokázal vidieť.
>> Takže znova, teraz je skutočný kód, príklad jazyka, ktorý Prídeme
späť onedlho.
Ale uvedomiť, najmä tých z vás, bez tejto skúsenosti, je to celkom
čoskoro, že my sami budú písať kód, ako že.
V skutočnosti je nástroj, pomocou ktorého ste všetci trochu poznať, možno je to CS50
vlastný kurz-shopping nástroj, ktorý bol vlastne reštartuje tento rok v lete niektoré
vlastných CS50 bývalých študentov, sa teraz TFS.
>> Tak toto sa stane byť postavená webová stránka v jazyku PHP s názvom.
Využíva databázu MySQL s názvom veci s ktorými sa dostaneme do rúk
špinavé neskôr v semestri.
Ale verte tomu alebo nie, aj niečo ako je to v konečnom dôsledku znižuje na
Najjednoduchšie slučiek a podmienok a odvetví, ako napríklad tých, ktoré sme videli len
Pred chvíľou vo videu TED.
>> To, čo som si myslel, že to je teraz podiel nie je proste niečo, čo sme urobili zamestnanci
pre kampus, ale skôr niečo bývalý študent - tri
študentov, v skutočnosti -
robil minulý rok, Sierra, Daniel a Sam, posledný z nich nemal pred
programovania skúsenosti keď si vzal CS50.
A pre záverečného projektu, ale vystavené, na CS50 veľtrhu,
Aplikácia s názvom wrdly, ktorý je webový program, pre ktorý oni robili
toto video, ktoré som myslel, že zdieľať so vám zmysel len to, čo je
možný termín je koniec.
>> [Prehrávanie hudby]
>> DAVID Malan: To je týždeň od nuly do 12. týždňa v minulom roku.
>> [APPLAUSE]
>> DAVID Malan: Ako ukážku, taky, naozaj povzbudiť chuť k jedlu, je to, čo je
je to možné, ste mohli zaznamenať už alebo môže čoskoro vidieť, market.cs50.net, a
nový nástroj, ktorý v priebehu tím má pracuje na, tentoraz v
spolupráci s Harvard Student Agentúry tak, že od tohto roku
a dúfajme, že aj naďalej do tohto prichádza lete budete mať štandard
príležitosť na akademickej pôde kúpiť a predávať veci, ktoré vás zaujímajú.
A s pomocou partnerstva HSA, budete tiež môcť k poklesu položky off
v jednom z kamenných obchodoch HSA je v niektorých v budúcnosti, tak, aby sa
Proxy veci, najmä ak vás absolvent a nemusí nutne chcieť
zbaviť vecí, ale v skutočnosti ju zaplatiť odovzdať ľudí, ktorí by mohli nasledovať vás
tu na akademickej pôde.
Takže viac o tom prísť.
>> Ale trochu konkrétnejšie, nástroj ktorý prišiel z CS50 v posledných rokoch
roky, s ktorou niektorí z vás by mohol byť známe a iní z vás môže byť
googling teraz, v CS50.net/2x, budete nájsť odkaz na rozšírenie Chrome
ktorý je demonštratívny, ako môžete používať JavaScript, ten istý jazyk sa
použiť Eiffelovej veže pred chvíľou, vykonávať 2x rýchlosti prehrávania
pre všetky Harvarde videa iSites.
To je niečo, čo je postavený do vlastného CS50 je video prehrávač.
Ale aj to, keď sa vám začnú kopať do zdrojového kódu, ktoré my budeme
šťastne sprístupniť, uvidíte, ako môžete dokonca riešiť problémy, ako je to,
urýchlenie widgety na webových stránkach s ktoré ste už dobre oboznámení.
>> Takže slovo teraz v kurze, a očakávania a to, čo leží pred nami.
Všeobecne platí, že budeme skutočne získať tu v pondelok av stredu - aj keď
tento piatok, budeme zbierať, pretože Shopping týždňa -
01:00-14:00, hoci niekedy až do 02:30.
Vzhľadom k tomu, že by preto chcú, alebo musieť vziať nejaké triedy v 14:00
dopredu, alebo aj pred Uvedomujete si, Kurz je podporuje, čo sa nazýva
simultánne zápis, pričom my budeme podporu petíciu Radou Ad a
Váš pobyt dekani vašim menom, ak Máte konflikt niekde v tomto
1:00-02:30 rozsah.
Adresa URL tejto on-line na ďalšie detaily.
>> Ale pokiaľ ide o nosné konštrukcie ktorý charakterizuje CS50, pre študentov
viac a menej pohodlné podobne, sme Ponúkame rôzne stopy sekcií.
A to je pár týždňov preč, ale Netrvalo dlho a budete požiadaní, aby
vaša úroveň pohodlia.
Ste medzi tie menej pohodlné, pohodlnejšie, alebo
niekde medzi?
>> A budeme mať tri odlišné skladby, ktoré obstarávajú
práve tie diváci.
Takže v žiadnom okamihu v termíne mali by ste dokonca pocit, že budete súťažiť
proti každému študentovi sa viac alebo menej pozadie než vy.
V skutočnosti je samozrejme chcel byť oveľa viac spolupráce a oveľa
otvorenejší než to.
>> Pokiaľ ide o základné problémové okruhy, budete nájsť tiež, že okrem
Štandardné vydanie každého týždňa problému nastavenie, je to často "hacker
vydanie ", ktorý je určený na cielené na 5% až 10%, alebo tak
demografické, kto je naozaj medzi tie pohodlnejšie a chceli by ste viac
náročnejšie ako štandardné vydanie tohto pset očakáva.
Viac informácií o tých, ktoré majú byť nájdete v sylabu.
>> Ale aj tam možno nájsť podrobnosti na kurzoch neskoré dní.
Typicky problém sady sú splatné vo štvrtok.
Avšak, môžete rozšíriť mnohé z vašich termíny tento rok na jeseň od štvrtka do
Piatok jednoducho tým, že stretnutie s nami na polceste, aby som tak povedal, odpovede na niekoľko warm-up
otázky v niektorej z týždňa problému sady, bude to automaticky
potom vám extra 24 hodín.
Budeme tiež pokles vaše najmenšie skóre, podľa sylabu.
>> Ak chcete vám o tom, čo je problém sady sú - pretože je to naozaj
Kurz je problém, ktorý stanovuje nakoniec definovať takmer každý
študenta skúsenosti, viac než prednášky, viac než sekciách, viac
než väčšina iných aspekt predmetu.
V minulom roku sme napríklad začali ako začneme tento rok s Scratch.
Práve tento piatok budeme používať pre len jeden deň čas, grafický
programovací jazyk, s ktorým my budeme začať s programovaním pretiahnutím
klesá dielikov, že iba zostaviť fyzicky, ak to dáva zmysel
k tomu logicky.
>> Budúci týždeň budeme rýchlo prechod na C, docela starý, ale veľmi malé a
jednoduchý jazyk, ktorý nám umožní naozaj ísť od 0 do 60 v priebehu
Behom pár týždňov, a potom prednosti tie isté vedomosti a zručnosti
Základné programovací konštrukty do vyššia programovacie jazyky ako PHP,
JavaScript, a ešte iní stále.
>> Vlani tretí pset v priebehu bolo, že kryptografia,
domény špecifické pre aplikácie, kedy sme napadla študentmi vykonať akýkoľvek
počet šifier, programy, s ktorými na zakódovanie a dekódovanie informácie,
na zašifrovať.
Pre hackera vydanie, naopak, Dali sme sa hacker študentom súbor
zo štandardného počítača Unix obsahujúce používateľské mená a heslá,
latter ktorý bol zakódovaný, a my napádal tých hacker
študentov na dešifrovanie, ako najlepšie mohli, tie heslá, stále na to
rovnakú doménu.
>> Scramble, hra, s ktorou niektorí z vás sú možno povedomá.
Forenznú kúsok, kde žiadame študentov obnoviť dáta, ktorá bola
inak odstránený z mojej vlastnej digitálnej fotoaparátu pamäťová karta Compact flash, podľa
a písanie softvér, aby zistili, kde boli nuly a tie v
že digitálny fotoaparát, ktorý predtým skladal JPEG grafiku?
>> Výzva druhov v minulom roku zahŕňajúce písanie najrýchlejší
Kontrola pravopisu je to možné, súťaží s priateľmi a spolužiakmi, ak
oni chceli.
Vykonávanie Huff 'n Puff, kompresný program.
A potom končí semester, s CS50 Financie, webová aplikácia s
ktoré vytvoríte ETrade-ako webové stránky nakupovať a predávať akcie, tak
hovorí, tým vlastne ťahá takmer real-time citácie Yahoo!
Finance.
>> To, čo sme neurobili v minulom roku jeden problém sada, ktorá zostáva
však obľúbené.
Ak ste nikdy šiel do shuttle.cs50.net, uvidíte užívateľa
rozhranie trochu ako je tento.
Ale pred dvoma rokmi, trieda realizovaná pomocou Google Maps a
Google Earth plug-in a trochu pútavé s riadením po kampuse,
tak, že cieľom tejto hry je, ako môžete vidieť niektoré z tvárí,
je riadiť po kampuse hľadá zamestnanci, kolegovia výučby a CAS, a
keď to urobíte, ich uvádzanie do vášho shuttle bus.
Žiadny z nich v skutočnosti sa zdá, že je tu, takže budeme zadávať kódy.
>> [Smiech]
>> DAVID Malan: Tak ideme.
Dobrá.
A tu je personál prichytená po celom areáli.
A ako môžete vidieť, na pravej strane obrazovky, shuttle bus
má prázdne miesta.
A cieľom bolo napísať kód, pomocou ktorého simulovať
riadenie a nástup a pád výstup a nástup cestujúcich.
Že jeden, aj za použitia jazyka volal JavaScript.
Takže si uvedomiť, že programy, ako je, že bude byť na našom rovnaké trajektóriu tohto
rok, ako i
>> V podmienkach, teraz dodatočnej podpory, máme úradné hodiny.
Ako ste mohli vidieť vo vlastnom dome jedáleň alebo Annenberg,
budeme v dome stolovanie haly štyri noci v týždni -
Leverett PfoHo, Eliot a Annenberg v tomto roku, 20:00-23:00.
A čo sme si povedali, že to tento rok je niečo trochu iné.
>> Ak ste počuli hrmenie že v minulom roku to bolo príliš stresujúce, to
Tohtoročné úradné hodiny, ako budeme popisovať budúci týždeň, bude viac organický,
kedy po príchode, budete odoslané do jednej konkrétnej tabuľky
kde viac zamestnancami čakajú, a my budeme robiť veci oveľa viac
organicky.
Žiadne fronty, žiadna iPad, ale radšej intímnejší
konverzácie okolo stola len osem alebo tak študenti, tak, že sa
približný pocit z toho, čo inak by bola oveľa menšia triedy.
>> Ponúkame, tiež, tieto veci my tzv priechody, videá natáčal v
posunie o jeden z kurzu náuky chlapi, Zamyla, v ktorom
vás prevedie týždeň problému súpravy, ktoré ponúkajú tipy a triky pre
výzvy, ktoré ležia pred nami.
A naopak, po základnej problémové okruhy sú vďaka, tento rok budeme tiež uvoľniť
malé klipy volanie post-mortems, že v skutočnosti vás prevedie
reprezentatívny riešenie, ako dobré a zlé, cez ktorý si môžete odvodiť, ako
môžete mať, alebo by mal mať realizovaná vlastné riešenie.
>> A čo budeme ponúkať prvýkrát aj tento rok, a to najmä
pre študentov, ktorí využijú kurzu je iný
zdrojov, ale napriek tomu sa stretávajú príliš veľa, kurz
sám bude spárovať tých študentov, ako zdroje dovolia, s učiteľmi, aby
budete mať oveľa intímnejší možnosť než jedálne dom
umožňujú jeden na jedného pomôcť.
>> Teraz konečnej letmý pohľad na niektoré konečných hier v nedohľadne.
Tie by mohli byť oboznámení s CS50 hackathon.
No, príde tento rok v decembri, od 08:00 PM do 07:00, na začiatku
Čítanie obdobia bude mať príležitosť zhromaždiť so spolužiakmi -
to by bolo asi 21:00 -
počas ktorého sa ponoríte do konečnej realizácia projektu spoločne s
spolužiaci, priatelia a jedlo.
To by bolo asi 01:00, kedy Prvá várka potravín dorazil.
A to je asi 04:00, že Najmä rok na CS50 hackathon.
>> Ale pravda vyvrcholením kurzu je chcel veľtrhu CS50, areál pre celé
Výstava z vašich vlastných finálnych projektov, ktoré rodina a priatelia sú
vyzývajú, aby v našich personalistov a naši priatelia z priemyslu.
To, napríklad, je pohľad 2000-plus ľudia, ktorí už sa zúčastnili
v minulých rokoch.
Výrazy ako je táto, nie sú nezvyčajné, a robiť to podobne
spolužiaci potešenie z vecí, ste dosiahol.
>> A v skutočnosti, na tento účel, máme start-of-termín udalosť, rovnako.
Ak sa veci, ako je tento apel na vás, alebo ste aspoň zvedaví, čo
to, viem, že nová tradícia Kurz sa nazýva CS50 Puzzle Day.
A to bolo zavedené pár rokmi naozaj signál do areálu
že počítačová veda nie je o programovania, a rozhodne to nie je
o zahŕňa len tí študenti, ktorí majú predchádzajúce skúsenosti.
Je to naozaj o riešenie problémov všeobecnejšie.
>> A tak Puzzle deň, počas posledných niekoľkých rokov teraz, sa vyvinula v peknej
Partnerstvo s našimi priateľmi na Facebook, kedy tam bude báječný
ceny a pizzu cez rieku na i-lab tento rok v sobotu.
Vypravte sa do tejto URL s dvoma alebo troma priatelia, ak chcete, aby sa podieľal
v tejto novej tradícii.
>> Takže by som sa chcel opýtať, že budete mať jeden vec na mysli, a máme len
dve minúty klip, na ktorom uzavrieť dnes.
73% je číslo pamätať.
Tortu taky, bude na vás čakajú mimo tento transeptu, ako sme len v odročenie
pár momentov, čo je tradícia kurzu, rovnako.
Ale to je kľúčový citát Samozrejme je osnova mať na pamäti.
Čo nakoniec záleží v tomto kurze nie je tak kde ste skončili
vzhľadom k svojim spolužiakom, ale kde tie, v 12. týždni, skončí vo vzťahu k
si v týždni 0.
>> Ale pohľad, že opustí vás sme sa tu dnes je posledný z nich tu
naše Danielovi, kto to urobil wrdly videa pred chvíľou.
Nechám vás s týmto pohľad toho, čo leží pred nami.
A ako to urobíme, keby sme mohli mať CS50 pracovníci z prednej časti miestnosti
prísť až na javisko, aby maľovať všetky viac vizuálny obraz, aby sa
Čo vás čaká v tomto roku -
ako trápne.
Budeme uzatvárať s touto tu na obrazovke.
>> [Prehrávanie hudby]
>> DAVID Malan: Toto je CS50.
>> [MUSIC - MATT & Kim, "to je v poriadku"]
>> SPEAKER 1: Milujem CS50 viac ako mačky.
>> SPEAKER 2: Whoaaaa!
>> [Smiech]
>> DAVID Malan: To je teda CS50.
Uvidíme sa v piatok.
>> [Potleskom a fandenie]
>> Rozprávač: Na ďalšie CS50, na javisku demo nejde podľa plánu.
>> DAVID Malan: Chceme nájsť Mike Smith v tomto telefónnom zozname.
No, aké sú vaše inštinkty?
Mohol by som skočiť približne do polovice telefónny zoznam, pozrel sa, vidieť, že
Som na M, a teraz viem, že Mike Smith nie je na ľavej strane.
Musí byť na pravej strane.
A tak v tomto bode sme môžu doslova roztrhať -
V tomto bode, môžeme doslova roztrhať -
V tomto bode, môžeme obrazne roztrhnúť telefónny zoznam na polovicu.
>> [Ukulele vybrnkávanie]