[Powered by Google Translate] ДАВИД Малан: Ово је ЦС50, и то је почетак Недеље 1. Оно што смо мислили да ћемо урадити данас погледамо уназад на нешто многи од вас су вероватно ишли прошлост за неке Тренутно и можда изгледати мало познато. Ова ствар овде, ово је, наравно, у - ПУБЛИКА: Наука. ДАВИД Малан: Наука центар. Дакле, ово је заправо један од најстаријих рачунара вратио из 1940. То је био један од првих електромеханичких рачунара да је био способан нарочито дуго, самоодржив прорачуни, и шта ми заправо видимо у наука центар је само мали део овога. Оно што смо мислили да ћемо онда је погледамо уназад на видео снимку који је направљен пре извесног времена, увођење овог ствар на свету. И ви ћете видети из музике и глас да заиста они су били веома срећни пута. [ВИДЕО РЕПРОДУКЦИЈА] -Тријумф математичке и механичке вештине је ово Велики нови аутоматски калкулатор на Универзитету Харвард. Комплексни проблеми у математици, ставити преко машина у кодираном облику на траци, прецизно решено у делиц времена потребно за људско прорачун. Дизајниран да убрза све облике математичке и научне Истраживање је гигант механичка мозак ће радити за Јунајтед Државе морнарице до краја рата. ДАВИД Малан: Дакле, оно што можда не знате јесте да је то било у овај исти уређај који термин сада сви узети прилично здраво за готово је сковао, да од грешке. Дакле, један од инжењера који раде у овом рачунару буквално нашао малу мољца у машини који је резултирао у неким погрешним прорачунима. И као прича која мољац је снимљен овом дневнику часопис овде, вратио из 9. септембра 1940-нешто, и тако је рођен у свету појам "бубу". Дакле, сада, ми сматрамо бубе да било каква врста грешака у програма, без обзира да ли човек направио, или, у овом случају, инсекти. Дакле, неколико најавама, као што смо наставили. Дакле ЦС50 има традицију нудећи ручкове врста на већина петком током семестра, где смо узети 30 до 40 студената на ватру и лед на Тргу за повремене ћаскати, прича о рачунарској науци, причамо о будућности. Позивамо полазнике и пријатеље из индустрије за ћаскање студенти, као и. Стварно ка крају израде шта је прилично велика класа све интимнија, најмање једном у, док је за подскупови ученика. Дакле, ако желите да нам се придружите у петак, 1:15 АМ, идите на ЦС50.нет/лунцх да РСВП. А ово ћемо урадити рецуррингли, тако да не брините ако нисте међу првих 30 или тако ове недеље. Тако писар белешке. Реч о средствима која ће сада почети да се доступна студентима у класи. Тако да ваши шефови не треба бити доле у ​​току предавања жврљања доле све што кажем и тако даље, шта радимо уместо се обезбеди из наставног особља канонска скуп бележака. Дакле, имамо један од наших другова, Ендру наставних Селлергрен, ко седне сваке недеље, разматра видео снимке, а онда записује оно што ми мислимо да је прилично ауторитативни скуп бележака. И Андрије фонд, такође, од стављања снарки фусноте у дно. Тако да надам се ћете уживати их као референтна књига за забавно, а такође, долазе квиз време, као прилика да се размотре Шта се догодило у појединим предавањима. Дакле, они су повезани на предавања страници. Проблем скуп 0, у међувремену, је напоље. И у погледу ресурса доступних за вас - проход. Мило довео прво у петак. Било је снимљен, стави на мрежи од суботе. И тако схватити, ако нисте сасвим сигурни одакле да почнете, за ово или будуће п-сета, увек се прво валктхроугх или видео истих. Сечења је у току, на цс50.нет/сецтион је место где можете треба да доставе своја подешавања, ако нисте већ од данас. Јер делови ће почети овај долазак недеља, понедељак, и уторак. Ми радимо делове та три дана, сваке недеље од семестар за највећи део. И ми такође увести, опет, различите нумере. Тако ћете бити упитани на овом сечења форми, ако нису га видели већ, ако сте међу онима мање удобан, удобнији, или негде између. А ако сте некако на огради, углавном негде у између је оно што већина студената завршити проверу. Радно време почиње вечерас. Дакле Огреби је прилично низак кључ, иако је сасвим природно упасти у разне бубе, или бити сигурни како да имплементирати нешто. Тако схватамо да ћемо почети радно ове недеље. Они ће бити у Анненберг понедељак, уторак, среда, Четвртак, од 8:00 часова до 11:00 часова током мозга паузе. Горњи цлассмен могу добити у, а ако сте икада имали проблема добијање на врата, јер ће бити свипинг, само причам на свој начин у и објашњавају да си са ЦС50. Обично 20 до 30 од нас на особље ће бити ту да помогне ти један на један. По доласку Идеја је ово: ви ћете донети свој лаптоп, имаћете пуњач, имаћемо додатне каблове за напајање, посебно дуж јужног зида где Анненберг има много електричних утичница. А главна улазна тачка за канцеларијско сати К & А је да оде у цс50.нет/дисцусс и да поставите питање тамо. И да га етикетирају са псет 0 или 1 псет, без обзира на недељу Можда се деси да буде. И онда шта ћемо урадити је имати табелу наставних момци и курса помоћници, генерално 8 или 10 или тако нас, пролазимо, држећи будним оком на табли, а черупање искључен питања заиста брзо као што можемо, позивајући вас да повезаних порука ако нисте нашли оне себе, онлајн референце, по потреби. А онда, ако постоје проблеми, јер неминовно ће бити, или то само чини више смисла да седну један на један, раде кроз проблеме са неким. Или сте једноставно доћи у радног времена заиста потребе да се начин размишљања. Ти не желиш да идеш преко електронског обрасца, Заиста желим да се састане са неким. Комуницирајте то нама, и шта ће се десити када ваш Питање је виђен од стране особља, а ми одреди, иуп, ово би требало да буде послата на једну од 20 или 30 тима овде локално, видећете на врху оставио ово Унесите мало дугме Куеуе почиње да трепери на цс50.нет / разговарају. И ово вам говори да сте сада су позвани, па да говоре, да уђе у ред. И кликом то дугме, ваше име ће се појавити на иПад да ће ЦС50 Греетер, један од шефова на курс а, се држи близу улаза Анненберг, који ће затим видим као што је представљено овде, студенти који имају питања у вези лево, особље који су присутни на десној страни. И са кликом лево и десно, ваш бровсер ће трепере чим, на пример, професор МцГоннагал је спреман да вас видим у одређеном столу у Анненберг. Тако смо и урадили неке од ове прошле године. Добили смо рестартовао радно време и поново спроводи већи део софтвера. Дакле, схватите да ће се то загреје ове недеље. Али такође схватају превише, и ранијих година, као што сте можда чули од пријатеља, радно време је заиста 50 до 150 студената одједном. А то једноставно није могуће за нас да средим ефикасно, један на један, током вечери. И тако оно што заиста ћемо покушати да урадимо ове године капитализује на чињеницу да много питања су најчешћа и често могу боље одговорио асинхроно. Дакле, можете да некако мислим да кроз одговор особља, и можемо мислити кроз код, без грејање притисак нужно боре кроз њега раме уз раме. Дакле, ми процењујемо да отприлике трећина или половина питања ће бити послат у лице, а ми ћемо покушати да уберу искључио као колико половина или више електронски, током радног времена. И ми ћемо наставити да користе Дискусија током недеље, као добро. И на крају, схватите да овај курс може узети прошао / пао. Дакле, ако сте у дилеми, или само мислим да си стварно нисам сигуран да ли је то свет за вас, или је ово стварно прилично страно за вас, схватите да је ово диван начин стицања неку поверења са којима се закорачи у класе, као што сам искрено јесам, пре неколико година. И онда имамо пет недеља да некако схватим за себе ако желите да останете прошао / пао, пребаците се у писму разред, или слично. А шта обично прође / не не, мислим, за студенте је да, ако ставите у том 10 сати, 20 сати, шта год Можда на неким проблемима, а ти си лупао главу уза зид, а ви само стварно не могу да јурим несто доле, а ви има толико других ствари које треба да урадите, искрено, оно што сам Мислим прошао / пао је потребно ивицу искључивање ситуације као то. Где сте узели ствар 90% пута. Знате, није баш савршен. Али ти имаш доста од тога, ипак. Дакле, размислите прошао / пао као ти даје да ментални модел, можда. Добро, прошле недеље смо дове у Огреби и ми говорио о програмирању на прилично високом нивоу графичком. И данас смо да пређу на језику зове Ц, нижи ниво програмски језик на врху који многи савремени језици су сада изграђени, укључујући неке од оних ћемо користити на крају термина. А синтаксички, како изгледају Све је веома слична. Зато почнимо да направим ову транзицију. Дакле, ово је програм прошле недеље да је најједноставније Хелло Ворлд програми. Једноставно штампан на екрану хелло свету, са Мало облачића излази мачку. Па, ако сада почну да преведе ово друго језик, схватају да су идеје и данас у среду су идентични, али синтакса почиње да се мења. Дакле, док је прошле недеље смо имали, кад зелена застава кликне, кажу хелло свет. Данас ћемо имати инт, маин, празнину, принтф, повратак, са неким другим синтаксе у ту као добро. Заграда, и заграде, и цитати, и ситница. Али схвати да је суштина идеје овде је штампа, и на крају чињеница да је главни сада ће бити синоним покретање програма. Главни ће да буде тамо где је зелена застава почиње офф ствари. Дакле, сада идемо задиркивати поред неких грађевинских блокова овде Пре него што ускочите у неким конкретним примерима. Тако смо назвали изјава прошле недеље, при чему је само инструкција. Урадите ово - у овом случају, поздрави свет. Па у Ц, ако гледамо само тој линији, то је како смо почети да изражава ту одређену слагалицу комад: принтф ("Здраво свете");. А сада ћемо зафркавати ове поред више и више током времена, али схватају да овде постоји образац. Дакле, морамо ово зове инт, који је суштини аналогно речи Саи. То је оно што ће учинити. Принтф и ф овде знаци "форматира". Дакле, то само значи да можете да уметнете различите естетске детаље. Дакле, цитат завршити цитат је почетак онога што ћемо да почну да позивају стринг. Реч, фраза, реченица. Стринг у програмском језику је секвенца нула или више знакова. Тако х-е-л-л-о, зарез, и тако даље је, цитат завршити цитат, ниска. А сада бацксласх н мало синтаксички чудно, али ми већ дефинисано да је прошле недеље као значење шта? То је само нова линија. То је само начин да пренесе на рачунар желите еквивалент ударање Ентер тамо, али не Желим да се заиста ударио Ентер и зато упропастите све од обликовање вашег стварног програма. Сада заграде приложити ову жицу, отворена заграда и затвори заграда, а унутар тога је наша ниска. Јер то је зато што у Ц, и осталим програмима језици, ствари волим иф узме аргументе, или да параметри. Дакле, да почну да размишљају сада ове љубичасте кажу блока као функција, као метод, као поступка. Ви заиста можете назвати како год желиш, за сада, али то је нека врста минијатурних програма који само човек може да ствар, у једној линији, ни мање ни више. Дакле принтф је шта ћемо да почну да позивају функција и функција уради нешто - у овом случају штампа форматиран стринг на екрану - али делује такође узети аргументе или параметре. И аргументима или параметрима, хвала, мислимо да њихово понашање може да утиче оно што прође унутар заграда. Дакле, у овом случају, принтф потребе да се каже шта да одштампате, а ми смо само пролазе у, у наводницима овде, ниску да смо заправо желите да штампате. А зарез на самом крају ове линије је само историјска напаст где на крају већине линија кода, ставиш зарез да супер јасно рачунар да је ова линија кода завршава овде. Сада је то добро јер као што ћемо видети, као програми добију више комплекс, зарез ће супер јасно да нас људе, и рачунар, где линије кода почетка и краја. Схватите да неки језици немају неке од тих истих детаља. А у ствари, у ЈаваСцрипту, не можете увек треба нешто као зарезом. Али више о томе да дође. Тако петље. Имали смо нешто овако, врло интуитивно, очигледно, не Нешто опет и опет и опет. Као стављање чарапе, или здраво, у овом случају. Па, почевши данас у Ц, можемо изразити ту Сцратцх блокирати као док (истина) принтф ("хелло ворлд"). Дакле, приметите смо почели да граде на буквално слагалице комад од раније. Имамо исту љубичасте блок, али је унутра је ово држаче Заувек блок, а најбољи начин да се преведе до Ц је следећи. Нема Заувек кључна реч. Не можете само откуцати ф-о-р-е-в-е-Р у Ц. Дакле, најближи је док аналогни. Сада, док (истина) изгледа мало глупо, јер не вредност истинског икада променити? Вероватно не. То је као да кажете док је један, док је он, док је истина. То је све иста ствар, истина је увек случај. Дакле, ово је стварно петља изазивања Какав петљу? Само бесконачна петља, у реду. Заувек петља, или како смо га звали прошле недеље, само бесконачна петља. Дакле, понекад је то лоше. Понекад је то грешка, понекад зато што се окретања лопта за плажу или пешчани сат или слично. Али у овом случају, намерно, из било ког разлога, желео да поново одштампате исту ствар и опет и опет. Или у случају попут сата, желите да урадите Нешто опет и опет и опет. Дакле бесконачне петље можда има смисла. А ово је како у Ц бисмо могли Заувек превести на коду. Па сад ово је мало прецизнији. Имали смо поновите 10 пута следећу изјаву. Дакле, док (истина) не сасвим раде тамо, јер истина је увек тачно. Дакле, ако смо уместо погледате Ц верзији, сада добија синтакса мало више гробни. Али, да будем искрен, када почнете да видите ово, све то добија прилично познато брзо. Дакле, то је оно што се зове за петљу. Фор петља ће рећи рачунар да уради нешто опет и опет и опет, све док ове ствари су истините. Шта ћемо сада то значи? Па, постоје три дела у фор петљи, а ми ћемо вратити на то у контексту стварних примери у једном тренутку. Зато не брините, ако не сасвим потонути у све одједном. Али инт и = 0 је, скратим причу, рекавши да ми променљива која је типа цео број, па дај ми број Позвао сам и покрените га 0. То је дај ми као алгебарске променљиве к и иницијализовати га 0. Али у овом случају ми смо га звали ја. Затим у средини, она каже да је мање од 10. То говори компјутер да следеће ствари толико дуго као што сам је мање од 10. И очигледно почиње мање од 10 јер почиње на 0. Онда на крају, ви можда можете да погодите шта сам + + средства. То је мало синтаксе то само значи инкрементирање ја. Дакле, додати 1 да ја, опет и опет и опет. И тако ћемо видети ову петљу, овај синтакса, односно спроводи управо иста ствар која, искрено, у Огреби је тако много лакше да се изразе. Поновите 10, и готови сте. У Ц, као и у већини програмских језика, морамо да будемо мало више поучно за рачунар и стварно навести нешто овако. Али ми ћемо се вратити на ово и друге синтаксе. Шта променљивих? У Огреби смо имали нешто слично ових наранџастих блокова, где сам могао да прогласи променљиву. Хајде да самовољно зову контра. Хајде да покрене на 0, а затим хајдемо заувек уради нешто. У овом случају у Огреби кажем бројач, тако да мачка ће имати мало мехур говор који говори број који је у овој променљивој. И онда имамо промену бројача за 1. Дакле, све ово је унутар умотан од Форевер бравом. Дакле, сада већ имају блокове у Ц са који превести ово. Један начин да се то уради је ово. Дајте ми један цео број, зову контра. Инитиализе га до 0 у првом реду тамо. Док (истина), па сам украо ту идеју од само једног тренутка Пре, само напред и урадите следеће. Одштампајте бројач, а затим повећавати бројач, опет, и опет, и опет. Или опет, + + само значи додајте 1 до нечега. Али, овде је нови део синтаксе. Шта је скакао је као ни међу нашим претходним примерима? Да, ово% д. Тако да можда можемо закључити шта то ради, искрено, заснована на оно гребање блок ради. Али опет у Ц, само морамо бити мало више посебна када је у питању да се изрази. Дакле принтф ("% д \ н"). Па већина тога можемо бацити као познато. У цитира само значи да је ниска, инверзно н је само нова линија. Дакле, једина нова ствар овде је% д. И све то је је чувар места. % Д ће означити децимални број. И% д значи рачунар, ставио овде децимални број. Па, шта хоћеш број ставити тамо? Па, као што можда можемо закључити, после зареза кажемо Бројач, то је име променљиве које смо прогласили или створио неколико линија раније. Дакле, ово је само Ц-ов начин укључивања у променљивој у стринг динамички. Јер за разлику од, ако сам већ урадио нешто слично ово принтф ("контра"), шта би то Програм уместо тога, вероватно? Буквално ћу принт "контра". Што није ефекат који ја желим. Морам да замени у неком нумеричке вредности. Тако ћемо видети онда да функције, као што су иф, не могу узети тек једним аргументи, попут "Хелло Ворлд". Они могу да зарез куоте завршити цитат, а онда неке променљиве да ће добити прикључен у, као што ћемо видети претходни низ преко ових плејсхолдере% знакова. Па шта Булових израза? Логички изрази су ове вредности, труе или фалсе. Да или не. 1 или 0. Он или искључено. Дакле, у Огреби изгледају овако, а примећујемо да Доњи блок овде је заправо коњункција од два мања блока. Тако сам некако вукао и пала три комада слагалице заједно да би тај комад слагалице дуже тамо, тако да сам могао да пренесе идеју да желим да будем к мање од и и год да буде мања од з. И тако ја могу превести ове две одвојене линије као што следи. Највиши човек може да буде веома тривијално преведен Ц, само са к <и. Можда са неким заградама за добру меру. А онда у Ц, не пишете и да означи коњункција нечега. Уместо тога написати &&. И као што смо на крају ћемо видети, један амперсанд дешава значе нешто друго. Дакле && само означава идеју И. Па опет, иако почиње да изгледа прилично сложена, један од циљева увођења Сцратцх, поред само има врста забаве на-рампе, где можете да урадите нешто што је веома графички, и анимирани и дељив и слично, је такође да пренесе идеју да све идеје почнемо роњење у данас и надаље су садржане у чак да једноставно интерфејс од првог дана. Шта овај овде? Тако услови. Дакле Огреби блок са леве стране има изгледа мало сложенија. Али то је само неки превлачењем и пада од познатих комада. Ако је к мање од и, рецимо тако. Друго ако је к већи од и, рецимо тако. Иначе, ми смо логички можемо претпоставити да је закључити да они морају бити једнаки. Тако кажу да су једнаки. Сада у Ц на десној, исто тачним ствар. И приметите да су витичасте заграде ће бити карактеристика Ц и другим језицима који раде овакве од енкапсулација. Баш као што је, ако је то жути блок ствар која је врста хватајући љубичасти блок унутар ње. Слично су ови протезе - ови витичасте заграде - требало да дочара ту исту идеју о прихватању једног или више линија кода које су увучена у њима. Дакле, на десној страни овде, ако је к мање од и, инт ("Кс је мања од и"). Друго ако је к већи од и, штампају исти. Остало штампати да су једнаки. Дакле укратко, ту је прилично директан мапирање или превод језика које смо видели до сада, укључујући и неке од више софистициране функције. Дакле, можда не користите ово за свој пројекат, или можда не да користи ово за свој пројекат ове недеље. Али, ми смо те ствари називају низове у Ц. У Огреби, Зову они листе. И видели смо ово са Фруитцрафт РПГ прошле недеље. Мала плава момак који је око ходање, покупите трешње и поморанџе и слично. Па у Огреби, који је реализован са овим наранџаста блокирати која садржи речи, у овом случају, ми смо буквално додајући "наранџасти" у променљива зове инвентар. Дакле, у Ц, ова синтакса ће добити мало више криптичан. А ми ћемо се вратити на ову наредне недеље и да учини више интересантне ствари у свету криптографије са њим. Али, на дну овде, у суштини ове две линије превести на оно што радимо у једном Огреби блокирају тамо. Али више о томе да дође. Зато га стави заједно, овде је програм у Ц па хајде Брзо теасе осим неких делова синтаксе овде, али хајде онда да заиста почнете да пишете мало кода, упознајте ти са неким од алата ћемо користити, и видети да ли можемо може се градити на сада неке од ових основних блокова од прошле недеље, сада синтаксички у Ц. Дакле, на врху овде, ово је можда један од најдосаднијих програма сте могли пише у већини било програмском језику. Али то је врста има посебан значај, јер је то канонска програм који сваки компјутерски научник пише када наставу некога програмски језик - Здраво свете програма. Дакле, на самом врху, видимо тај појам # инцлуде а затим, у угаоним заградама, стдио.х. Ми ћемо се вратити на то, али стварно шта је то значи да постоји фајл у овом свету зове стандардна И / О стдио тачка х, а то је само текстуални фајл који неко је написао пре неколико година. И унутар тог текстуалног фајла су гомила функције или методи, или процедуре, да неко други написао да смо ми корисници, јер смо сада могу да користе код те особе. Функције он или она написала. У овом случају, иф није нешто што сам написао, то је није нешто што ЦС50 написао. То је нешто што је неко написао пре више година и ставити у фајл под стдио.х а онда, као по страни, ставите други део функције у другом фајлу. Али ми ћемо се тамо. Дакле # инцлуде је само наш начин да се каже, у Ц, дај ми приступ функцијама које је неко други написао. И у овом случају ми је стало јер сам принтф желим. Сада смо добили маин (воид). Дакле, ово је један од тих ствари, искрено, да на дан 0, прилично Имам да врсти зоне излаза, јер је само Није интересантно интелектуално, неки од синтаксе. Али, за сада је познато да су функције, иначе познат као процедуре, или методе, углавном производе неку вредност. Они нешто. Они долазе са одговором. Они производе излаз. Дакле, инт поред главна је само наш начин да се каже скраћеница да је ова функција, овај поступак, је на крају иде да вас врати број. А зашто је то тако, ми ћемо вратити. Главни је само стандардна светски стандард за подразумевано функција која ће се извршити у Ц програм када га покренете. Празнина само значи ово, главни, не траје аргументи, у овом случају. Зато сам био изузетно јасан. Нема жице унутра, нема зарезе. Празнина значи да нема аргумената то маин. Сада на крају, срећом, у последње две линије су позната. Унутар заграда имамо принтф и имамо повратак. А повратак је врста несрећа које морамо да ставио тамо, јер у том случају не ради све то много интересовања. Али у компјутерском програму, када је функција враћа 0, то значи да је све добро. Ништа није у реду. Насупрот томе, ако функција враћа 1 или негативан 1, или негативан 1.337, или неки случајни бројеви као тим, да обично значи да је грешка заиста дошло. Дакле, ако сте на вашем Мац или ПЦ рачунар, ако сте икада видели нека досадна поруку зато рачунар крахира или замрзнута, а ту је и криптично поруку о грешци, и онда неки код, као и систем код 1,2,3,4, неки број, да генерално је непотребно детаљ да кажем Већина нас људе, али то је оно што неки функција или неки Програм је заправо вратио, не-нула вредност. А корист од овога је да 0 значи све, као и онда у суштини имају неограничен број ствари које може да пође наопако. Који је разлог зашто су изабрали 0 за добар и не-нула вредност за лоше, јер ускоро ћемо видети. Зато идемо напред и пишем ово. Дакле, подсетимо да неки дан сам користио мој Мац да се отвори прозор терминала, а онда сам отворила текста програма, као и ТектЕдит, и ја сам почела да пишем неки код. Па то је у реду. Али ваше искуство ће бити другачији на Мац-у, или на Соларис рачунару, Линук рачунара, без обзира на оперативни Систем вам се десити да се користи. И тако у току, шта смо, уместо да користимо нешто назвао ЦС50 апарат. Дакле ЦС50 Апплианце је преузети комад софтвера који вам омогућава да покренете оперативни систем назван Линук конкретно Федора Линук на свом Мац или ПЦ. А ово урадите преузимањем нешто што се зове хипервизор. Дакле, све ово ће бити документовано у проблему сету 1. А ти ћеш водити ка ономе што треба да преузмете. Али крајњи резултат, да ли имате Мац или ПЦ, можете је преузели неки бесплатан софтвер. Онда преузети ЦС50 Апплианце, а ви кажете да је слободни софтвер - хипервизор - да покренете ЦС50 Апплианце у прозору на рачунару. И шта се дешава је то. Ја сада, приметите овде, како се чини, стони окружењу. И дозволите ми да заиста смањити тај један прозор. Дакле, ово је сада моја Мац, са мало прозора овде, а изнутра овог прозора се дешава да се у потпуности другачији оперативни систем. Заиста постоји тај старт менија овде доле, подсећа Прозори, који има гомилу под меније, укључујући и линк за ЦС50 приручнику, Дропбок, и слично. А шта је ово окружење сада је стандардна окружење да сви од нас користе, тако да без обзира шта ваш рачунар, шта имате инсталиран на њему, коју верзију Мац ОС или Виндовс ти ради, сви ми сада имамо Исто окружење. И сада у овој средини, можемо почети писање неке кода. Зато ћу да иде напред и отворити програм под називом гедит. То је упоредиво са нотепад.еке, или ТектЕдит на Мац-у. А ово је само супер једноставан текст програм за уређивање да изгледа овако на први поглед. Сада на самом врху, имам белу палету, на дну сам има овај црни прозор који каже јхарвард @ апарат. А то је зато што је кориснички налог који смо претходно креирали за свакога се зове Џон Харвард. Он има неки фолдер где су сви његови фајлови су да идем, и Овде је место где можемо да почнем да пишем неки код. Зато ме пусти да иде напред и овде увећали само мало, и ја сам ће учинити # инцлуде инт маин (воид), и онда ћу да урадим принтф ("Здраво свете") ; Повратак 0. Сада је то све сасвим црно и бело. Пусти ме само напред и урадите једну ствар да научи гедит оно што сам заправо ради. Пусти ме да идем на Саве Ас. Идем да изабере на левој страни овде јхарвард. Па опет, чак и ако никада нисте користили Линук пре, искрено ових дана, сви од њих су у суштини децентрализације Исти тип интерфејса - Мац ОС, Виндовс и Линук. Зато сам изабрао ту јхарвард дома фолдер. И ја ћу да сачувате ову слику као хелло.ц. Дакле, на самом врху, ја сам откуцао хелло.ц; именовања Ц програм са екстензијом ц. се шта је уобичајена пракса. И ја сам ударио Саве. А сада оно што је лепо је да сам практично сам научио гедит, да је ово Ц програм. Приметимо да је мој црно-бели текст је сада обојани, или Синтакса истакао, само што привлачи моју пажњу различите семантичке делови програма. На врху оставио тамо, као моји програми добити сложенији, ја сам ће имати резиме свих ствари које сам написао. Тако да је то тамо. Тако да ми сада умањили и идите до овог терминала прозору. Дакле, ово је можда ново за многе људе. Ако никада нисте користили командне линије окружење, никад користи ДОС, или никада нисте користили Линук, или никада нисте отворили Ваш Мац ОС прозор терминала, постоји много ствари које могао да урадим са ГУИ, као што показује и кликнути и драггинг, и отпуштањем, и слично, али генерално - свакако у свету информатике - користећи командну линију, где немате миша генерално, имате само тастатуру, заправо много моћнији од интерфејса, када се навикнете на различите команде. А ти некако слободног себе и потребе да се укаже и кликните у свему. Дакле, у гедит ћемо некако морати најбоље од оба света. Можемо превучете текст, можемо видети лепо и боја кодирани. Али када дође време да покренете наш програм, понекад ћемо само користите ово овде мали прозор. Дакле, ја ћу ићи напред и урадите то. У доњем црно-бели прозор, ја ћу да наставим и пишем цланг. И звека је назив компајлера. То је програм који конвертује мој изворни код у, тако да, објекат шифра. 0с и 1с, да ми укратко видели прошле недеље. Подсетимо од прошле недеље, обећали смо да ћемо иду од овако нешто - било је потребно да се Нешто овако - и то свакако није нешто што човек иде ручно урадити. Тако, уместо да идемо да користите програм, а тај програм у овај случај се зове кланг. И име мог програма је хелло.ц. Дакле, у циљу да се састави хелло.ц из изворног кода у објектни код или 0с и 1с, требало би довољно да само ради ово и притисните тастер Ентер. Ок, ништа се не чини да се деси. Али знам сада, или од прошле недеље, да подразумевано име Програм, када је написан у Ц, је непромишљено зове а.оут. Већина незанимљиво име које сте могли доћи до. Је прво слово азбуке, напоље је оно што је излазног, али тако да буде. То је мој програм, а сада тачка сласх, као што ћемо видети, заправо само врста безбедносну функцију, јер је а.оут је програм на који сам написао. Није дошао са мојим рачунаром, то је не у Програм Филес. Није у Апплицатионс фолдер Мац ОС-. Морам да будем супер експлицитан са рачунаром, и кажу овај програм, а.оут, у тренутној фасцикли, тренутни директоријум. А начин на који сте Ви то у окружењу као што је овај је тачка представља год фасцикла коју тренутно унутра И тако. / Само значи покретање а.оут у тренутном фолдеру. И покренути ово са Ентер, и воила, моја прва програма. Сада дозволите ми да се вратимо корак. Овај прозор је мало мали, и да схватимо да дно лево од апарата овде је још једна икона. Један је Цхроме, који би требало да буде прилично упознат, само веб претраживач унутар апарата. А ова црна и бела икона је само већи прозор терминала. Дакле, ако се добије мало досадан да некако имају само овај мали мало парче прозора са којима се комуницира са програмима, ми смо уместо да урадимо ово. А сада да почнем да куцате неколико ускоро бити познате команде. лс. Тако ли је команда за листинг. Дакле, у Мац ОС или Виндовс, обично би двапут фолдер и онда, воила, видећете све разних фајлова и фасцикле. У окружењу командне линије, где можете само откуцати команде или текст, лс је еквивалент. Дакле, покажи ми шта је у овом директоријуму. Сада постоји гомила ствари овде да је и мало упознати и мало страно. Али приметите да као Виндовс и Мац ОС, јхарвард има десктоп фолдер. Дакле, све иконе које се налазе на мом десктопу десити да се у тој фасцикли. Постоји преузимања фасциклу, ствари које Цхроме можда да стави тамо. Дропбок. Дакле, апарат долази са уграђеном подршком за Дропбок тако да је током семестра, можете синхронизовати са вашим Дропбок налог, тако да сви ваши програми су подупрте. Они су доступни на другом рачунару. Ако ишта пође наопако са апаратом, можете врло лако се опораве од Дропбок. Дакле фолдер тамо за то. Постоје две датотеке које сам направио - хелло.ц и а.оут. А онда десно има неке друге фасцикле које ћемо дођете до пред крај семестра, са Интернета програмирање. Дакле, када радим /, а.оут., Ентер, да каже ићи у именику сам у, тренутни директоријум и покрените Програм се зове а.оут тамо. У реду, тако да је то лепо и добро, али то није све што убедљив да напише програм који се зове помоћ а.оут. Дакле, ми у ствари можете да урадите мало другачије. Дакле, уместо само ради кланг, хелло.ц, хајде да додамо оно што се зове командне линије аргумент. Дакле, аргумент командне линије, или прекидач у овом случају, је само друга реч или фраза која куцате на линији после програм који желите да покренете. Дакле, у овом случају, звека је програм желим да трчим,-о значи излазна датотека која се више не зове а.оут. Излаз фајл који се зове здраво, и то тако прикупљањем последња реч на линији, хелло.ц. Дакле, у Укратко, ово је врло маргинално побољшање, при чему уместо да ово глупо имену датотеке а.оут, Ја сада могу да урадим зазвечати-о здраво, онда хелло.ц и затим притисните Ентер. Ништа изгледа да се деси, али опет бих волео са 0 - када ништа се не чини да се деси да значи ништа лоше десило - па хајде да урадимо лс сад, Ентер, и заиста сам сада имају здраво програм. Дакле, ако сам здраво откуцате сада, команда није пронађен. ОК, /.. Дакле потпуно тачно. Зато што овај програм сам написао, и није дошао са рачунар, / здраво. Ентер, значи Сада водим здраво. Тако да је ту. Сада шта ћемо, на крају ћемо доћи до више и више командне линије аргументи који нам омогућавају да урадите више, али само за оне за кога то може бити стари шешир, пусти ме заправо иде у директоријум овде и да вам дају задиркивање како смо још могу да идем о имплементацији Хелло Ворлд. Пусти ме да идем у овде, а ја ћу да га отворим. Па заправо, ја ћу да објасним шта радим, па ово је корисно. Пустите ме назад. Тако сам радила ово дуго времена. Дакле, приметите тамо на праву постоји неколико директоријуми који се чудно названи соурце1м и соурце1в. Ово је само глупо конвенција користимо. Извор само значи изворни код, 1 значи да је ово седмице један, и м значи да је понедељак, и в значи да је среда. Дакле, ништа гробни тамо. То је само скраћеница нотација. Ове ствари су плаве фасцикле, иначе познат као директоријуми. Желим да идем у тај фолдер сада, и на нормалном рачунару Ја само да двоструко кликнете на икону фасцикле и ту је све моје датотеке. Али у окружењу командне линије, ја не могу да урадим да, па уместо тога, морам да променим директоријум ручно. Дакле, ако сам укуцате цд и онда соурце1м, Ентер, приметићете да мој линији ствар у белом на левој, само променио. И тако заиста, када је само рекао заграде а затим и Мало шкрабање, тилда симбол, то само значи да сам У Јовану харвардском хоме директоријуму, његови Ми Доцументс, његове личне датотеке. Али сада у загради стоји ~ / соурце1м. То само значи да сам у фасцикли под називом соурце1м То је у кућном директоријуму Џона харвардском. Дакле, ако ја сада желим да наброје датотеке у овој фасцикли, лако Питање, куцам само лс. А сада видим све фајлове које сам претходно створен за данашњи Предавање, које све, или већина од којих се десити до краја у Ц.. Зато ме пусти да иде напред сада и покренути гедит програм под именом холловаи.ц, који је написао неке случајне хакер на Интернету, то изгледа мало овако. А ми нећемо да прођемо кроз овај у било детаљ, али за оне удобнији, посебно ако желите да се погоди као шта овај програм ради овде. Будите сигурни, да ли сте мање или више удобно, нећемо ни доћи до оваквих ствари до краја овог семестра. То је оно што је пример обфусцатед Ц такмичењу, које значи написати највише шифровану изгледа програм који евентуално може да надмаши друге паметне људе, који су на сличан начин Покушавам да напишем нешто и покаже да може да напише више загонетна ствари од вас. Дакле, ово није пример добро написан програм из перспектива стила, ово је пример програма те побеђује у такмичењу за људе покушава да буде нејасно и апстрактна. Дакле, ако смо покренули ову ствар, пусти ме да одем у прозору терминала, да тако кажем. Дакле, ово црно и бело окружење се зове прозор терминала уопште. Дозволите ми да иде напред и саставити га. Нећу користити кланг, јер овај програм је Мало криптичан и треба другачије преводилац, један се зове ГЦЦ. Али то ради исту ствар. Потребно је изворни код на објектном коду. А сада, ако трчим а.оут, тај програм те Управо сам видео ово ради. Дакле, тај момак те године освојила тај конкурс. У сваком случају, ми не идемо у том правцу, по себи. Дакле, хајде да покушамо да ствари сада задиркивао, осим онога што можемо да урадимо са овим основним блокова да би све више и више занимљиве програме. Тако смо написали програм, ми смо покренули програм. Сада ми заправо можемо поједноставити и више не морате да пишете Реч зазвечати у промпту. Испада као наши програми се више криптично, можемо или сложенији, а, заправо може покренути ову команду. Дакле, дозволите ми да се вратим на мој хоме директоријум, тако да кажем, дозволите ми да уклони - рм је уклони команда - Идем да се уклоне фајл који се зове а.оут и здраво. И сада приметити у окружењу командне линије, налик на ГУИ, добићете затражено. Ја не могу да кликну на дугме, иако, ја морате да куцате и за да, И за да. А сада, ако ја укуцавате лс, обавештење да они зелени програми - а.оут и здраво - су отишли. Чувајте рм. То може да уради лоше ствари, баш као што можете превлачењем ствари на ваш ђубрета. Дакле, сада идемо напред - и ја могао да урадим ово - зазвечати-о здраво, здраво - Ја сам већ досадно куцате ту команду. Иако сам га откуцао мало брзо. Дакле, уместо да праве здраво. Тако да се не компајлер. То је само пријатељски програм који долази са Линук-ом, у овом случај - оперативни систем - која аутоматизује процес састављања програма. Дакле, уместо да се сети зазвечати-о филенаме и онда тако даље, нарочито када се те линије дуже и дуже, могу само да пишем направити. И ово це да испљуне гомилу ствари тог ми смо на крају ћете видети овог семестра. Али приметите сада, ако укуцамо ЛС, здраво је поново у мом именику. И заиста могу да раде са / здраво.. Тако да само аутоматизује процес покренут шта је, у овом случају, много дуже, сложеније команде. Дакле, ми ћемо да почнемо да користимо марку, само зато што је много више усер фриендли. Али сада хајде да урадимо више интересантан програм него само поздравити. Дакле, у програмима које сам написао до сада тамо главни. То је само стандардна ствар која почиње све искључено. Али постоје и друге функције тамо, као и стдио.х је ствар коју смо видели на врху нашег датотека и раније, а то је оно што је познато као стандардне библиотеке. Унутар стандардној библиотеци је читава гомила функције да је неко други написао, и можемо да почну да користе ове функције да напишете интересантне нас самих програма. Дакле, да се вратим на апарату. Ја ћу да затворим овај прозор терминала. Идем да затворим ствари смо писали раније, и само иди у хелло.ц и запазите сада да урадите следеће. Здраво свете није све то интересантно, а ја бих волео да персонализују овај програм за себе. Дакле, уместо да каже свет, ја ћу само напред и рећи - Ја да откуцате Давида - али ово је стварно врста фундаментално исти. Али, хајде да покушамо ову идеју чувара места. Подсетимо да је у Ц, а у принтф, имали смо ове Чувари, и постоји више од пуког% д. Дакле% д био, брзо разум чек. Ок, Децимални број, то је то. Децималне цифре, то је све. Дакле% ц, као што ћемо сусрести, ће бити карактер. Ставите овде карактер, писмо кроз з, или интерпункције симбол. Један знак,% ф, знам никога из других језика? Дакле, плутајуће тачке вредност. Реалан број. Дакле, није децимални број - ово је заправо прави број са децимални зарез, а неки број цифара лево и право на њега. % С, стринг. Онај ћемо да видимо врло често. Ниска, опет, само реч, фраза, секвенца појединачних карактера. И на крају, ЛЛД? Дакле, ово је више од угла случају. Дуго, дуго децимални. Дакле, ако не желите само број који је ово велики, можете Желим већи број, ти ћеш морати да одредите да рачунар који је од посебног величине. Дакле, хајде да подесите ово мало. Уместо само хард кода у Давиду, пусти ме мало динамички кажу% с. Дакле, ставио овде% с, који је чувар места за ниске. Онда ме пусти да урадим зарез, а затим "Давид" овамо. Сада то није све што интелектуално интересантно, јер све што сам сада урадио је заиста створити више посла за рачунар. Уместо реци рачунар не све ово одједном, сада сам рекавши ово и убаците на крају ниску овде, зарез, Овде је то ниска. Дакле, ово није бољи напредак, али је барем корак ка више занимљив програм. Јер сада, дозволите ми само напред и да овај прозор мало већи, пусти ме напред и покрените маке здраво. А сада, / а.оут се. Не ради, зашто? У реду, сада је здраво зове. Дакле, опет би, и звека са-о, преименована Програм да буде нешто више занимљиво. И воила: сада се каже здраво Давид. Добро, и даље глупи програм. Тако да сада идемо у ствари вратимо овде и уведе појам променљиве. Зар не би било лепо када бих могао прогласити променљиву чији је тип стринг? И променљива је вредност ствари долази од корисника он или сама. Дакле произвољно, ја ћу да позовем моју променљиво с што је Само заједничка конвенција, када имате једну променљиву зове ниска. Ја ћу да урадим знак једнакости, а онда ћу да позовем Функција зове ГетСтринг. Дакле ГетСтринг није нешто што долази уграђен у Ц. То је функција која ЦС50 особље написао, стварно само за ових првих неколико недеља, да се поједностави процес добијање корисника улаз и стицање кориснички улаз у форми жица, или бројева, и таквих. Дакле ГетСтринг је као инт, али очигледно него принт то ће да уради оно што му име каже, добио ниску. Али да користе ГетСтринг, ми ћемо морати да направи промену Овде, изван овога. Дакле интуитивно, овај програм, надамо се, неће да се некако добити стринг од корисника, а онда шта ће да уради са том низу, под називом а? То ће га одштампате, зар не? Још увек не стимулативна програм, јер све што се дешава да урадите је да прикључите у тој вредности у којој% с каже да би требало да иде. Па хајде да се барем видети у акцији. Дозволите ми да сачувате и умањили. Сада у мојој терминалу овде доле, мала кришка једног, дозволите ми да поново праве здраво. Ок, и ах, проклетство, ја имам гомилу грешака. Дозволите ми да помицати горе, а ми видимо да је наш први - па хајде да заиста уради у још већем прозору, тако да можете видети како лоше сам зезнуо - па се здраво. Ок, то је катастрофа, зар не? Написао сам три линије кода, и је ми је дао 12 грешке. Дакле, зашто је ово? Дакле, на срећу, често, када сте видели много, много грешака пљување се одједном, то је заиста само зато што немаш збуњени рачунар овде. И она остаје збуњена време добија овде. И тако тек почиње саплитање, а спотицања и пљување од више застрашујуће ствари него што заиста примењује. Дакле, у принципу, увек почните са топ један. Тако сам врх највише инстанце црвено, порука о грешци је ово. Коришћење непријављеног идентификатор стринг, да ли сам Мислим стандард? Ја нисам. Мислио сам ниску, али то је зато што је, такође, реч стринг да наставите да користите вербално ствари не постоји у Ц било. То је нешто што ћемо користити само за прву недељу или две овде, али она постоји у датотеци под називом цс50.х. Дакле, за сада, знам да постоји та друга библиотека која Особље је написао, тако да је то било написано више од недавно стдио.х. Али унутар цс50.х је дефиниција, синоним сортира, који ствара овај реч стринг. Дакле, сада да се вратимо на мој прозор терминала. Идем да обришете целу ову збрку од Цтрл-Л. Само ћемо обришите све чисто, а ја ћу да наставим и да Здраво опет, Ентер. Па шта је сад било? Сада сви од тих грешака су отишли. Па шта сам стварно урадио? Управо сам предавао компјутер који стринг постоји, и то је у том фајлу под називом цс50.х. Дакле престати да се жале, јер сада знате где да пронађете Та функција је изјава да се тако изразим. Где постоји у свету. Дакле, сада ћу да иде напред и покрените здраво. Чини ми се да има бесконачну петљу, ништа се не дешава. Зато морам да упишете нешто овде, у реду. Прва линија кода у мом програму је ГетСтринг. Тако да буквално чека да добије ниске. Дакле, у том смислу да, то је бесконачна петља. Очигледно у ГетСтринг је уобичајено понашање које написао - запослени - то само говори чекати и чекати и чекати и чекати и чекати, док корисник вам даје низ куцајући нешто унутра Зато ме пусти да иде напред и тип у Д-а-В - И-д, Ентер. И ту је, здраво Давид. Сада се то изгледа као да је само чин? Дозволите ми да иде напред и укуца Томијем. Ентер, ок, изгледа да ради. Радови за Роб, ради за Замила, ради - ок. Дакле, то је одлазак на посао, највероватније. Дакле, требало би да одштампате било шта смо заправо га дати, и можемо бити мало тешко. Хајде да видимо да ли можемо учинити нешто здраво. Може ићи овде, хајде да видимо, цопи, пасте. Нећу бити у стању да налепите да овде много пута. Пасте, ок, Схифт + Цтрл + В. Дакле, шта би могло да десити да је лоше овде? Ок, сегфаултс. Дакле, неки од вас са претходним искуством ће знати да генерално, дајући Рачунари много улаза када су вероватно не би требало да прима дугачке имена овако - лоше ствари се дешавају. Заиста, у свету Интернета, такође, то се дешава прилично мало, при чему када дизајнирате сајт, када сте пројектовање Фацебоок, морате да арбитрарне одлуке се напред, као и колико дуго ће неко да Фацебоок корисничко име бити? Или колико дуго ће име нечији бити? Колико дуго ће телефон нечији бити и слично. А ако програмери чине лоше претпоставке, програми бреак јер сте покушали дајући им већу производњу, више улаза а, него они имају памћење. Или РАМ издвојена за њега, па ако сада сам ударио Ентер, тај програм стварно функционише, јер смо били у библиотеци и заправо очекује овај посебан случај. Али несумњиво је овај семестар, ви ћете написати барем један програм који ће рећи ове речи. Запамтите ове недеље од сада, можда два дана од сада. Сегментација грешка је лоша ствар. То ће се односити на вашем раде нешто што рачунара није предвидео. И у том случају, ви, програмер, није предвидео. Много волим шта је то гомила чарапа, било је разних кутак случајеви могли смо наишли. Слично томе, у програмима ако не предвиђају колико дуго је нечија име ће бити. Или, шта ако имам злонамерни корисника, а његов назив је заправо прилично кратка, али они само покушавају да неред са мном? Шта ће бити понашање мог програма? Па, у том случају, нешто би заправо срушити. Дакле, хајде да урадимо то. У 90 минута, то је ужасно дуго време да науку рачунара. Зашто не ући у навику узимања пет минута разбити ту, а кад се вратимо, ми ћемо заронити у неке сложеније и убедљив програм? Пет минута. У реду. Дакле, једно кратко коментар. Речено ми је да, иако је овај био на екрану пре него шта изашла из мојих уста била цс50.нет/рсвп. То је тачно. цс50.нет/лунцх. Дакле, сада можете да покушате РСВПинг за ово у / ручак. Али, хајде да урадимо то сада. Дакле, ово је супер брз, супер ново за многе људе. Стари шешир за неке људе. Па хајде уназад само за тренутак, и да видимо како смо стигли до ово здраво свет излаз пре само тренутак. Дакле, прво, ту је ово ЦС50 апарат. Опет, комад софтвера, проблем сет 1 ће рећи како да га преузмете, где да га преузмете, шта да кликнете и тако даље. И онда када следите ова упутства, моћи ћете да повећате свој прозор, и ваш Мац или ПЦ ће изгледати Нешто овако. Црна позадина, хоме фолдер на врху где су сви ваши фајлови, канта за смеће у горњем левом углу, мени на дну. Па опет, прилично слично у духу на Мац ОС или Виндовс, иако се деси да буде Линук. Па шта смо следећи радимо? Па, ми смо почели да пишемо програме. И сећам се од прошле недеље да је све што је потребно да напише Програм је једноставан текст едитор, као Нотепад или ТектЕдит. Искрено, можете чак и да користите Мицрософт Ворд. Али лоше ствари ће се десити на крају, јер је то веома трапав решење за писање програма, плус ћу сачувајте га у погрешном формату. Али то је само текст едитор, реч процесор, све се то потребно да напишете програм. Дакле, у ЦС50 Апплианце, можемо урадити у једном једноставан начин. Ми само да кликнете на ову икону у доњем левом. И опет, проблем поставити 1 ће вас обавестити о томе, и воила - ти овај црни и бели интерфејс где можемо почети писања кода. Дакле, хајде да поново почне да пише супер једноставан програм. Ја идем горе на Филе, Саве, а ја ћу да позовем ово, хајде да кажем, хелло2.ц. И ја сам само да кажем кликом на јхарвард, стави у свом хоме директоријуму, ја стварно не занима где ово иде. И онда Саве. И сада могу да почнем да пишем свој програм. И сећам од раније да морам да пишем инт маин (). Увећање на горњем левом углу. А онда хоћу да кажем иф, узмите два. А сада нови ред, близу цитат, затворите заграде, зарез. А онда идем доле на мој прозор терминала који је уграђен у гедит, само за практичност. И ја ћу да наставим да пишем и здраво, али не и здраво сам, хелло2. Дакле, мој досије зове хелло2.ц. Моја датотека стога треба да се зове хелло2, у овом случају. Дођавола, шта сам урадио погрешно? У реду, тако да сам јасно изостављена линију, ако се сећате шта претходна програми изгледају. Али, хајде да видимо, ако не можемо изазивај то раздвојити. Нажалост, већина људи који пишу програме са којима пишемо програми не поједностављују ствари све то добро. Дакле, морамо да некако обрано око шта не сасвим да осећају овде и видети да ли можемо да схватимо шта није у реду. Прва линија тамо пише имплицитно декларисање Ц библиотечка функција принтф са типа инт. ОК, схватио сам део тога. Али изгледа да се алудирајући на чињеницу да је сам користио принтф погрешно, некако. А шта смислу је погрешно? Нисам уче рачунар да је у датотеци зове стдио.х. Сада сам само да памтите само сада када је принтф у стдио.х, и заиста тамо ће бити и другог Функције у том истом фајлу који ћемо навићи. Дакле, сада пусти ме напред и притисните Цтрл-Л само да јасно да даље, реприза направи хелло2, и воила. И ову команду поново, сложенији него што ћемо објаснити данашњи сврхе. Али није покрене кланг, а јека се изворни код и избацује 0с и 1с. И они 0с и 1с, у овом случају се зове шта? Ок, приговор код. И датотеке које су у се зове, тако да хелло2, у овом случају. Зато мој досије текст је хелло2.ц, Ентер. И сада сам узети два узвика, узвика тачку, знак узвика. У реду, тако да сада имамо могућност да се жице, очигледно. Па, шта друго можемо добити од корисника? Па у ЦС50 библиотеци, има друге функције које ће поједноставити своје животе у ових првих неколико дана. Гетцхар, ГетДоубле, ГетФлоат, ГетИнт, ГетЛонгЛонг, ГетСтринг. Па, хајде да чупају искључивање најлакши од њих први. ГетСтринг буквално ради. Он само седи тамо, чекајући корисника да куцате нешто, и чим сам куцате нешто у и ударио Ентер, то уради нешто са том вредношћу. Дакле, хајде да се вратимо на тај пример да видите тачно шта ГетСтринг радила. Дозволите ми да иде напред и отвори у гедит, хелло.ц и сети то право пре паузе, ово је место где смо стали. Дакле, хајде да сад зафркавати ово осим у мало више детаља. Дакле, на линији 6, постоје две ствари дешава у овом тренутку. Знак једнакости се раздваја прву половину и другог полувремена. Дакле, на левој страни знака једнакости, ми смо рекавши стринг с. А онда, само лаик смислу, оно што је ниска а радиш, шта мислиш? То је стварање шта? Дакле, то је стварање ниску зове с. Сада шта то заправо значи? Па, то је резервисати простор за низ зове с. То није сасвим тачно. Шта је ово радиш? Па рачунари, као што знате, има хард дискове, то је место где датотеке се чувају. Рачунари имају меморију, и то је место где се програми учитавају док су у покрету. Дакле, када двапут кликнете на икону и Мицрософт Ворд отвара горе, Мицрософт Ворд покренут, да тако кажем, у РАМ, што је електронски део вашег рачунара. Не физички, механички део који се окреће, где Подаци се чувају углавном дугорочно. Тако ниска с је прилично говори компјутер ми дају Довољно РАМ да стане низ. Сада је то помало симплификацији, јер колики је стринг ће бити? Па ми заправо не знамо још, тако да у недељама које долазе заправо ћемо повући слој који је стринг и ћемо вам рећи оно што стварно јесте. Стринг, за сада, само лепо поједностављење нашег света. Али стринг с декларише низ зове ова, за сада. Проглашава ниску. Она задржава мало простора у РАМ за ниску корисник је о томе да куцате. Сада ћемо погледати у праву знак једнакости. Тако пише ГетСтринг (). И мало разум провери. Чињеница да не постоји ништа унутар заграда имплицира шта о ГетСтринг? То нема аргумената. То је, да не може да утиче на њихово понашање на било који начин. Сваки пут када га користите, он ће добити стринг и то је то. Насупрот томе, иф, надам своје понашање не промените сваки пут. Иначе, то је прилично бескорисна штампа функцију ако она ради исту ствар. Ако је увек исписује Давида или тако нешто произвољно све време. Дакле принтф смисла да има аргументе. ГетСтринг заиста не треба аргумент, јер сам желела да би добили низ од корисника и то је корисник који иде за снабдевање динамичност куцањем у различитим словима сваки пут на тастатури. Дакле, шта се на крају ГетСтринг? Мислите о томе као ове мале црне кутије. И то црна кутија не узима улаз, али када сте на прасак она, она избацује стринг који корисник унесе И чињеница да постоји знак једнакости тамо значи узети шта је испљуне на десно и држати га унутра шта је са леве стране. Дакле, знак једнакости овде, то заправо не значи једнакости, то већ значи технички задатак. Узми вредност на десној страни, и ставио га у променљива са леве стране. Тако да је све што је тамо дешава. Сада у складу 7, ми принтф позива. Дакле, иф надам се добија мало досадно до сада. Дакле, одштампајте форматирану ниску. Шта стринг? Штампање, "х-е-л-л-о,% с \ Н ". У реду, па шта желим да плуг-ин за% с? Буквално, шта год да се налазе у с. Дакле, у овом случају, мало разум чек, колико аргументи не принтф узети? Ок, ја сам чуо један. Чуо сам једну поново. Два, чуо сам два. А шта је са три? Ок, три? Одлично. Три могућа одговора, само један од њих је исправан. Дакле, аргументи опет утиче на понашање функције. У прошлости, иф није само се један аргумент. "Хелло Ворлд" је био један аргумент. Међутим, сада, приметите где је зарез је. Ово је зарез изван цитат / завршити цитат, што значи хеј принтф, долази други аргумент. Дакле, зарези у већини програмских језика Одвојите више аргумената. Дакле, одговор је овде дефинитивно није један, јер постоји та зарез. Дакле минимално, иф очигледно узима два аргументи овај пут. Али прилика за трик питање овде је оно што о овом зарез? Да ли то значи да заправо постоје три аргументи? Ово, ово и ово. Па не, јер је то зарез је унутар наводника, које знаци то је заиста само естетски енглеског језика. То нема никакве везе са бројем аргументи у овом програму. Дакле, ово је зарез ван знакова навода. А онда се вратите 0. За сада идемо само некако искористим ову једну на вери данас, и само знам да када су функције ради извршавања линија кода, они генерално треба да се врате неку вредност. У овом случају, само зато што мора да се врати главни инт, то је само начин на који језик Ц ради. Зато што ништа није у реду, изгледа као овај програм је добро, ја сам само тешко кодирана у повратку 0. Али насупрот томе, а ја ћу да пишем ово у псеудо коду Сада, попут Јосифа урадио када смо урадили чарапа Пример прошле недеље. Ако нешто крене наопако - ово није стварни број - отишао погрешна, онда се вратите, рецимо, 1. Ретурн 0. Дакле, ово је место где ћемо са овим. Ово није стварна Ц кода, само Псеудокод. Али ово је како може да врати различите могуће вредности. Али за сада ћу само да иде напред и вратите 0. Добро, било каква питања до сада на синтаксе, функционалности, или бих? Да, у назад. ПУБЛИКА: [ИНАУДИБЛЕ] ДАВИД Малан: Да ли говорите мало гласније? Зашто овај програм повратка 0, а? ПУБЛИКА: [ИНАУДИБЛЕ] ДАВИД Малан: Ох, то је зато што сам лењ, извини. Није добро академски одговор, вратите 0. Могу некако спасе ово рекавши технички Ц, ако је главни експлицитно не враћа вредност, 0 ће бити враћени аутоматски за вас. Што је истина, ја не говорим само прикривање. Али, требало је да то уради на овај начин. Не Занимљиво ПОНЕТИ него што осим моје грешке. Да? ПУБЛИКА: Обично када куцате у празно, да вам значи не врате нешто. ДАВИД Малан: Тачно. Ако уместо тога, одредите пре именом функцију, На пример овде, празнина, онда функција не врати ништа. И зато ја бих рекао, повратак или ништа, и да ће бити доследни. А ми ћемо се вратити на то. И само за вашу информацију, један од улова са учења програмирања у свету који има на стотине књига и стотине сајтова тамо је да ће неминовно видим другачију синтаксу у различитим књигама од стране различитих људи. Схватите ћемо се потрудити у одељцима и предавања бити доследан. Али понекад ћете видети неусаглашени синтаксу. Дакле, кад год сте у недоумици, само питај. И уопште, ми ћемо се побринути за предавања и секције скоро увек га представи на прави начин. А ја кажем готово увек, јер случај. Остала питања? ПУБЛИКА: Да ли постоји изван% с апарата? ДАВИД Малан: Да ли% с постоји ван апарата? Да. Дакле% с има везе са Ц. Чињеница да смо га користе у апарат фундаментално нема никакве везе са карактеристике језика који користимо. Заиста, прошле недеље када смо мој Мац, написао сам Ц код на мом Мац-у. Могао сам% с на мом Мац-у, и могли сте да га користите на ваш Виндовс рачунар ако инсталирате компајлера, као Висуал Студио из Мицрософта. Дакле% с. Све смо радили унутар овог прозора данас мора да везе са Ц. И фундаментално никакве везе са оперативни систем у питању. Насупрот томе, црно-бели прозор терминала - када Куцам ствари као лс и рм и цд - то има везе са оперативним системом и навигације около. Да. ПУБЛИКА: Мислио сам у библиотеку, и ЦС50 библиотеку. ДАВИД Малан: Ок, па ако мислите кључну реч стринг, који постоји само у ЦС50 библиотеци, тачно. То не постоји у самој Ц, и заиста у пару недеља ћемо бацити на ЦС50 библиотеку и почну раде ствари од нуле самих, да тако кажем. Остала питања? Да. ПУБЛИКА: [ИНАУДИБЛЕ] ДАВИД Малан: Добро питање. Да ли су команде и мала слова? И дозволите ми да овде разлику. Дакле, команде су углавном ствари које ћемо написати у дну прозора, у прозору терминала. Нешто се овде ће бити изјаве или Ц код. Али у оба случаја, одговор је исти, да. Оба ова окружења, Ц кода на врху и оперативни систем командне линије на дно, су велика и мала слова. Дакле, морате да капитализује ГетСтринг са великим Г, капитал С. Морате иф пишете у свим малим. Морате откуцати лс у свим малим. Дакле, у скоро свакој ситуацији овог семестра, случај ће, у Чињеница, материја. Да. ПУБЛИКА: [ИНАУДИБЛЕ] ДАВИД Малан: Ах, тако добро, шта ако смо имали фајл зове хелло.д. Тако испада Д је програмски језик. И тако у неким случајевима, ми заправо могли написати програм у тај фајл и да га саставили у том моду. Ми можемо, и заправо, кратак одговор је, ја не знам. Дакле, ми ћемо да урадимо ово. Пусти ме само напред и направите нову датотеку. А спин овде, искрено уопште, кад год било сумње овог семестра, и имате апарат или компјутер отворите, само напред и покушати нешто. Зато ћу да сачувате фајл под називом хелло.д. Сачувај то. И ја ћу покренути да поздравим Ентер. Чинило се да закључити да је ц је вероватније него д, у овом случају. Остала питања. Да. ПУБЛИКА: [ИНАУДИБЛЕ] ДАВИД Малан: Добро, рећи да још једном. ПУБЛИКА: [ИНАУДИБЛЕ] ДАВИД Малан: Како би идете о дијагностици то или решавање то? Дакле највероватније, зато што су различити језици, највероватније ће добити потпуно различита програма излазног. Ти би да се потпуно различите поруке о грешкама. И такође само у смислу дизајна, вероватно ће бити сиромашних дизајн одлуку да се писмено два различита језика са готово идентично именованих фајлова, у потпуно исти директоријум, користећи аутоматски алат попут направити. Па ја могу да потисну и рећи за 15 година радиш ово, Никада направио ту грешку. Може се десити. Али постоји само различити, ја мислим, логистичких одбране у месту. Плус поруке о грешци које ће уследити, који би на крају откривају оно питање. Али могуће кутак случај. Добро, хајде да уведу само неколико других Карактеристике сада овде, тако да можемо да почнемо изградњу у више и сложенији програм. Дакле, пре свега, математика. Дакле, математике примери су некако лако у првој недељи. То не значи да су сви програмирање је око математика. Наравно, разумевање различитих функција математика, алгебра Посебно је прилично релевантна овде. У вишим класама ЦС, линеарне алгебре, рачун, а слично. Али схватате највећи део онога што ћемо радити овај семестар смањује не за математику, а свакако не да аритметике, пер се, али стварно на само логику и пажљивог размишљања. И тако ова веза да се рачунарска наука је дуго имао, посебно на високом нивоу школе, са математиком, је мало заблуду. Јер већина програма које ћемо писати, заиста су врста вишем нивоу и фокусирати се на решавање проблема који, Наравно, може да користи неки сабирање, одузимање, и разне математичке формуле или слично, али на крају крајева, то је о чему размишљам, а не Само спровођење онога што сте можда урадили на као ТИ калкулатор у средњој школи. Дакле, са тим рекао, хајде сада да радимо нешто са овим математички оператори који тако постоје да можемо путовање преко неке од основних аспеката програма, или у овај случај Ц. Дакле, постоје, као што ЦС50 библиотека предложио, а данас ми само користимо ГетСтринг - и у тренутку можда једна функција - али постоје различите врсте података у рачунару. На крају дана, рачунари знају само 0с и 1с. Али сећам се да је прошле седмице разговарали смо о бинарном систему у представљању бројева, попут броја 0 и 1 и 2, све начин на до 8, као у Нате је видео. А онда можемо рачунати много више као што смо урадили на бини. Али, ако желите да представљају не само бројеве већ слова, ми, људи, морају да дођу до неке произвољне конвенцијама, при чему ако на крају дана сви мој компјутер је је способност да се изразе и 0с 1с, па би било боље да почети стандардизовање образаца 0с и 1с који представљају различите ствари. Образац 0с и 1с који представља писмо а. Обрасци 0с и 1с који представљају слово Ж. Обрасци 0с и 1с који представљају плава боја, или црвена, или слично. Ми треба да користимо све ово 0с и 1с да се изразим различитим контекстима, на различите начине који нису нужно нумерички. Дакле, у смислу представљања, Ц има различите типове података, и видели смо једну од ових до сада. Видели смо инт, а обавештење шта не на екрану сада је ниска. Стринг не, у ствари, постоје у Ц. Опет, то је поједностављење смо представљајући за први пар недеља. Цхар је индивидуални карактер. Пловак је реалан број, са децималом и бројева на лево и десно од њега. Двоструко је оно, за оне са леђа претходног позадини? Дакле, двоструки је двоструко нешто. Додаје дупло више прецизности. Дакле, шта то значи? Дакле, у сваком од ових случајева, свет има неку врсту стандардизованог колико битова се користи за представљање свака од ових ствари. Дакле, ако сте гледали Нате је АСЦИИ видео већ за део од псет 0, или касније ове недеље да ће, вероватно ћете знати да АСЦИИ - карактер представе - користити колико бита? А можда чак сећате из нашег демо прошле недеље како многи људи су били на сцени. Дакле, 7 или 8, обично. Дакле генерално 8, а ту је и нешто што се зове као продужена АСЦИИ која користи свих 8 бита, уместо 7. Али у целини, ми разговарамо силама 2, тако да у овом случају, 8. Дакле, знак у програмском језику је обично 8 бита. Дакле, инт је генерално 32 бита. Пловак је генерално 32 бита. Двапут је генерално 64 бита. А шта то значи? То значи да могу да представљају већи број, или у случају реалних бројева, можете имати много више бројева након децимално место. Много више прецизности, у том случају. Сада је, нажалост, дуго дуго име. Дакле, ту је инт који је 32 бита. Постоји дуга који је, Јок, 32 бита. И дуго дуго што је 64 бита. Међутим, неки од њих су контекст осетљиви, то зависи какав компјутер имате. Дакле, у принципу, ми ћемо навести у домаћи или у квизу, када је заиста битно. Али поента је да је све то другачије представништва овде. Дакле, хајде да зароните у ствари у програм. Уместо пишем ово од нуле, пусти ме само напред и отворите из изворног кода данашњег - све што је мрежи - ако желите да пртљати око мрежи, или повратак на Среда са апаратом на рачунару, упутство за који ће повезати на почетној страници се курс је. Ево супер једноставан програм. Али има мало нешто ново на врху који нисмо имали раније. Много плавих линија текста. Дакле, ови плаве линије представљају коментаре. Дакле, сасвим је корисно у програму да би могао да напише неки коментари за себе, или да колегама или пријатељима, или наставних момци, та врста опише шта се дешава у овај фајл, али немају никакве везе са Ц кодом самог. Нема никакве везе са програмом функционално, то је само естетика. Дакле, начин на који то радите у Ц је обично почети свој Коментари са / * и завршите ваше коментаре са * /. А ако сте заиста анални и воле да скрене врсте слика, онда бих ставио цео много звезда, ти ћеш направити кутијица овако. Али ништа од тога питања. Једина ствар која је битна је прва и последња. То је оно што се зове мулти-линијски коментар. И то је само људска конвенција често раде звезде и кутија ствари у овако ако имате много слободног времена. Дакле, након што сте написали у неким коментарима, углавном, долазе стварне храбрости програма. Ево наша позната # инцлуде. И само брзо, ово је потребно или није потребно? ПУБЛИКА: Неопходан. ДАВИД Малан: Па то заправо није потребно. Па зашто, међутим, то није неопходно? Значи, нема принтф. Заиста. Све што радимо у овом програму је математика. Тако да заиста могу избрисати то. Тако да не морате увек да обухвати ништа врх програма. Дакле, хајде да поједностави мало. А сада погледајмо шта овај програм ради. Није много интересовања. инт к = 1. Па, шта је ово радиш? Па, мислим да назад у менталном моделу од раније. Левој страни овог израза не шта? Направите простор за цео број. Па колико простора? Па, ми смо се десити да сада знамо да је 32 бита. Раније, ниска је технички 32 бита, али више о томе у будућности. Али инт је 32 бита. Дакле, овај израз са леве стране овде, инт само каже хеј оперативни систем, дајте ми 32 бита РАМ - иначе познат као 4 бајта РАМ - тако да ја могу ставити цео у том простору. Шта цео сте хтели да ставимо? Па, само број 1. инт добија 2, ради исту ствар, иако број је већи, у смислу њене величине. Сам број је још увек само 32 бита. То је само образац бита разликује представљају 1 наспрам 2. инт з сада каже да ми још 32 бита, назовимо га з и стави сума од 1 и 2 у тамо. Тако да је сада з је вероватно складиштење вредност 3, а затим се вратите 0. Сада овај програм, то ништа интереса? Тако да заправо не ради ништа занимљиво, у сваком У том смислу, јер зашто? То радиш неке математику. Али није се враћа одговор, у реду. Она се враћа 0. Није штампање одговор. Дакле, овај програм је у основи безвредно, јер је то стоји сада. То раде неки посао. То ће потрајати неколико секунди, или микросекунди, за трчи, али није то стварно радиш ништа корисна за човека. Дакле, хајде да ствари сада отвара матх2, где сада ја сам заправо штампање резултата. Дакле, ово такође може закључити из наших претходних примера. Ако желим да урадим неке једноставне математике, инт к = 1, и = 2. з 1 плус 2 сада. Шта ће ово да штампате очигледно? Само 3. Тако брзо разум провери. Дозволите ми да се уселите у овом директоријуму. Тако цд соурце1м. Дозволите ми да иде напред и да откуцате матх2. Нема порука о грешци изашао, па ћу покренути - Не а.оут--пусти ме води матх2. Ентер. И заиста, одштампан 3. Па хајде да погледамо варијанту овога. У матх3.ц, сада имамо овде овај пример. Тако Ова је некако интересантно. Дакле, у овом овде, одговор ће добити 1 подељено са 10, и приметио сам прогласио га као флоат. Зашто желим да то буде пловак? Па, то је делић. То ће бити прави број. Дакле, то ће бити 0,1, надамо - 10%, у овом случају. А шта сам онда желим да одштампате? Па, ово одговор. Па, хајде да зафркавати ово осим првог. Дакле, на левој страни, прогласи плутају, назовимо га одговорим. На десној страни, не 1 подељен 10 и ставио одговорите унутрашњост променљиве. Сада, ова линија изгледа мало више криптичан. Али приметите неке познате функције. % Значи долази овде Чувар места. ф знаци ево плутајуће тачке вредност, само прави број, нешто са децималном тачком. 0.2 значи шта? Свако ко зна из претходног искуства? Две децимале. Тако да нисам видео ово раније, али то је само начин остваривања мало већу контролу над принтф и изрека немој ми дати 30 бодова после децималног зареза, уместо дај само 2. А онда идемо напред и покрените ово. Тако да математику 3, а сада пусти ме покренути математике 3, Ентер. А то није у реду. Изгледа да смо наишли на нашу прву истинску бубу. Па, можда ја само не изгледа довољно близу. Зато ме пусти да идем горе, и пусти ме пут 20 децималу поинт места тамо. И дозволите ми да састави ова, матх3, трчи. Сигуран 1 подељено са 10 није 0. Дакле, шта се дешава? Па добро, тако да заправо нема везе са овим. То је добра мисао. То је заиста само случајност да ово радимо. Али само да докаже да то није то, ја ћу врати нешто случајно. Не радите ово код куће, јер то је само погрешно. Али, нека матх3, дозволите ми да га покрене. Дакле, нема никакве везе са оним што ја враћам, само мора да се уради са оним што сам штампа. Али сам га чуо овде. Шта? ПУБЛИКА: Дакле, морамо да пишемо бројеве у подела као - ДАВИД Малан: Добро добро. Зато морамо да напише бројеве који учествују у Подела овде као плутајуће тачке се вреднује. Дакле, проблем је као и раније: Ц, као и много језици, има различите типове података. А ти типови података, на пример, су ови овде. А типови података у питању овде, кад сам тип 1 и онда сам Тип 10, су вероватно оно што типови података? Дакле, то је вероватно инт, зар не? То дефинитивно није пловак, јер нема децималне тачку или било шта слично. Па стварно, имам инт подељен на инт. Дакле занимљива ствар у вези математике и рачунара је да ако радите поделу користећи бројеве - 1 подељено са 10, да је 0,1. Међутим, када сте подели цео број од цео број, одговор мора да буде цео број само зато што, за сада. А шта је онда импликације? Па, ако је одговор 1 дели 10 износи 0,1, што рачунар ће да уради је да немам појма како да представљају 0,1, јер је то флоатинг поинт вредност, не интегер; то ће одсећи све после децимална тачка и само вам показати 0 на почетку. А чињеница да се то штампа као плутајуће тачке вредност, то је само естетска ствар. То је зато што сам терам рачунар да штампа ово као плутајући тачке вредност. И заиста сам га прогласио као пловак, али математика је дешава овде. Зато ме пусти да ствари поправити у једном прилично лак начин. Зашто не само до 10.0 и 1.0, мада технички бих могао извући само ради један од тих. Сада пусти ме напред и да матх3. Дозволите ми да иде напред и сада води матх3, Ентер. И сада, ох дечко. Сада имамо потпуно нови проблем. Тако да је боље, зар не, ми смо ближе до 0,1, али шта јасно је да је погрешно овде? Осим смо лагао за године, зар не? 1 подељено са 10 заправо није сасвим 0,1, па шта је стварно дешава овде? Па можеш логично врста разума кроз ово. Ако рачунар има само коначан износ РАМ меморије за почетак са, и заиста само компјутер користи 32 бита за плутајуће тачке вредност, стоји да размишљају да са коначан број битова, 32 у овом случају, да, можете представљају доста ствари. То је заправо четири милијарде различите вредности могу бити заступљена са 32 бита, 2 до 32, али је и даље ограничен. Дакле, проблем је ту бесконачан број стварно бројеви, десно. Ако ми дате прави број, увек могу да нађем једну нешто веће, нешто мање, од само прилагођавања Бројеви који су после децималног зареза. Дакле, ако немате неограничен број битова, ти не може представљати бесконачно број реалних бројева. Тако да је ово својствена непрецизност у рачунарима, као и Ово постаје спотаћи све време иу најједноставнији програми као што је овај. Али у неким веома реалним проблемима као добро. У ствари, хајде да на тренутак само да погледате нешто што се заиста догодило у стварности. Ми ћемо гледати само први пар минута, а онда ћемо објавити на интернету линк. Али ово је доказ шта може да крене наопако, сасвим искрено, у веома трагичан начин када су ове ствари нису цењена или само ми, људи праве грешке када је у питању ове врсте детаље имплементације савремених рачунара. [ВИДЕО ИГРЕ] -Ми се сада вратити на инжењерске катастрофе на савременим чудима. Рачунари. Сви смо дошли да прихвати често фрустрирајућих проблема да идем са њима. Душко, вируси, и софтвер глитцхес су мале цене за плати за практичност. Али у хигх-тецх и високе брзине војске и простора програм апликације, најмањи проблем може да буде увеличао у катастрофу. Дана 4. јуна 1996, научници спремни да покрену посаде Аријана 5 ракета. Она је носила научне сателите намењене успоставити прецизно како магнетно поље Земље интеракцији са соларним ветровима. Ракета је изграђена за Европске свемирске агенције и подигне из свог објекта на обали Француске Гвајане. -Око око 37 секунди у лету, прво Приметио је нешто крене наопако, да су млазнице су преклопити на начин који заиста не би требало. Око 40 секунди након лета, јасно возила био је у невољи, а то је када су донели одлуку да уништи га. Опсег безбедности официр са огромним храбрости притисне дугме, дигли ракету пре него што би могао да постане штетно по јавну безбедност. -Ово је прво путовање у Ариане 5, и њен уништавања је дошло због грешке уграђен у ракете софтвер. -Проблем на Ариане био је да је број који захтева 64 бита да изразе и хтели су да га конвертујете на 16 бита броја. Претпостављали су да број никада није био ће бити веома велика, да је већина тих цифара у 64 бита броја су 0с. Они су били у праву. -Немогућност једног софтверског програма да прихвате врста броја генерише још била у корену неуспех. Развој софтвера је постао веома скуп део нова технологија. Аријана 4 Ракета је била врло успешна. Толико од софтвера креираног за њега је такође користио у Ариане 5. -Основни проблем је да Аријана 5 је био бржи, убрзан брже. И софтвер није чинио за то. -Уништавање ракета била огромна финансијска катастрофа, све због грешке минута софтвера. Али ово није био први пут да податке о конверзијама проблеми су муче савремене ракете технологију. ДАВИД Малан: Ми ћемо то оставити на томе. Али то је доказ колико је могуће чак и неки ови најнижи ниво детаља који смо почели да истражују данас. Дакле, чак и ти мало растројен можда неки од синтакса и арцаненесс овде, схватили да преко Термин ћемо се фокусирати само на колико је могуће то је да светови далеко изван ЦС. Ми ћемо вас видети у среду.