>> [ВИДЕО РЕПРОДУКЦИЈА]
>> -А Тријумф математички и механичка вештина
је овај велики нови аутоматски калкулатор на Универзитету Харвард.
Комплексни проблеми у математици пут кроз машину у кодираном облику
на траци су тачно решен на делић времена потребно
за људску обрачун.
Дизајниран да убрза све облике математичка и научна истраживања,
гигант механичка мозак ће радити за Сједињене Америчке Државе морнарица до краја рата.
>> [Крај репродукције]
>> Давид Ј Малан: Ово је ЦС50.
Прошлост је магично место, али ако сте икада
питао шта је уређај у Харвард Сциенце Центер,
Заиста је део Харвард Марк И, и то је
на дисплеју сада за последњих много година.
А шта ћете видети уграђено у сету проблема
један је поглед иза кулиса на шта је уређај урадио, и ради,
од професора Харри Левис, који је у рачунар наука одељење овде.
Дакле, више о томе у само мало.
>> Али данас почнемо да транзицији од прошле недеље на ово,
а ми ћемо донети помиње једног фотографији
То је заправо прилично познат.
Да ли неко зна шта је ово Овде је на екрану?
Барем према миту.
Да.
ПУБЛИКА: први вирус.
Давид Ј Малан: Тако је наводно био био први стварни грешка у компјутеру.
Сада у стварности реч буба, за грешка у програму,
је био са нама за неке Време у физичком свету,
и то је био један од првих документоване пута где је неко стварно
извукао велики мољац из Марк ИИИ рачунар, стави у фасцикли,
а затим га снимио као први познати баг
да стварно је пронађен физички.
Дакле, на тај начин је ушао да у данашњем предању.
Све од прошле недеља је доступан на Интернету.
У појединим ресурсима да би ти не мора приметити, посебно
ако долази овде у лице.
Зато је један од наставних момци свака године чини канонски скуп нота,
тако да не треба држати главу доле, покушавајући
да транскрибују највише ништа да би се могло десити овде у класи.
Дакле, схватите да они такозвани [? Сцрибд?] Белешке
онлине, свакако слајдове и изворни код које користимо у класи.
Правимо Фулл Тект транскрипата такође доступна.
Дакле, ако магловито сећам се неких термин, и желите да га погледам мало
лакше, схватите да је све то је претраживати на мрежи.
Као и плаи јуст као добро.
Заиста, данас почињемо да погледате нижи ниво програмски језик,
ускоро бити познат до нас као Ц, а то је врло лако
на неки начин се губи после само неколико тренуци времена, а онда некако чуда
како смо стигли до још комплекс пример од најједноставнијих.
И тако ћемо схватити вишња пицк током часа некој
оф тхе репрезентативних примера, али схватити да је и много више
доступни онлине тако да можете радити кроз њу својим темпом,
Међутим ти највише одговара.
>> Али смо прекинули са програми који су управо то.
Дакле кликнем на зелену заставу, и шта овај програм учинити?
Каже, здраво, свет.
То чини мачка каже здраво у свом малом свету
у горњем левом стране кориснички интерфејс Сцратцх екипе.
Али смо почели да се уведе нека терминологија прошле недеље.
И тако, овакве ствари смо звали шта?
Шта може бити генерички термин за ово?
Да.
Поступак или изјава.
Наравно, то је акција.
Uradite.
А ипак је било других облика до нуле,
Поред ових тзв изјава, они су такође били
такве ствари, које смо звали шта?
Да.
Тако петља.
И у овом случају, ова ствар понавља, очигледно, 10 пута.
Ту је заувек блок.
Постоји неколико других.
И данас ћемо да видимо како транслате то много модерном свету,
ако хоћете, иако је ће се појавити на први поглед
да буде много више волшебни.
Али они су били заиста петље.
И онда имамо ствари као што су ова, која је имала тај облик,
и суштински питања.
И ми смо из ове као шта?
>> ПУБЛИКА: Боолеан екпрессион.
>> Давид Ј Малан: Да.
Боолеан израз.
Нешто што је било истина или лажна, да или не, један или нула,
Међутим желите да видите свет.
Али смо звали оне Булова изрази, а ми их плуг
у условима или грана.
И у свету Огреби, све лијепо
браве у погледу њеног облика, ако то чини логично да то уради,
али не морате да се заустави на само радећи једно условно,
можете имати пословично Форк ин тхе Роад
и уради или ово или оно, ако услов је истина или не.
А онда, као што ћете видети, ако већ нисте,
Можете чак и гнездо ових блокова.
Дакле, Огреби расте да попуни облике да би желите да убаците у њу,
тако да заправо могу да изразе већину свака логика да ћете можда желети да уради.
>> Сада неколико речи најави за оба овде и Нев Хавен.
Тако сечења почиње данас.
УРЛ адреса за то је на курс је сајт, за оне који нису упознати.
Секције ће бити прилика да се заједно
у много интимније окружење од [? Сандерс?] Допушта,
са 10 до 20 школских другова са демонстратор на различитим стазама,
и различити корака, ако тако одаберете.
Заиста курса понуде различите секције
за оне мање удобан, више удобан, и негде између,
и улога палца овде, је нема формална дефиниција,
али ако сте мање пријатно, Некако то знаш.
Мало си неустрашиви о Идеја степпинг ногу, можда, врати
у учионици, или показује до једног између секцији.
Ако сте били програмирање од вас шест година, удобније,
можда за вас.
А ако је то нека врста жреба-уп, То је управо оно што је у између
треба да буде.
>> Сада, у међувремену, за класу ове величине,
то нам је потребно доста времена да одељак сви, тако да смо тзв,
супер секције, долази ово викенда и почетком следеће недеље,
па погледајте на сајту току је за оне који су цоурсе широка,
као и за оне снимљен који не може да их направи.
И сами секције ће почети у недељу три ЦС50 нула индекса.
Проблем сет 0 је већ на сајту току је.
И схватите да немате девет дана касне овом семестру.
Дакле, ово је надоградња од прошле године, када смо имали пет дана касне.
>> Дакле, ако се питате, имамо девет проблем поставе.
Имате девет дана касне, од којих можете само да проведете један недељно на.
То практично чини све проблем поставља због Петак,
али циљ је мало ставити Мало психолошког притиска
на вама је да покушате да ствари у четвртак
јер као што ће ускоро открити, за боље или на горе, већина
све у софтверском свету завршава узимајући много дуже него што очекујемо.
Тако да нека размотри прилика да се помогне
себе да циљају четвртак, али утеху у томе, да,
Све је због петак.
А ако их достави на Четвртак, то је дивно.
Нема бонус поена или екстра кредит за испуњавање тог рока.
То би требало да буде само штака.
>> И радно време, и овде иу Нев Хавен,
лично, ако желите да састати са неким од наших курсева
учење момци и ЦАС за помоћ.
>> U redu.
Дакле, сада, хајде да ово реалније.
И за тренутак да ће почети да се мало више тајанственог, али веома
брзо у петак и следеће недеље ћемо бити
у стању да уради много више од можемо до сада у Сцратцх.
Зато смо увели код последњи недеља, мада пицторал.
То је био комада слагалице.
И ми формализовано да је нешто што се зове изворни код,
али би ли изгледао?
Па, изгледало мало ovako nešto.
А, у ствари, само врсти задиркивати где можемо да идемо са овим.
Ја идем напред и отвори прозор овде,
и Ја ћу да изаберете нову датотеку.
И ја ћу да сачувате ову слику као нешто попут здраво дот ц.
Више о том избору речи у само тренутак.
А ово је како неко могао го о писању програма.
Укључи Стандардни И / О дот х, маин празнина, а затим отворите коврџава Браце, близу
коврџава Браце, иф здраво зарез свет, обрнута коса црта н зарез, Сачувај, урађено.
OK.
Написао сам мој први програм, али то ће
да буде невероватно Ундервхелмед јер кад сам стварно
покренете овај програм, наравно, од првог писања чине здраво,
а затим дот сласх здраво, и ми ћемо пролазе кроз ово много више детаља
у тренутку, то је све што ради.
Не поп отворена прозоре.
Није ништа посебно фенси.
Све што ради је оно што сам рекао је на раде, али како да дођемо до тога?
А како ћемо градити на то?
Па, хајде да уведе неколико различити концепти овде.
>> Дакле, једна смо да почне користећи програм назван преводилац.
Компилирања постоји за Мац ОС, Виндовс, Линук било који број оперативних система,
и ми ускоро вас упознати до окружење које ћемо користити,
али преводилац је само општа термин за комад софтвера
која се изворни код и производи објекат код од њега.
Другим речима, ако вама има као улазни извор вашег
код, нешто као што сам управо откуцао, то на крају производи објекта кода.
И објекат код је заиста само фенси начин да се каже да излази
нула је и један је.
Другим речима, извор код, иако је
ће изгледати мало волшебни, и мало мање пријатељски
од нуле на први поглед, то је барем нешто
да ми људи могу да разумеју.
Некако изгледа и звучи као Енглески иако је то веома сажето.
Док програмирања у нула-а и један је, као наши претходници морали да ураде,
Пре неколико година, није био посебно забавно изазов.
Па ипак, то је оно што рачунар још увек не разуме.
Дакле, преводилац добија од нас изворни код приговора код.
То је као отварање фајла са преводилац, и када га спаси,
добијате оне нула и јединица.
Тако ћемо видети како да урадите само који тренутак.
>> Али немојмо сада покушати да обезбеди мост између недеље и то последње,
тако да чак и кад се спустио слушалицу на ствари као што заграда,
и зарезом и заграда, и све ово интелектуално занимљиво
аспекти програмирања, који веома Разумљиво саплетете људе рано,
схватите да све идеје Данас, исти су као и прошле.
Тако прошле, видели смо овај пример овде, Здраво свете програма.
Па, почевши од данас, ако желимо да спроведе тај исти програм,
да ће изгледати мало нешто овако.
И ми ћемо објаснити пре него што дуже шта инт, и главни и пуста, и све то
је, али бар ја видим овде већ познато Здраво свете.
>> У међувремену, ствари као што су Функција, поздрави,
је врло једноставно ће бити врло једноставна изјава овако.
Принтф Хелло Ворлд, са неким цитира, са бацксласх,
са зарезом, али више о томе да дође.
Петље, у међувремену, то је петља која, Наравно, поздравља свет заувек,
а ово ће изгледати мало чудније него у последњем,
али ако ја кажем нешто као, док истина,
Тада можете одштампати Хелло ворлд опет и опет и опет и опет.
И онда као што врсте могу од почети да закључимо овде,
ова конвенција коришћења цурли протеза је добра
Као Прихватање увучен линија кода тамо.
Много принтф линија кода као жути слагалице изнад.
Дакле, нећемо да заувек каже, ћемо рећи док истина,
али видећемо зашто је то тако у само мало.
>> У међувремену, ако имамо петљу овако, где ли поновити нешто коначним
број пута, ово је превише ће узети мало навикавање
да, али то ће рећи инт И добија нула, ја мање од 10, и ++,
а затим иф поново.
Али, то ће бити обрасци.
А за оне од вас упознати са АП Цомпутер Сциенце, или Јава,
или било који број других језика, скоро све ових конструката
До сада би требало да изгледа углавном познато.
>> Тако променљива.
Дакле, овде је једноставно извод огреботина које поставља променљиву под називом бројач на нулу,
и онда заувек каже бројач, и онда мења бројач за један.
Тако почиње са нулом, и онда један, два, три.
Па, како бисмо могли увести да се у ово нови језик мало слично?
Инт цоунтер једнако нула, док је истина, која
је та иста идеја од пре да уради нешто заувек,
а ја само идем у принтф.
И сада постаје мало чудно, посто сам, али више о томе да дође,
али ове идеје су потпуно исти.
Само сада морају да се придржавају Синтакса да је рачунар
да захтевају од нас.
>> Логички израз, нешто слично СКС мање од и, к мање од и,
и и мање од з.
То ће изгледати нешто овако, са заграде само
као у математици за доброј мери само да осигурати да редослед операција
је као што смо намеравамо.
И сада, услови.
Дакле, ако је к мање од и, рецимо к је мања него и, иф к већи од и,
кажу к је већи од и, иначе логично, к мора бити једнак год.
Дакле, можда имплементирати овако нешто у Сцратцх,
или можда имплементирати је у овом синтакси.
И опет, великих заграда су врста дајући нам исти облик као слагалице
комада, али синтакса, сада, можда Почињем да прате неке обрасце.
>> Дакле, шта нам ово даје овде?
Тако смо тада у нашем главном програму смо.
Нека је заправо, сада, урадите нешто са њим.
Дакле, у овом први линија видимо оштро су,
Стандардни И / О, тачка х, а онда нека чудна угао
заграде испод тога. маин празнина, а затим иф Хелло Ворлд.
Дакле, само узети корак.
Неко ко никада није програмиран раније, барем објасни једну од ових линија.
Користећи можда неки од жаргон прошле недеље.
Шта је иф, на пример?
Да.
>> ПУБЛИКА: [неразумљиво]
>> Давид Ј Малан: Да.
То је функција, или изјава, из терминологије прошлонедељног.
И то је акција да ради нешто.
Ова функција, или ова изјава, не
се чинило да се неки улаз?
А у ком смислу то ради Изгледа да се улаз, ако је тако?
Улаз, шта хоћу да кажем?
Да.
>> ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Да.
Дакле, Сцратцх од неколико комада слагалице где можете да га параметризе.
Видело се понављање блок колико пута да поновим,
тако да је то улаз врсте, и баш као Сцратцх
Имао сам малу белу плацехолдер за број треба да унесете у,
И ми користимо у овом Текст ворлд заграде
да нам дају ту кружни облик у који можемо прикључити нашу улаз.
Уосталом, десетине година пре када је то језик, под називом Ц
је измислио никога Предвиђено је један од нас,
те неколико година касније, ми би Желим функцију која каже здраво.
Зар не?
Било би лепо да је било слагалице, или кључне речи,
То се зове здраво, да буквално каже здраво.
Али ми не треба.
Можемо имати нешто много мањи ниво, као генерички принт
команда, која узима улаз, и штампа шта год желимо.
Дакле, приметите сада образац који ће почети да се појављују.
Отворене парен, близу парен је очигледно прихвата улаз,
а онда видим дупло наводи на оба краја.
Још увек је чудно обрнута коса црта н али надамо се сада
могу почети да барем да визуализује иф изводи у неком облику улаза.
Није као корисник пријатељски и Сцратцх, али то је само
као што је прикључен на неки вредности тамо.
>> У реду, сада нека ствари урадите нешто са овим.
Дакле, неки од вас можда знају од има куповали разред раније,
ћаскао са пријатељима, објаснити дугогодишњи
користили смо нешто што се зове ЦС50 апарат.
Ово је био појам који описује технологију назива виртуелна машина, који
је комад софтвера који твој претходници би преузети са
сајт Курс за бесплатно.
Они би такође преузмете бесплатну комад софтвера зове хипервизор,
нешто што се зове као ВМваре, или ВиртуалБок, или било који број
других алата, као и на њихово Мац или ПЦ или шта год рачунар су имали прошле године
и претходних година, они би двоструко кликните на икону
да покренете овај софтвер назива хипервизором.
А онда унутар тог програма они би отворити ЦС50 апарат.
И ефекта је да да ли је твој претходник
је покренут Мац ОС или Виндовс он или она
потом је имао нови прозор на њихов Екран ради ЦС50 је окружење.
Дакле, виртуелна машина вам омогућава да покренете један оперативни систем унутар неког другог,
и то је управо оно што смо урадили.
Током већина наравно користите оперативни систем под називом
Линук посебно Убунту Линук, а ова
је веома леп начин у прошлости година пазећи да сви у току
Управо сам имао исти амбијент.
И можете користити било коју врсту рачунар који заправо желите.
Међу мана, ипак, су да је као два гигабајта
да преузмете ову ствар.
Није нужно ради супер добро на људи чији рачунари који можда само
имали свирку или тако РАМ-а или не превише гигахерца од брзине процесора,
па ове године, за ово и други разлози,
смо били транзиције овом окружењу.
Такозвана ЦС50 ИДЕ што је базиран на опен соурце софтвера,
а подржали платформу да је компанија која се зове цлоуд9
подржава у Европи, да омогућава нам да у суштини има
да потпуно исти амбијент као у година прошлост, али у тзв облака.
>> Дакле, оно што је облак?
Вероватно сте кликнули његова икона на вашем Мац или ПЦ.
Шта је облак?
Да?
Мало гласније.
Да.
То је само гомила рачунара другде да складиште податке и трчање
софтвера и слично.
Дакле, то је заиста само речи де иуре опише [? рента-?]
рачунари који живе на другим местима.
Да сте ви, нужно не поседују.
Дакле, када ваше податке, или ваш програми су у облаку,
то само значи да је на некога другог рачунара било где другде,
а не, највероватније, на вашем физичка лаптоп или десктоп.
И то је оно што ЦС50 САТА сада.
>> Од сада ћеш отићи до одређеног УРЛ који ће вас увести
да, у проблему сет 1, касније недеља, која ће потом, након логовања,
да ти дам ову средину.
И баш као Огреби имао неколико различитих панели који су укључени,
тако се ЦС50 је ИДЕ има управо то.
На горњем левом стране овде, ти си ћете видети познато бровсер датотеке.
Дакле, било који од датотека које сте ставити у овој средини
тек ће се тамо наведени.
Датотеке и фасцикле.
На врху овдје, ви ћете видети место
где заиста можете писати свој код.
У почетку у Ц, касније у термин у ПХП и ЈаваСцрипт,
и, можда за завршни пројекти, Руби или Јава или Питхон
или било који број језика су подржан у овој средини.
Није уопште везан конкретно ЦС50.
>> А онда у доњем углу овде, посебно за оне удобније,
имате нешто назива прозор терминала.
И ово прозор терминала омогућава да изврши било команду која вас
Желим у овом цлоуд окружењу.
То вам омогућава да инсталирате икаквог додатног софтвера
да желите, јер сте такозване роот или администратор привилегије.
Другим речима, иако је ово се на крају домаћин у облаку,
и иако имамо поједностављени га извесној мери
по дефаулту, буквално увођења, Захваљујући Дан Армендариз, и Дино,
и Дан Бредли на тиму ЦС50 је преко поред неколико месеци, мање удобан
Режим који крије много од у почетку збуњујући ометања.
Све постоји у представља типичан рачунарски систем
да би сте користили у стварном свету.
>> Дакле, шта све ово значи, и Шта можемо заправо радим са њим?
Идемо у ствари завирити у програму.
Зато ћу да отворимо стварна животна средина овде,
што је само наш Цхроме претраживач, који би могао бити Сафари,
може бити Интернет Екплорер или неким другим бровсер као добро.
То је пуна приказан овде у овом тренутку.
И желим да заиста задиркује Осим што је био овај програм.
Дакле, хајде да погледамо, од зумирање у горе врх, на шта сам урадио, а како сам доспео овде.
Дакле, овде је она тачна Исти линија кода.
Дакле, ово је изјава, као што је раније поменуто.
Функција која каже здраво.
Великих заграда, на линија четири и шест линија,
вероватно нека врста коверти та линија да се удружују
са суштином свог програма.
И заиста, ова кључна главни, то је горе на линији три,
можете мислити о томе као еквивалент од када зелена застава кликне,
блокирати у Сцратцх.
Тако да је све то имамо овде, када зелена застава кликнули, принт, или кажу,
Zdravo Svete.
>> Али хајде да претпоставите, сада, на шта ово прво, више волшебни линија, јесте.
Самсунг укључују, отворен угао носач, Стандардни И / О тачака Х,
затворен угао носач.
Шта је то можда ради, поготово ако сте програмирани
пре него што на неком другом језику.
Да?
>> ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Да.
Управо тако.
Дакле, ово даје вам приступ библиотека, да тако кажем, функција.
И библиотека функција је функције које неко други
писао, било недавно или давно, тако да
не морају да поново измисле точак.
На пример, не знамо мора да зна, у 2015. години,
како написати код који ставља лик на екрану.
Неко други је схватио са Функција принтф
тако да могу да те некако апстрактно далеко од тога, или слој
на врху његов или њен код, а сада само узмите
здраво за готово да сваки програм пишем да одштампате нешто на екрану.
Дакле, ово прва линија тамо у једном кораку укључује тзв хеадер филе
за стандардне библиотеку.
Тако видимо, језик у што сада радимо
је имао стандардној библиотеци са пуно функција.
Принтф је један од њих, и да прва линија кода
значи ми приступ оне функције, тако да сам
не морају да поново измисле ту точак.
>> Сада идемо у доњем прозору и ради тачно оно што сам раније.
Малопре, кад сам био помрсе конце кроз код,
куцањем га по први пут, Ја врло брзо откуцао, да здраво.
Шта је то било би да погодите?
Шта сам радио?
Да?
Nema veze.
U redu je.
Да.
ПУБЛИКА: Израда га.
Давид Ј Малан: Да.
Само је то састављања.
Зар не?
Чак и ако је ово потпуно непознато за вас, то је прилично енглески слично.
То сигурно није нула и оне, тако да сам још увек
треба да га покренете кроз то тзв Програм, преводилац, који ће
то схватити као улаз и излаз производе.
И на крају, за сада, у ово Линук окружење,
али то није предуслов, ово је само где ћемо почети,
сте генерално интеракцију са рачунарски системи лике тхис
од тзв командне линије.
Дакле, са трептањем брза и тастатура,
и не толико ваш миш, а не толико прозори и иконе и менији,
а све је текстуални.
И иако је ово осећа, на први поглед поглед, можда, као корак уназад,
то је заправо много моћан и изражајан начин
контроле компјутер поготово као ти,
сами, постају удобно од мање.
То ће вам омогућити да урадите много више ствари него само оно што Мицрософт
или Аппле вам омогућава да урадите са њихов графички оперативни систем.
>> Дакле, када сам ударио Ентер, сад, ништа се не дешава ово време
јер очигледно Програм хелло ис уп то дате.
А шта је команда Трчао сам после тога?
Дот сласх Здраво, и Хелло ворлд.
Сада ћемо направити корак назад на тренутак.
Испоставило се да се здраво је само поједностављен начин састављања програма.
Хајде да представимо један комад жаргона,
али онда се удаљи од ње, јер није
све то занимљиво за данашње потребе.
Преводилац ћемо почети са коришћењем се зове Цланг, на Ц језику.
А ово је програм који се покреће само као што смо урадили у командној линији тамо.
И тако ако хоћу да састави програм који сам
су написали у фајлу названом здраво тачка Ц, буквално сам само укуцајте Цланг хелло ц
ентер.
>> Смешна ствар је, из историјских разлога,
ако не наведете назив програма
да желим да излаз, ако не наведете име датотеке за оне нуле
и оне, веома чудно пре Конвенција је усвојена година
где се осећао некако добар одговор на време,
и хајде да самовољно зовемо Први програм смо саставити тачку напоље.
А доноси први у писму.
Од, то је излаз.
Тако ћемо позвати програм по дефаулту тачка напоље.
И то је у реду, јер ако желим да покрените програм у овом тексту заснованом
животна средина, само укуцајте тачка сласх тачку да уђе.
И то ће ићи баш као и раније.
Дакле, хајде да видимо да веома брзо.
>> Дакле, ако се вратим на мој изворни код у ЦС50 ИДЕ,
и уместо тога урадити, цланг здраво за бебе Ц ентер, обавештење ништа се не чини да се деси,
али скоро увек у ово Линук окружење,
када ништа лоше изгледа да се деси, да значи нешто добро се заиста догодило.
Ако не видите грешку порука, све је вероватно добро.
И заиста, ако сада тачка сласх тачку од уђе, ја сам водим исти програм.
И даље имам хелло програм од раније, јер заиста, то је
Биће много лепше само укуцајте да уместо памћења
ови бајања оф команде, али хајде да видимо како ћемо
може побољшати на ово, ипак.
>> Дакле, ово је наредба саставити код.
Ово је команда за покретање преведени код тога.
Како могу навести име датотеке?
Па хајде да представимо још један комад жаргона.
Када сте у ово текстуални окружење,
ти ћеш желео да прецизира ствари које се зову аргументи командне линије.
Што је само фенси начин да се каже, Другим речима на линији која
подесити понашање год Програм бежиш.
Дакле, конкретно програм сам трчање, уписивањем имена Цланг,
је програм под називом Цланг.
Дакле, ово је или стара школа еквивалент дуплим кликом
на Мицрософт Ворд или икона неког програма.
Ја сам уместо само уношења њеног имена, али у овој верзији команде,
Онда имам дасх о простор здраво простор здраво тачка Ц.
Дакле, чак и ако никада нисте играо у овом свету пре,
само да претпоставите шта не Дасх О здраво радим?
Или шта то кажем цланг да радим?
Да.
>> ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Да.
Само поставља излаз датотеци да буде здраво уместо глупљих тачка напоље.
И, заиста, хајде да пробамо ово.
Дакле, ако ја сад да радим, прво хајде да урадимо ово, РМ здраво.
То је уклонити.
И то ће рећи ремове обична датотека здраво, што
је непотребно волшебни, али само значи да ли желите да избришете датотеку,
и куцам и за да.
И приметио, ако сте гледајући на врху лево, није нестао из горе.
Дозволите ми сада да радимо Цланг дасх о, и Ја ћу да наставим и да здраво,
у свим капе, здраво тачка Ц.
Сада, ако то урадим дот сласх здраво, шта би сте очекивали?
>> Можда је велика и мала слова.
Можда није.
Hajde da vidimo.
Nema takve datoteke ili direktorijuma.
И можемо некако варате само гледајући у горњем левом углу.
Шта сам очигледно снимите програм као?
Све цапс здраво.
И заиста, то је одлазак да направи разлику.
Дакле, сада Хелло Ворлд ис бацк.
Сада је све у реду и добро, и веома затупљујуцу,
да врсти вас закочи у овим детаљи, али их разумевање
je dobro.
>> Куцање од њих све лонг бајања
неће бити посебно фун, тако да људи у свету
измислио други програм, Пре неколико година, назвао
да, да једноставно вам омогућава да куцате маке,
назив програма желите да се, и да
је паметно у томе што ће изгледати у тренутни директоријум, звани директоријум,
и ако имате датотеку зове здраво тачка Ц,
да је фајл ће саставити за вас у програм који се зове здраво.
Дакле, то је много једноставнији начин радећи мање јасни команде
да смо урадили раније.
И ми смо пре-конфигурисане ЦС50 ИДЕ знам
То би било то дасх ои низ другим заставама, или командне линије аргументи,
да ћемо видети пре времена.
>> Али хајде да сада заиста раде нешто занимљиво.
Само куцањем Хелло Ворлд све време није толико убедљив.
Па нека ми само напред и промена овај програм и рећи, здраво Давиде.
Сада идем доле.
Ја идем напред и направите здраво.
И опет сад ви видите да се ти показује дуже
низ команди да је ради јер смо пре-конфигурисане
то тако, али смо треба не брините за сада
шта ради, осим што је састављање тачка сласх здраво, здраво свет.
Šta nije u redu?
Да.
>> ПУБЛИКА: [неразумљиво]
>> Давид Ј Малан: Да.
Дакле, Нообие грешка.
Приметио сам да је ово супер суптилна, али Астериск овде, на картици,
само знаци да нисте спасили, и претраживачи и други програми
ово понекад.
Дакле, контрола с или команда а треба да га спаси.
Пусти ме само напред и поново покрените програм.
Рекомпајлирате.
Тако је, тако да је процес мулти-корак.
Ништа од којих је посебно сложен, али сваки пут смо променили фајл,
ли треба мењати Добијена нуле и јединице, и тачка коса црта здраво.
Вау.
Дакле, ово је веома ундервхелминг да смо штампати ово.
Хајде да ствари које мало више динамичан, сада.
>> Па се испоставило, да је волим Огреби Ц подржава променљиве.
И испоставило се да, ако желите да има променљиву која складишти,
није број Као што смо обично радио са Сцратцх,
али као речи, или фраза или име, можете
Можете одредити променљиву да су типа стринг.
Тако ћемо видети више ово за тренутак,
али испоставило се да је Ц, и много језика, као што су то,
имају врло специфичне врсте варијабли.
То није исто као алгебру, где сте добили к, а И и З
и они су само увек бројеви, у неком програмском језику
можете похранити бројеве, можете складиштити појединачне ликове,
можете да чувате целе речи, можеш похранити целе слике, целе звучне датотеке,
i slično.
Зато морамо да дефинишемо шта тип нашег варијабле је.
И Конвенцијом ћу да позовем променљива а само зато што је језгровит,
и с означава низ.
>> А онда ћу да сачувате унутар ове променљиве,
Као и код Сцратцх када користим сет блок,
Ја ћу користити оператер задатак у Ц,
што лепо довољно је једнака потпише, али знак једнакости ради.
Креће се нешто са десне стране у лево израза.
Па шта сам урадио, да буде јасно у линија пет, се сам прогласио променљиву.
Рекао сам компјутер, дај ми меморије за променљиву, позовите га с,
и знате унапред да идем да се стављање стринг у њој.
И стринг је само низ знакова.
То је реч, или фраза, или став, али то је низ знакова.
Није бројева.
Шта низ ћу да будем стављање у ту променљиву?
Па, очигледно цитирам под знацима навода, "Хана".
Сада обратите пажњу на образац који је у настајању.
Ту је лева рука израз.
Ту је десна рука израз, одвојен од знака једнакости.
И само да претпоставите, ако непознато ипак,
са оним што ради зарез.
Шта је то вероватно ради за нас?
Да?
>> ПУБЛИКА: [неразумљиво]
>> Давид Ј Малан: Да.
То само престанак линију.
Зар не?
Рачунари желе да буду отворено рекао, буквално, шта да радим.
Као путер од кикирикија и желе сендвич пример,
ако не одредите управо оно што сте намеравали,
могло би се препустити суду или грешке.
И запета значи, то је то за ову команду.
То је био супер прецизна, и то је врло лако да оде са.
Дакле, сада овај програм изгледа да не се понаша другачије до И
буде динамичнији.
Дакле, уместо тешко могао моје име, дозволите ми ставити чувара места вредност.
И испада да и ја знам ово из сте прочитали документацију,
и користи функцију већ годинама, да иф је дизајниран да буде динамична.
Не морате да знате унапред ста реци желите да ставите у њу.
Умјесто тога имати плацехолдер, као одсто, што с
ће рећи рачунар, стави овде стринг.
>> Који низ желимо да тамо ставио?
Вил испада да између њих заграде, које запамтите, демаркирати
улаз на функцију, ако имате зарез листу ствари одвојене овде,
ми заправо доноси у више улази на функцију.
Дакле, само бих мало Сцратцх блокови, можда и не
су играли са њима Ваши пројекти још или уопште,
неки Сцратцх блокови имају два улаза.
Два бела боксова можете тип бројеве или речи у.
Тако да нема Ц имају функције као што су иф што може да два улаза.
И опет, ово зарез их раздваја.
Тако на енглеском, опет, чак и ако никада нисте програмирали раније,
По тој логици иф је функција, има два улаза, од којих је један
је чувар места, шта би ти се надам иф ће урадити са овим улаз?
То ће поздравити Хана, надам се.
Тако да ово морамо да га спаси.
Идем да бисте умањили.
Идем да се вратим доле и кажу, чине здраво ентер.
О.
Нешто није у реду, и заправо ово је прилично велика.
Имам шест линија кода и као 12 линија грешака.
Дакле, радујем се томе.
Дакле, шта се овде дешава?
Дакле, најбоље правило овде, нарочито када поцињете,
не буду ометен ствари на дну.
У ствари, врло намерно само помери до
јер врло често, рачунар је нису сви тако бистар од уређаја.
То ће збунити.
Ако види једну ствар која то не разуме,
можда заменити други линија кода као нетачне,
иако су савршено у реду.
Тако да увек желе да раде врх доле кроз грешака.
И признајем да је ово Супер волшебни у овом тренутку.
>> Грешка, употреба непријављени идентификатор стринг.
Да ли Мислим стандард у?
Не, мислио сам низ.
И то показује на, можда је грешка у куцању.
Нешто као, спелл-цхецкинг ин А веома гееки начин, али разлог овде,
и ви ћете знати ово само у пракси, је
да се испостави да стринг не постоји у Ц. У ствари, Ц
је посебно стари језик, и то је веома низак ниво,
а не значи пуно могућности да би сте одрасли
са ако имате, у ствари, програмирани у Јави, као што неки од вас имају,
али можете га научити нове ствари.
И заиста, урадили смо тај ЦС50, иако је до краја семестра,
све ове точкова обуку ће бити скинут,
шта радимо у овим Првих неколико недеља
у почетку је такође имамо сте укључили ЦС50 дот х.
Што је заглавље датотеке.
Више о томе у будућности.
>> То је фајл који садржи функције које смо написали за вас.
А међу тим функцијама је Функције за добијање унос
од стране корисника, као што стрингс, и бројеви, и реални бројеви, и још много тога.
Али такође има неколико пречица.
Она дефинише као Боолеан тип података.
Ц нема истинита или лажна.
Али можемо му дати појам труе или фалсе путем ове библиотеке.
И такође нема стринг изграђена док не укључују ову линију.
Дакле, ова линија кода говори преводилац, хеј, кланг, гледај
у овом фајлу за целину гомила кода који ЦС50
је написао тако да свако ко користи ову слику
може да здраво за готово карактеристике су они додају.
>> Тако да сада пусти ме само напред и брисање екрана,
и ако занима само кажем контролу Ја сваки пут за брисање екрана,
или можете уписати јасно.
Само ћу да наставим сада и Тип се здраво, и све је добро.
И даље волшебни излаз, али то није погрешна порука.
Сада ако ја урадим тачка сласх здраво, и као на страну, тачка коса црта је непозната већини.
То само значи, дот средства тренутни директоријум.
Дакле, ако сте икада користили ДОС или Линук, или Уник
можда нешто урадили као цд дот дот, гдје
Дот значи ићи назад у време, или идите уназад, или вишим
у именику.
Дот само значи гледати у тренутни директоријум.
Желим здраво, што је овде.
И заиста, сада се каже здраво Хана.
И ако га поново не промените Марији, рекомпајлирате
било би здраво, Дот сласх здраво, програм стално мења.
>> Али ово је и даље прилицно глупо програма.
Ако желим да испоручи овај програм, или да га пријатељу,
или да га Мариа или Ханнах што се тога тиче, то је у реду.
Могу да га прилагодите за обоје, али се то никада неће бити динамична.
Они то не могу променити након што је саставио доле у ​​тих нула и јединица.
Дакле, шта смо урадили нешто паметније?
Шта ако, уместо хард-кодирање у програму име те особе,
шта ако смо се стринг он деманд?
>> Другим речима, пусти ме да радим ово.
Идем да рекомпајлирате овај програм.
И дозволите ми да зоом ин на дну сада.
Маке здраво тачка коса црта здраво.
Сада се ништа не дешава.
Можемо ли да добијемо брзо волонтера да се нешто деси?
Хајде горе.
Kako se zoveš?
>> ПАНЦХО: Панчо.
>> Давид Ј Малан: Пацхо?
Хајде горе.
Када устанете овде, ово је Биће веома ундервхелминг,
али је још интересантније од мене куцање.
Ако желите да наставите и упишите ваш име, направио сам овај програм само за вас.
Само упишите своје име.
Ентер.
Дивно.
У реду, хвала вам пуно.
>> ПАНЦХО: Хвала вам пуно.
>> Давид Ј Малан: У реду.
>> [АППЛАУСЕ]
>> То је врло љубазно.
Izvoli.
Шта смо урадили?
Тако смо коначно, барем, направио овај програм динамична.
Сада је ипак сигурно Би Десигн ундервхелминг,
али коначно имамо могућност Сада написати код унапред, много
као аутори принтф, а затим динамички
АДАПТ на основу информација добијених смо предао, било од стране програмера,
или од стране човека који је у ствари интеракцији са програмом.
Дакле, да пустимо ствари сада покушавају да урадите неколико других конструкција
и видимо да ли можемо направити програме сами софистициранији.
Дакле, идемо напред и уместо писања ово од нуле,
Ја идем у данашње изворни код, и све ово
је доступан на курс је сајт, а можете драг анд дроп ит
у свом окружењу долазе у петак једном проблему
Сет 1 вам даје инструкције, или сте могли
учините то у командној линији као добро, али више да дођу у стр сет 1.
>> Да видимо шта је у овом програму овде зове, гуја тачка Ц.
Сада сам већ коментарисао да, али шта је ту ново?
На први поглед, оно линија кода је апсолутно ново?
Вероватно не основи непознато сада.
>> ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Да, тако инт једнако се н.
Никада нисмо видели ништа од овога раније, али инт је вероватно
симбол за коју врсту променљива, [? из?] цео број.
Дакле, инт за цео број.
То је само био више језгровит. к је само произвољна.
к и и и з су и даље прилично разумно за бројеве,
али генерално ћемо користити речи некада наши програми се сложенији.
Гет инт, наравно, налик гет стринг,
вероватно ће добити инт од корисника,
а онда ћемо раде исту ствар са и.
И очигледно, иако је ово Последњи ред, 24, изгледа сложенији,
то ће рећи збир ово и да је то друга ствар.
>> И обавештење посто сам Вероватно означава шта?
Какву улогу одсто И очигледно служи?
То је само плејсхолдера.
Зар не?
Проценат а био фор стринг, посто сам је за цео број.
Ту ће бити одсто Ф за покретним зарезом вредност која
је само број са децимални зарез.
Другим речима, прави број.
Дакле, хајде да заправо састављају ово програмирање брзо и правимо Аддер.
Упс.
Добра прилика.
Тако приметити овде, све ово време мој усер наме фор је овај налог јхарвард.
Ја сам у ЦС50 ИДЕ, звани ИДЕ50.
И сада у плавом овде је помена, али из средине, где сам.
А у ствари, ако зоом до врха Овде, приметићете да имам ИДЕ50
и видим ту реч, ако вас некако окренути главу у страну, радни простор.
Укратко, чињеница да Видим Тилде сласх воркспаце
значи да је у овом тексту заснована команда окружење,
Ја сам у тексту противвредности Овај графички фолдер овде.
Дакле, када ја дот сласх гуја, она каже нема правила
да циљна гуја стоп.
Ја не знам шта то значи, али је лоше за неког разлога.
Nema takve datoteke ili direktorijuma је још јаснији.
Где је онда?
На основу где сам кликнуо раније да отворите датотеку.
Где би то могло бити?
>> Вероватно је у извору једна В, за среду,
и ја могу да видим, заиста, ако отворим то.
Постоји аддер тачка Ц, али у ово окружење текстуални,
Опет, морам да будем супер експлицитна.
Ако желите да промените директоријума у Извор један Сриједа, морам да куцате,
ЦД простор извор један Среда ентер и сада
моје правовремене измене дај ми визуелни шлагворт да
Ја сам, заиста, на другом месту у мом окружењу,
али сада могу да правим гуја, чини се да ради,
дот сласх Аддер, дај ми цео број.
Један.
Два.
Збир један и два је три.
Али, ако не сарађује, хајде да видимо шта се ради Инт.
Дај ми цео број.
Не.
Покушајте поново.
OK.
Добро.
50.
U redu.
Тако је коначно сарађује.
И то је неки од функционалност која ове функције
може да се гради за вас.
>> Дакле, унутар имплементације од добити ИНТ, шта програмирање
изгради од прошле недеље је вероватно у има да присили ову понашање обнову,
ретри, ретри?
Да, вероватно постоји нека врста петље.
То ће тражити синтаксички разликује од блокова Сцратцх је,
али то је заиста шта је унутра досијеу.
И у неколико недеља ћемо заправо погледате ЦС50 библиотеци
о томе шта је унутра, али је петља наметања управо то.
>> Хајде да играмо глупе игра овде са овом фајлу.
Цондитион Зеро тачка Ц.
Ми ћемо се генерално почети да броји од нуле.
И стално сцроллинг прошлост неке ствари на врху.
У плаво овде, означену са свим од ових звезда и косе црте,
оне који програм пре, шта је то?
Зашто стално прескачем тога?
Šta?
>> ПУБЛИКА: То је коментар.
>> Давид Ј Малан: Да.
То је само коментар.
Ово је коментар за људе да чита, да се у нашем случају,
нам говори шта име датотеке је, ко га је написао, а оно што ради,
тако да немате да прочитате кроз кода
да знам шта овај фајл је све о томе.
То је само опис, али функционално је ирелевантно.
И чак и да га избришете из мој досије и нема утицаја.
Тхе Јуици линије су ови Прва два овде, сада.
маин празнина је еквивалентно нашег када зелена застава кликне,
тако да ћемо оставити да се за данас, па ћемо се вратити,
на крају, шта Инт и празнина су, али сада,
погледајте шта сам урадио овде, можете такође,
ако имају у складу цоммент, ако имате
мисао желите да делите о одређеној линији кода,
конвенција у Ц је да уради сласх сласх, а затим неколико суццинцт речи,
не целу реченицу, генерално није став,
да само објашњава да ви или ваш ТФ, или други читаоци или колеге,
Шта је твој број ради.
Дакле, уместо да погледам ово и закључити из редова
девет и 10, што је ово ради, у складу осам
Управо сам дао коментар на питати корисника за цео број,
онда не морам да размишљам превише о чему линије девет и 10 су.
Ја само знам да је то оно колективно раде.
>> Kako?
Па, овде је брз.
Ево се на инт.
И на основу претходног понашање, чини се као Гет Инт
је довољно паметан да се уверите да људски сарађује и даје га
цео број.
Али сада видимо ово.
И ово подсећа на Сцратцх.
Ја тврдим да сам анализира допринос корисника,
али помало нетачно.
И то очигледно у Ц како изражавамо иф друго, грана,
А Форк ин тхе роад, али ја кажу нешто нетачно.
Шта је грешка у овом програму?
О додатно подржати?
Да.
>> ПУБЛИКА: [неразумљиво] нула.
>> Давид Ј Малан: Да.
Дакле, ако куцам у нулу, размотримо управо то случај, или угао случај,
ако хоћете.
Дакле, ако куцам у нулу, које од блокови ће се очигледно га ухвати?
Иф или друго?
Елсе, и то ће рећи, си изабрао негативан број.
И заиста, нула није требало бити позитиван или негативан,
и како би погрешно бити.
То би била грешка.
Дакле, како можемо поправити?
Неко ко никада није програмирао раније?
Da li želiš--
>> ПУБЛИКА: [неразумљиво]
>> Давид Ј Малан: Склапање?
>> ПУБЛИКА: [неразумљиво]
>> Давид Ј Малан: О, зар не?
Неко ко никада није програмирао раније.
Желите ли да се окушати у ово, у црвеној кошуљи?
Хајде горе.
Ох, да, хајде, ако ти не смета.
Дакле, никада није програмиран пре, како се зовеш?
Лаурен: Лорен.
Давид Ј Малан: Лорен, у реду.
Тако поправити грешку за нас.
Ниси видео Ц, по свој прилици, а вероватно ни један други језик.
Тако поправи овај програм за нас.
Драго ми је да сам те упознао.
Bez pritiska.
Лаурен: Да.
>> Давид Ј Малан: Али опет, ако је ово коцкање иде по плану,
понети овде ће бити, само једном, да почне
приметити образаца и закључити из постојећег синтакси
Како другачије изразити можете себе, не хтео да се салим, како
ухватити неке додатне сценарио.
Дакле, говоримо иф.
принтф, добро.
И приметио са ЦС50 ИДЕ и САТА франкли--
стоји за интегрисане Развојно окружење.
То је само фенси начин да се каже програм који вам помаже да програм.
То се усер фриендли ствари као што су када откуцате једну заграду,
то вам аутоматски даје друге.
Претпоставка будући да сте на крају ће желети да куцате да,
а такође ради са наводницима.
>> Дакле, ја волим линију 23.
99% путу до тамо.
Неко жели да цхиме у са врхом?
Чуо сам зарез из публике.
Добро.
Тако да заврши то.
А сада, имам само мало запрепаштење са линије 21.
Како желимо да изразимо ово?
Које питање да ли желимо да вас питам, мислиш?
Дакле, претходно смо поставили питање, ако је н већи од нуле, уради ово.
Иначе, то.
Зато морамо да одаберем питање које се поставља овде.
ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Добро.
Дакле, ако је н једнак нули.
Одлично.
Па хајде да застанем.
Хвала вам толико за пркосећи ово.
Дозволите ми да вам дам мало заслужено стрес лопта, можда тамо.
Дакле, скоро смо стигли.
У ствари, Лорен, ако не ум, дозволите ми да овдје твеак,
само да буде у складу и са оно што смо видели у Сцратцх, шта
желим да урадим са линијама 21 и 24, само поново на бази
како смо то урадили у Сцратцх, можда?
>> ПУБЛИКА: Помери га.
>> Давид Ј Малан: Да, померите га.
Дакле, услов друго, треће или Четврти, пети или, или коначно грана,
треба заиста доћи касније, и то је само по обичају,
само зато ако хоћете.
Тако да је потребно да ова Твеак.
И морам да ставим коврџава браце овде.
И сада, овај програм ће саставити.
Тако смо близу, али ту је веома, веома суптилан буба.
Хајде да видимо шта се дешава.
>> Прво, дозволите ми да само напред и умањили.
Ја идем напред и тип се стање нула.
О, лагао сам.
Сада компилатор је заправо прилично паметно.
И не разумем то је порука о грешци.
Користећи резултат задатку као услов без заграда,
је очигледно лоше.
Али шта то значи?
>> Па опет, у потрази за обрасце у шифрама које смо раније видели,
оно што је линија 17 заправо ради, иако Лорен намењен благо
иначе?
Да.
>> ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Да.
Дакле, запамтите знак једнакости, очигледно Као што смо користили раније, није једнако.
Његов задатак, с десна на лево.
Дакле, ред 17 у овом тренутку је услов, а то је
извршавање кода унутар заграда, али када се то код извршава,
шта се дешава у вредности од нуле?
Шта се дешава у вредности од н?
Бецоминг нула.
Дакле, ако је н постаје нула, и поново, по прошле недеље,
генерално рећи да је нула је лажна и један је истина,
или да је један и нема је нула.
Дакле, истина и лаж, један и 0.
Ако је н од линије 17 је с обзиром на вредност 0, нула истина?
Не.
По дефиницији, нула је лажна.
То је конвенција смо ће да се држе напредује.
Тако ће линије 18, 19, и 20 икада примењују сада, логично?
Они не могу.
Дакле, питали смо питање али не сасвим прецизно,
а ти не би знао ово, осим сте га видели, решење у Ц
је када желите да изразите једнакост, кажете једнаки једнаки.
Дакле, знак једнакости је већ потрошен уступањем, са десна на лево.
Једнак једнака средства једнаки.
А ако заиста желите ваш ум да се савија, у ЈаваСцрипт и ПХП,
има једнако једнако једнако, који значи нешто друго у потпуности,
али ћемо до тога убрзо.
>> Дакле, ово је једноставан поправити, али схватите супер лако направити ову грешку,
и онда се питају и борба за минута, ако не и сат времена,
Зашто је мој код не извршења као што сам намеравам?
То је зато што нисте рекли управо оно што сте мислили.
Дакле, то је готово савршен, и било је супер
да смо налетели на ова два Литтле ствари јер сада ако их поправимо,
и ја би цондитион зеро дот сласх Цондитион Зеро,
Ја бих цео број молим.
Hajde da vidimo.
Не.
То ће ме натерати да то уради.
Тако 42.
Изабрао сам позитиван број.
Па сад како ја докажем Овај програм је ли тако?
Ако сте математичар, не можеш заиста доказати методом покушаја и погрешака,
зар не?
Не можеш само доказ од пример, али барем
као програмер нисмо Покушаћу да докажу за сада
да се заправо ради тачно, али вероватно треба
тест неке репрезентативне случајеве.
>> Ја сам тестирао 42.
Могао бих тестирати 43.
Могао бих тестирати 44.
Тест 45.
Зар не?
Али сам могао да урадим ово стварно дуго времена.
Шта би било још занимљивих случајева да пробате?
ПУБЛИКА: [неразумљиво] нула.
Давид Ј Малан: Тако нула.
Свакако.
И добро, ми смо га овај пут, захваљујући Лаурен новог кода.
Шта је још један добар случај да покушате?
ПУБЛИКА: негативан.
>> Давид Ј Малан: негативна, и можда нешто мало већи,
па можда негативан 42, али генерално, када је
тестирање своје програме напријед, ти си
желети да мисле за себе, као што
су основне различита случаја.
И усуђујем се рећи негативан случај, позитиван случај, а нула случај
прилично заокружује ово.
Хајде да погледамо варијанту овог ипак.
Услови један.
Ово је тачно решење овде, тако да ћете видети два и на мрежи,
Ако ходате кроз ВАЛКТХРОУГХ, ће генерално
инкрементирање ове постепено док не купити баш прави приступ.
Шта ако смо хтели да питате два питања одједном?
>> Дозволите ми да отворим ово уместо тога.
Не-прекидач, из разлога ћемо видети други пут.
Шта је ново синтактички овде?
Ја тренутно играм игру где је рачунар говори
ми, дај ми цео број између једне и 10,
а онда ћу судити улаз корисника.
На енглеском, на основу код видите овде
у плавом, шта је овај програм ради?
ПУБЛИКА: [неразумљиво] изабрао велики или мали број.
Давид Ј Малан: Да.
То је само решавање ли Изабрао сам велики или средњи,
или мали број заснована на веома произвољно дефиниција мала, средња,
и велика овде, али Обавештење синтакса то је ново је то.
Нема не мање од инт или једнака потпише, или већи или једнак да потпише,
где је над другим, то ти може изразити у као Мицрософт Ворд.
Дакле, у неком програмском језику си обично само ради два знака,
једна за другом.
А шта то ради, вероватно представљају, Амперсанд амперсанд.
ПУБЛИКА: [неразумљиво]
Давид Ј Малан: Да.
То само значи и зато што Испоставило се да су аутори Ц
користи једну амперсанд, што можда мислите
би био савршен за појам на и, већ потрошен,
тако Амперсанд Амперсанд ствари снима случај ми заправо желите.
>> Дакле, хајде да сада налетим две ствари.
Пусти ме само напред и отвори једну.
Нешто што је мало забрињавајуће.
Непрецизност тачка Ц.
Дозволите ми да представим две ствари овде.
Један, обавештење да можемо да урадимо математика, као као и раније када
јесмо, плус два броја, Кс и И.
Шта је овај програм очигледно ради?
Нисам га још није оставио коментар, и ја сам увео посто ф,
али сам убрзо раније рекао посто Ф значи флоатинг поинт
вредност, што је реалан број.
Нешто са децимале тачка, која није цео број.
Шта мислите је овај програм покушава да ми покаже на екрану?
Да?
ПУБЛИКА: Резултат једне преко 10.
Давид Ј Малан: Да.
Шта је резултат једног подељено са 10.
Тако је, јер сви ви имате вероватно одрасла знајући да један преко 10
je šta?
Да, то је само 1/10 или 0.1.
Зар не?
Дакле, хајде да видимо шта то заправо јесте.
Па нека ми само напред и спаси ово.
Пусти ме доле.
Маке непрецизност дот сласх непрецизност, и обавештење, такође,
у Линук окружењу, не морате да куцате од непрецизност и да
ceo dan.
То генерално, ако погодите Таб, она ће завршити своју мисао за вас,
заснован на речи које су доступна у тренутном директоријуму.
OK.
Дакле, били сте у праву.
Један подељено са 10 је, у ствари, 0,1.
Али ја сам мало радознао.
И испоставило се принтф подржава неке функције
где можете да наведете више од подразумевани број децималне тачке.
Дакле, ако желим да видим 10 децимале Ја бодова могу да ураде одсто,
за симбол чувара места, дот 10 за, дај ми 10 децимале,
и онда даље покретним зарезом вредност, и, успут,
шта је ово обрнута коса црта н Изгледа да смо стално користите?
Испоставило се да је то Симбол за нову линију.
То је врло експлицитан начин да се каже на рачунар,
померите курсор на следећи линија Када завршите.
А видећемо шта ће се десити када то не радимо.
>> Дозволите ми да рецомпиле непрецизност.
Сада дот сласх непрецизност.
OK.
Ипак у праву.
Један подељено са 10.
Сада сам постаје мало радознао, иако.
Шта ако ја изгледам 20 децимале истиче, рекомпајлирате, реприза,
и као страну у брзина, можете да користите
Ваш горе и доле стрелице за дођите кроз историју,
тако да не морате да задржите прекуцавања ових команди, унесите.
Ха.
Нисам научио у основној школи.
У реду, тако да ме пусти види као 29 места од.
Можда је то само случајност.
Можда је мој рачунар понаша чудно.
То није ствар, зар не?
То ради нешто детерминистички.
Тако да непрецизност.
У реду, то је зезнуто.
Дакле, шта се дешава?
>> Дакле, очигледно твој Наставник је лагао
вама све ово време за Разлози да ћемо видети пре дуго.
Али хајде да заврши са једним другим програмом.
Ово је мало програма неко написао пре неколико година,
и то је заправо део такмичења.
Нико заправо пише код овако, а ако то урадите,
ово је стилски проблем.
Али људи раде ово хвалисање права.
За писање највише збуњује тражи програм који
ипак ради нешто занимљиво.
И напомена Мислио сам да оставим на Данас, пре него што Колтон нас има овде,
је да покренете овај програм, који, чак иу користећи само
Ц у овај текстуални животна средина, нам ово даје.
Проклетство.
>> [СМЕХ]
>> Pričekati.
[Неразумљиво] Ц црта Л М.
Ти ћеш видети магичан бајалица да ћемо видети пре времена.
[Неразумљиво] У реду.
И сада чак можете раде овакве ствари.
To je to.
За ЦС50 ми, да видимо у петак.
>> [Мусиц плаиинг]
>> [АППЛАУСЕ]