[Musiqi ifa] DAVID Malan: Yaxşı. Geri xoş gəlmisiniz. Bu CS50 və bu Həftə biri, davam etdi. Beləliklə, biz keçən olduğunuz səbəblərindən biri kimi şəbəkə ətrafında Google Glass onlar ilə gəlib ki, bir API kimi tanınan bir şey, bir Application Programming Interface. Və nə bu o deməkdir ki, ilə sağ faylları və hüququ ilə sənədlərin, həqiqətən, yaza Bu kimi hətta cihazlar üçün proqram. Və belə ki, biz doğru nəzərə nə bir layihə əgər semestr sonu edir Google Glass, demək, ola bilər cəlb apellyasiya biz nə edə nə görürsünüz bəzi siz qoşulma baxımından loaner hardware habelə açıq-erişilebilir API bilərsiniz, belə ki, əslində proqram yaratmaq başlamaq ki, eyni Google Glass çalışır. Biz oynayan olduğunuzu başqa bir cihaz biz ola bilər düşündüm ki, mərhum ilə semestr sonunda fun Bu az şey. Bu Leap Motion adlanır və siz ne oldu görmək haqqında texniki bir deyil cihaz üçün reklam, lakin o, bu nə danışmaq yoxdur cihaz qadirdir. Və bu da vasitəsilə API ilə gəlir Siz proqram yazmaq edə bilər şəkildə öz kompüter nəzarət olduqca burada bu bir dəqiqəlik film istəyirəm. [Video playback] [END video playback] Belə ki, hazırda bu cihaz olur bir az USB qaydada həyata keçirilir Siz daxil yerləşdirin bilər ki birləşdiricisi kompüter, amma sürpriz olmaz biz bu cür var uzun əvvəl, əgər kompüterlər növbəti toplu texnologiyaları və Macs bilərsiniz, belə ki, həqiqətən, bu qarşılıqlı kimi bir şəkildə. Əslində, mən də, mən istədiyiniz nə fikir Mən bir az nümayiş qədər çıxardı proqram bu proqram ilə gəlir. Mən kiçik sensor gətirdik mənim laptop qarşısında. Gördüyünüz kimi, artıq həyata keçirir mənim əl olduğunu bu nəzarət. Və bütün bu proqram yoxdur bu kimi tıkırında kiçik şeylər. Amma siz, həqiqətən, görə bilərsiniz Mən orada beş barmaqları var. Biz əldə edə bilər ki, bütün 10 etmək Bir səliqəli piano təsəvvür edə bilərsiniz ərizə və ya kimi. Siz sinif sonra gəlmək istədiyiniz Belə ki, əgər ki, bu gün və oyun yaxşı, sizə açıqdır. Semestr sonuna doğru ki, daha çox. Belə ki, inzibati bir neçə elanlar. Bir bu Cümə bölmə etmək cs60.net/section günorta edir. Bu URL kursu üzrə deyil səhifəm həmçinin. Bu vaxt, baxmayaraq ki, supersections bu bazar debüt edəcək. Supersections, bir dəfə şey var Bu, bizə işləmək üçün bir müddət edir, çünki həyata kim hansı hissəsində və harada var. Bu qarşıdakı bazar Belə ki, bir olacaq bu az rahat üçün ikibölməli, bu bir bölüm daha rahat. Və o yerdə arasında getmək üçün açıqdır ya hər ikisi və ya nə. Bu iki film olacaq. Onlar daha geniş auditoriyada olacaq bir bölüm normal daxil ola bilər Amma burada məqsəd ilə təchiz etmək problem bəzi rahatlıq, bir müəyyən ki, CS50 cihaz C, bu həftə sonu tapmaq hətta əvvəl formal Bölmə təyin. Belə ki, sizin TF və kiçik görüşəcəyik haqqında sectionmates qrupu bir həftə vaxt. Ofis saat, eyni zamanda, davam edilmişdir. Və ya axşam onlardan istifadə etmək etməyin Əgər istəyirsinizsə, sabah gecə. Problem set 0 Cümə günü ilə bağlıdır. Bu gün sonra daha Cümə axşamı düzenli olaraq planlaşdırılır. Ancaq problem dəsti 1, görəcəksiniz bəzi isti-up daxildir təlimlər ilə özünüz Sizin uzada bilər Cümə axşamı son tarix. Problem set 1, eyni zamanda, debüt edəcək Kursun veb səhifəsinə bu gəlməyə Cümə, siz curl up istəyirsinizsə Mən gec Bir Zamanlar kimi Sizin otaq Cümə gecə. Belə ki, cs50.net/appliance yer olduğu Siz CS50 cihaz əldə edə bilərsiniz Biz bazar ertəsi istifadə etməyə başlamışdır. Biz bir az daha bu gün də istifadə edəcəyik. Amma istirahət problem qurulması 1 arxayın dəqiqləşdirilməsi size yol edəcək sizə lazım dəqiq addımlar qədər və yayınlanmasını üçün. Belə ki, əvvəl bunu narahat deyil Pset 1 deyil, deyil istəyirsinizsə. Bütün hüquqlar. Belə ki, mənbə kodu bazar ertəsi baxdı lakin yeni kontekstində proqramlaşdırma dili, yəni C. və C, Not fərqli olaraq, qrafik deyil. Bu ədəd puzzle deyil. Daha çox İngilis-kimi sintaksis var. Və cəlb addımlar bir neçə var həqiqətən yazılı və çalışan çünki mənbə yanaşı C proqramı, bu kimi kodunu, bir şey lazım bir compiler çağırıb. Və layman nin baxımından, nə bir compiler bizim üçün nə edir? Bəli. TƏLƏBƏ: Bu kodu çevirir Siz 0s və 1s yazmaq edir. DAVID Malan: Yaxşı. Belə ki, kodu çevirir biz 0s və 1s yazmaq. Bu sözdə mənbə kodu çevirir obyekt kodunu, görünür sonuncu olan bu kimi bir az bir şey. Və sizin CPU, daxilində beyin var Sizin kompüter ki, çünki bu kompüter yaradan insanlar, bildiklərimi o ardıcıllığı 0s və 1s orta edir. Bəlkə çap deməkdir. Bəlkə əlavə deməkdir. Bəlkə toplama işlemi deməkdir. Bəlkə bir qrafik keçirmək deməkdir. Bit əvvəlcədən təyin nümunələri var Dünyanın demək qərar qəbul müəyyən şeylər. Amma bu zamanı çox hissəsi üçün, biz daha yüksək səviyyədə işləmək və olacaq mövcuddur ki, verilən biz almaq lazımdır edə derleyicileri kimi şeylər bizim mənbə kodu funksiyası etmək yolu biz niyyətindəyik. Proqramın Beləliklə, biz ötən həftə ilk yazdı və sonra üçün port başladı C keçən üçün danışmaq Bazar ertəsi, bu idi. Yaşıl bayrağa tıklandığında salam demək. Bu, əlbəttə, idi Not yazılmış. Və mən iddia ekvivalent C proqram bir az baxdı bu kimi bir şey. Belə ki, nə biz ilk nə istədiyiniz fikir deyil, edək, ilk görünür ayrı tease nəzər admittedly kimi olduqca gizli sintaksis, lakin siz fark başlarsınız olduqca tez nümunələri. Biz də bu gün edəcəyik təmin Əgər bəzi ruhi model canonical, bəzi standart yapıları proqramlaşdırma. Və sonra, biz, həqiqətən, bizim əlləri almaq lazımdır habelə bəzi nümunələr çirkli. Beləliklə, sizin üçün daha rahat, həyata ki, bu həftə və daha sonra gələn həftə çox yaxşı nəzərdən bir qədər ola bilər. Amma xüsusilə hacker nəşr problem dəsti 1-də çıxır Cümə günü kurs veb, mən düşünürsünüz Siz doldurmaq kimi siz tapa bilərsiniz Növbəti həftə və ya iki, bəzi blanklara Əgər daha çox almaq üçün başlamaq lazımdır etiraz və qarşılaşa yeni və yeni şeylər. Belə edək ayrı bu proqram tease bir anda bir neçə satır. Çox üst-hazırda, biz nə var texniki adlandırıb preprocessor direktiv. Bu yalnız deyir ki, bir kod line bir fayl məzmunu, o cümlədən - standart I / N, standart input adlanır və ya, sorry, standart I / O, standart Giriş / çıxış. h daxilində, öz proqram. Mən bu yazıb, başqa sözlə, əgər kimi sadə mətn redaktoru ilə proqram gedit, bu sadə ekvivalent Microsoft Word kimi bir şey təlimatı # stdio.h daxildir, yalnız compiler izah edəcəyik ki, qamarlamaq ki, digər fayl, stdio.h, məzmunu və burada onları yapışdırıb. İndi niyə mən qayğı yoxdur? Biz bu faylın içərisində nədir iddia etməyib saxlanılır olan stdio.h adlı Haradasa mənim sabit və ya bu halda, haradasa CS50 cihaz mi? Başqası mənim üçün orada qoydu. Lakin bu nə var? Bəli, belə bir bəyanat var funksiyası printf çağırıb. Belə ki, printf ki funksiyasını xatırladır göstərir söz və simvollar və teklif at ekranda nömrələri. Amma mən bunu yazmadım. CS50 yazmaq etməyib. Biri il əvvəl yazmış, onlar mahiyyətcə bizim üçün resept verdi stdio.h adlı bir fayl. Belə ki, ilk xətt yalnız mənə daxil edir funksiyaları ki, başqası arasında il əvvəl olan printf var. İndi növbəti line Mən dalğa gidiyorum əl azı gələn həftə qədər, at. Amma indi üçün, bilirsiniz ki, int main (void) edir Bu mahiyyətcə ekvivalent sarı puzzle parça zaman yaşıl bayrağı tıklayan. Dünyada il əvvəl, qərara almışdır ki, əgər Siz bir proqram yazıyorsanız C, başlamaq adlı dil xətti ilə proqram ki, kimi görünür. Yalnız bir həftə vaxt, o etmək lazımdır mənada nə int etibarsız nə edir. Amma hələlik, yalnız hesab Bu sarı puzzle parça kimi. İndi növbəti, biz sonra bir buruq brace var digər yaxın buruq brace ilə, belə danışmaq. Və biz bu ərzində görürsünüz C proqramları, eləcə də JavaScript və PHP. Və bu yalnız içine kodu bağlı satır. Açıq buruq brace mahiyyətcə , burada kodu gəlir deyir. Və olan qapalı buruq brace, digər istiqamətdə bucaqlı, yalnız üçün vəsait ki, var müvafiq kodu. Belə ki, bu birinci sulu xətt proqramı, son printf edir quote-dırnağı bağlamaq, dünya salam. Və mən arasında şey çağırıb quotes nə keçən vaxt? Belə ki, bir simli var. Və simli yalnız techie edir bir ardıcıllıqla müddəti simvol, bir sözlə, bir söz. Hətta bir hərf bilər ikiqat verilə. Lakin bu sıfır bir ardıcıllıqla var simvol və ya daha çox. Backslash-n, baxmayaraq ki, görünür, bir az qəribə. Lakin bu sadəcə bir şey nəzərdə kompüter sadə. Backslash-n nedir? Yeni xətt. Belə ki, yalnız xüsusi ardıcıllığı var Dünyanın qərar qəbul simvol vasitələri, orada bir xətt fasilə qoymaq compiler həqiqətən əldə edəcək, çünki çox əgər, adətən, səhv Aydındır, amma səhv, yalnız qoymaq üçün daxil vuruş başlamaq kodunuzu yeni satır. Siz bir az daha olmalıdır backslash-n aydın. Və biz bir neçə digər belə var görürsünüz Xüsusi simvollar üçün nümunələri. Məsələn, istəyirdi imkan üçün , künc işə gezmek ağla Mən çap istəyirdi Güman üçün ekran cüt quote hər hansı səbəbdən ki, görünür ki, bir az problemli doğru ola bilərmi? Çünki mən bir çift tırnak qoymaq orta "Salam, dünya," nə üçün səbəb, niyə elə görünə yoxdur potensial problemli? Bu simli pozur. Bu compiler yalnız bir proqramdır. Bir compiler kimi bir proqram yalnız gedir alt kodunuzu üst oxumaq, soldan sağa. Və əgər əvəzinə üç cüt quotes görür iki, bunu etmək niyyətində deyil demək ki, əgər sol şey simli və ya şey olmalıdır sağ və ya bütün şey. Bu birmənalı, və tipik belə nə compiler edəcəyini yalnız həyata qəribə ki, və bəzi səhv mesaj vermək və Əgər problem ilə məşğul olun. Belə backslash-n yeni deməkdir ki, verilmiş xətti, nə indi sizin instinktlərdən ki, Siz daxil istəyirdi olmaq başlamaq bir cüt kimi anomal bir şey Bu başqa-sitat daxilində quote string? Backslash-çift tırnak. Və biz bu görürsünüz çox model növüdür. Siz bir az bir şey etmək istəyirsinizsə qəribə, siz tapa bilərsiniz ki, həllər tez-tez bir biçim, və backslash bir escape sequence bildirir. Və bu, yalnız xüsusi bir şey deməkdir biz bir təmsil etmək lazımdır ki, müxtəlif yol. Sizi təmsil nə üçün bir backslash, yaxşı, biz edəcəyik ki, geri gəlir. Amma cavab da, əslində bir az aşkar. Belə ki, indi bəzi digər tətbiq edək proqramlaşdırma yapıları Siz Not gördüm ki. Siz yəqin ki, göydən etdik Əgər siz artıq daxil dived sonra artıq əgər problem 0 seçin. Amma indi C sintaksis təqdim bildirin Bu başqa ədalətli intuitiv üçün ideyalar, onların ən azı bəzi. Yəni bu vəziyyətini anlayışı və ya filialı, halbuki əvvəllər biz baxdı kodu ilə təmsil Scratch-ci ildə sol bu kimi - x y-dən az olarsa, onda belə deyirlər - əvəzinə indi C - Mənə bilemek bildirin Ən sadə halda üzrə - , açmaq, əgər biz sadəcə, demək olacaq parantez, bir şey doğru - Bir Boolean ifadə getmək gedir Mən vəziyyəti demişəm burada - yaxın mötərizə, sonra nə yoxdur o buruq aşırma daxilində. Belə ki, burada da, buruq aşırma Not nin kimi növ var U-formalı puzzle ədəd. Bu buruq aşırma daxilində nə etməyin. Bu halda, doğramaq doğramaq. Bu irəli fark deyil, bir backslash doğramaq. İrəli, irəli zərbə, zərbə proqramlaşdırılmış etdik edənlər üçün əvvəl, yalnız vasitələri - yalnız Şərh var. Yorum bir xətt deyil kodu, hər se. Bu ki, ingilis xətti var insan, özünüzü üçün yazılmış bəlkə üçün bir şey etmək üçün sizə xatırlatmaq izah etmək üçün, özünüzü izah başqası, kodu nə edir. Bu, sadəcə bir təsviri Şərh var. İndi, əlbəttə, biz iki yol ola bilər a, yalnız bu cür etməklə yol ödemek edərək yolun üç yol çəngəl Bu, və bu davam edərsə, model, siz, dörd yol ola bilər yolun beş yol, altı yol çəngəllər əgər Siz, həqiqətən, idarə etmək lazımdır bir çox şəraitin. Və sonra burada paralellik qeyd - başqa (vəziyyət) əgər (vəziyyət) əgər və bir az var ki, yalnız bir qəribə olan son yalnız başqa deyil. Ancaq yenə də, bu, eyni konseptual, biz etdik nə artıq hətta syntax olacaq alışma bir az edir. İndi bu nümunə var digər bəzi qəribə sintaksis. Biz, printf yenidən açıq mötərizə bax və yaxın mötərizə. Və daxilində var Açıq string. Kontekstində parantez, printf ki, sol getmək və sağ nə? Biz sitat ki, nə təsvir yoxdur ümumiyyətlə kimi simli? Belə ki, bir arqument var. Heç bir zaman sizin kimi bir funksiyası var printf, sonra açıq paren və daxilində yaxın paren və bir şey ki, istər simli, və ya bir tam, və ya başqa bir şey varsa, şey o parantez adlanır arasında mübahisə. Və bir dəlil yalnız təsir funksiyası davranışı. Bu halda, bu, olduqca aydın oldu. x