1 00:00:00,000 --> 00:00:03,290 >> [Музички] 2 00:00:03,290 --> 00:00:04,989 3 00:00:04,989 --> 00:00:06,280 ЈАСОН Hirschhorn: Во ред, сите. 4 00:00:06,280 --> 00:00:07,460 Добредојде во вториот дел. 5 00:00:07,460 --> 00:00:10,840 Ова е CS50, нашите многу прв супер секција. 6 00:00:10,840 --> 00:00:13,700 Како што сите знаеме, следната недела редовни делници ќе започне, 7 00:00:13,700 --> 00:00:15,580 но оваа недела ние сме сите заедно. 8 00:00:15,580 --> 00:00:17,730 >> Постои себе. 9 00:00:17,730 --> 00:00:18,840 Моето име е Џејсон. 10 00:00:18,840 --> 00:00:20,630 Јас сум професор по компјутерски науки. 11 00:00:20,630 --> 00:00:23,910 Имаме Анди, кој е на чело на ТА CS50. 12 00:00:23,910 --> 00:00:27,630 И Scaz, професорот Брајан Scassellati, тој е професор по компјутерски науки. 13 00:00:27,630 --> 00:00:30,970 >> Ние сме на CS50 шефовите на Јеил. 14 00:00:30,970 --> 00:00:34,992 Секогаш може да се е-мејл ни heads@cs50.yale.edu. 15 00:00:34,992 --> 00:00:35,950 Ние ќе бидеме на предавањата. 16 00:00:35,950 --> 00:00:37,547 Ние ќе бидеме во работното време. 17 00:00:37,547 --> 00:00:40,130 Ако има некогаш нешто што може да направи за вас, нешто што треба, 18 00:00:40,130 --> 00:00:42,610 се чувствуваат слободни да допрат до нас. 19 00:00:42,610 --> 00:00:44,140 >> Па што ќе правиме денес? 20 00:00:44,140 --> 00:00:47,790 Или пред тоа, што е доаѓа оваа недела? 21 00:00:47,790 --> 00:00:52,620 Па канцеларија часа се понеделник, вторник, Среда и четврток, 8:00-11:00. 22 00:00:52,620 --> 00:00:54,770 Има еден распоред на веб-сајтот. 23 00:00:54,770 --> 00:00:57,830 >> Делови, како што рековме, почнуваат следната недела. 24 00:00:57,830 --> 00:01:01,390 И ќе дознаеш што оваа недела време вашиот дел е, кој ден е, 25 00:01:01,390 --> 00:01:03,350 и кои се твоите ТА е. 26 00:01:03,350 --> 00:01:08,610 >> Проблем Постави 1 се должи во четврток во пладне, во петок на пладне со крајот на денот. 27 00:01:08,610 --> 00:01:10,817 Да, може да има девет доцна дена. 28 00:01:10,817 --> 00:01:12,150 А има и девет проблем сетови. 29 00:01:12,150 --> 00:01:14,320 И може да се користи само еден доцна дневно по проблемот сет. 30 00:01:14,320 --> 00:01:17,930 Да, всушност, сите проблеми множества се должи петокот на пладне. 31 00:01:17,930 --> 00:01:18,550 Тоа е се. 32 00:01:18,550 --> 00:01:20,400 Сите дека деталите се на наставната програма. 33 00:01:20,400 --> 00:01:22,360 >> Секој петок, имаме ручеци. 34 00:01:22,360 --> 00:01:25,230 Ние сакаме да се направи овој голем Курсот се чувствуваат малку помали. 35 00:01:25,230 --> 00:01:26,580 Па вие сте добредојдени да RSVP. 36 00:01:26,580 --> 00:01:30,050 Бесплатен ручек со колеги соучениците на персоналот. 37 00:01:30,050 --> 00:01:34,120 cs50.yale.edu/rsvp. 38 00:01:34,120 --> 00:01:36,940 >> Сите овие работи кои Имам на екранот, 39 00:01:36,940 --> 00:01:43,330 и повеќе, можете да најдете cs50.yale.edu или cs50.harvard.edu, ако одите на Харвард 40 00:01:43,330 --> 00:01:46,800 и се гледа овој онлајн. 41 00:01:46,800 --> 00:01:50,240 >> Исто така и на оние веб-сајтови, постојат еден тон на ресурси за вас. 42 00:01:50,240 --> 00:01:54,610 Секој предавање не само што има видео од предавањето, но, исто така, забележува. 43 00:01:54,610 --> 00:01:58,184 Некој ќе се види на предавање и да се забележува за вас. 44 00:01:58,184 --> 00:02:00,100 Така да само да се плати внимание за време на предавања, 45 00:02:00,100 --> 00:02:03,970 или можете да го користите на нивните забелешки / нашите белешки за да се дополни вашата белешки. 46 00:02:03,970 --> 00:02:04,987 >> Постојат слајдови онлајн. 47 00:02:04,987 --> 00:02:07,320 Изворот code-- сето Дејвид оди во текот на предавањето, 48 00:02:07,320 --> 00:02:09,979 или Scaz оди преку предавање, дека изворниот код е достапен онлајн 49 00:02:09,979 --> 00:02:11,750 како и, како што е како јас, спомнат видеа. 50 00:02:11,750 --> 00:02:14,257 >> Делови, исто така, сите ќе се снима. 51 00:02:14,257 --> 00:02:15,840 Сите оние слајдови ќе бидат достапни. 52 00:02:15,840 --> 00:02:18,190 Сето тоа законик ќе бидат достапни за вас. 53 00:02:18,190 --> 00:02:22,440 Постојат шорцеви на веб-сајтот каде што Членови на персоналот CS50 трошат пет до 10 54 00:02:22,440 --> 00:02:24,130 минути одење преку темите за вас. 55 00:02:24,130 --> 00:02:26,750 Некои од оние кои веќе сте проблем се среќаваат во сетови. 56 00:02:26,750 --> 00:02:30,430 >> Работното време, како што рековме, во понеделник преку четврток, 8:00-11:00. 57 00:02:30,430 --> 00:02:32,600 CS50 Студија е фантастичен ресурс. 58 00:02:32,600 --> 00:02:37,100 Постојат проблеми пракса, мостра слајдови, познати грешки 59 00:02:37,100 --> 00:02:40,920 дека студентите сакаат да наиде на, за секоја тема во суштина ние 60 00:02:40,920 --> 00:02:42,650 ќе бидат опфатени во овој курс. 61 00:02:42,650 --> 00:02:46,350 >> И, конечно, на овој слајд во најмала рака, Reference50 62 00:02:46,350 --> 00:02:49,690 кој ви дава информации на сите функции C 63 00:02:49,690 --> 00:02:53,160 некогаш би можеле да се надеваат дека можеби за употреба и многу, многу повеќе. 64 00:02:53,160 --> 00:02:55,690 >> Повторно, кои точка точка точка на на дното на екранот 65 00:02:55,690 --> 00:02:59,990 е да се покаже дека има дури и повеќе ресурси за овие две интернет страници: 66 00:02:59,990 --> 00:03:04,270 cs50.yale.edu, cs50.harvard.edu. 67 00:03:04,270 --> 00:03:05,840 >> Значи, она што правиме денес? 68 00:03:05,840 --> 00:03:08,970 Па, прво јас ќе одам да се даде ќе се погледне на ресурси. 69 00:03:08,970 --> 00:03:10,010 Веќе не оној. 70 00:03:10,010 --> 00:03:11,590 Погледне во нас. 71 00:03:11,590 --> 00:03:16,430 >> Сега, ние ќе треба да се премине типови на податоци и операторите во В. 72 00:03:16,430 --> 00:03:19,990 Анди тогаш ќе дојде до тука и одиме во текот на библиотеките во C, printf () 73 00:03:19,990 --> 00:03:24,570 функција со која веќе сте познати или брзо ќе стане многу 74 00:03:24,570 --> 00:03:25,530 познато. 75 00:03:25,530 --> 00:03:27,810 И ти исто така ќе одам во текот conditionals и петелки. 76 00:03:27,810 --> 00:03:30,900 >> А потоа, конечно, Scaz ќе одиме во текот проект на CS50. 77 00:03:30,900 --> 00:03:34,250 Ако не сте го потонаа во веќе во Проблем Постави 1, 78 00:03:34,250 --> 00:03:37,060 како и начинот на користење на терминал и корисни команди 79 00:03:37,060 --> 00:03:42,280 а потоа да ви даде некои демо снимки и кодирање пракса во проект на CS50. 80 00:03:42,280 --> 00:03:45,130 >> Пред јас да се фрламе во овој Содржината на оваа страна, 81 00:03:45,130 --> 00:03:46,770 Дали некој има било какви прашања досега? 82 00:03:46,770 --> 00:03:53,190 83 00:03:53,190 --> 00:03:54,030 Одлично. 84 00:03:54,030 --> 00:03:54,950 ВО РЕД. 85 00:03:54,950 --> 00:03:55,810 Менување на брзините. 86 00:03:55,810 --> 00:03:58,760 >> [МЕНУВАЊЕ брзини] 87 00:03:58,760 --> 00:04:03,070 >> Тоа беше мене менувањето запчаници во прирачник автомобил. 88 00:04:03,070 --> 00:04:10,920 Па типови на податоци во C, вие не само да имаат променлива x и таа да биде на линија 10, 89 00:04:10,920 --> 00:04:17,170 цел број, а можеби и број 1, на линија 20, децимален број 10.5, 90 00:04:17,170 --> 00:04:20,500 а потоа и неколку линии подоцна стринг, сакам CS50. 91 00:04:20,500 --> 00:04:25,052 >> Во C, променливи може да биде само една работа, а само една работа. 92 00:04:25,052 --> 00:04:26,510 И така треба да им се даде типови. 93 00:04:26,510 --> 00:04:28,780 И од оваа страна, ние имаат листа на видови. 94 00:04:28,780 --> 00:04:32,000 Постојат знаци, кои отстои карактери. 95 00:04:32,000 --> 00:04:36,850 Па тоа е една буква А, Б, Ц, Д. Тоа може да биде и просторот, 96 00:04:36,850 --> 00:04:40,290 или кои можат, исто така, да биде нова линија карактер. 97 00:04:40,290 --> 00:04:45,030 >> Постојат цели броеви, кои се само броеви, целата numbers-- или цели броеви 98 00:04:45,030 --> 00:04:47,130 rather-- но без децимали. 99 00:04:47,130 --> 00:04:49,790 >> За децимали, имаме броеви со подвижна запирка. 100 00:04:49,790 --> 00:04:53,200 Броеви со подвижна запирка се броеви со децимали. 101 00:04:53,200 --> 00:04:58,160 >> Потоа, тука се копнее, кои се суштина веќе цели броеви. 102 00:04:58,160 --> 00:05:01,160 Ќе забележите дека долго е 8 со оглед на int е 4. 103 00:05:01,160 --> 00:05:02,640 Јас ќе дојдеме до тоа во една секунда. 104 00:05:02,640 --> 00:05:07,390 Тоа е затоа што копнее да се сместат дури повеќе цели броеви од еден цел број може да се сместат. 105 00:05:07,390 --> 00:05:10,100 Двојно е долго плови. 106 00:05:10,100 --> 00:05:12,460 >> И, конечно, имаме низа, која е еден вид 107 00:05:12,460 --> 00:05:14,430 што веројатно сте го користеле порано. 108 00:05:14,430 --> 00:05:21,100 Ако вклучиш хаштагот # includeCS50.h во вашиот изворен фајл, 109 00:05:21,100 --> 00:05:23,170 тогаш можете да го користите стринг тип. 110 00:05:23,170 --> 00:05:25,560 Тоа не е, всушност, се вградени во В. 111 00:05:25,560 --> 00:05:27,760 >> Постојат неколку други видови, како и. 112 00:05:27,760 --> 00:05:32,900 Но овие се главните оние со која ќе се користи и да се сретне. 113 00:05:32,900 --> 00:05:36,210 C е, повторно ги спомнав, секој што variable-- 114 00:05:36,210 --> 00:05:38,620 може да биде само еден тип и само еден тип. 115 00:05:38,620 --> 00:05:42,890 Тоа е затоа што C е статично отчукува јазик, што е спротивно 116 00:05:42,890 --> 00:05:45,780 да се динамички отчукува јазици каде што ако се создаде променлива 117 00:05:45,780 --> 00:05:50,081 можете да го промените тоа што се чуваат во тоа како ви одат на во вашата програма. 118 00:05:50,081 --> 00:05:52,580 Овде оддесно страна, имам различни големини 119 00:05:52,580 --> 00:05:57,440 од овие типови на податоци во бајти. 120 00:05:57,440 --> 00:05:59,710 Па еден лик е 1 бајт. 121 00:05:59,710 --> 00:06:01,250 Тоа е 8 бита. 122 00:06:01,250 --> 00:06:05,530 А тоа значи, бидејќи 8 битови има осум 0-ти и 1S. 123 00:06:05,530 --> 00:06:08,280 Видовме оние демонстрации во првата недела, со што бинарни светилки. 124 00:06:08,280 --> 00:06:15,680 >> Со 8 бита или 1 бајт, можеме да претставуваат броеви од 0 до 255. 125 00:06:15,680 --> 00:06:16,180 Право. 126 00:06:16,180 --> 00:06:18,770 Ако сите 8 бита се 0, тоа е 0. 127 00:06:18,770 --> 00:06:23,640 Ако првиот бит е 1, кој е број една, и така натаму, па сè до 255. 128 00:06:23,640 --> 00:06:28,290 А тоа е зошто за ликовите можеш во суштина до 255 од нив, 129 00:06:28,290 --> 00:06:31,210 но тоа не е доволно за да се покријат сите ликовите ние треба да ги користите. 130 00:06:31,210 --> 00:06:38,060 >> Целите броеви, може да имате 0 и тогаш имате 2 до 32 минус 1. 131 00:06:38,060 --> 00:06:40,340 Тие се како многу опции имаш за цели броеви. 132 00:06:40,340 --> 00:06:44,780 >> За долго, имате 0 на 2 до 64 минус 1. 133 00:06:44,780 --> 00:06:48,860 Па имате многу, многу, повеќе опции за копнее. 134 00:06:48,860 --> 00:06:54,220 >> Жици, тоа е знак прашалник бидејќи тоа е cliffhanger за подоцна. 135 00:06:54,220 --> 00:06:55,000 Је. 136 00:06:55,000 --> 00:06:56,350 Би можел да кажам секого на работ на своите места, 137 00:06:56,350 --> 00:06:57,450 како што е тоа знак прашалник? 138 00:06:57,450 --> 00:06:58,390 Тоа е cliffhanger. 139 00:06:58,390 --> 00:07:02,340 Ние на крајот ќе ги покрие со големина на жици и се зборува повеќе за жици. 140 00:07:02,340 --> 00:07:04,692 Поради низа е всушност еден од обука тркала 141 00:07:04,692 --> 00:07:06,400 ќе стави на во овој Се разбира на почетокот 142 00:07:06,400 --> 00:07:09,700 и потоа ги тргнеме подоцна на, бидејќи жиците во C 143 00:07:09,700 --> 00:07:13,320 се всушност покажувачи до карактер низи. 144 00:07:13,320 --> 00:07:15,810 Но, повторно, тоа е cliffhanger за подоцна. 145 00:07:15,810 --> 00:07:18,890 Пред да се пресели на било какви прашања, коментари, се однесува за овој слајд? 146 00:07:18,890 --> 00:07:25,800 147 00:07:25,800 --> 00:07:26,630 >> ВО РЕД. 148 00:07:26,630 --> 00:07:30,330 Јас мора да биде фантастичен explainer. 149 00:07:30,330 --> 00:07:33,210 Исто така, кога сте програмирање, сте ќе треба да ги користат овие оператори. 150 00:07:33,210 --> 00:07:36,730 Навистина едноставни знаци дека може да се направи едноставна операции, со кои ти си веројатно 151 00:07:36,730 --> 00:07:38,340 веќе многу познато. 152 00:07:38,340 --> 00:07:42,580 >> На пример, на десната страна страна, гледаме додадете. 153 00:07:42,580 --> 00:07:44,640 За да додадете, вие само направете знакот плус. 154 00:07:44,640 --> 00:07:46,850 И така може да имаат две променливи x и y. 155 00:07:46,850 --> 00:07:48,810 Можете да го направите x + y во вашиот код. 156 00:07:48,810 --> 00:07:52,790 Можеби сакате to-- велиш имаат број 7 и 3, 157 00:07:52,790 --> 00:07:55,780 сакате да ја зачувате кој во променлива наречена Вкупно еден. 158 00:07:55,780 --> 00:08:03,010 Можете да го направите за типот int, простор Сè на сè, името на променливата, = 7 + 3; 159 00:08:03,010 --> 00:08:05,780 >> Што ќе се таа продавница во сума? 160 00:08:05,780 --> 00:08:07,190 Некој? 161 00:08:07,190 --> 00:08:09,270 Ако имав во збирот = 7 + 3. 162 00:08:09,270 --> 00:08:10,437 Она што ќе бидат зачувани во сума? 163 00:08:10,437 --> 00:08:11,520 Можете само да го викне. 164 00:08:11,520 --> 00:08:12,120 ПУБЛИКАТА: 10. 165 00:08:12,120 --> 00:08:12,995 >> ЈАСОН Hirschhorn: 10! 166 00:08:12,995 --> 00:08:14,870 Тоа е точно. 167 00:08:14,870 --> 00:08:19,520 А како е во износ = 7-3, Јас само ги користат тие цртичка знак. 168 00:08:19,520 --> 00:08:20,871 Она што се случува да се чуваат? 169 00:08:20,871 --> 00:08:21,370 ПУБЛИКАТА: 4. 170 00:08:21,370 --> 00:08:22,203 ЈАСОН Hirschhorn: 4. 171 00:08:22,203 --> 00:08:25,770 Сумата е веројатно во ред за името таа променлива, но 4 ќе бидат складирани. 172 00:08:25,770 --> 00:08:31,890 >> Да се ​​размножуваат во C, користете малку Ѕвезда карактер, кои не ги користите на х. 173 00:08:31,890 --> 00:08:35,990 Да се ​​подели, користете Напаѓач Не црта симбол на поделбата. 174 00:08:35,990 --> 00:08:39,580 И да modulo, користете го знакот за процент. 175 00:08:39,580 --> 00:08:47,900 >> Па да речеме сакам да го видам int z = 7% 3, што ќе бидат зачувани во z? 176 00:08:47,900 --> 00:08:51,250 Значи, тоа е во суштина прашуваат што се modulo направам? 177 00:08:51,250 --> 00:08:52,750 Дали некој знае што прави modulo? 178 00:08:52,750 --> 00:08:53,940 Је. 179 00:08:53,940 --> 00:08:54,870 y 4. 180 00:08:54,870 --> 00:08:56,120 ЗВУЧНИЦИ 1: Тоа е остатокот. 181 00:08:56,120 --> 00:08:58,369 ЈАСОН Hirschhorn: Тоа е остатокот кога ќе се подели. 182 00:08:58,369 --> 00:09:02,790 Значи 7 поделено со 3 е 2 остатокот 1. 183 00:09:02,790 --> 00:09:04,690 Па 1 ќе бидат складирани. 184 00:09:04,690 --> 00:09:06,970 >> Што направи одземање, но тоа е како тоа функционира. 185 00:09:06,970 --> 00:09:09,140 Тоа е она што на операторот на modulo прави. 186 00:09:09,140 --> 00:09:12,360 Таа ги зема бројот што го дели со друг број и се враќа на вас 187 00:09:12,360 --> 00:09:14,590 остатокот. 188 00:09:14,590 --> 00:09:19,770 Значи, повторно, 7% 3 ти дава 1, бидејќи 7 поделено со 3 е 2 остатокот 1, 189 00:09:19,770 --> 00:09:21,650 и се враќа на остатокот. 190 00:09:21,650 --> 00:09:24,470 >> Она што за да се вратиме до еден чекор кон таа поделба знак. 191 00:09:24,470 --> 00:09:29,194 Ако сум го правела 7 / поделено со 3 прави некој знае што тој ќе се врати? 192 00:09:29,194 --> 00:09:30,090 >> ЗВУЧНИЦИ 2: 2. 193 00:09:30,090 --> 00:09:32,240 >> ЈАСОН Hirschhorn: Зошто 2 а не 2.333? 194 00:09:32,240 --> 00:09:34,560 >> ЗВУЧНИЦИ 2: Мислам дека тоа намалување на надвор по цел број. 195 00:09:34,560 --> 00:09:36,310 ЈАСОН Hirschhorn: Значи тоа е точно. 196 00:09:36,310 --> 00:09:39,880 Во C, ако се направи поделба на два цели броја 7 поделено со 3, 197 00:09:39,880 --> 00:09:43,430 го добива одговорот кој во овој случај 2,3333 засекогаш 198 00:09:43,430 --> 00:09:47,080 и утврди дека на децимална точка и рифови се исклучи по децималната 199 00:09:47,080 --> 00:09:49,240 и тоа само ќе се враќа 2. 200 00:09:49,240 --> 00:09:51,120 >> Па ако сум го правела 8 поделено со 3. 201 00:09:51,120 --> 00:09:54,010 Кои, всушност, знаеме што да се врати 2.666, 202 00:09:54,010 --> 00:09:57,050 но тоа рифови се исклучени во децималниот, сето тоа truncates, 203 00:09:57,050 --> 00:09:58,640 и само се враќа на вас 2. 204 00:09:58,640 --> 00:10:02,090 Така 6 поделено со 3, 7 поделени за 3, 8 поделено со 3, 205 00:10:02,090 --> 00:10:04,840 сите ќе се врати за вас 2. 206 00:10:04,840 --> 00:10:08,770 >> Дали некој знае, или се погоди, за тоа како би можел да се всушност 207 00:10:08,770 --> 00:10:10,790 целосниот одговор ако сакам дека децимални? 208 00:10:10,790 --> 00:10:13,120 209 00:10:13,120 --> 00:10:13,620 Је. 210 00:10:13,620 --> 00:10:14,152 Само напред. 211 00:10:14,152 --> 00:10:15,110 ЗВУЧНИЦИ 3: Употреба плови? 212 00:10:15,110 --> 00:10:16,942 ЈАСОН Hirschhorn: Што сакаш да кажеш? 213 00:10:16,942 --> 00:10:19,786 ЗВУЧНИЦИ 3: Затоа што се вели во плови по броеви [Беззвучен] 214 00:10:19,786 --> 00:10:22,900 215 00:10:22,900 --> 00:10:23,900 ЈАСОН Hirschhorn: Добро. 216 00:10:23,900 --> 00:10:26,100 Значи, тоа е точно. 217 00:10:26,100 --> 00:10:28,440 7 е цел број. 218 00:10:28,440 --> 00:10:31,690 Но, ако сакав да се претвори дека во голем број со подвижна запирка, 219 00:10:31,690 --> 00:10:34,674 Јас ќе мора да ги чувате дека како 7.0, бидејќи компјутерот 220 00:10:34,674 --> 00:10:37,090 е навистина stupid-- видовме дека со example-- ФБ и Ј 221 00:10:37,090 --> 00:10:38,930 тоа ќе го стори само точно она што ви го кажам. 222 00:10:38,930 --> 00:10:40,846 >> Па ако напишете 7, мислам дека тоа е цел број. 223 00:10:40,846 --> 00:10:43,640 Ако напишете 7.0, иако ние знаеме тие работи се еднакви, 224 00:10:43,640 --> 00:10:45,550 тоа го третира дека како подвижна запирка број. 225 00:10:45,550 --> 00:10:50,441 Значи, ако сте направиле 7,0 поделени за 3, или поделен со 3,0, 226 00:10:50,441 --> 00:10:52,440 што би рекол, во ред, сега ние сме се занимаваат со плови. 227 00:10:52,440 --> 00:10:57,514 Јас ќе се вратам на вас 2.333333 засекогаш. 228 00:10:57,514 --> 00:10:59,930 Но навистина не засекогаш, бидејќи како што видовме, исто така, во предавањето, 229 00:10:59,930 --> 00:11:03,350 овие броеви со подвижна запирка не се сосема прецизни. 230 00:11:03,350 --> 00:11:05,940 >> Па ако не го сакаат тоа децимални, или дел од таа децимални, 231 00:11:05,940 --> 00:11:08,090 тогаш ќе мора да use-- еден од нив мора да биде децимален број 232 00:11:08,090 --> 00:11:11,048 и на компјутерот треба да се разбере дека ова е подвижна запирка сте 233 00:11:11,048 --> 00:11:13,350 кои се занимаваат со тоа, не е цел број. 234 00:11:13,350 --> 00:11:16,760 Било какви прашања на таа табела на десна страна, досега? 235 00:11:16,760 --> 00:11:22,650 Или левата страна, вашиот лево, левата страна. 236 00:11:22,650 --> 00:11:23,264 Је. 237 00:11:23,264 --> 00:11:23,972 ЗВУЧНИЦИ 4: Право. 238 00:11:23,972 --> 00:11:26,216 За само како редовни цели броеви, што би 239 00:11:26,216 --> 00:11:30,230 write-- ќе треба да се напише се плови? 240 00:11:30,230 --> 00:11:31,920 >> ЈАСОН Hirschhorn: Да така. 241 00:11:31,920 --> 00:11:34,400 Па, ако сакате да се создаде променлива која е подвижна запирка, 242 00:11:34,400 --> 00:11:37,020 што треба да се каже плови z еднаква нешто. 243 00:11:37,020 --> 00:11:37,640 >> ЗВУЧНИЦИ 4: Во ред. 244 00:11:37,640 --> 00:11:41,950 >> ЈАСОН Hirschhorn: Но, ако сакав да направи 7 поделено со 3 и се дека децималниот, 245 00:11:41,950 --> 00:11:48,540 Јас би го направил плови z = 7,0 / 3,0; и што ќе ми даде на подвижна запирка 246 00:11:48,540 --> 00:11:49,273 број. 247 00:11:49,273 --> 00:11:50,000 >> ЗВУЧНИЦИ 4: Во ред. 248 00:11:50,000 --> 00:11:56,370 >> ЈАСОН Hirschhorn: Ако го сторив нешто како int z = 7 / за 3, 249 00:11:56,370 --> 00:12:00,856 што ќе ми даде цел број, затоа што тие се сите цели броеви. 250 00:12:00,856 --> 00:12:01,730 Дали тоа има смисла? 251 00:12:01,730 --> 00:12:02,320 >> ЗВУЧНИЦИ 4: Да. 252 00:12:02,320 --> 00:12:02,950 >> ЈАСОН Hirschhorn: Во ред. 253 00:12:02,950 --> 00:12:03,450 Одлично. 254 00:12:03,450 --> 00:12:06,030 Било какви други прашања во врска со тоа на маса? 255 00:12:06,030 --> 00:12:07,220 Навистина? 256 00:12:07,220 --> 00:12:08,380 Јас сум толку возбуден. 257 00:12:08,380 --> 00:12:09,120 ВО РЕД. 258 00:12:09,120 --> 00:12:13,910 >> Па некои други работи што ќе се користи, Честопати во услови или петелки, 259 00:12:13,910 --> 00:12:17,580 се овие видови на operators-- овие видови на Булова изрази. 260 00:12:17,580 --> 00:12:23,140 И како што видовме, == е она што ги користите за да се провери дали две работи се еднакви. 261 00:12:23,140 --> 00:12:28,170 >> Па еве јас сум проверка ако x == y, ајде повторно се претпостави дека x е 7 и y е 3. 262 00:12:28,170 --> 00:12:33,220 Значи, ако сум го напишала 7 == 3, што дека ќе се врати во мене? 263 00:12:33,220 --> 00:12:34,220 Вистински или лажни е тоа така? 264 00:12:34,220 --> 00:12:35,275 >> ПУБЛИКАТА: Неточно. 265 00:12:35,275 --> 00:12:36,150 ЈАСОН Hirschhorn: Во ред. 266 00:12:36,150 --> 00:12:37,370 Се чувствувам како сите може да се добие оваа. 267 00:12:37,370 --> 00:12:39,054 Значи, секој, што би било тоа да се врати? 268 00:12:39,054 --> 00:12:39,720 ПУБЛИКАТА: Неточно. 269 00:12:39,720 --> 00:12:40,130 ЈАСОН Hirschhorn: Лажни. 270 00:12:40,130 --> 00:12:40,850 Одлично. 271 00:12:40,850 --> 00:12:41,930 7 не еднакви 3. 272 00:12:41,930 --> 00:12:44,530 Значи 7 == 3 ќе се врати лажни. 273 00:12:44,530 --> 00:12:50,746 Ти не мора да не се еднакви знак, па ако јас проверуваат 7! = 3, кој што ќе се вратат? 274 00:12:50,746 --> 00:12:51,370 ПУБЛИКАТА: Точно. 275 00:12:51,370 --> 00:12:52,650 ЈАСОН Hirschhorn: Точно. 276 00:12:52,650 --> 00:12:53,200 Одличен. 277 00:12:53,200 --> 00:12:55,990 Некој беше многу решителна во грбот и го цениме тоа. 278 00:12:55,990 --> 00:12:59,070 Тогаш може да има помалку од операторот, помалку од или еднакво на операторот, 279 00:12:59,070 --> 00:13:01,990 поголема од операторот, поголема од или еднакво на операторот. 280 00:13:01,990 --> 00:13:03,490 >> Па уште еден разумност провери. 281 00:13:03,490 --> 00:13:05,660 Ако имав 7 е поголема од или еднакво на 3. 282 00:13:05,660 --> 00:13:06,966 Што би било тоа да се врати? 283 00:13:06,966 --> 00:13:07,692 >> ПУБЛИКАТА: Точно. 284 00:13:07,692 --> 00:13:08,650 ЈАСОН Hirschhorn: Точно. 285 00:13:08,650 --> 00:13:10,050 Да. 286 00:13:10,050 --> 00:13:13,290 Дека задната соба, задната страна од просторијата, фантастично. 287 00:13:13,290 --> 00:13:16,240 Можете да ги комбинирате овие изрази, ако сакате, како и, 288 00:13:16,240 --> 00:13:21,880 со логички и која е && Или логички или кој се || 289 00:13:21,880 --> 00:13:22,800 ||. 290 00:13:22,800 --> 00:13:25,785 Па сега можете да ги тестираат две работите together-- смешно е што? 291 00:13:25,785 --> 00:13:28,250 Зошто е тоа смешно? 292 00:13:28,250 --> 00:13:35,200 >> Па ако сакам, можам да кажам е 7 поголема од 3 и 2 е помалку од 4? 293 00:13:35,200 --> 00:13:37,090 Па, ако е поголема 7 од 3, тоа е вистина. 294 00:13:37,090 --> 00:13:38,400 2 е помалку од 4, тоа е вистина. 295 00:13:38,400 --> 00:13:41,140 Значи целата оваа работа ќе се врати вистина. 296 00:13:41,140 --> 00:13:45,130 >> Ако јас тестирани 7 е поголем од 3 and-- Јас сум само подигање на случајни броеви here-- 297 00:13:45,130 --> 00:13:47,340 4 е помалку од 2, добро, тоа е неточно. 298 00:13:47,340 --> 00:13:49,610 Толку вистински и лажни направи лажни. 299 00:13:49,610 --> 00:13:54,520 И можете да одите и да се комбинираат како многу услови заедно како што би сакале. 300 00:13:54,520 --> 00:14:00,000 >> Дали некој има било какви прашања, коментари, проблеми досега? 301 00:14:00,000 --> 00:14:03,862 И гледам некои од вас преземање на слики на мене на екранот, што јас го цениме. 302 00:14:03,862 --> 00:14:05,070 Се надевам дека, тоа не е Snapchat. 303 00:14:05,070 --> 00:14:06,417 Се надевам дека, тоа е за вашите белешки. 304 00:14:06,417 --> 00:14:08,500 Но, сите овие се случува да бидат достапни на интернет. 305 00:14:08,500 --> 00:14:11,210 Значи, вие не мора да го се земе слики на ова. 306 00:14:11,210 --> 00:14:15,150 Како што веќе напоменав, сè ќе бидат достапни онлајн за вас. 307 00:14:15,150 --> 00:14:15,650 ВО РЕД. 308 00:14:15,650 --> 00:14:17,980 Јас сум за да се добие надвор од сцената, така и никого 309 00:14:17,980 --> 00:14:20,350 сакам да кажам нешто пред да се случи? 310 00:14:20,350 --> 00:14:21,080 Прашања? 311 00:14:21,080 --> 00:14:21,680 >> [Interposing ГЛАСОВИ] 312 00:14:21,680 --> 00:14:22,250 >> ЈАСОН Hirschhorn: Ах, да престане. 313 00:14:22,250 --> 00:14:23,290 Вие момци се премногу убаво. 314 00:14:23,290 --> 00:14:23,790 ВО РЕД. 315 00:14:23,790 --> 00:14:26,520 Одам да означите надвор. 316 00:14:26,520 --> 00:14:27,240 Ајде да одиме. 317 00:14:27,240 --> 00:14:29,570 >> АНДИ Пенг: Ние ќе се направи непријатна микрофон промени сега. 318 00:14:29,570 --> 00:14:32,280 >> ЈАСОН Hirschhorn: Јас сум случува да се земе овој исклучи. 319 00:14:32,280 --> 00:14:33,946 АНДИ Пенг: цениме поддршката, момци. 320 00:14:33,946 --> 00:14:42,250 321 00:14:42,250 --> 00:14:43,180 Можеш ли да ме слушнеш? 322 00:14:43,180 --> 00:14:43,930 Добро е тоа? 323 00:14:43,930 --> 00:14:44,760 Совршен. 324 00:14:44,760 --> 00:14:45,630 Убава. 325 00:14:45,630 --> 00:14:47,490 Дозволете ми да навивам дека во. 326 00:14:47,490 --> 00:14:49,100 ВО РЕД. 327 00:14:49,100 --> 00:14:54,140 Значи, јас сум за да се направи како џин информации шутнат на вас момци во моментов. 328 00:14:54,140 --> 00:14:57,370 И воопшто не се грижи ако сте не по секоја мала линија на она што 329 00:14:57,370 --> 00:14:58,812 Јас сум за да ви покаже. 330 00:14:58,812 --> 00:15:00,770 Како Џејсон рече, сè е целосно онлајн. 331 00:15:00,770 --> 00:15:03,780 Само ние си оди за да се обиде да се воведе сите да концептите покриени 332 00:15:03,780 --> 00:15:05,270 во некои од овие слајдови. 333 00:15:05,270 --> 00:15:06,582 Па само да го следат заедно. 334 00:15:06,582 --> 00:15:09,540 Не се грижи, ако не го разбирам сè; Меѓутоа, ако во било која точка 335 00:15:09,540 --> 00:15:12,820 да се чувствувате изгубени, се подигне вашиот рака, ќе престанеме да, не се грижи. 336 00:15:12,820 --> 00:15:15,060 Кул. 337 00:15:15,060 --> 00:15:19,270 >> Па мислам дека нешто што Давид има веќе споменати во вид на предавања 338 00:15:19,270 --> 00:15:23,240 и Џејсон е вид на алудираше до денес е она што библиотека е. 339 00:15:23,240 --> 00:15:27,510 Па во програмирање, имаме овие работи вика библиотеки. 340 00:15:27,510 --> 00:15:29,690 Каде што, во суштина, сите тие се е само збир 341 00:15:29,690 --> 00:15:32,610 на функции, што е во суштина само кодот што е 342 00:15:32,610 --> 00:15:35,070 веќе се напишани од страна на некој друг што можеме сите 343 00:15:35,070 --> 00:15:36,410 користат во рамките на нашите програми. 344 00:15:36,410 --> 00:15:38,790 >> Па како не нормален библиотека работа, нели? 345 00:15:38,790 --> 00:15:40,030 Ќе влезете вратата на библиотеката. 346 00:15:40,030 --> 00:15:41,890 Ги имате сите овие книги може да се повлече 347 00:15:41,890 --> 00:15:44,590 и можете да имате пристап до информации во рамките на тие книги. 348 00:15:44,590 --> 00:15:45,840 Истото во програмирање. 349 00:15:45,840 --> 00:15:48,820 >> Имаш библиотека која веќе се напишани од други луѓе. 350 00:15:48,820 --> 00:15:51,530 И начинот на кој што може да се, како програмер или студент, 351 00:15:51,530 --> 00:15:55,780 може да се добие пристап до таа библиотека е преку хаштагот # Include. 352 00:15:55,780 --> 00:15:59,720 >> На пример, во C ние имаат три C-- најмногу 353 00:15:59,720 --> 00:16:03,420 најчесто се користи три стандардни C libraries-- на влезно / излезни библиотека, 354 00:16:03,420 --> 00:16:05,540 стрингот библиотека, и математика библиотека. 355 00:16:05,540 --> 00:16:07,610 >> Па во рамките на вашиот прв Двојката проблем сетови, 356 00:16:07,610 --> 00:16:10,940 тие ќе бидат на три дека сте првенствено користење. 357 00:16:10,940 --> 00:16:14,610 Па како Дејвид веќе објаснето во предавањето, 358 00:16:14,610 --> 00:16:17,460 стандардот I / O library, или стандардни влезно / излезни библиотека 359 00:16:17,460 --> 00:16:18,620 го прави токму тоа. 360 00:16:18,620 --> 00:16:23,530 Тоа ви овозможува, во вашиот код, за да го внесете ништо од корисникот и излез кој 361 00:16:23,530 --> 00:16:25,960 на екранот, во суштина тоа печатење на екран. 362 00:16:25,960 --> 00:16:29,990 >> И така секој пат кога ќе го користите која било функција, на пример на printf функцијата () која 363 00:16:29,990 --> 00:16:33,319 ние ќе треба да се оди во текот на следниот слајд, бидете сигурни дека за да го вклучите стандардот I / O 364 00:16:33,319 --> 00:16:36,360 библиотеката или на друго место нема да се да биде во можност да се користи функцијата на printf (). 365 00:16:36,360 --> 00:16:39,110 Затоа што вие, како програмер всушност никогаш не напишал таа функција, 366 00:16:39,110 --> 00:16:41,840 ти си само со користење на некој код друг рок свој код. 367 00:16:41,840 --> 00:16:43,620 >> Дали тоа има смисла сите? 368 00:16:43,620 --> 00:16:44,520 Кул. 369 00:16:44,520 --> 00:16:48,530 >> А потоа ние во суштина се добие излез библиотеката string.h и math.h 370 00:16:48,530 --> 00:16:52,970 библиотека, .h само означува библиотека, други библиотеки дека ќе крајот 371 00:16:52,970 --> 00:16:55,310 да се користи во рок вашиот код. 372 00:16:55,310 --> 00:16:57,620 >> Сепак, за целите на на оваа библиотека, ние, исто така, 373 00:16:57,620 --> 00:17:01,170 have-- на овој class-- ние исто така имаат она што се нарекува библиотека CS50, 374 00:17:01,170 --> 00:17:05,270 cs50.h, каде што, за вашиот прегледници создадоа 375 00:17:05,270 --> 00:17:07,369 многу важни и корисни функции. 376 00:17:07,369 --> 00:17:09,550 Така што вие како програмер може да piggyback исклучување 377 00:17:09,550 --> 00:17:14,470 она што ние веќе напишано, така што оваа функција е на располагање на вас 378 00:17:14,470 --> 00:17:15,599 за ваша употреба. 379 00:17:15,599 --> 00:17:18,359 >> Јас ќе се покриваат неколку функции најчесто се користи, 380 00:17:18,359 --> 00:17:20,839 но се знае дека ова се сите googleable онлајн. 381 00:17:20,839 --> 00:17:24,904 Се чувствуваат слободни, се повлече до CS50 библиотека и тогаш ќе мора сите функции таму. 382 00:17:24,904 --> 00:17:25,828 Је. 383 00:17:25,828 --> 00:17:28,140 >> ЗВУЧНИЦИ 5: Значи, ако не беа Користење на софтвер кој 384 00:17:28,140 --> 00:17:29,916 е предвидено до нас од страна класата, го прави тоа 385 00:17:29,916 --> 00:17:32,698 значи дека ќе треба да го преземете и да се најде оваа хедер датотека самите себе и да се каже 386 00:17:32,698 --> 00:17:33,840 на компјутерот каде што е тоа? 387 00:17:33,840 --> 00:17:34,320 >> АНДИ Пенг: големо прашање. 388 00:17:34,320 --> 00:17:34,820 Токму така. 389 00:17:34,820 --> 00:17:38,194 Па тоа е како ако не сте физички присутни во библиотека, 390 00:17:38,194 --> 00:17:40,360 не постои начин за да го всушност, оди и пристап до неа. 391 00:17:40,360 --> 00:17:42,589 Па истото со програмирање во C, можете 392 00:17:42,589 --> 00:17:45,880 Мора да бидете сигурни дека сте користење на нашата апаратот затоа библиотеката е веќе 393 00:17:45,880 --> 00:17:47,270 инкорпорирани во него. 394 00:17:47,270 --> 00:17:50,020 А потоа кога ќе хаштагот # Include, библиотеката е таму. 395 00:17:50,020 --> 00:17:50,520 Је. 396 00:17:50,520 --> 00:17:51,920 Добро прашање. 397 00:17:51,920 --> 00:17:53,461 Секој добар? 398 00:17:53,461 --> 00:17:53,960 Кул. 399 00:17:53,960 --> 00:17:56,371 400 00:17:56,371 --> 00:17:56,870 Во ред. 401 00:17:56,870 --> 00:17:59,330 Па ние ќе се погоди, Во суштина, она што е 402 00:17:59,330 --> 00:18:01,620 првата функција која Ние како програмери се 403 00:18:01,620 --> 00:18:03,900 ќе треба да се користи во рок од нашиот код. 404 00:18:03,900 --> 00:18:05,690 Ова се нарекува () функцијата на printf. 405 00:18:05,690 --> 00:18:08,450 Значи, printf () функцијата, како што сум веќе реков во последниот слајд, 406 00:18:08,450 --> 00:18:11,830 се вклучени во стандардната I / O, стандарден влез / излез, библиотека. 407 00:18:11,830 --> 00:18:16,470 >> Така бидете сигурни дека она што ќе го using-- ох, дозволете ми да го дофати ласерски pointer-- 408 00:18:16,470 --> 00:18:18,660 кога сте со користење на () функцијата на printf, 409 00:18:18,660 --> 00:18:21,790 што треба да се вклучат на стандардот I / O библиотеката или на друго место, кога ќе се собере, 410 00:18:21,790 --> 00:18:23,760 ви се случува да добиете грешка затоа што компјутерот ќе биде како, 411 00:18:23,760 --> 00:18:26,140 ох, не знам каде printf () е, вие не ќе ми кажеш каде printf () 412 00:18:26,140 --> 00:18:26,830 е. 413 00:18:26,830 --> 00:18:30,150 Добро printf () е вклучена во стандард на I / O, па кога ќе го користите printf () 414 00:18:30,150 --> 00:18:32,960 бидете сигурни дека да се има линија над вашиот код. 415 00:18:32,960 --> 00:18:36,040 >> Така на пример, printf () тука е функција. 416 00:18:36,040 --> 00:18:40,260 Таа го испечатите нешто внатре во загради на корисникот. 417 00:18:40,260 --> 00:18:44,840 Некој би сакал да се земе прободе во она што оваа линија код во право 418 00:18:44,840 --> 00:18:46,420 тука се случува да се печати? 419 00:18:46,420 --> 00:18:48,730 Според тоа, одговорот е на екранот. 420 00:18:48,730 --> 00:18:50,480 Некој? 421 00:18:50,480 --> 00:18:51,380 >> VERDI: на дното. 422 00:18:51,380 --> 00:18:53,510 >> АНДИ Пенг: Верди, зошто не одиш напред и да каже целата изјава? 423 00:18:53,510 --> 00:18:55,718 >> VERDI: Здраво, моето име е Анди, и јас сум 20 години. 424 00:18:55,718 --> 00:18:57,270 АНДИ Пенг: Ах, прекрасна. 425 00:18:57,270 --> 00:19:00,240 Значи во оваа линија ние ќе треба да испечатите, Здраво, моето име е Анди, 426 00:19:00,240 --> 00:19:04,280 и јас сум 20 години, кои е всушност вистинска изјава. 427 00:19:04,280 --> 00:19:05,090 >> Синтакса. 428 00:19:05,090 --> 00:19:08,830 Па неколку реченички прашања кои вие момци сакате да бидете сигурни дека знаете. 429 00:19:08,830 --> 00:19:09,360 Цитати. 430 00:19:09,360 --> 00:19:13,170 Двојни наводници кажам компјутер што се внатре 431 00:19:13,170 --> 00:19:14,850 се случува да се печатат. 432 00:19:14,850 --> 00:19:16,620 >> Сè што во внатрешноста конзерва само да биде како точно 433 00:19:16,620 --> 00:19:19,920 можете да ја напишете, освен за најчесто на крајот, 434 00:19:19,920 --> 00:19:23,610 ние се случува да сакаат да се вклучат на hash-- ох sorry-- цртичка n. 435 00:19:23,610 --> 00:19:24,640 Па цртичка n. 436 00:19:24,640 --> 00:19:28,884 >> Сака ли некој да претпоставете во она што го прави за да нашите код кој? 437 00:19:28,884 --> 00:19:29,465 Је. 438 00:19:29,465 --> 00:19:30,840 ЗВУЧНИЦИ 6: ја става на нова линија. 439 00:19:30,840 --> 00:19:31,650 АНДИ Пенг: Токму така. 440 00:19:31,650 --> 00:19:34,660 Така што сите тоа не е им овозможи на она што се случува 441 00:19:34,660 --> 00:19:37,520 По ова, по оваа изјава, за да бидат испечатени на нова линија. 442 00:19:37,520 --> 00:19:40,030 Така што, кога сте пишување вашиот код не случајно се работи 443 00:19:40,030 --> 00:19:41,738 закачени за крајот тоа што вие не сакате. 444 00:19:41,738 --> 00:19:43,700 Што се добива уредно печатени една линија 445 00:19:43,700 --> 00:19:46,870 а потоа ќе почнеме на следната линија. 446 00:19:46,870 --> 00:19:50,970 >> Дали некој се сеќавам она што запирка прави кога сме кодирање? 447 00:19:50,970 --> 00:19:54,580 448 00:19:54,580 --> 00:19:55,330 Је. 449 00:19:55,330 --> 00:19:55,740 >> ЗВУЧНИЦИ 7: Изјава. 450 00:19:55,740 --> 00:19:56,010 >> АНДИ Пенг: Жал ми е? 451 00:19:56,010 --> 00:19:57,100 >> ЗВУЧНИЦИ 7: Дали го завршите изјава? 452 00:19:57,100 --> 00:19:57,766 >> АНДИ Пенг: Да. 453 00:19:57,766 --> 00:20:02,670 Така што во C, или било кој програмски јазик, точка-запирка 454 00:20:02,670 --> 00:20:04,640 означува крајот на програмирање на линија. 455 00:20:04,640 --> 00:20:09,240 Така на пример, на англиски јазик се користи период да се каже, о ова е крајот на реченицата. 456 00:20:09,240 --> 00:20:12,857 Во програмирање, иста работа, имаме запирка за означување на крајот на линијата. 457 00:20:12,857 --> 00:20:14,690 Честопати, кога сте почнуваат да се програмира, 458 00:20:14,690 --> 00:20:17,150 ќе можеме да согледаме заборавајте да внесете точка и запирка 459 00:20:17,150 --> 00:20:19,400 а потоа ќе се обидат да се кандидира на вашиот код и тоа не функционира. 460 00:20:19,400 --> 00:20:21,520 А ти си како, Ах, јас не знам зошто, тоа треба да се работи. 461 00:20:21,520 --> 00:20:24,394 >> Шансите се дека најверојатно заборавиле запирка или заграда или нешто 462 00:20:24,394 --> 00:20:25,020 некаде. 463 00:20:25,020 --> 00:20:27,740 Значи, тоа е важно да се запамети. 464 00:20:27,740 --> 00:20:29,627 Кул. 465 00:20:29,627 --> 00:20:31,960 Добро, кревање раце, како многу луѓе тука имаат некогаш 466 00:20:31,960 --> 00:20:37,210 земени АП компјутерски науки или програмира во Јава пред тоа, некогаш? 467 00:20:37,210 --> 00:20:37,710 ВО РЕД. 468 00:20:37,710 --> 00:20:38,210 Убава. 469 00:20:38,210 --> 00:20:41,340 Дека нема да се применуваат тогаш, но во Јава, можете 470 00:20:41,340 --> 00:20:44,960 имаат нешто што се нарекува System.out.println која не постои во C. 471 00:20:44,960 --> 00:20:49,927 >> Па во C, секогаш кога ќе сакате да го додадете во променливи 472 00:20:49,927 --> 00:20:51,760 во се што сакаш да се печати, има 473 00:20:51,760 --> 00:20:54,620 на специфични синтакса ние ќе треба да се користи. 474 00:20:54,620 --> 00:20:56,520 Што се вика на placeholding-- суштина 475 00:20:56,520 --> 00:21:01,180 ние додадете променливи во место на цел број или променлива 476 00:21:01,180 --> 00:21:02,580 дека ние сакаме да се печати. 477 00:21:02,580 --> 00:21:07,430 >> Така што вие момци можат да се види што сме вклучени нова глава библиотека датотека. 478 00:21:07,430 --> 00:21:09,130 Библиотека на CS50. 479 00:21:09,130 --> 00:21:13,160 А се содржани во рамките на тој CS50 библиотека е заедничка функција ќе биде со користење на 480 00:21:13,160 --> 00:21:15,610 во нашиот курс наречен GetInt (). 481 00:21:15,610 --> 00:21:21,830 >> Дали некој сака да земе прободе во што веројатно може да се прави GetInt (). 482 00:21:21,830 --> 00:21:22,830 >> ПУБЛИКАТА: [Беззвучен] 483 00:21:22,830 --> 00:21:23,550 >> АНДИ Пенг: Жал ми е. 484 00:21:23,550 --> 00:21:24,370 Не можев да те слушам. 485 00:21:24,370 --> 00:21:25,511 Maddie, никого. 486 00:21:25,511 --> 00:21:27,260 Maddie: Ах, тоа го поттикнува ви за цел број. 487 00:21:27,260 --> 00:21:28,051 АНДИ Пенг: Токму така. 488 00:21:28,051 --> 00:21:30,670 Затоа оваа функција, уште функција која е веќе 489 00:21:30,670 --> 00:21:33,690 е напишана од некој друг дека ние може да се повикаат сега. 490 00:21:33,690 --> 00:21:38,000 Сето тоа е што е во доменот на вас, на корисникот, за да го внесете што сакате како код 491 00:21:38,000 --> 00:21:41,850 работи и тоа продавници whatever-- во овој случај ние сме GetInt () - ИНГ, 492 00:21:41,850 --> 00:21:44,060 па тоа значи дека ние сме добивање на цел број. 493 00:21:44,060 --> 00:21:46,150 >> И ние ќе треба да се сместат тоа во друга цел број 494 00:21:46,150 --> 00:21:48,900 дека ние сме само се нарекува возраст. 495 00:21:48,900 --> 00:21:51,500 Кои имаат смисла за сите? 496 00:21:51,500 --> 00:21:52,190 Кул. 497 00:21:52,190 --> 00:21:56,400 >> Па сега дека ние сме чуваат овој број, дека ние сме поттикнати од страна на корисникот, 498 00:21:56,400 --> 00:22:00,010 во оваа променлива, ние сме создадена од тип int наречен возраст, 499 00:22:00,010 --> 00:22:03,720 можеме да одиме напред и место дека во нашата printf () функција. 500 00:22:03,720 --> 00:22:08,970 Па синтаксата обично за printf () е дека каде и во вашиот вистински физички 501 00:22:08,970 --> 00:22:14,410 линија сакате да ја вклучуваат таа цел број, да го направите тоа симбол право, таму, 502 00:22:14,410 --> 00:22:17,800 знакот за процент, со тип на променлива, што сакате. 503 00:22:17,800 --> 00:22:20,090 >> Значи во овој случај возраст е цел број. 504 00:22:20,090 --> 00:22:25,030 Значи сте ќе треба да се вклучат % i, бидејќи тоа е цел број. 505 00:22:25,030 --> 00:22:26,860 А потоа и по својата изјава, си оди 506 00:22:26,860 --> 00:22:30,370 да се направи запирка и името на променливата. 507 00:22:30,370 --> 00:22:33,420 >> Па еве, ние ќе треба да се печати надвор, Здраво, моето име е Анди, 508 00:22:33,420 --> 00:22:35,730 и јас сум празно години. 509 00:22:35,730 --> 00:22:38,890 Hashta-- или, sorry--, возраст со што и јас влез. 510 00:22:38,890 --> 00:22:42,790 Значи, ако јас се да го внесете 20 за мојот GetInt () овде, 511 00:22:42,790 --> 00:22:44,500 тоа ќе се печати на иста работа. 512 00:22:44,500 --> 00:22:47,990 Но, ако сакав да го внесете нешто друго, како можеби 40 или 45, 513 00:22:47,990 --> 00:22:50,800 тогаш ќе се види дека се гледа соодветно во кодот. 514 00:22:50,800 --> 00:22:52,886 >> Значи ова е пример на нешто во кое 515 00:22:52,886 --> 00:22:55,260 тоа отпечатоци надвор и гледа кон вас, како и ако тоа е иста работа, 516 00:22:55,260 --> 00:22:57,593 но под хаубата на компјутерот има всушност 517 00:22:57,593 --> 00:22:59,560 многу различни работи што се случуваат. 518 00:22:59,560 --> 00:23:00,060 Кул. 519 00:23:00,060 --> 00:23:02,760 520 00:23:02,760 --> 00:23:03,260 Во ред. 521 00:23:03,260 --> 00:23:06,940 Па што ако ние сакаме повеќе променливи? 522 00:23:06,940 --> 00:23:08,290 Прилично лесно. 523 00:23:08,290 --> 00:23:09,150 Исто нешто. 524 00:23:09,150 --> 00:23:11,930 Ние исто така имаме нова функција тука се нарекува GetString (), 525 00:23:11,930 --> 00:23:15,380 исто така се вклучени во рамките на библиотеката CS50, дека сите тоа го прави е да го извести корисникот 526 00:23:15,380 --> 00:23:18,120 за серија, која е само збир на знаци, 527 00:23:18,120 --> 00:23:19,810 па како казна или како име. 528 00:23:19,810 --> 00:23:25,470 >> Значи во овој случај, ќе имаме два променливи% s за низа и% i 529 00:23:25,470 --> 00:23:26,750 за цел број. 530 00:23:26,750 --> 00:23:29,190 И ние ќе треба да се следат дека од страна на две променливи 531 00:23:29,190 --> 00:23:32,670 ние сакаш да бидат застапени, во цел дека тие се појавуваат во реченицата. 532 00:23:32,670 --> 00:23:35,471 Така на пример, името ми е празно, сакам име таму, 533 00:23:35,471 --> 00:23:36,970 па јас ќе одам да го содржи името на прво место. 534 00:23:36,970 --> 00:23:39,637 А потоа и потоа, сакам возраст, сакаат да имаат возраст секунда. 535 00:23:39,637 --> 00:23:42,720 И така, ако сакав да влез, Здраво, Моето име Анди, и јас сум 20 години. 536 00:23:42,720 --> 00:23:46,370 Ако јас внесуваат Анди и 20, иста работа ќе се печати; 537 00:23:46,370 --> 00:23:51,134 Меѓутоа, сега имаме две чуваат варијабли на името, како и Инт. 538 00:23:51,134 --> 00:23:51,634 Је. 539 00:23:51,634 --> 00:23:54,124 >> ЗВУЧНИЦИ 8: Дали тоа ќе биде во можност да се кандидира, ако е вклучен 540 00:23:54,124 --> 00:23:55,620 име и возраст на крајот од тоа? 541 00:23:55,620 --> 00:23:55,840 >> АНДИ Пенг: Да. 542 00:23:55,840 --> 00:23:57,006 Тоа е навистина добро прашање. 543 00:23:57,006 --> 00:23:59,520 Па скратам приказната, бр. 544 00:23:59,520 --> 00:24:03,070 Бидејќи името и age-- што видот на променливата е името? 545 00:24:03,070 --> 00:24:03,950 >> ЗВУЧНИЦИ 8: Стринг. 546 00:24:03,950 --> 00:24:05,440 >> АНДИ Пенг: И што тип на променлива е возраст? 547 00:24:05,440 --> 00:24:06,231 >> ЗВУЧНИЦИ 8: Integer. 548 00:24:06,231 --> 00:24:10,290 АНДИ Пенг: Значи тука имаме случаеви за низа и цел број, нели? 549 00:24:10,290 --> 00:24:13,350 Значи, ако сте во ситуација да го вклучите овие, компјутерот не се случува да се знае. 550 00:24:13,350 --> 00:24:16,250 Тоа се случува да се провери за стринг, и ако се обидете да го даде на int, 551 00:24:16,250 --> 00:24:18,083 тоа се случува да биде како чекај Јас сум збунет, можете 552 00:24:18,083 --> 00:24:21,100 ми рече дека треба да биде доделување меморија за int. 553 00:24:21,100 --> 00:24:23,760 И токму тука, кога дека очекува цел број 554 00:24:23,760 --> 00:24:25,640 и можете да го даде името и низа наместо тоа, 555 00:24:25,640 --> 00:24:28,931 тоа е, исто така, се случува да биде многу збунувачки, тоа нема да се работи токму онака како што е потребно. 556 00:24:28,931 --> 00:24:35,280 Па еве, именување и синтаксата е многу важно за водење код. 557 00:24:35,280 --> 00:24:37,991 Секој добар? 558 00:24:37,991 --> 00:24:38,490 Је. 559 00:24:38,490 --> 00:24:39,476 Maddie. 560 00:24:39,476 --> 00:24:44,620 >> Maddie: Еве, јас знам што сум погледна во примери во класа, каде што побара 561 00:24:44,620 --> 00:24:46,950 она што е вашата возраст, што е вашето име. 562 00:24:46,950 --> 00:24:50,250 Тука, дека ќе биде тоа doesn't-- ако ние требаше да се кандидира на овој законик, 563 00:24:50,250 --> 00:24:51,750 тоа не ќе побара за тоа? 564 00:24:51,750 --> 00:24:54,740 Но, ќе само внесување два броја а потоа тоа ќе се кандидира, како тоа? 565 00:24:54,740 --> 00:24:55,781 >> АНДИ Пенг: Да, точно. 566 00:24:55,781 --> 00:24:58,250 Значи, ако си сакал за тоа да дисплеј, ве молиме внесете ја вашата возраст, 567 00:24:58,250 --> 00:25:01,100 можете само да додадете printf () функцијата која вели, ве молиме внесете ја вашата возраст, 568 00:25:01,100 --> 00:25:01,600 над неа. 569 00:25:01,600 --> 00:25:02,711 Тоа е добро прашање. 570 00:25:02,711 --> 00:25:03,210 Је. 571 00:25:03,210 --> 00:25:07,964 >> ЗВУЧНИЦИ 9: Значи, веќе ќе биде вклучени во GetInt () [Беззвучен]. 572 00:25:07,964 --> 00:25:09,380 АНДИ Пенг: Не, тоа не е всушност. 573 00:25:09,380 --> 00:25:11,809 Значи сето ова не е само поттикнува празен екран 574 00:25:11,809 --> 00:25:13,100 на корисникот за да го внесете нешто. 575 00:25:13,100 --> 00:25:17,420 Ако го сакаат тоа, ако сакате тоа да се печати на нешто што кажува на корисникот, како, 576 00:25:17,420 --> 00:25:21,110 Те молам дај ми на вашата возраст, тогаш ќе мора да printf (), кои себе. 577 00:25:21,110 --> 00:25:23,789 Затоа што секој го користи ова функција за различни работи, 578 00:25:23,789 --> 00:25:26,080 ќе може да се чување на возраста, ќе може да се чување на адреса, 579 00:25:26,080 --> 00:25:28,060 ќе може да се складирање на телефонски броеви. 580 00:25:28,060 --> 00:25:31,190 И така тоа е навистина до лицето го користи вашиот момци ' 581 00:25:31,190 --> 00:25:34,390 за она што го сакате тоа да се каже. 582 00:25:34,390 --> 00:25:34,890 Је. 583 00:25:34,890 --> 00:25:38,236 >> ЗВУЧНИК 10: Значи, само за да се разјаснат, каде правиш внесување на име и возраст 584 00:25:38,236 --> 00:25:43,020 така што се појавува на местото на% s? 585 00:25:43,020 --> 00:25:44,320 >> АНДИ Пенг: Како и во на корисникот? 586 00:25:44,320 --> 00:25:47,165 >> ЗВУЧНИК 10: Да, како и како да направам направи it-- каде можам да се стави Анди, 587 00:25:47,165 --> 00:25:48,350 и каде можам да се стави 20? 588 00:25:48,350 --> 00:25:48,640 >> АНДИ Пенг: Да. 589 00:25:48,640 --> 00:25:50,250 Значи, ако сте во ситуација да всушност работат на овој законик, 590 00:25:50,250 --> 00:25:52,875 Јас не сум, всушност, водење на код, ова е само тука во моментов. 591 00:25:52,875 --> 00:25:56,910 Ако јас да се кандидира на кодот, јас би компајлирање на кодот, се направи датотека, 592 00:25:56,910 --> 00:26:00,760 кандидира на кодот, и тогаш би само да биде на две места за мене да го влез. 593 00:26:00,760 --> 00:26:01,260 Је. 594 00:26:01,260 --> 00:26:03,843 Вие момци ќе видите кога ќе се играат околу со кодот себе. 595 00:26:03,843 --> 00:26:05,760 596 00:26:05,760 --> 00:26:09,645 >> Ред ние ќе треба да се движи во следниот дел од она што 597 00:26:09,645 --> 00:26:11,610 ние ќе се покриваат денес. 598 00:26:11,610 --> 00:26:13,980 Ние ќе треба да одат над она што условно извештаи се. 599 00:26:13,980 --> 00:26:16,500 Значи, ако вие момци се сеќавам и да се потсетиме од предавањето, 600 00:26:16,500 --> 00:26:19,210 условно извештаи, сите тие се збир 601 00:26:19,210 --> 00:26:24,010 од инструкции за компјутер во што ако некој услов е вистина, 602 00:26:24,010 --> 00:26:27,470 ќе се изврши на кодот внатрешноста на таа состојба. 603 00:26:27,470 --> 00:26:30,101 >> Значи во суштина Scratch-- големата тема од денес 604 00:26:30,101 --> 00:26:32,850 е дека вие момци имаат веќе сите увидоа логиката зад сето 605 00:26:32,850 --> 00:26:34,020 дека ние сме ги покриваат. 606 00:26:34,020 --> 00:26:36,190 И сите што го правиме е преведување нешто 607 00:26:36,190 --> 00:26:39,090 тоа беше многу интуитивен во Нула, и е тешко за кодирање 608 00:26:39,090 --> 00:26:41,950 во синтаксата ќе биде со користење на за класата во која е В. 609 00:26:41,950 --> 00:26:47,550 Па логично, сето ова беше блок е тоа што дел од кодот во право таму. 610 00:26:47,550 --> 00:26:49,995 Је. 611 00:26:49,995 --> 00:26:50,900 ВО РЕД. 612 00:26:50,900 --> 00:26:55,290 >> Ние, исто така, влезе во друго место ако ... изјава која е само дополнителен слој 613 00:26:55,290 --> 00:26:59,120 на сложеност на изјавата ако каде што компјутерот зема се погледне на овој 614 00:26:59,120 --> 00:27:04,260 и гледа, ако оваа состојба е точно, дали што и во внатрешноста на овие две загради, 615 00:27:04,260 --> 00:27:08,470 else-- толку вид како стандардно ако тоа не ги исполнува condition-- направите тоа. 616 00:27:08,470 --> 00:27:10,120 Тоа е како крстопат на патот. 617 00:27:10,120 --> 00:27:14,400 Ако надвор врне, да го ставам на дожд јакна, друго ништо 618 00:27:14,400 --> 00:27:16,330 друго не ми се стави на дожд јакна. 619 00:27:16,330 --> 00:27:18,400 >> Дали таа логика се направи смисла на сите? 620 00:27:18,400 --> 00:27:21,031 Кул. 621 00:27:21,031 --> 00:27:21,530 Во ред. 622 00:27:21,530 --> 00:27:24,970 Па како хард пример на ова што ние ќе ја видите во C 623 00:27:24,970 --> 00:27:28,890 е ако сакав да се создаде променлива наречена домашна часа. 624 00:27:28,890 --> 00:27:32,050 И ако домашна часа е помалку од пет, велам Животот е голема. 625 00:27:32,050 --> 00:27:33,070 Тоа е прекрасно. 626 00:27:33,070 --> 00:27:36,450 Сепак, велат Борбата е real-- што е она што сите на овој понеделник 627 00:27:36,450 --> 00:27:39,337 попладне науката Хил се веројатно го правам во право now-- 628 00:27:39,337 --> 00:27:40,170 ПУБЛИКАТА: [се смее] 629 00:27:40,170 --> 00:27:42,510 АНДИ Пенг: Тие начин би, ти благодарам за тоа. 630 00:27:42,510 --> 00:27:46,180 Начинот на кој ние би hardcode ова во C е if-- да претпоставиме 631 00:27:46,180 --> 00:27:49,920 ние веќе имаат променлива од тип int нарекува домашна работа часа во право тука. 632 00:27:49,920 --> 00:27:53,870 Ако домашна часа е помал од пет printf (), Животот е голема. 633 00:27:53,870 --> 00:27:57,330 Се сеќавам задржи / n, бидејќи сакате нова линија после. 634 00:27:57,330 --> 00:27:59,660 Друго печати, Борбата е реално. 635 00:27:59,660 --> 00:28:03,720 >> Дали сите се разбере како Јас transitioned од овој блок 636 00:28:03,720 --> 00:28:07,610 во овој блок од код? 637 00:28:07,610 --> 00:28:08,110 Кул. 638 00:28:08,110 --> 00:28:11,030 639 00:28:11,030 --> 00:28:11,840 Во ред. 640 00:28:11,840 --> 00:28:15,930 >> Па сега ние си оди за да ја погледнете повеќе извештаи Ако целосно. 641 00:28:15,930 --> 00:28:18,140 Значи, да се преземе Целта на оваа програма 642 00:28:18,140 --> 00:28:20,870 беше ние го извести корисникот за еден степен. 643 00:28:20,870 --> 00:28:24,450 Ние брза користење GetInt () за одделение, и тие влезни вредност, 644 00:28:24,450 --> 00:28:27,700 и сакате да се прикаже каков вид на одделение ги добија. 645 00:28:27,700 --> 00:28:30,730 >> Значи, ако јас се да дизајн програма, јас значи обично во сите нашите очи, 646 00:28:30,730 --> 00:28:35,490 90-100 е A, 80-90 е Б, и така натаму и така натаму. 647 00:28:35,490 --> 00:28:39,040 Она што е во ред со оваа дел од кодот кој тоа не е 648 00:28:39,040 --> 00:28:41,393 прави она што го сакате тоа да се направи. 649 00:28:41,393 --> 00:28:41,892 Је. 650 00:28:41,892 --> 00:28:45,100 >> ЗВУЧНИК 11: тие имаат пониски граници, но тие немаат горни граници. 651 00:28:45,100 --> 00:28:46,280 >> АНДИ Пенг: Токму така. 652 00:28:46,280 --> 00:28:47,950 Дали сите се слушне она што рече таа? 653 00:28:47,950 --> 00:28:50,200 Таму се случува да биде горниот граници, но не пониско граници. 654 00:28:50,200 --> 00:28:52,540 Жал ми е, обратно, долните граници, нема горна граница. 655 00:28:52,540 --> 00:28:55,090 Па би сакал да земе прободе во велејќи 656 00:28:55,090 --> 00:28:58,945 она што ќе биде отпечатена на овој екран ако јас се да се кандидира овој код. 657 00:28:58,945 --> 00:28:59,820 ЗВУЧНИК 11: грешка? 658 00:28:59,820 --> 00:29:01,140 АНДИ Пенг: грешка? 659 00:29:01,140 --> 00:29:02,740 Голема погоди, не е во ред. 660 00:29:02,740 --> 00:29:05,465 Дали некој има друга прободе? 661 00:29:05,465 --> 00:29:06,640 Да, Арон. 662 00:29:06,640 --> 00:29:10,099 >> Арон: Ако се стави во нешто поголема од 90, 663 00:29:10,099 --> 00:29:11,640 тоа ќе се прикажат сите оценки го добив. 664 00:29:11,640 --> 00:29:13,640 Тоа ќе покаже добив A, ви доби Б, имаш еден В. 665 00:29:13,640 --> 00:29:13,870 >> АНДИ Пенг: Да. 666 00:29:13,870 --> 00:29:14,840 Тоа е точно. 667 00:29:14,840 --> 00:29:17,820 Значи, тоа би било прекрасно. 668 00:29:17,820 --> 00:29:21,781 Сепак, тие се меѓусебно ексклузивни, си мислам. 669 00:29:21,781 --> 00:29:23,280 Ако јас да го стартувате овој дел од кодот. 670 00:29:23,280 --> 00:29:26,200 А потоа и да речеме, јас внесуваат одделение на 95. 671 00:29:26,200 --> 00:29:30,360 95 па сега се чуваат во ИНТ наречен одделение. 672 00:29:30,360 --> 00:29:33,610 >> И така Ц е јазикот што води до врвот до дното, 673 00:29:33,610 --> 00:29:36,000 па затоа се случува секогаш периодот до дното. 674 00:29:36,000 --> 00:29:39,420 Па затоа се случува да дојдат тука, да се прочита ако степен е поголема од или еднаква на 90, 675 00:29:39,420 --> 00:29:42,850 printf () сте ја добиле А. Велики, се имаат 95 години, кој е поголем од 90. 676 00:29:42,850 --> 00:29:44,866 Тоа се случува да се печати, Добив А. Тоа се случува 677 00:29:44,866 --> 00:29:48,850 да ги погледне во овој ако, тоа се случува каже, добро 95 е исто така повеќе од 80, 678 00:29:48,850 --> 00:29:52,970 тоа се случува да се печати можете, исто така, се здобија со Got Б извичник, и така натаму и така 679 00:29:52,970 --> 00:29:53,690 натаму. 680 00:29:53,690 --> 00:29:55,890 >> Така што сите можеме да видиме, ова е честа грешка 681 00:29:55,890 --> 00:30:00,760 што може да се случи кога сме пишување на код за да внимавате. 682 00:30:00,760 --> 00:30:05,430 Секој, било прашања во врска со зошто тоа се случува? 683 00:30:05,430 --> 00:30:05,930 Одлично. 684 00:30:05,930 --> 00:30:08,920 685 00:30:08,920 --> 00:30:09,440 ВО РЕД. 686 00:30:09,440 --> 00:30:12,110 >> Па, како да го надминете овој, е очигледно претставува логично прашање. 687 00:30:12,110 --> 00:30:16,290 Па, имаме овие убави работи вика ако друго, ако друго 688 00:30:16,290 --> 00:30:18,010 ако друго извештаи. 689 00:30:18,010 --> 00:30:22,230 Па можете да видите, ако сакаше да се промени тој проблем, 690 00:30:22,230 --> 00:30:25,260 си сакал да го прават секој на услови меѓусебно се исклучуваат, 691 00:30:25,260 --> 00:30:26,860 сакаш да додадете друг ... ако соопштението. 692 00:30:26,860 --> 00:30:30,068 >> И овие од разбира мислам на нив како скали, или како скалила за ladder-- 693 00:30:30,068 --> 00:30:34,050 можете да додадете како многу од овие што вие сакаат за што повеќе услови, како сакате. 694 00:30:34,050 --> 00:30:36,790 Па еве, ако јас се внесуваат градус да биде 95. 695 00:30:36,790 --> 00:30:39,479 Ако одделение е поголем од 95, printf (), добив А. Велики. 696 00:30:39,479 --> 00:30:42,020 Тоа се случува да се види на друго место ако ... и тоа се случува да се знае, О, не, 697 00:30:42,020 --> 00:30:43,750 Јас веќе извршена првата друго. 698 00:30:43,750 --> 00:30:47,020 Јас know-- или првиот if-- знам дека Јас не мора да се погледне во која било од овие 699 00:30:47,020 --> 00:30:48,920 бидејќи еден од нив веќе е вистина. 700 00:30:48,920 --> 00:30:50,410 Па затоа се случува да се кандидира од врвот надолу. 701 00:30:50,410 --> 00:30:53,650 Штом првиот е точно, тогаш тоа се случува да го прескокнете над сите останати 702 00:30:53,650 --> 00:30:54,675 на друго место ... IFS. 703 00:30:54,675 --> 00:30:55,550 Дали тоа има смисла? 704 00:30:55,550 --> 00:30:57,841 Значи, на овој начин имаш различни нивоа на проверка 705 00:30:57,841 --> 00:31:01,090 и штом еден од нив е false, Останатите се, исто така, тие нема ни да се провери. 706 00:31:01,090 --> 00:31:03,577 707 00:31:03,577 --> 00:31:04,076 Кул. 708 00:31:04,076 --> 00:31:07,680 709 00:31:07,680 --> 00:31:08,180 Во ред. 710 00:31:08,180 --> 00:31:11,180 >> Значи ова е пример за еден поинаков вид условна изјава 711 00:31:11,180 --> 00:31:15,250 гледаме поретко, но ќе ги видиме и да ги искористиме. 712 00:31:15,250 --> 00:31:18,120 И тие се често повеќе ефикасен за одредени случаи. 713 00:31:18,120 --> 00:31:20,020 Па ние имаме она што се нарекува изјава гајтан. 714 00:31:20,020 --> 00:31:25,140 Па пред да покриени што е на друго место изјава, една ако ... друго изјава. 715 00:31:25,140 --> 00:31:27,790 Тука, ние се она што се наречена прекинувач извештаи. 716 00:31:27,790 --> 00:31:31,100 >> Па кога ги користиме прекинувач извештаи е клучот? 717 00:31:31,100 --> 00:31:34,090 Така во соопштението switch можете обично, обично, вие всушност 718 00:31:34,090 --> 00:31:38,010 може само внесување броеви за вашиот променлива која сте одјавувањето. 719 00:31:38,010 --> 00:31:42,390 Значи, ако јас сакав да се провери да се види ако одреден number-- на пример 720 00:31:42,390 --> 00:31:43,720 оценка, ако добив 90. 721 00:31:43,720 --> 00:31:48,190 Сакам тоа да се види дали тоа е А, Б, или В. би можел да има случај тука. 722 00:31:48,190 --> 00:31:50,840 Сепак, случајот има да биде уште една константа. 723 00:31:50,840 --> 00:31:53,170 >> Па во оваа смисла, изјава прекинувачот може само 724 00:31:53,170 --> 00:31:55,290 проверете за еднаквост на два броја. 725 00:31:55,290 --> 00:31:57,242 Тоа не се провери за било што друго. 726 00:31:57,242 --> 00:31:59,950 Па тоа е нешто да се биде многу внимателни кога ќе го користите овој. 727 00:31:59,950 --> 00:32:04,810 Па еве, ако сакав да се провери да се види ако моето одделение од 90 години е еднаква на 90 или 80 728 00:32:04,810 --> 00:32:08,500 или 70 или 60 години, а за печатење го соодветното одделение, 729 00:32:08,500 --> 00:32:11,420 Ќе бидам во можност да се напише дека во изјавата на прекинувачот. 730 00:32:11,420 --> 00:32:15,120 >> Па затоа се случува да дојде тука, проверете е оваа цел број еднаков на оваа постојана? 731 00:32:15,120 --> 00:32:17,030 Ако не, тоа се случува да го прескокнете. 732 00:32:17,030 --> 00:32:19,880 Дали е еднаква на постојана две, и така натаму и така натаму, 733 00:32:19,880 --> 00:32:22,390 додека не го погоди дифолт, ако никој од нив не се еднакви. 734 00:32:22,390 --> 00:32:24,590 Штом еден од нив е поставен да биде еднаква, 735 00:32:24,590 --> 00:32:27,040 тоа се случува да го направите тоа линија на кодот и пауза. 736 00:32:27,040 --> 00:32:30,990 Што значи дека ќе ја достигне таа се кандидира, се скрши, и само целосно прескокнете 737 00:32:30,990 --> 00:32:32,240 на дното на код. 738 00:32:32,240 --> 00:32:37,550 Па во таа смисла на вид на функции како ако друго, ако друго, ако изјавата. 739 00:32:37,550 --> 00:32:40,830 >> Значи тука е бетон пример за вас момци. 740 00:32:40,830 --> 00:32:46,140 Па ајде да претпоставиме дека сакам да создаде променлива наречена година основана. 741 00:32:46,140 --> 00:32:50,230 И јас сакам да го извести корисникот за да го внесете година во која е основана во нивното училиште. 742 00:32:50,230 --> 00:32:53,300 За да можам да се создаде изјава прекинувач тука. 743 00:32:53,300 --> 00:32:56,650 И да речеме, јас внесување 1.636. 744 00:32:56,650 --> 00:33:01,120 >> Овој код тука се случува да се види прекинувач година основана што е еднакво на 1636 година. 745 00:33:01,120 --> 00:33:03,940 Тоа се случува да се види случај 1636, о тие се еднакви, 746 00:33:03,940 --> 00:33:06,230 printf () не треба да ви биде во тоа училиште на север? 747 00:33:06,230 --> 00:33:08,770 Бидејќи претпоставуваме тие не оди тука ако одат на Харвард, 748 00:33:08,770 --> 00:33:10,380 се скрши и да го прескокнете до крајот. 749 00:33:10,380 --> 00:33:14,090 >> Ако јас да се влезни 1701 година, кој Претпоставувам дека сите од нас би го влез, 750 00:33:14,090 --> 00:33:17,500 тоа ќе го прескокнете овој случај, доаѓаат сведува на две случај кој е 1701 година, 751 00:33:17,500 --> 00:33:19,660 и печатење Добредојдовте на Јеил! 752 00:33:19,660 --> 00:33:21,360 Се скрши, го прескокнете до крајот. 753 00:33:21,360 --> 00:33:25,130 Бидејќи најверојатно се одвиваат на овој курс онлајн во кој case-- страшни добредојден 754 00:33:25,130 --> 00:33:29,020 да Yale-- тоа се случува да одат на Стандардно печатење, Здраво интернет! 755 00:33:29,020 --> 00:33:29,870 И се кршат. 756 00:33:29,870 --> 00:33:30,466 Је. 757 00:33:30,466 --> 00:33:32,090 >> ЗВУЧНИК 12: Дали можете да го користите на друго место наместо на стандардната таму? 758 00:33:32,090 --> 00:33:34,550 >> АНДИ Пенг: Не, бидејќи начин што целата оваа функција 759 00:33:34,550 --> 00:33:39,170 прекинувачот е изградена, можете синтакса треба да се користи случај е случај стандардно. 760 00:33:39,170 --> 00:33:42,400 Тоа е како на друго ако ако, ова еден случај тоа е случај стандардно. Је. 761 00:33:42,400 --> 00:33:45,650 ЗВУЧНИК 13: Вие можеби веќе го рече ова, но може да има повеќе од два случаи? 762 00:33:45,650 --> 00:33:48,066 АНДИ Пенг: Да, би можеле имате како многу случаи, како сакате. 763 00:33:48,066 --> 00:33:50,050 Сфатете го тоа како само се допаѓа бескрајно додавање на. 764 00:33:50,050 --> 00:33:52,396 >> ЗВУЧНИК 14: Ако вклучен 1701 со 1636 година, 765 00:33:52,396 --> 00:33:54,187 тоа навистина не го прават право разликата? 766 00:33:54,187 --> 00:33:55,770 Тоа е само ќе треба да се проверува за тоа. 767 00:33:55,770 --> 00:33:56,900 >> АНДИ Пенг: Тоа е навистина добро прашање. 768 00:33:56,900 --> 00:33:58,880 А ние ќе ги допре ова подоцна, но само 769 00:33:58,880 --> 00:34:01,160 знам дека е прекинувачот изјава е infinitely-- тоа е 770 00:34:01,160 --> 00:34:03,536 поефикасен од него и ако друго, ако поради тоа што работи 771 00:34:03,536 --> 00:34:06,660 со користење на различни тип на функција која ви дозволува, во суштина, да се само 772 00:34:06,660 --> 00:34:08,790 скокнете директно до случај треба да биде во. 773 00:34:08,790 --> 00:34:10,547 Је. 774 00:34:10,547 --> 00:34:11,255 ЗВУЧНИК 14: Кул. 775 00:34:11,255 --> 00:34:11,754 Благодарам. 776 00:34:11,754 --> 00:34:12,526 АНДИ Пенг: Да 777 00:34:12,526 --> 00:34:16,687 >> ЗВУЧНИК 14: и не би можел направи случаи како и е поголема. 778 00:34:16,687 --> 00:34:17,270 АНДИ Пенг: Не 779 00:34:17,270 --> 00:34:19,860 Значи, тоа е она што се ограничување за изјава прекинувач е дека имате 780 00:34:19,860 --> 00:34:21,564 да се има само константи, само цели броеви. 781 00:34:21,564 --> 00:34:22,064 Је. 782 00:34:22,064 --> 00:34:25,179 783 00:34:25,179 --> 00:34:25,820 ВО РЕД. 784 00:34:25,820 --> 00:34:28,659 >> Така што ова е нешто што можете момци ќе се судрите со многу поретко на, 785 00:34:28,659 --> 00:34:32,280 но јас само сакав да се воведе во случајот. 786 00:34:32,280 --> 00:34:36,210 Имаме тука што е нарекува троичен оператор. 787 00:34:36,210 --> 00:34:39,370 Каде што во суштина, тоа е исто како на Ако изјавата собрани во една линија. 788 00:34:39,370 --> 00:34:42,630 Еве, јас ќе одам кон следната линија, следно, бидејќи тоа е полесно да се види. 789 00:34:42,630 --> 00:34:44,860 >> Значи, сите ние го видел ова, нели? 790 00:34:44,860 --> 00:34:46,110 Ова е прилично лесно да се следат. 791 00:34:46,110 --> 00:34:51,290 Ако сакав да се направи една променлива наречена стринг именуван ОК, доколку одреден број 792 00:34:51,290 --> 00:34:54,770 Давам тоа е помалку од 100, јас сакате да го доделите ниско на стринг, 793 00:34:54,770 --> 00:34:57,240 друго што сакате да го доделите на високо ниво. 794 00:34:57,240 --> 00:35:01,370 >> Ова овде е тоа точно истото оние осум линии на код се прави. 795 00:35:01,370 --> 00:35:03,600 Значи тука сакам да се создаде стринг променлива. 796 00:35:03,600 --> 00:35:08,520 И ова е состојба сум проверка, ако бројот е помал од 100, 797 00:35:08,520 --> 00:35:12,750 тогаш може да се додели на вредноста на ниско ниво, друго назначи вредноста на високо ниво. 798 00:35:12,750 --> 00:35:15,802 >> Овие слајдови ќе биде онлајн, без грижи ако вие момци не го добивате ова долу. 799 00:35:15,802 --> 00:35:18,510 Ова е само на поедноставен начин, повеќе ефикасен начин на пишување на код. 800 00:35:18,510 --> 00:35:21,290 801 00:35:21,290 --> 00:35:21,810 ВО РЕД. 802 00:35:21,810 --> 00:35:25,190 >> Па сега ние ќе треба да внесете она, за повеќето луѓе 803 00:35:25,190 --> 00:35:28,660 се како многу, многу збунувачки нешто да се размислува за тоа во прв план. 804 00:35:28,660 --> 00:35:30,226 Делот на јамка. 805 00:35:30,226 --> 00:35:32,600 Така, денес, ние се случува да се зборува за три типа на петелки. 806 00:35:32,600 --> 00:35:34,890 Ние ќе треба да се започне со време јамка, тогаш зборуваме за една направите додека јамка, 807 00:35:34,890 --> 00:35:36,740 а потоа зборува за за петелки. 808 00:35:36,740 --> 00:35:40,010 >> Значи во суштина, за повеќе визуелните ученици таму, 809 00:35:40,010 --> 00:35:44,410 имаме, во суштина, графички опис на она што додека јамка прави. 810 00:35:44,410 --> 00:35:48,290 Па во програмирање, ќе почнат и да влезат во јамка во одреден момент. 811 00:35:48,290 --> 00:35:49,470 Да проверите состојба. 812 00:35:49,470 --> 00:35:52,165 А ако условот е исполнет, ќе се изврши код во внатрешноста. 813 00:35:52,165 --> 00:35:53,790 И ќе се врати околу и да се провери. 814 00:35:53,790 --> 00:35:57,190 Ако ова е вистина ви остане во трчање овој код наоколу и да се врти во јамка. 815 00:35:57,190 --> 00:36:00,970 >> Но, втората дека состојбата станува лажни, 816 00:36:00,970 --> 00:36:02,739 ви се случува да се пробие и да се стави крај на јамка. 817 00:36:02,739 --> 00:36:05,030 И ова е во основа синтакса ви се случува да го користите. 818 00:36:05,030 --> 00:36:08,250 Додека некој услов е точно го направите ова, ако тоа не е точно, 819 00:36:08,250 --> 00:36:12,920 си оди за да го прескокнете до крајот и се движи напред со вашата програма. 820 00:36:12,920 --> 00:36:13,690 ВО РЕД. 821 00:36:13,690 --> 00:36:17,250 >> Дали некој има еден пример за тоа што потенцијално може да се случи 822 00:36:17,250 --> 00:36:19,160 ако се обидам да ја извршите оваа парче код? 823 00:36:19,160 --> 00:36:22,470 Патем, тоа е Scaz SAJ--, Анди, Jason-- ќе потпише нашите пораки, 824 00:36:22,470 --> 00:36:24,830 Љубов, Saj. 825 00:36:24,830 --> 00:36:25,573 Кои сме ние. 826 00:36:25,573 --> 00:36:26,500 ВО РЕД. 827 00:36:26,500 --> 00:36:29,829 >> Некој има еден пример, или да има идеја за тоа што ова ќе печати? 828 00:36:29,829 --> 00:36:30,870 Вид на трик прашање. 829 00:36:30,870 --> 00:36:34,550 830 00:36:34,550 --> 00:36:39,380 Па еве, се сеќаваш на состојба ние сме проверка за е додека е вистина. 831 00:36:39,380 --> 00:36:42,840 Така, додека ова е вистина, тоа е случува да се печати, сакам Saj! 832 00:36:42,840 --> 00:36:48,460 Дали има некој момент во кој сите ние би промените оваа да ништо не е така? 833 00:36:48,460 --> 00:36:49,050 Не, во ред? 834 00:36:49,050 --> 00:36:51,470 >> Па овде, имаме се сретнал што е веројатно 835 00:36:51,470 --> 00:36:54,310 ќе треба да се прислушување многу вашите програми, со бесконечна јамка. 836 00:36:54,310 --> 00:36:56,268 Ќе најдете дека ако стартувате овој дел од кодот, 837 00:36:56,268 --> 00:36:58,160 тоа е само ќе да се задржи печатење, сакам Saj! 838 00:36:58,160 --> 00:37:00,701 Додека ние го цениме поддршката, ние не сакаме вашите компјутери 839 00:37:00,701 --> 00:37:02,910 да се сруши затоа што задржи печатење сакам Saj! 840 00:37:02,910 --> 00:37:05,320 >> Затоа ве молам, ве молам, избегне бесконечна јамка 841 00:37:05,320 --> 00:37:07,320 затоа што никогаш не се случува да се оцени на false 842 00:37:07,320 --> 00:37:08,780 и никогаш не си оди да го напушти јамка. 843 00:37:08,780 --> 00:37:10,530 И ви се случува да го да бидат вовлечени во засекогаш. 844 00:37:10,530 --> 00:37:13,000 Кул. 845 00:37:13,000 --> 00:37:13,694 ВО РЕД. 846 00:37:13,694 --> 00:37:15,610 Вториот вид на јамка ние ќе зборуваме за денес 847 00:37:15,610 --> 00:37:17,580 е направите додека јамка, направете додека јамка. 848 00:37:17,580 --> 00:37:20,580 И тоа се нарекува направите додека јамка бидејќи ќе треба да не се прави и некое време. 849 00:37:20,580 --> 00:37:24,390 Така што ова е прилично слична на време јамка, но малку поинаква. 850 00:37:24,390 --> 00:37:27,620 Еве, ви се случува да се направи што и во внатрешноста на оваа 851 00:37:27,620 --> 00:37:29,747 додека некој услов е вистина. 852 00:37:29,747 --> 00:37:32,580 Значи, ако јас се C и на компјутер сум трчаат овој дел од кодот, 853 00:37:32,580 --> 00:37:33,880 Јас ги погледне на врвот. 854 00:37:33,880 --> 00:37:36,890 Одам на C, велам направи ова нешто. 855 00:37:36,890 --> 00:37:40,550 А потоа и да се провери, а оваа Точно е, морам да го повтори. 856 00:37:40,550 --> 00:37:42,750 Но, иако ова е неточно, Јас тогаш се оди напред 857 00:37:42,750 --> 00:37:44,700 и никогаш не се врати во тоа јамка повторно. 858 00:37:44,700 --> 00:37:48,360 >> Може некој да земе прободе во што е разликата 859 00:37:48,360 --> 00:37:52,130 помеѓу овој циклус и оној што го само ја погледна беше практично. 860 00:37:52,130 --> 00:37:52,717 Је. 861 00:37:52,717 --> 00:37:55,050 ЗВУЧНИК 15: Состојбата доаѓа откако наместо порано? 862 00:37:55,050 --> 00:37:55,841 АНДИ Пенг: Токму така. 863 00:37:55,841 --> 00:37:57,984 Па, таа рече дека состојбата доаѓа по него, не пред тоа. 864 00:37:57,984 --> 00:38:00,400 На крајот на краиштата, разликата помеѓу оваа и циклус, додека 865 00:38:00,400 --> 00:38:03,597 е тоа што вие сте само ќе се направи што и во внатрешноста на оваа, без оглед на 866 00:38:03,597 --> 00:38:06,430 дали или не вашата состојба е вистина, а потоа и да се провери состојбата. 867 00:38:06,430 --> 00:38:08,304 Значи во овој случај, вие сте always-- на овој начин, 868 00:38:08,304 --> 00:38:11,240 ти си секогаш си сигурен она што е внатре трае најмалку 869 00:38:11,240 --> 00:38:14,230 еднаш пред контрола да се види ако сакате тоа да се кандидира повторно. 870 00:38:14,230 --> 00:38:18,040 >> И тука е пример од кога ќе ја користите. 871 00:38:18,040 --> 00:38:22,570 Така на пример, ако сакав да се има променлива од тип int навеле возраста, 872 00:38:22,570 --> 00:38:25,640 и јас сакам да го извести корисникот за нивната возраст, 873 00:38:25,640 --> 00:38:27,910 Одам да се направи printf () Колку години имаш? 874 00:38:27,910 --> 00:38:30,330 возраст = GetInt (), која се прашува корисникот. 875 00:38:30,330 --> 00:38:32,140 >> И некои луѓе ќе бидат навистина досадно. 876 00:38:32,140 --> 00:38:34,931 И да не сакате на грешки во вашиот програма на некој внесување како, 877 00:38:34,931 --> 00:38:36,680 ох сум негативен 4 години или whatever. 878 00:38:36,680 --> 00:38:39,900 Во кој случај, ако тие направат тоа, ова го оценува 879 00:38:39,900 --> 00:38:43,150 да точно, што значи дека ќе одам да се мора да продолжи да оди напред и да правиш ова. 880 00:38:43,150 --> 00:38:45,310 Така што ова се случува да се задржи повторно прашува корисникот 881 00:38:45,310 --> 00:38:47,960 да ви даде како вистински возраст број и тоа е 882 00:38:47,960 --> 00:38:51,930 ќе продолжи да оди напред и redoing тоа се додека не ви даде вистинска возраст 883 00:38:51,930 --> 00:38:56,900 поголем од еден, или не е нула. 884 00:38:56,900 --> 00:38:58,020 >> Така трага, трага. 885 00:38:58,020 --> 00:39:02,263 Ова ќе биде многу, многу корисни за една од вашите pset проблеми. 886 00:39:02,263 --> 00:39:04,155 Је. 887 00:39:04,155 --> 00:39:05,580 >> ЗВУЧНИК 16: Whoops, жал. 888 00:39:05,580 --> 00:39:06,288 >> АНДИ Пенг: Да. 889 00:39:06,288 --> 00:39:09,424 >> ЗВУЧНИК 16: Дали постојат, а не да биде кретену, but-- 890 00:39:09,424 --> 00:39:10,340 АНДИ Пенг: Не се грижи. 891 00:39:10,340 --> 00:39:11,990 ЗВУЧНИК 16: --are таму различни правила тука, 892 00:39:11,990 --> 00:39:13,810 или не сте само да заборавите да се стави цитат? 893 00:39:13,810 --> 00:39:14,250 >> АНДИ Пенг: О, да. 894 00:39:14,250 --> 00:39:15,530 За жал, тоа е сосема ми е лошо. 895 00:39:15,530 --> 00:39:17,100 Што дефинитивно било би требало да биде еден цитат. 896 00:39:17,100 --> 00:39:17,690 Добар улов. 897 00:39:17,690 --> 00:39:18,800 Дека не би се кандидира. 898 00:39:18,800 --> 00:39:22,070 899 00:39:22,070 --> 00:39:22,830 ВО РЕД. 900 00:39:22,830 --> 00:39:26,160 >> Па последниот тип на јамка ќе разговараме за и, во крајна линија, вид на повеќето 901 00:39:26,160 --> 00:39:28,854 комплекс е за телефонска линија. 902 00:39:28,854 --> 00:39:30,770 Не грижете се ако не Знаеш што значи тоа. 903 00:39:30,770 --> 00:39:32,061 Тоа е прилично збунувачки на прв. 904 00:39:32,061 --> 00:39:33,640 Ние ќе одиме во текот на пример. 905 00:39:33,640 --> 00:39:37,040 >> Сето она што се случува во за телефонска линија е дека имате три извештаи 906 00:39:37,040 --> 00:39:38,380 дека си оди за да се вклучат. 907 00:39:38,380 --> 00:39:42,130 Така и за одредена работа, ти си случува да се иницијализира со променлива. 908 00:39:42,130 --> 00:39:45,280 Ви се случува да додадете услов да која овој циклус ќе продолжи да работи. 909 00:39:45,280 --> 00:39:47,790 И тогаш, на крајот на јамка, си оди за да се освежат. 910 00:39:47,790 --> 00:39:50,248 Можете да го обновите на променливата што сакате да ги пратите. 911 00:39:50,248 --> 00:39:52,530 Па ние обично користат за јамки за кога ќе 912 00:39:52,530 --> 00:39:55,390 сакате да се кандидира еден циклус по одредена сума на време 913 00:39:55,390 --> 00:39:58,900 и ние веќе знаеме, О сакам овој циклус да се изврши како 10 пати, 914 00:39:58,900 --> 00:40:03,060 тогаш можете do-- јас ќе одам над пример на следната страница. 915 00:40:03,060 --> 00:40:07,830 >> Па еве на пример, во нула, ако сакаше нешто да се повторува 10 пати, 916 00:40:07,830 --> 00:40:10,790 Се што требаше да кажам беше: Повторете 10 пати сакам Saj! 917 00:40:10,790 --> 00:40:15,260 што е повеќе прифатлива знак на поддршка за нас 918 00:40:15,260 --> 00:40:17,120 наместо бесконечна јамка. 919 00:40:17,120 --> 00:40:19,920 Тука, како ќе се транзиција на C и запишување 920 00:40:19,920 --> 00:40:26,040 што е за int-- јас ќе одам да се создаде или декларирате променлива од тип int i име. 921 00:40:26,040 --> 00:40:30,089 Одам да се иницијализира тоа да се 0, така што i = 0; 922 00:40:30,089 --> 00:40:31,630 и тоа ќе биде мојата состојба. 923 00:40:31,630 --> 00:40:33,860 Па јас е помал од 10. 924 00:40:33,860 --> 00:40:36,096 А потоа на end-- на последната изјава сте 925 00:40:36,096 --> 00:40:38,710 случува да имаат е ажурирање на Што се случува со променливата i 926 00:40:38,710 --> 00:40:40,206 на крајот од вашиот за телефонска линија. 927 00:40:40,206 --> 00:40:42,830 Така, тоа е вид на збунувачки, бидејќи различни делови од оваа линија 928 00:40:42,830 --> 00:40:44,871 се случуваат во различни типови на јамка. 929 00:40:44,871 --> 00:40:46,746 Но, јас ќе одам во текот на pseudocode пример за тоа 930 00:40:46,746 --> 00:40:50,360 а можеби и се објасни ова само малку подобро. 931 00:40:50,360 --> 00:40:51,500 >> Значи тука. 932 00:40:51,500 --> 00:40:52,929 Тоа е циклус кој го видоа. 933 00:40:52,929 --> 00:40:55,470 Pseudocode во суштина, она што што се случува во оваа програма, 934 00:40:55,470 --> 00:40:57,940 Прв пат сум создавањето Јас, се иницијализира на 0. 935 00:40:57,940 --> 00:41:00,440 Јас сум проверка за да види дали е помалку од 10, во кој случај 936 00:41:00,440 --> 00:41:02,840 прв пат е бидејќи 0 е помалку од 10. 937 00:41:02,840 --> 00:41:04,727 Така јамка се случува да се кандидира. 938 00:41:04,727 --> 00:41:06,310 А потоа јас ќе одам да се печати ја оваа линија. 939 00:41:06,310 --> 00:41:11,240 А потоа на крајот на оваа линија, право тука, јас ќе одам да направите прираст јас, јас ++, 940 00:41:11,240 --> 00:41:13,370 сето она што значи е што ја зголемува по еден. 941 00:41:13,370 --> 00:41:15,460 >> Па јас сега е 1. 942 00:41:15,460 --> 00:41:17,960 Поради тоа што некогаш беше 0, ако јас прираст тоа е, тоа е сега 1. 943 00:41:17,960 --> 00:41:19,610 А потоа јас ќе одам да се вратиш на почетокот на јамка 944 00:41:19,610 --> 00:41:20,730 и јас се провери состојбата. 945 00:41:20,730 --> 00:41:22,080 Состојба се уште е вистина? 946 00:41:22,080 --> 00:41:24,030 Да, 1 е уште помалку од 10. 947 00:41:24,030 --> 00:41:27,370 Па затоа се случува да се печати ова, повторно, оди, а потоа јас прираст, и проверете 948 00:41:27,370 --> 00:41:29,180 состојбата континуирано, континуирано, 949 00:41:29,180 --> 00:41:33,290 додека на крајот се до точка каде што е 10. 950 00:41:33,290 --> 00:41:36,300 >> Ви се случува да се печати ја оваа 10 пати а потоа јас ќе се изедначи 10. 951 00:41:36,300 --> 00:41:37,800 Си оди за да се провери состојбата. 952 00:41:37,800 --> 00:41:38,760 Е 10 помалку од 10? 953 00:41:38,760 --> 00:41:40,370 Не, тоа не е точна. 954 00:41:40,370 --> 00:41:43,020 Така, овој циклус не се случува да се кандидира, тоа се случува да се скрши, 955 00:41:43,020 --> 00:41:45,040 и ви се случува да го продолжи со вашиот код. 956 00:41:45,040 --> 00:41:47,550 >> Така што вие момци да видите, ова е навистина одличен пример 957 00:41:47,550 --> 00:41:53,110 на јамка можете да програма во која работи за одреден износ од пати. 958 00:41:53,110 --> 00:41:54,457 Секој еден јасен? 959 00:41:54,457 --> 00:41:54,956 Је. 960 00:41:54,956 --> 00:41:59,060 >> ЗВУЧНИК 17: Како за зголемување експоненцијално, тоа е различни кодирање? 961 00:41:59,060 --> 00:42:02,060 >> АНДИ Пенг: Вие can-- ќе одиме над ова во следниот слајд. 962 00:42:02,060 --> 00:42:03,350 Добро прашање. 963 00:42:03,350 --> 00:42:05,910 Е anyone-- пред да се пресели on-- некој воопшто збунет, 964 00:42:05,910 --> 00:42:07,640 бидејќи ова е навистина тежок концепт. 965 00:42:07,640 --> 00:42:09,510 Не се грижи, ако you're-- ОК. 966 00:42:09,510 --> 00:42:10,010 Кул. 967 00:42:10,010 --> 00:42:12,836 968 00:42:12,836 --> 00:42:13,490 >> Во ред. 969 00:42:13,490 --> 00:42:14,610 Само општо слајд. 970 00:42:14,610 --> 00:42:18,020 Ова додека јамка прави иста работа за телефонска линија беше. 971 00:42:18,020 --> 00:42:19,631 Тоа е само напишано поинаку. 972 00:42:19,631 --> 00:42:22,130 Вие момци можат да се внимателно слајдови во својата погодност подоцна. 973 00:42:22,130 --> 00:42:24,880 Но, само знам дека има повеќе начин на пишување на истото 974 00:42:24,880 --> 00:42:28,300 да се случи со различни петелки. 975 00:42:28,300 --> 00:42:28,800 ВО РЕД. 976 00:42:28,800 --> 00:42:32,380 >> Значи, сега ќе го добиеме во прашање на она што ако имаме јамка внатрешноста на јамка. 977 00:42:32,380 --> 00:42:35,810 Ние сме добивање во вистински Основање тип работи тука. 978 00:42:35,810 --> 00:42:40,640 Кога ќе сакаат да се прават работите на повеќе Времето во внатрешноста на други работи 979 00:42:40,640 --> 00:42:44,129 кои ги прават работите повеќе пати, ќе сакаат она што се нарекува вгнездени за телефонска линија. 980 00:42:44,129 --> 00:42:47,420 За оние од вас кои први го гледаат ова и се многу збунети, сите што го правиме тука 981 00:42:47,420 --> 00:42:50,580 е да се има за телефонска линија, каде што имаме променлива на ред. 982 00:42:50,580 --> 00:42:54,500 Но во него, ние исто така имаме уште една за телефонска линија на променлива наречена една колона. 983 00:42:54,500 --> 00:42:58,560 И Силно препорачуваме на сите вас кои се збунети прво да се задржи 984 00:42:58,560 --> 00:43:00,310 track-- подготви ова, се подготви ова. 985 00:43:00,310 --> 00:43:03,000 Не обидувај се да се само причина низ него, подготви ја. 986 00:43:03,000 --> 00:43:06,630 >> Во вашата глава, на ова парче хартија, или што, пишуваат ред, 987 00:43:06,630 --> 00:43:08,614 ги пратите на она ред е еднаква. 988 00:43:08,614 --> 00:43:10,780 Пишувам колумна, да ги пратите на она што е еднакво на колоната. 989 00:43:10,780 --> 00:43:13,490 И да ги пратите на она што е печатење со секое повторување. 990 00:43:13,490 --> 00:43:16,320 Секој повторување на овој циклус, секој повторување на тоа поголемо јамка, 991 00:43:16,320 --> 00:43:17,820 задржи само по логиката. 992 00:43:17,820 --> 00:43:20,190 И јас ви гарантирам, ќе ви се допадне она што го гледате, 993 00:43:20,190 --> 00:43:24,307 бидејќи тоа е исто така многу се применува за вашиот проблем сетови. 994 00:43:24,307 --> 00:43:24,806 Кул. 995 00:43:24,806 --> 00:43:27,501 996 00:43:27,501 --> 00:43:28,000 Во ред. 997 00:43:28,000 --> 00:43:30,723 Значи најважно дека вие момци се веројатно сите 998 00:43:30,723 --> 00:43:32,400 размислување за тоа токму сега, се вашиот проблем Постави 1s, 999 00:43:32,400 --> 00:43:33,650 што се должи четврток / петок. 1000 00:43:33,650 --> 00:43:36,890 1001 00:43:36,890 --> 00:43:39,710 >> Water.c во вашата програма, алудираат ви се случува да имаат 1002 00:43:39,710 --> 00:43:41,590 да го извести корисникот за влез. 1003 00:43:41,590 --> 00:43:43,640 Во рамките на вашиот mario.c програма ви се случува да имаат 1004 00:43:43,640 --> 00:43:46,431 да се користи за вгнездени јамка, која е за телефонска линија во внатрешноста на за телефонска линија, 1005 00:43:46,431 --> 00:43:50,247 да се печати блок на пирамида, во суштина како што Марио има да скокаат преку. 1006 00:43:50,247 --> 00:43:53,330 А потоа и во внатрешноста на вашиот greedy-- или можеби Прават промени, ако некој од вас момци 1007 00:43:53,330 --> 00:43:55,740 слушнала that-- ви се случува да треба да бидат многу 1008 00:43:55,740 --> 00:43:58,160 Внимавајте на првиот вредности со подвижна запирка. 1009 00:43:58,160 --> 00:44:01,860 Се сеќавам лебдечки децимали и цели броеви не се иста работа. 1010 00:44:01,860 --> 00:44:03,620 Ги пратите на кој е кој. 1011 00:44:03,620 --> 00:44:05,953 И ви се случува да се користи условно извештаи, како и. 1012 00:44:05,953 --> 00:44:09,070 1013 00:44:09,070 --> 00:44:10,940 >> Добро, последно нешто. 1014 00:44:10,940 --> 00:44:12,770 Имам остави неколку минути. 1015 00:44:12,770 --> 00:44:13,460 Стил. 1016 00:44:13,460 --> 00:44:19,320 Така што ова е нешто што не се всушност, влијае на ефикасноста, 1017 00:44:19,320 --> 00:44:21,010 или вистинските работи на вашиот код. 1018 00:44:21,010 --> 00:44:24,380 Сепак, тоа ни ефекти како вашиот одделение, како и вашите читатели. 1019 00:44:24,380 --> 00:44:27,290 Тоа ефекти себе, ако сте се обидува да најде проблемот. 1020 00:44:27,290 --> 00:44:30,700 Тоа ефекти на читливост на вашиот код. 1021 00:44:30,700 --> 00:44:34,070 >> Па стил, како и кога ќе се обидуваш да се стил есеј за англиски јазик, ако 1022 00:44:34,070 --> 00:44:36,070 немале став, имате се што вид 1023 00:44:36,070 --> 00:44:39,190 на измешани заедно на една линија, тоа го прави навистина тешко за секого 1024 00:44:39,190 --> 00:44:42,620 да ја прочитате вашата есеј, дури и ако вашите поени се логички звук. 1025 00:44:42,620 --> 00:44:44,390 Истото во програмирање. 1026 00:44:44,390 --> 00:44:47,910 Ќе може да има нејасни ужасно Scaz код кој ќе ги покрие, 1027 00:44:47,910 --> 00:44:49,660 и се уште може да работи и да функционира. 1028 00:44:49,660 --> 00:44:53,110 Но, за нас, како вашата прекрасна TAS, кој ќе биде за читање и оценување на вашите PSets, 1029 00:44:53,110 --> 00:44:54,460 тоа не е многу убаво. 1030 00:44:54,460 --> 00:44:56,859 >> Затоа ве молам, за доброто од нас и себе си, 1031 00:44:56,859 --> 00:44:58,900 кога се обидувате да го поправи проблем во вашиот код, 1032 00:44:58,900 --> 00:45:00,774 а ти се обидуваш да читај свој код, бидете 1033 00:45:00,774 --> 00:45:03,910 Дали сте сигурни дека да се следат некои конвенции дека ние ќе треба да се премине. 1034 00:45:03,910 --> 00:45:04,510 >> Значи прво. 1035 00:45:04,510 --> 00:45:07,070 Им даде на вашиот променливи осмислени имиња. 1036 00:45:07,070 --> 00:45:11,450 Ако сакате да ја запази цел број наречен возраст, ве молиме да го именува возраст. 1037 00:45:11,450 --> 00:45:12,875 Не го именува висина. 1038 00:45:12,875 --> 00:45:14,750 Кога ќе се обидуваш да се чување на возраст во висина, 1039 00:45:14,750 --> 00:45:16,722 тоа го прави сето она многу збунувачки за нас. 1040 00:45:16,722 --> 00:45:17,930 Ние не сакаме да се мешаат. 1041 00:45:17,930 --> 00:45:19,180 Не ви се допаѓа да се мешаат. 1042 00:45:19,180 --> 00:45:20,350 Никој не сака да се меша. 1043 00:45:20,350 --> 00:45:23,100 Ако си оди за да се направи нешто, го именува нешто значајно. 1044 00:45:23,100 --> 00:45:26,440 >> Меѓутоа, во за телефонска линија, една карактер променливи се обично добро. 1045 00:45:26,440 --> 00:45:31,350 А за телефонска линија, ако сакате само јас, и ј, к, само се чувствуваат слободни да го направи тоа. 1046 00:45:31,350 --> 00:45:32,670 >> Конзистентна иницијализација. 1047 00:45:32,670 --> 00:45:33,770 Значи она што значи тоа? 1048 00:45:33,770 --> 00:45:37,600 Тоа значи дека технички, теоретски, можете да иницира и да се создаде 1049 00:45:37,600 --> 00:45:40,140 повеќе променливи на иста линија. 1050 00:45:40,140 --> 00:45:42,820 Така на пример, можам да се создаде цел број наречен scaz_age, 1051 00:45:42,820 --> 00:45:47,110 и број наречен andi_age = 20, и цел број наречен jason_age 1052 00:45:47,110 --> 00:45:48,090 на иста линија. 1053 00:45:48,090 --> 00:45:52,060 И јас исто така може да се додели само еден од нив, а не на другите да вредности. 1054 00:45:52,060 --> 00:45:54,142 Бараме од вас немојте да го направите тоа. 1055 00:45:54,142 --> 00:45:57,350 Бидејќи тука сте во основа создадена три променливи, но само еден од нив 1056 00:45:57,350 --> 00:45:58,295 всушност, има вредност. 1057 00:45:58,295 --> 00:46:00,170 И тогаш кога сме обидува да го прочитате вашиот код, 1058 00:46:00,170 --> 00:46:01,850 или ако сте се обидува да се поправи проблем во вашиот код, 1059 00:46:01,850 --> 00:46:03,340 тоа е многу збунувачки да се следат. 1060 00:46:03,340 --> 00:46:09,300 Па само за својата читливост, за нашите читливост, не го прават тоа. 1061 00:46:09,300 --> 00:46:10,355 >> Конзистентна големите загради. 1062 00:46:10,355 --> 00:46:12,980 Некои луѓе како да се стави нивната големи загради во различни места. 1063 00:46:12,980 --> 00:46:14,100 Тоа навистина не е важно. 1064 00:46:14,100 --> 00:46:17,900 Само бидете сигурни дека сте доследни во вашата сопствен код за тоа каде сакате да ги стави. 1065 00:46:17,900 --> 00:46:18,950 >> Конзистентна проред. 1066 00:46:18,950 --> 00:46:22,040 Ако се стави простор по за телефонска линија, секогаш го правам тоа. 1067 00:46:22,040 --> 00:46:24,930 Не само како вид на го направи тоа На некои места, не го прават тоа во другите. 1068 00:46:24,930 --> 00:46:26,580 Само да биде конзистентна. 1069 00:46:26,580 --> 00:46:29,500 >> Второ, ако некој би сакал да се внимателно Стил Водич на CS50, 1070 00:46:29,500 --> 00:46:33,230 ние официјално да има водич стил кој сите овие конвенции ти го кажува, 1071 00:46:33,230 --> 00:46:34,890 плус повеќе. 1072 00:46:34,890 --> 00:46:35,530 Тоа е онлајн. 1073 00:46:35,530 --> 00:46:38,670 Тоа е како cs50.net/style или нешто слично. 1074 00:46:38,670 --> 00:46:40,180 Можете да го Google. 1075 00:46:40,180 --> 00:46:41,399 >> Конзистентност е клучна. 1076 00:46:41,399 --> 00:46:43,190 Па не се грижи што другите луѓе го прават, 1077 00:46:43,190 --> 00:46:46,180 само бидете сигурни дека сте доследни во рамките на својата код. 1078 00:46:46,180 --> 00:46:50,570 Секој имате било какви прашања во врска со тоа? 1079 00:46:50,570 --> 00:46:51,070 Је. 1080 00:46:51,070 --> 00:46:53,370 >> ЗВУЧНИК 18: Значи правилна работа да се направи со иницијализација е само 1081 00:46:53,370 --> 00:46:56,130 имаат сите нив во посебна линија, е дека она што си ти што зборуваш? 1082 00:46:56,130 --> 00:46:58,850 >> АНДИ Пенг: Па јас ретко се случи ова. 1083 00:46:58,850 --> 00:47:02,230 Но, ако си сакал да, ако си сакал да бидам како заштеда на простор во вашиот код, 1084 00:47:02,230 --> 00:47:04,000 или што и да, можете да го направите тоа. 1085 00:47:04,000 --> 00:47:07,800 Ве молиме да се само не се иницијализира едно нешто, а не на другите. 1086 00:47:07,800 --> 00:47:12,600 Значи, ако сакате да се направи scaz_age int, int andi_age, int jason_age, тоа е во ред. 1087 00:47:12,600 --> 00:47:15,600 Само не се иницијализира еден а не на другите е за сите. 1088 00:47:15,600 --> 00:47:18,380 1089 00:47:18,380 --> 00:47:19,904 >> Прашања? 1090 00:47:19,904 --> 00:47:20,850 Во ред. 1091 00:47:20,850 --> 00:47:24,610 Одам да се помине надвор од микрофон, и ласерски покажувач, 1092 00:47:24,610 --> 00:47:28,862 и диригентската палка на Scaz во овој момент. 1093 00:47:28,862 --> 00:47:29,808 Ова е непријатно. 1094 00:47:29,808 --> 00:47:32,650 1095 00:47:32,650 --> 00:47:33,200 Еве го. 1096 00:47:33,200 --> 00:47:34,408 >> Брајан SCASSELLATI: Ви благодарам. 1097 00:47:34,408 --> 00:47:42,500 1098 00:47:42,500 --> 00:47:43,380 Како е тоа за звук? 1099 00:47:43,380 --> 00:47:46,420 1100 00:47:46,420 --> 00:47:47,900 Звукот е добар? . 1101 00:47:47,900 --> 00:47:49,220 Одличен. 1102 00:47:49,220 --> 00:47:50,350 ВО РЕД. 1103 00:47:50,350 --> 00:47:52,110 Значи, Здраво на сите. 1104 00:47:52,110 --> 00:47:56,540 >> Одам да се обиде да работат преку практичен пример со вас. 1105 00:47:56,540 --> 00:48:00,850 И ние ќе треба да се користи е CS50 развој на животната средина, што се нарекува 1106 00:48:00,850 --> 00:48:03,120 на интегрирана развојна околина. 1107 00:48:03,120 --> 00:48:05,145 И сте виделе ова демонстрираа во предавањето. 1108 00:48:05,145 --> 00:48:07,520 Проблем и во собата 1, ти си ќе имаат можност 1109 00:48:07,520 --> 00:48:10,890 да го користат, и се позанимавам со тоа, и да се навикне на тоа, 1110 00:48:10,890 --> 00:48:13,640 затоа што ние ќе треба да го користам па сè до крајот на семестарот. 1111 00:48:13,640 --> 00:48:20,350 >> Така што во овој ИРО, се она што изгледа како многу традиционални прелистувачот на датотеки 1112 00:48:20,350 --> 00:48:21,890 во текот на една страна. 1113 00:48:21,890 --> 00:48:24,360 Имаш еден дел до врвот каде одите 1114 00:48:24,360 --> 00:48:28,850 за да ја видите вашиот изворен код, вашата Cfile, кодот што ќе пишувам. 1115 00:48:28,850 --> 00:48:31,880 И долу на дното, ќе има терминален прозорец 1116 00:48:31,880 --> 00:48:36,330 која ќе биде со користење на двете компајлирате вашиот програмата 1117 00:48:36,330 --> 00:48:39,090 и да се кандидира или изврши вашата програма. 1118 00:48:39,090 --> 00:48:40,100 ВО РЕД. 1119 00:48:40,100 --> 00:48:46,560 >> Па само да ни даде малку основа, во кој терминал, 1120 00:48:46,560 --> 00:48:48,930 си оди за да биде преку сет од команди 1121 00:48:48,930 --> 00:48:53,040 кои се стандард во текот на команди повеќето од Unix или Linux системи. 1122 00:48:53,040 --> 00:48:55,890 И така, ако некогаш сте се користи било каква форма на Unix, Убунту, 1123 00:48:55,890 --> 00:48:59,140 или било која од други вкусови, овие се случува да изгледа познато. 1124 00:48:59,140 --> 00:49:00,890 >> Ако не сте, не се грижи. 1125 00:49:00,890 --> 00:49:02,830 Нема ништо комплицирано за нив. 1126 00:49:02,830 --> 00:49:05,330 Тие се само со користење на различни синтакса, различно именување 1127 00:49:05,330 --> 00:49:07,630 конвенција отколку што сум видел. 1128 00:49:07,630 --> 00:49:12,190 >> Така да се листа од датотеките во одреден директориум, 1129 00:49:12,190 --> 00:49:15,310 тие се случува да се користи команда наречен ls, или листата. 1130 00:49:15,310 --> 00:49:18,010 Ако сакате да се види сè со сите детали, 1131 00:49:18,010 --> 00:49:21,535 што ќе го користите командната линија расправија со ls -l. 1132 00:49:21,535 --> 00:49:23,910 И тоа ќе ви покажам се што во повеќе детали, вклучувајќи ги и 1133 00:49:23,910 --> 00:49:26,270 дозволите за датотеката. 1134 00:49:26,270 --> 00:49:31,190 >> За да го смените именик, ќе ја користите командата cd. 1135 00:49:31,190 --> 00:49:35,180 И ќе бидете во можност да го промени директориумот и да одат во вашиот домашен директориум. 1136 00:49:35,180 --> 00:49:38,500 Тоа е само ЦД со сите себе, CD со две 1137 00:49:38,500 --> 00:49:42,930 точки ќе ви се врати до еден нивото на претходните директориум. 1138 00:49:42,930 --> 00:49:46,400 И исто така можете ЦД на поддиректориум со впишување на CD 1139 00:49:46,400 --> 00:49:48,500 и името на тој поддиректориум. 1140 00:49:48,500 --> 00:49:50,540 >> Можете исто така да креирате нови директориуми. 1141 00:49:50,540 --> 00:49:52,790 И ние ќе треба да одиме преку ова во само една минута. 1142 00:49:52,790 --> 00:49:54,498 Туку само да се стави се што е на екранот. 1143 00:49:54,498 --> 00:49:56,310 Така што ќе може да ги види. 1144 00:49:56,310 --> 00:50:00,420 >> Вие исто така ќе имаат можност да се манипулира со датотеки директно 1145 00:50:00,420 --> 00:50:02,100 од командната линија. 1146 00:50:02,100 --> 00:50:06,059 Вие ќе бидете во можност да ги копирате, да ги преместите, или да ги отстрани, 1147 00:50:06,059 --> 00:50:07,600 што е, ефикасно, да ги избришеш. 1148 00:50:07,600 --> 00:50:10,310 1149 00:50:10,310 --> 00:50:15,350 >> ИРО на CS50 ви дава целосна силата на аргументите на командната линија. 1150 00:50:15,350 --> 00:50:20,280 А тоа значи дека исто така можете да направи многу опасни работи. 1151 00:50:20,280 --> 00:50:21,560 ВО РЕД. 1152 00:50:21,560 --> 00:50:25,010 На пример, можете да се отстрани, или што е бриши, 1153 00:50:25,010 --> 00:50:28,750 датотека без да сака за потврда. 1154 00:50:28,750 --> 00:50:31,820 И може дури да се отстрани recursively-- тоа е 1155 00:50:31,820 --> 00:50:38,940 цртичка r flag-- цела поддиректориум и сите на неговата содржина. 1156 00:50:38,940 --> 00:50:39,660 ВО РЕД. 1157 00:50:39,660 --> 00:50:42,940 Тие се наведени во црвена затоа што треба да се размислува "Опасност" секој пат кога 1158 00:50:42,940 --> 00:50:45,000 ќе видите тие работи. 1159 00:50:45,000 --> 00:50:45,920 ВО РЕД. 1160 00:50:45,920 --> 00:50:46,420 Во ред. 1161 00:50:46,420 --> 00:50:50,090 1162 00:50:50,090 --> 00:50:53,430 >> Сега, конечно, работите кои се ќе биде навистина вредни за вас, 1163 00:50:53,430 --> 00:50:57,270 постојат неколку добри трикови да знаете како сте навигацијата 1164 00:50:57,270 --> 00:50:59,190 преку овој терминален прозорец. 1165 00:50:59,190 --> 00:51:03,590 Прво, можете да го исчистите екранот на било кое време со само пишете во јасна. 1166 00:51:03,590 --> 00:51:06,310 И ви се случува да се види ми го направи тоа доста често. 1167 00:51:06,310 --> 00:51:09,990 Можете исто така да само приказ текстот на датотека 1168 00:51:09,990 --> 00:51:13,992 преку внесување на повеќе, а потоа името на датотеката. 1169 00:51:13,992 --> 00:51:17,200 Тогаш ќе бидат во можност да дојдете назад и назад со што само со празно место 1170 00:51:17,200 --> 00:51:19,010 и стрелките на тастатурата. 1171 00:51:19,010 --> 00:51:25,450 >> Ако имаш, како што направивме денеска во предавањето, програма која се извршува постојано 1172 00:51:25,450 --> 00:51:29,190 во бесконечна јамка, можете може да го запре таа програма 1173 00:51:29,190 --> 00:51:35,160 од извршување со впишување на контрола, кој е држење контрола-C. 1174 00:51:35,160 --> 00:51:38,360 И можеби ќе треба да се направи ова повеќе пати. 1175 00:51:38,360 --> 00:51:40,620 Компјутерот добива далеку понапред од вас. 1176 00:51:40,620 --> 00:51:43,380 И ти понекогаш треба да се го даде неколку обиди 1177 00:51:43,380 --> 00:51:46,280 пред тоа, всушност, ќе се дојде преку. 1178 00:51:46,280 --> 00:51:48,760 >> Вие исто така ќе бидат во можност да вид преку командите 1179 00:51:48,760 --> 00:51:54,230 која што ја внесе со користење на клуч, Копче со стрелка, а потоа и на стрелката надолу клуч. 1180 00:51:54,230 --> 00:51:57,560 И она што е најкорисен е наместо на пишување од долги имиња на датотеки, 1181 00:51:57,560 --> 00:52:02,209 ќе бидете во можност да го користите јазичиња автокомплетирање неколку упатства. 1182 00:52:02,209 --> 00:52:04,750 Сега ние ќе треба да се демонстрира сите оние во само една секунда. 1183 00:52:04,750 --> 00:52:06,780 Значи, ако не се сеќавам нив, не се грижи. 1184 00:52:06,780 --> 00:52:10,780 Тоа се работи дека ќе земам и да го користите како што одиме понатаму. 1185 00:52:10,780 --> 00:52:11,470 ВО РЕД. 1186 00:52:11,470 --> 00:52:18,830 >> Па во C-- разлика Scratch-- Ц е компајлирана јазик. 1187 00:52:18,830 --> 00:52:23,210 Тоа значи дека ние ќе треба да се земе еден извор file-- тоа е текстот што го пишувате, 1188 00:52:23,210 --> 00:52:26,500 командите што ви пишувам, printf () извештаи, петелките, 1189 00:52:26,500 --> 00:52:32,580 сè што else-- и ние ќе да се земе дека датотека и да го предаде 1190 00:52:32,580 --> 00:52:34,670 на програма наречена компајлерот. 1191 00:52:34,670 --> 00:52:39,850 >> Потоа компајлерот ќе потрае дека текстот што сте го напишале 1192 00:52:39,850 --> 00:52:43,270 и го преведе на бинарни инструкции 1193 00:52:43,270 --> 00:52:46,010 дека вашиот компјутер е всушност, се случува употреба. 1194 00:52:46,010 --> 00:52:49,700 Тоа се вика на објектот или извршна датотека. 1195 00:52:49,700 --> 00:52:55,320 Ако се погледне во оваа датотека, си оди за да го видиш кодот кој што сте го напишале. 1196 00:52:55,320 --> 00:52:59,480 Ако се погледне во оваа датотека, си оди за да го видиш случајна секвенца од знаци 1197 00:52:59,480 --> 00:53:01,680 кои не прават смисла она. 1198 00:53:01,680 --> 00:53:03,250 Тоа е затоа што тоа е бинарно. 1199 00:53:03,250 --> 00:53:05,560 Тоа не е наменета за вас да биде за читање. 1200 00:53:05,560 --> 00:53:08,690 >> Сепак, секој пат кога ќе сакате да го работи нешто, што ви се случува 1201 00:53:08,690 --> 00:53:13,670 да се работи е овој објект датотека. 1202 00:53:13,670 --> 00:53:19,110 Значи, кога ќе се работи со овие датотеки, ќе запише датотека во В. 1203 00:53:19,110 --> 00:53:23,400 Ние тогаш ќе се компајлира, со користење на команда како шминка која ќе се повика на 1204 00:53:23,400 --> 00:53:27,070 компајлерот ѕвекот за јазик C. 1205 00:53:27,070 --> 00:53:31,530 И дека ќе се произведуваат на објект поднесе, како надвор, или во овој случај, 1206 00:53:31,530 --> 00:53:36,580 името, моето досие, дека јас сум се стави во. 1207 00:53:36,580 --> 00:53:37,780 Во ред. 1208 00:53:37,780 --> 00:53:39,790 >> Значи, да се, всушност, се обиде ова. 1209 00:53:39,790 --> 00:53:42,850 Па дојдов со еден пример за она што сакав да се обиде. 1210 00:53:42,850 --> 00:53:47,380 И една од работите кои ме фасцинира е анимација. 1211 00:53:47,380 --> 00:53:51,010 Па ние ќе се обидеме да се направи малку анимација 1212 00:53:51,010 --> 00:53:53,760 користејќи само ASCII карактери. 1213 00:53:53,760 --> 00:53:56,470 Ликови можеме да се печати лесно сега. 1214 00:53:56,470 --> 00:54:00,890 >> Значи тука е мојот најдобар обид во создавање на за вас 1215 00:54:00,890 --> 00:54:07,005 анимација на зајаче трчање преку високата трева. 1216 00:54:07,005 --> 00:54:07,505 Ене го. 1217 00:54:07,505 --> 00:54:10,150 1218 00:54:10,150 --> 00:54:10,670 ВО РЕД. 1219 00:54:10,670 --> 00:54:14,050 Па тој не е водење уште, но тој е стои таму во високата трева. 1220 00:54:14,050 --> 00:54:17,810 >> Сега, ако јас се аниматор, во старото училиште 1221 00:54:17,810 --> 00:54:20,860 верзија на анимација, она што можам ќе стори се што ќе произведе 1222 00:54:20,860 --> 00:54:23,640 слика на овој зајаче во тревата. 1223 00:54:23,640 --> 00:54:25,390 А потоа ќе се произведуваат друг picture-- 1224 00:54:25,390 --> 00:54:30,600 друг она што се нарекува cell-- дека беше зајаче само малку се помести. 1225 00:54:30,600 --> 00:54:34,870 А потоа една третина оној кој имал зајаче се пресели малку понатаму. 1226 00:54:34,870 --> 00:54:40,610 >> И јас би се произведе цела секвенца на овие клетки. 1227 00:54:40,610 --> 00:54:44,220 Некои каде зајаче е завршена излез на левата страна. 1228 00:54:44,220 --> 00:54:47,050 А потоа се движи полека, еден од еден кон средината. 1229 00:54:47,050 --> 00:54:51,120 А потоа од средината во текот на правото. 1230 00:54:51,120 --> 00:54:55,760 И ако би бил тогаш, навистина среќа, можев да го стави заедно 1231 00:54:55,760 --> 00:54:57,970 и јас би можеле да ги анимира. 1232 00:54:57,970 --> 00:55:00,370 И таму е мојата зајаче се протега низ трева. 1233 00:55:00,370 --> 00:55:02,310 >> Тоа е мојата голема PowerPoint трик за тој ден. 1234 00:55:02,310 --> 00:55:02,809 ВО РЕД. 1235 00:55:02,809 --> 00:55:04,760 Па ова е добра како што добива. 1236 00:55:04,760 --> 00:55:05,260 ВО РЕД. 1237 00:55:05,260 --> 00:55:08,455 Значи, еве уште еднаш, тука е нашата зајаче се протега низ трева. 1238 00:55:08,455 --> 00:55:09,217 >> ЗВУЧНИК 19: Повторно. 1239 00:55:09,217 --> 00:55:11,050 Брајан SCASSELLATI: Еден повеќе време, во ред. 1240 00:55:11,050 --> 00:55:11,940 Има вашиот зајаче. 1241 00:55:11,940 --> 00:55:12,940 ВО РЕД. 1242 00:55:12,940 --> 00:55:15,470 >> Така, денес она што ние ќе да направите е да одиме 1243 00:55:15,470 --> 00:55:21,110 да се обиде да го автоматизирате процесот за производство на овие клетки. 1244 00:55:21,110 --> 00:55:24,135 Ние нема да ги прилично се дојде до точка на се во можност да ги стави сите заедно. 1245 00:55:24,135 --> 00:55:28,900 Но, ние ќе треба да се обиде да го автоматизирате процесот на генерирање на оваа низа. 1246 00:55:28,900 --> 00:55:32,900 >> И тоа е дел од она што анимација денес е како. 1247 00:55:32,900 --> 00:55:36,690 Што е, вие не мора да се прават работите со цртање се од рака. 1248 00:55:36,690 --> 00:55:40,610 Ние ги користиме на компјутерот за да се автоматизира делови на тој процес. 1249 00:55:40,610 --> 00:55:41,110 ВО РЕД. 1250 00:55:41,110 --> 00:55:47,720 >> Па дозволете ми да ги префрлиме сега на нашите CS50 ИРО. 1251 00:55:47,720 --> 00:55:54,260 И јас се создаде за us-- и нека ме зумирате тука малку bit-- сум 1252 00:55:54,260 --> 00:55:58,420 креиравте за нас почетна точка. 1253 00:55:58,420 --> 00:56:03,830 >> Секој пат кога бараме од вас да седат долу и да пишува дел од кодот, 1254 00:56:03,830 --> 00:56:09,250 она што ние навистина ќе побара од вас да го стори се бараме да се реши проблемот. 1255 00:56:09,250 --> 00:56:11,810 И начинот на кој што треба се размислува за тоа дека 1256 00:56:11,810 --> 00:56:17,900 е, почнувајќи со некои едноставно дел од тоа решение. 1257 00:56:17,900 --> 00:56:21,730 А потоа се изгради надвор од тој дел. 1258 00:56:21,730 --> 00:56:23,400 И тоа е она што ние ќе треба да се направи денес. 1259 00:56:23,400 --> 00:56:27,570 >> Така, наместо да се обидува на сите одеднаш да пишуваат на целиот куп на код кој е 1260 00:56:27,570 --> 00:56:30,770 случува да произведат оние 10 анимација клетки, 1261 00:56:30,770 --> 00:56:35,506 ние ќе треба да се започне, наместо со еден дел што работи. 1262 00:56:35,506 --> 00:56:37,380 А потоа ние ќе се изгради малку околу тоа 1263 00:56:37,380 --> 00:56:39,740 и малку повеќе и малку повеќе. 1264 00:56:39,740 --> 00:56:42,550 >> Сега добра работа во врска решавање на проблемите на овој начин 1265 00:56:42,550 --> 00:56:46,716 е дека тоа ќе ви овозможи да започнете секогаш со нешто што знаеш 1266 00:56:46,716 --> 00:56:51,130 работи и да се воведе еден постепена промена. 1267 00:56:51,130 --> 00:56:54,090 И тоа е одличен начин да научат како да се кодира, 1268 00:56:54,090 --> 00:56:58,590 бидејќи секој пат кога ќе се направи промена, ќе видите што влијанието што го има. 1269 00:56:58,590 --> 00:56:59,540 ВО РЕД. 1270 00:56:59,540 --> 00:57:01,450 >> Значи тука е нашата почетна точка. 1271 00:57:01,450 --> 00:57:01,950 ВО РЕД. 1272 00:57:01,950 --> 00:57:08,030 Па на почетокот од моето досие, Јас сум хаш #included stdio.h. 1273 00:57:08,030 --> 00:57:12,560 Тоа е, така што може да се добие printf () функцијата, за да работат. 1274 00:57:12,560 --> 00:57:15,240 >> Јас тогаш имам мојата главна функција. 1275 00:57:15,240 --> 00:57:18,760 И тоа се 'уште изгледа малку arcane или нејасни за некои од вас. 1276 00:57:18,760 --> 00:57:20,010 Во ред е. 1277 00:57:20,010 --> 00:57:23,190 Сите што го кажува е дека главната функција зема 1278 00:57:23,190 --> 00:57:27,830 Нема arguments-- неважечки средства ништо во В И 1279 00:57:27,830 --> 00:57:29,940 се враќа по конвенција цел број. 1280 00:57:29,940 --> 00:57:33,290 Главната секогаш се враќа цел број, обично код зборувам нешта 1281 00:57:33,290 --> 00:57:35,071 мина добро или не одат добро. 1282 00:57:35,071 --> 00:57:35,570 ВО РЕД. 1283 00:57:35,570 --> 00:57:39,110 Но, главната мора да го имаат тоа формираат за нас во моментов. 1284 00:57:39,110 --> 00:57:42,080 >> Јас тогаш се стави во три линии на код. 1285 00:57:42,080 --> 00:57:46,760 И заедно со секоја линија на код, јас сум се стави коментар. 1286 00:57:46,760 --> 00:57:51,340 Сега, една од работите кои Ќе инсистираме на тоа што го правите, 1287 00:57:51,340 --> 00:57:55,320 и тоа е толку важен програмирање пракса, 1288 00:57:55,320 --> 00:57:57,800 е секогаш да се коментира вашиот код. 1289 00:57:57,800 --> 00:58:02,550 Секогаш да се запишам во Англиски коментар нешто 1290 00:58:02,550 --> 00:58:06,740 кој мислите дека на кодот е треба да прави. 1291 00:58:06,740 --> 00:58:11,360 На тој начин, подоцна, кога ќе се врати на тоа, може да се погледне во него, а вие може да се каже, 1292 00:58:11,360 --> 00:58:13,800 ох, јас се сеќавам што сум обидувајќи се да се направи со ова. 1293 00:58:13,800 --> 00:58:17,590 Или кога ТА седнува пред вас да се се обиде да ви помогнат на работното време, 1294 00:58:17,590 --> 00:58:20,890 тие може да се погледне на овој и да одам, да видиме што ќе се обидуваат да се направи, 1295 00:58:20,890 --> 00:58:25,630 но наместо тоа, ова е што навистина се случува. 1296 00:58:25,630 --> 00:58:26,130 ВО РЕД. 1297 00:58:26,130 --> 00:58:30,300 >> Па имам три дела на мојот код, Одам да се прво на сите за печатење 1298 00:58:30,300 --> 00:58:33,110 некои точки на почетокот. 1299 00:58:33,110 --> 00:58:37,480 Тогаш јас ќе се печати од мојата исклучително фенси зајаче. 1300 00:58:37,480 --> 00:58:40,600 А потоа некои малку точки на крајот. 1301 00:58:40,600 --> 00:58:45,220 >> И овие три печати извештаи треба изгледа познато за вас во овој момент. 1302 00:58:45,220 --> 00:58:47,350 Сето она што јас го правам во секој од нив е дека сум 1303 00:58:47,350 --> 00:58:49,780 печатење на низа од карактери. 1304 00:58:49,780 --> 00:58:51,370 Нема вклучени променливи. 1305 00:58:51,370 --> 00:58:54,320 Сè што е само рамни. 1306 00:58:54,320 --> 00:58:55,270 ВО РЕД. 1307 00:58:55,270 --> 00:59:07,340 >> Значи, ако јас се памети сега да ми terminal-- ајде да видиме дали може да се добие овој назад out-- 1308 00:59:07,340 --> 00:59:09,370 а јас ќе одам да напишеш јасна повторно. 1309 00:59:09,370 --> 00:59:12,507 >> ЗВУЧНИК 20: Дали ние ги користиме на двојно коса црта да коментира? 1310 00:59:12,507 --> 00:59:14,340 Брајан SCASSELLATI: Може користете double-- да. 1311 00:59:14,340 --> 00:59:16,920 Има повеќе начини за остават коментари во C. Еден 1312 00:59:16,920 --> 00:59:19,440 начин е да се користи двојно коса црта. 1313 00:59:19,440 --> 00:59:24,910 Од друга е да се користи на коса и ѕвезда а потоа ја затвори со ѕвезда и коса црта. 1314 00:59:24,910 --> 00:59:26,110 Во ред. 1315 00:59:26,110 --> 00:59:28,950 >> Прво на сите, јас ќе одам да започнете со навигација околу тука. 1316 00:59:28,950 --> 00:59:35,350 Значи, ако јас одам да ми домашен директориум, Се променив директориуми таму, 1317 00:59:35,350 --> 00:59:40,230 Одам да се погледне и да видиме што е во тој директориум, ЛС, наведете надвор. 1318 00:59:40,230 --> 00:59:43,230 Одам да видам што сум добив две поддиректориуми. 1319 00:59:43,230 --> 00:59:47,910 Да се ​​направи ова малку поголем тука, така што сите ние може да се види тоа. 1320 00:59:47,910 --> 00:59:50,610 >> Јас може да се види дека јас сум добив две поддиректориуми. 1321 00:59:50,610 --> 00:59:53,510 Јас ќе го промени директориумот да се оди во просторот. 1322 00:59:53,510 --> 00:59:58,380 А јас ќе одам само да напишеш надвор дел од неа, а потоа само кликнете на јазичето. 1323 00:59:58,380 --> 01:00:01,520 И тоа ќе го доврши за мене. 1324 01:00:01,520 --> 01:00:03,370 Фенси. 1325 01:00:03,370 --> 01:00:04,960 >> Јас ќе погледнеше во просторот. 1326 01:00:04,960 --> 01:00:08,431 И токму сега, јас сум работат на SuperSection 1327 01:00:08,431 --> 01:00:09,680 кои ги учиме во моментов. 1328 01:00:09,680 --> 01:00:10,971 Па јас ќе одам во таа листа. 1329 01:00:10,971 --> 01:00:14,770 1330 01:00:14,770 --> 01:00:15,970 И, конечно, да се погледне и да видиме. 1331 01:00:15,970 --> 01:00:18,480 А имам таа датотека bunny.c. 1332 01:00:18,480 --> 01:00:20,980 >> Сите права па да ми јасно уште еднаш. 1333 01:00:20,980 --> 01:00:24,370 А јас ќе одам да now-- повторно сум уште престојуваат во тој директориум 1334 01:00:24,370 --> 01:00:27,540 и тоа ми кажува дека сум во дека SuperSection директориум. 1335 01:00:27,540 --> 01:00:30,690 Одам да се оди напред и да ја направам мојата програма зајаче. 1336 01:00:30,690 --> 01:00:33,730 1337 01:00:33,730 --> 01:00:38,810 И таа команда, направи Bunny, додека звучи малку чудно, 1338 01:00:38,810 --> 01:00:42,960 исто така, се повикува на ѕвекот компајлерот. 1339 01:00:42,960 --> 01:00:46,470 >> И тоа се произведени за ме излез кој е 1340 01:00:46,470 --> 01:00:52,130 извршна funny-- една извршна датотека наречена зајаче. 1341 01:00:52,130 --> 01:00:52,700 ВО РЕД. 1342 01:00:52,700 --> 01:00:56,700 Можам тогаш, и ова звучи уште полошо, се изврши зајаче. 1343 01:00:56,700 --> 01:00:59,360 1344 01:00:59,360 --> 01:01:00,680 ВО РЕД. 1345 01:01:00,680 --> 01:01:03,150 И да видиме што тоа го прави. 1346 01:01:03,150 --> 01:01:04,527 ВО РЕД. 1347 01:01:04,527 --> 01:01:06,360 Тоа е малку на она што јас го очекував. 1348 01:01:06,360 --> 01:01:11,290 Јас имам мојата зајаче слика во таму, но јас вид на сето тоа сакав само по себе. 1349 01:01:11,290 --> 01:01:13,186 Што да пропуштите? 1350 01:01:13,186 --> 01:01:14,478 >> ЗВУЧНИК 21: Slash l или црта n. 1351 01:01:14,478 --> 01:01:15,602 Брајан SCASSELLATI: Слеш n. 1352 01:01:15,602 --> 01:01:16,580 ВО РЕД. 1353 01:01:16,580 --> 01:01:18,800 Значи, да се вратиме овде. 1354 01:01:18,800 --> 01:01:20,330 А јас ќе излезе од тоа. 1355 01:01:20,330 --> 01:01:23,320 И јас ќе се вратам во оваа. 1356 01:01:23,320 --> 01:01:27,720 И ајде да ги разгледаме сега од мојата главна функција овде. 1357 01:01:27,720 --> 01:01:29,280 >> Значи она што треба да направам? 1358 01:01:29,280 --> 01:01:30,465 Сакам да се стави крај на линијата. 1359 01:01:30,465 --> 01:01:34,020 1360 01:01:34,020 --> 01:01:35,800 Па јас ќе се стави во коментар. 1361 01:01:35,800 --> 01:01:38,430 Јас ќе се стави во printf (). 1362 01:01:38,430 --> 01:01:41,350 И она што треба да се стави во? 1363 01:01:41,350 --> 01:01:41,890 / n. 1364 01:01:41,890 --> 01:01:43,480 ВО РЕД. 1365 01:01:43,480 --> 01:01:46,040 Што треба да се стави крај на тоа со? 1366 01:01:46,040 --> 01:01:47,100 Запирка. 1367 01:01:47,100 --> 01:01:48,730 Во ред. 1368 01:01:48,730 --> 01:01:52,880 >> Сега, една од навистина најважно е да бидете сигурни 1369 01:01:52,880 --> 01:01:56,720 секој пат кога ќе се направи промена во вашиот код, што ќе го спаси. 1370 01:01:56,720 --> 01:02:01,380 Ако не сте го зачувале вашиот код, ти си ќе забележите една мала ѕвезда, таму горе. 1371 01:02:01,380 --> 01:02:03,420 И ви вели дека ѕвездата не сте ги снимиле овој код. 1372 01:02:03,420 --> 01:02:07,790 >> Ако јас го компајлирате токму сега, тоа не е ќе се одрази на тие промени, 1373 01:02:07,790 --> 01:02:11,680 затоа што на компајлерот изгледа на датотека тоа е на дискот, а не на датотеката која е 1374 01:02:11,680 --> 01:02:13,790 отворете го во вашиот уредник. 1375 01:02:13,790 --> 01:02:14,290 Во ред. 1376 01:02:14,290 --> 01:02:20,830 >> Па ајде да го спаси, а потоа ќе одиме право на долу тука, се врати надвор. 1377 01:02:20,830 --> 01:02:24,670 Слезе на мојот терминал. 1378 01:02:24,670 --> 01:02:27,193 И ајде да се расчисти просторот повторно. 1379 01:02:27,193 --> 01:02:30,690 1380 01:02:30,690 --> 01:02:35,760 >> И ние може да се оди напред и еден повеќе време ја направиме нашата зајаче програма. 1381 01:02:35,760 --> 01:02:40,180 И извршување на зајаче. 1382 01:02:40,180 --> 01:02:42,500 Кои не работат или. 1383 01:02:42,500 --> 01:02:43,950 Ред коса црта. 1384 01:02:43,950 --> 01:02:52,280 Па ако се погледне во она што јас го имам, јас се стави / n во таму, но јас имаа погрешна коса црта. 1385 01:02:52,280 --> 01:02:56,190 >> Сето она што вашиот компјутер прави е многу експлицитен. 1386 01:02:56,190 --> 01:02:57,230 ВО РЕД? 1387 01:02:57,230 --> 01:03:01,250 Една мала грешка на интерпункциски знаци и ненадејно да не добие она што го сакате. 1388 01:03:01,250 --> 01:03:01,750 Во ред. 1389 01:03:01,750 --> 01:03:03,740 Па ајде одзумирање повторно. 1390 01:03:03,740 --> 01:03:04,410 Ние ќе се вратам. 1391 01:03:04,410 --> 01:03:07,930 И го направи тој многу брзо да се поправи. 1392 01:03:07,930 --> 01:03:09,270 Ние ќе се стави на правото коса црта во. 1393 01:03:09,270 --> 01:03:10,570 Ние ќе го спаси. 1394 01:03:10,570 --> 01:03:13,410 Ние ќе се вратите во. 1395 01:03:13,410 --> 01:03:16,730 >> Поради некоја причина, тоа не е да се биде среќен, но ајде да одиме напред 1396 01:03:16,730 --> 01:03:19,850 и ние ќе се вратиме на терминалот тука. 1397 01:03:19,850 --> 01:03:22,940 Го расчистат. 1398 01:03:22,940 --> 01:03:24,880 Ние ќе зумирате. 1399 01:03:24,880 --> 01:03:28,410 И уште еднаш, ние ќе се направи Bunny. 1400 01:03:28,410 --> 01:03:32,360 И сега секако, тоа функционира. 1401 01:03:32,360 --> 01:03:33,240 Ура. 1402 01:03:33,240 --> 01:03:34,300 ВО РЕД. 1403 01:03:34,300 --> 01:03:39,580 >> Значи, да се обидат да се направи ова малку повеќе воопшто. 1404 01:03:39,580 --> 01:03:46,750 Ајде да видиме дали наместо само печатење на еден одреден период, 1405 01:03:46,750 --> 01:03:49,610 ајде да видиме дали може да се направи ова така што можеме да ги добиете сите од 10 1406 01:03:49,610 --> 01:03:52,960 на оние анимирани слики дека сакаме да имаме. 1407 01:03:52,960 --> 01:03:56,550 Значи, повторно, да се земе овој чекор во исто време. 1408 01:03:56,550 --> 01:03:59,900 >> Ајде прво да го генерализира, а не така што можам да направам сите рамки, 1409 01:03:59,900 --> 01:04:03,990 но јас правам некој рамка што би можеле да сакаат. 1410 01:04:03,990 --> 01:04:05,920 Значи она што е разликата помеѓу рамки? 1411 01:04:05,920 --> 01:04:07,377 Е зајаче истото? 1412 01:04:07,377 --> 01:04:07,960 ПУБЛИКАТА: Да. 1413 01:04:07,960 --> 01:04:08,390 Брајан SCASSELLATI: Да. 1414 01:04:08,390 --> 01:04:09,370 Која е разликата? 1415 01:04:09,370 --> 01:04:10,246 >> ПУБЛИКАТА: Позиција. 1416 01:04:10,246 --> 01:04:11,870 Брајан SCASSELLATI: Нејзината позиција, нели? 1417 01:04:11,870 --> 01:04:15,590 И како можам да ги контролираат своите позиција? 1418 01:04:15,590 --> 01:04:17,340 Колку точки Јас сум ставање на почетокот 1419 01:04:17,340 --> 01:04:19,048 и како многу точки Јас сум ставање на крај. 1420 01:04:19,048 --> 01:04:21,970 Па морав пет на почеток и пет на крајот. 1421 01:04:21,970 --> 01:04:28,320 >> Ајде да го замени тоа со пет за телефонска линија. 1422 01:04:28,320 --> 01:04:29,380 ВО РЕД. 1423 01:04:29,380 --> 01:04:32,330 А јас ќе одам да се создаде за јамка сега што се случува да се каже, 1424 01:04:32,330 --> 01:04:37,800 Одам да се печати некои број на точки на почетокот. 1425 01:04:37,800 --> 01:04:39,600 Одам да се користи променлива. 1426 01:04:39,600 --> 01:04:44,150 Да речеме, за тоа како јас како шанкот во мојот циклус. 1427 01:04:44,150 --> 01:04:47,200 А јас ќе одам да го пријават до врвот. 1428 01:04:47,200 --> 01:04:49,360 >> А потоа и во за телефонска линија Јас треба да направите три работи. 1429 01:04:49,360 --> 01:04:52,340 Првото нешто што треба да направите е јас треба да се иницијализира i. 1430 01:04:52,340 --> 01:04:56,570 Што треба да се иницијализира го за да започнете да биде? 1431 01:04:56,570 --> 01:04:57,160 0. 1432 01:04:57,160 --> 01:04:58,310 ВО РЕД. 1433 01:04:58,310 --> 01:05:00,950 >> Тогаш јас треба да се каже, што е условот за раскинување? 1434 01:05:00,950 --> 01:05:03,020 Кога треба да се запре? 1435 01:05:03,020 --> 01:05:05,983 И тоа како многу точки да се направи сакате да се печати на овој? 1436 01:05:05,983 --> 01:05:06,921 >> ПУБЛИКАТА: Пет. 1437 01:05:06,921 --> 01:05:08,170 Брајан SCASSELLATI: Пет повторно? 1438 01:05:08,170 --> 01:05:10,650 Како за, ајде да направиме нешто различни, ние го сторивме пет. 1439 01:05:10,650 --> 01:05:12,584 Ајде да покажеме дека тоа е различно. 1440 01:05:12,584 --> 01:05:13,250 ЗВУЧНИК 22: Двајца. 1441 01:05:13,250 --> 01:05:13,580 Брајан SCASSELLATI: Двајца. 1442 01:05:13,580 --> 01:05:14,080 ВО РЕД. 1443 01:05:14,080 --> 01:05:17,760 Па ако сакам две точки, што треба да се стави во оваа ситуација? 1444 01:05:17,760 --> 01:05:19,140 >> ПУБЛИКАТА: Три. 1445 01:05:19,140 --> 01:05:20,530 >> Брајан SCASSELLATI: Три. 1446 01:05:20,530 --> 01:05:21,400 ВО РЕД. 1447 01:05:21,400 --> 01:05:24,220 Колку пати е дека случува да одат преку? 1448 01:05:24,220 --> 01:05:28,469 Што се случува да поминат низ три пати, 0, 1, 2, нели? 1449 01:05:28,469 --> 01:05:30,010 Добро, ајде да се вратиме до два. 1450 01:05:30,010 --> 01:05:31,570 Сега ќе добие две точки. 1451 01:05:31,570 --> 01:05:35,800 И она што сакам да го стори секој кога одам преку телефонска линија? 1452 01:05:35,800 --> 01:05:38,657 Што треба да се промени секој пат кога ќе одат преку? 1453 01:05:38,657 --> 01:05:39,850 >> ЗВУЧНИК 23: Додади точка. 1454 01:05:39,850 --> 01:05:41,020 >> Брајан SCASSELLATI: Морам да продолжувам да одам. 1455 01:05:41,020 --> 01:05:41,978 Одам да додадете точка. 1456 01:05:41,978 --> 01:05:45,310 Одам да се печати една точка, секој пат низ јамката. 1457 01:05:45,310 --> 01:05:49,990 Но, колку сум јас држејќи ги пратите на тоа како многу пати сум бил преку телефонска линија? 1458 01:05:49,990 --> 01:05:53,260 Јас сум со користење ли, дека променлива, што шанкот. 1459 01:05:53,260 --> 01:05:57,110 >> Така што секој пат низ, јас ќе одам за зголемување на шалтер по еден. 1460 01:05:57,110 --> 01:06:00,670 Сега, тоа е иста за мене како вели i = i + 1. 1461 01:06:00,670 --> 01:06:01,210 Во ред е. 1462 01:06:01,210 --> 01:06:04,653 Можам да го направам that-- Ми се допаѓа стенографија, па јас ќе одам да се каже јас ++. 1463 01:06:04,653 --> 01:06:07,190 1464 01:06:07,190 --> 01:06:08,370 ВО РЕД. 1465 01:06:08,370 --> 01:06:10,680 >> Ајде да го прават истото овде долу на дното. 1466 01:06:10,680 --> 01:06:11,846 Јас само вид на направи оној. 1467 01:06:11,846 --> 01:06:13,990 Одам да ви момци нека направите тоа еден целосно. 1468 01:06:13,990 --> 01:06:14,260 Во ред. 1469 01:06:14,260 --> 01:06:15,426 >> Значи она што треба да го пишувам тука? 1470 01:06:15,426 --> 01:06:17,170 Еве го мојот за телефонска линија. 1471 01:06:17,170 --> 01:06:23,162 Одам да се направи printf (), а јас ќе одам да се направи тоа, така што јас само се печати една точка 1472 01:06:23,162 --> 01:06:25,740 на таа дното. 1473 01:06:25,740 --> 01:06:27,740 >> Што треба да се напише во внатрешноста на оваа за телефонска линија сега? 1474 01:06:27,740 --> 01:06:30,897 1475 01:06:30,897 --> 01:06:33,948 Па, прв од сите што променливи треба да го користам? 1476 01:06:33,948 --> 01:06:35,430 >> ЗВУЧНИК 24: j. 1477 01:06:35,430 --> 01:06:36,880 >> Брајан SCASSELLATI: можам да ги искористам ѕ. 1478 01:06:36,880 --> 01:06:38,040 Може ли да користам истиот? 1479 01:06:38,040 --> 01:06:39,961 Може ли да користам ли повторно? 1480 01:06:39,961 --> 01:06:40,460 Је. 1481 01:06:40,460 --> 01:06:45,531 Тоа е во ред, бидејќи е дека јас сум со користење до тука, 1482 01:06:45,531 --> 01:06:47,780 Јас не им се потребни при повторно Се фаќате за оваа точка. 1483 01:06:47,780 --> 01:06:52,240 1484 01:06:52,240 --> 01:06:53,790 >> Значи она што треба да се иницијализира јас во моментов? 1485 01:06:53,790 --> 01:06:56,675 1486 01:06:56,675 --> 01:06:57,300 ЗВУЧНИК 25: 10. 1487 01:06:57,300 --> 01:06:58,567 Брајан SCASSELLATI: 0. 1488 01:06:58,567 --> 01:06:59,400 Што треба да се провери? 1489 01:06:59,400 --> 01:07:02,960 Колку точки ми треба сега на крајот ако имам две точки од почеток? 1490 01:07:02,960 --> 01:07:05,820 1491 01:07:05,820 --> 01:07:09,165 Ми треба осум на крајот, така што јас треба да се провери, јас помалку than-- 1492 01:07:09,165 --> 01:07:12,645 >> ПУБЛИКАТА: седум, осум, девет. 1493 01:07:12,645 --> 01:07:14,020 Брајан SCASSELLATI: слушнав седум. 1494 01:07:14,020 --> 01:07:14,810 Слушнав осум. 1495 01:07:14,810 --> 01:07:15,970 И чув девет. 1496 01:07:15,970 --> 01:07:16,470 ВО РЕД. 1497 01:07:16,470 --> 01:07:19,540 Па сите ние сме во право ball-- Џејсон вели 10. 1498 01:07:19,540 --> 01:07:21,550 ВО РЕД. 1499 01:07:21,550 --> 01:07:25,920 >> Ако ми требаше две точки за првиот, колку 1500 01:07:25,920 --> 01:07:30,170 I-- и ми треба осум точки за последните one-- ставив два погоре, 1501 01:07:30,170 --> 01:07:31,743 што треба да се стави долу? 1502 01:07:31,743 --> 01:07:32,570 >> ПУБЛИКАТА: Осум. 1503 01:07:32,570 --> 01:07:33,611 >> Брајан SCASSELLATI: Осум. 1504 01:07:33,611 --> 01:07:35,695 Затоа што ќе брои нула преку седум. 1505 01:07:35,695 --> 01:07:38,490 И тоа е осум пати преку телефонска линија. 1506 01:07:38,490 --> 01:07:38,990 ВО РЕД. 1507 01:07:38,990 --> 01:07:41,774 И она што јас треба да направите на крајот? 1508 01:07:41,774 --> 01:07:42,670 >> ПУБЛИКАТА: i ++. 1509 01:07:42,670 --> 01:07:44,400 >> Брајан SCASSELLATI: i ++. 1510 01:07:44,400 --> 01:07:45,440 Во ред. 1511 01:07:45,440 --> 01:07:48,260 Па тоа е во потрага прилично добро таму. 1512 01:07:48,260 --> 01:07:50,620 Ајде да ја обидат и да видиме што тоа го прави. 1513 01:07:50,620 --> 01:07:51,450 ВО РЕД. 1514 01:07:51,450 --> 01:07:53,770 Па ние ќе треба да ја зачувате. 1515 01:07:53,770 --> 01:07:54,940 Убаво и зачувани. 1516 01:07:54,940 --> 01:07:56,910 >> Ќе одзумирање. 1517 01:07:56,910 --> 01:07:58,220 Ние ќе се обидеме овде во терминал. 1518 01:07:58,220 --> 01:08:01,440 1519 01:08:01,440 --> 01:08:02,970 Ние ќе зумирате. 1520 01:08:02,970 --> 01:08:05,416 Упс. 1521 01:08:05,416 --> 01:08:09,990 Ние ќе, уште еднаш, направи нашата зајаче програма. 1522 01:08:09,990 --> 01:08:14,460 И да оди напред и да се изврши зајаче. 1523 01:08:14,460 --> 01:08:15,980 И таму е. 1524 01:08:15,980 --> 01:08:17,710 >> Па има нашата зајаче. 1525 01:08:17,710 --> 01:08:25,130 Каде што има две точки на почетокот и осум точки на крајот. 1526 01:08:25,130 --> 01:08:27,540 Сите уште со мене? 1527 01:08:27,540 --> 01:08:28,770 ВО РЕД. 1528 01:08:28,770 --> 01:08:29,580 >> Па ние го изгради. 1529 01:08:29,580 --> 01:08:33,000 Изградивме една зајаче, еден одреден период. 1530 01:08:33,000 --> 01:08:36,229 Сега ние сме во можност да генерализира дека да се изгради 1531 01:08:36,229 --> 01:08:38,390 повеќе, различни видови на рамки. 1532 01:08:38,390 --> 01:08:42,399 >> Сега ајде да одиме напред, и да имаат тоа генерира не само една рамка, 1533 01:08:42,399 --> 01:08:46,290 но ајде да генерира 10 рамки, каде што полека 1534 01:08:46,290 --> 01:08:50,569 направи зајаче се движат сите пат низ поле. 1535 01:08:50,569 --> 01:08:51,430 Во ред. 1536 01:08:51,430 --> 01:08:53,660 >> Ајде да се вратиме. 1537 01:08:53,660 --> 01:08:54,839 И ќе се обидеме сега. 1538 01:08:54,839 --> 01:09:00,680 1539 01:09:00,680 --> 01:09:02,830 Значи она што навистина треба да се промени оваа ситуација? 1540 01:09:02,830 --> 01:09:06,139 1541 01:09:06,139 --> 01:09:07,180 Што ми е потребно да се промени? 1542 01:09:07,180 --> 01:09:10,638 >> ЗВУЧНИК 26: Прво треба да се промена на бројот на точки максимум 1543 01:09:10,638 --> 01:09:11,626 на почетокот. 1544 01:09:11,626 --> 01:09:16,850 Затоа што ако ние сме прави 10 точки, тоа се случува да треба да се нагоре на скалата. 1545 01:09:16,850 --> 01:09:17,850 Брајан SCASSELLATI: Да. 1546 01:09:17,850 --> 01:09:23,760 Па сега имам тоа вид на hardwired секогаш да направите две точки на почетокот 1547 01:09:23,760 --> 01:09:27,890 и секогаш се осум точки на крајот. 1548 01:09:27,890 --> 01:09:30,660 >> Сакам да се изгради уште еден циклус, нели? 1549 01:09:30,660 --> 01:09:33,290 Затоа што не сакаат да изгради само еден зајаче сликата, 1550 01:09:33,290 --> 01:09:37,140 Сакам да се изгради 10 зајаче слики. 1551 01:09:37,140 --> 01:09:41,500 Значи ми треба да се изгради уште еден циклус, и како што оди преку тој циклус, 1552 01:09:41,500 --> 01:09:44,660 Сакам да се промени колку точки печатам на почетокот 1553 01:09:44,660 --> 01:09:50,529 и како многу точки да печатам на крајот, врз основа на кои циклус преку телефонска линија 1554 01:09:50,529 --> 01:09:52,270 Јас сум во. 1555 01:09:52,270 --> 01:09:52,770 Во ред. 1556 01:09:52,770 --> 01:09:54,430 >> Значи, да се добие уште еден шалтер. 1557 01:09:54,430 --> 01:09:58,142 Некој рече дека пред да ј, па ние ќе се направи уште една ѕ. 1558 01:09:58,142 --> 01:10:00,100 И сега, ние ќе треба да изгради уште еден за телефонска линија. 1559 01:10:00,100 --> 01:10:02,650 1560 01:10:02,650 --> 01:10:06,200 >> Она што се случува во внатрешноста на тој циклус? 1561 01:10:06,200 --> 01:10:09,060 Овој материјал треба да оди во внатрешноста на јамка, нели? 1562 01:10:09,060 --> 01:10:11,190 Зајаче имаат се да се оди во внатрешноста на јамка? 1563 01:10:11,190 --> 01:10:13,390 Дали ми е потребен зајаче во секоја од овие 10 слики? 1564 01:10:13,390 --> 01:10:14,099 >> ПУБЛИКАТА: Ух-нели. 1565 01:10:14,099 --> 01:10:15,098 Брајан SCASSELLATI: Да. 1566 01:10:15,098 --> 01:10:17,250 Сакам зајаче во секоја од 10 слики, нели? 1567 01:10:17,250 --> 01:10:20,531 Како за на точки во На крајот, не ми треба тоа? 1568 01:10:20,531 --> 01:10:21,030 ВО РЕД. 1569 01:10:21,030 --> 01:10:22,550 >> Па јас ќе одам да се вовлекува сите од нив. 1570 01:10:22,550 --> 01:10:25,110 Одам да се нагласат сите ова, а јас ќе одам да се погоди таб. 1571 01:10:25,110 --> 01:10:28,590 И што се случува да им помогнам на сите во текот на малку, така што тоа е лесно за мене 1572 01:10:28,590 --> 01:10:32,010 да се види она што е во јамка. 1573 01:10:32,010 --> 01:10:33,710 А потоа јас ќе ја завршите. 1574 01:10:33,710 --> 01:10:35,850 Да речеме. 1575 01:10:35,850 --> 01:10:36,430 ВО РЕД? 1576 01:10:36,430 --> 01:10:39,230 >> Сега, во овој циклус, кој Јас сум building-- Whoops, 1577 01:10:39,230 --> 01:10:43,810 направат тој да можете да see-- Јас имам мојата контра ѕ. 1578 01:10:43,810 --> 01:10:45,630 Јас ќе ја започна во 0. 1579 01:10:45,630 --> 01:10:47,829 Колку пати сакам да поминат низ овој циклус? 1580 01:10:47,829 --> 01:10:48,620 ПУБЛИКАТА: 10 пати. 1581 01:10:48,620 --> 01:10:49,786 Брајан SCASSELLATI: 10 пати. 1582 01:10:49,786 --> 01:10:51,402 Значи она што број треба да го ставам овде? 1583 01:10:51,402 --> 01:10:52,880 >> ПУБЛИКАТА: 9, 10. 1584 01:10:52,880 --> 01:10:55,600 >> Брајан SCASSELLATI: 9, 10, некој е мора да се каже 11, нели? 1585 01:10:55,600 --> 01:10:58,190 1586 01:10:58,190 --> 01:11:01,585 Сакав две точки пред и јас се стави помалку од 2. 1587 01:11:01,585 --> 01:11:03,810 Сакав осум точки, Ја ставив јас помалку од 8. 1588 01:11:03,810 --> 01:11:06,950 Сега сакам да се оди преку 10 пати, па да го ставам ѕ помалку than-- 1589 01:11:06,950 --> 01:11:07,590 >> ПУБЛИКАТА: 10. 1590 01:11:07,590 --> 01:11:08,610 >> Брајан SCASSELLATI: 10. 1591 01:11:08,610 --> 01:11:10,150 Таму ќе одиме. 1592 01:11:10,150 --> 01:11:13,360 И што да правам на крајот на s? 1593 01:11:13,360 --> 01:11:15,310 ++, Зголемување ја. 1594 01:11:15,310 --> 01:11:16,230 ВО РЕД. 1595 01:11:16,230 --> 01:11:21,500 Сега, тука е слабо дел, што е ќе се случи токму сега, ако го направам тоа? 1596 01:11:21,500 --> 01:11:24,537 Одам да се печати 10 слики? 1597 01:11:24,537 --> 01:11:26,370 ЗВУЧНИК 27: Мислам дека сите тие ќе бидат исти. 1598 01:11:26,370 --> 01:11:28,453 Брајан SCASSELLATI: тие ќе сите да бидат исти, право? 1599 01:11:28,453 --> 01:11:31,750 Бидејќи сите од нив се уште се случува да се стави две точки на почетокот. 1600 01:11:31,750 --> 01:11:34,162 Но, јас не ги сакаат да има две точки на почетокот. 1601 01:11:34,162 --> 01:11:35,870 Колку точки правам сакам на почетокот? 1602 01:11:35,870 --> 01:11:39,097 1603 01:11:39,097 --> 01:11:40,020 >> ПУБЛИКАТА: Менување. 1604 01:11:40,020 --> 01:11:42,840 >> Брајан SCASSELLATI: јас сакате тоа да се промени, нели? 1605 01:11:42,840 --> 01:11:46,588 Значи она што го имам тука тоа се менува секој пат јамка оди преку? 1606 01:11:46,588 --> 01:11:48,242 >> ПУБЛИКАТА: број на точки, Ј. 1607 01:11:48,242 --> 01:11:49,950 Брајан SCASSELLATI: ј, бројот на точки. 1608 01:11:49,950 --> 01:11:54,782 За да можам да ја промените оваа да биде ѕ. 1609 01:11:54,782 --> 01:11:59,190 Прв пат преку јамка, што е тоа ќе биде? 1610 01:11:59,190 --> 01:12:01,700 Она што можам да поставам J за да на прв? 1611 01:12:01,700 --> 01:12:02,420 >> ПУБЛИКАТА: 0. 1612 01:12:02,420 --> 01:12:05,700 >> Брајан SCASSELLATI: Значи колку пати сум јас ќе го направите ова? 1613 01:12:05,700 --> 01:12:06,750 0. 1614 01:12:06,750 --> 01:12:11,750 По втор пат преку телефонска линија, на J ќе биде 1 затоа што јас го прираст. 1615 01:12:11,750 --> 01:12:14,180 Колку точки сум јас ќе ја печати? 1616 01:12:14,180 --> 01:12:15,100 1. 1617 01:12:15,100 --> 01:12:19,904 По трет пат преку телефонска линија, колку точки сум јас ќе ја печати? 1618 01:12:19,904 --> 01:12:20,587 >> ПУБЛИКАТА: Три. 1619 01:12:20,587 --> 01:12:22,170 Брајан SCASSELLATI: j ќе биде 3. 1620 01:12:22,170 --> 01:12:24,890 Колку точки сум јас ќе ја печати? 1621 01:12:24,890 --> 01:12:26,817 Ох извинете, j ќе биде 2. 1622 01:12:26,817 --> 01:12:28,233 Колку точки сум јас ќе ја печати? 1623 01:12:28,233 --> 01:12:28,980 >> ПУБЛИКАТА: 2. 1624 01:12:28,980 --> 01:12:29,855 >> Брајан SCASSELLATI: 2. 1625 01:12:29,855 --> 01:12:32,460 Добро, така што јас ќе одам да се задржи што ја зголемува како што одиме понатаму. 1626 01:12:32,460 --> 01:12:33,460 Како за долу? 1627 01:12:33,460 --> 01:12:34,310 Она што се случува овде? 1628 01:12:34,310 --> 01:12:38,080 Не сакам 8 секогаш на крајот веќе? 1629 01:12:38,080 --> 01:12:39,269 >> ЗВУЧНИК 28: 10. 1630 01:12:39,269 --> 01:12:40,685 Брајан SCASSELLATI: Сакам 10 точки? 1631 01:12:40,685 --> 01:12:43,440 1632 01:12:43,440 --> 01:12:44,620 Сакам тоа да се промени, исто така. 1633 01:12:44,620 --> 01:12:47,469 Па како не сакам тоа да се промени? 1634 01:12:47,469 --> 01:12:49,167 >> ПУБЛИКАТА: [Беззвучен]. 1635 01:12:49,167 --> 01:12:51,750 Брајан SCASSELLATI: Па, ако имаат пет точки на почетокот, 1636 01:12:51,750 --> 01:12:53,293 колку точка е да стигнам на крајот? 1637 01:12:53,293 --> 01:12:54,020 >> ПУБЛИКАТА: Пет. 1638 01:12:54,020 --> 01:12:55,630 >> Брајан SCASSELLATI: Ако имам шест точки на почетокот, 1639 01:12:55,630 --> 01:12:56,875 Колку можам да добијам на крајот? 1640 01:12:56,875 --> 01:12:57,500 ПУБЛИКАТА: Четири години. 1641 01:12:57,500 --> 01:12:58,950 Брајан SCASSELLATI: Ако го добив седум точки на почетокот, 1642 01:12:58,950 --> 01:13:00,204 Колку можам да добијам на крајот? 1643 01:13:00,204 --> 01:13:00,870 ПУБЛИКАТА: Три. 1644 01:13:00,870 --> 01:13:03,161 Брајан SCASSELLATI: Ако сум доби ѕ точки на почетокот, 1645 01:13:03,161 --> 01:13:04,790 Колку можам да добијам на крајот? 1646 01:13:04,790 --> 01:13:07,520 10-ѕ. 1647 01:13:07,520 --> 01:13:08,650 ВО РЕД. 1648 01:13:08,650 --> 01:13:10,390 Значи, да се обиде тоа. 1649 01:13:10,390 --> 01:13:13,180 >> Па јас ќе одам да се спаси нашата зајаче програма. 1650 01:13:13,180 --> 01:13:16,270 Уште еднаш ќе ја намалите. 1651 01:13:16,270 --> 01:13:19,090 Ќе одиме до нашите терминал. 1652 01:13:19,090 --> 01:13:20,180 Ние ќе го тргнат. 1653 01:13:20,180 --> 01:13:23,410 И да зумирате. 1654 01:13:23,410 --> 01:13:26,410 Ние ќе ги направиме нашите зајаче програмата, повторно. 1655 01:13:26,410 --> 01:13:27,690 И ние ќе го изврши. 1656 01:13:27,690 --> 01:13:30,462 1657 01:13:30,462 --> 01:13:32,090 Ух-ах. 1658 01:13:32,090 --> 01:13:34,580 >> Се одржи на, ајде да ја намалите. 1659 01:13:34,580 --> 01:13:36,860 Никако не можев да се добие 10 слики? 1660 01:13:36,860 --> 01:13:38,970 Па, колку bunnies гледам таму горе? 1661 01:13:38,970 --> 01:13:43,330 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. 1662 01:13:43,330 --> 01:13:44,820 Добив 10 слики. 1663 01:13:44,820 --> 01:13:46,375 Дали тие се сите исти? 1664 01:13:46,375 --> 01:13:47,000 ПУБЛИКАТА: Да. 1665 01:13:47,000 --> 01:13:48,740 Бр 1666 01:13:48,740 --> 01:13:50,000 >> Брајан SCASSELLATI: Не 1667 01:13:50,000 --> 01:13:55,050 Дека првиот, зајаче е далеку од левата страна. 1668 01:13:55,050 --> 01:13:57,541 И овде, на зајаче е далеку од 1669 01:13:57,541 --> 01:13:58,290 ЗВУЧНИК 29: Токму така. 1670 01:13:58,290 --> 01:14:00,502 Брајан SCASSELLATI: Значи, она што не заборавам да направам? 1671 01:14:00,502 --> 01:14:01,750 ЗВУЧНИК 30: Започнете нова линија. 1672 01:14:01,750 --> 01:14:04,041 Брајан SCASSELLATI: Заборавив за да започнете нова линија, повторно. 1673 01:14:04,041 --> 01:14:05,270 Истата грешка што го правеа и досега. 1674 01:14:05,270 --> 01:14:07,120 Добро, ајде да одиме да го поправите тоа. 1675 01:14:07,120 --> 01:14:11,690 Сега, јас сум сепак се искачи на кодот таму да се направи нова линија. 1676 01:14:11,690 --> 01:14:13,899 Зошто не работи? 1677 01:14:13,899 --> 01:14:15,440 ЗВУЧНИК 31: Тоа не е во внатрешноста на јамка. 1678 01:14:15,440 --> 01:14:17,710 Брајан SCASSELLATI: О, тоа не е во внатрешноста на јамка. 1679 01:14:17,710 --> 01:14:18,520 Тоа е точно. 1680 01:14:18,520 --> 01:14:20,150 Тоа е надвор седи тука. 1681 01:14:20,150 --> 01:14:23,470 1682 01:14:23,470 --> 01:14:29,050 И за телефонска линија е сè што го пишува во текстот. 1683 01:14:29,050 --> 01:14:35,500 >> Па јас ќе одам да се движат ова во внатрешноста на за телефонска линија. 1684 01:14:35,500 --> 01:14:39,410 А јас ќе јазиче пред него да покажуваат дека тоа е во право место. 1685 01:14:39,410 --> 01:14:42,020 И сега, ние ќе го зачувате повторно. 1686 01:14:42,020 --> 01:14:44,350 Ние ќе ја намалите. 1687 01:14:44,350 --> 01:14:45,770 Ние ќе ги префрлиме на нашиот терминал. 1688 01:14:45,770 --> 01:14:48,330 1689 01:14:48,330 --> 01:14:50,360 Зумирај. 1690 01:14:50,360 --> 01:14:54,050 Ние ќе го преправат зајаче нашата програма. 1691 01:14:54,050 --> 01:14:59,070 И сега, сега ние го добивме нашиот 10 слики. 1692 01:14:59,070 --> 01:15:00,190 >> [Плескање] 1693 01:15:00,190 --> 01:15:02,120 >> Брајан SCASSELLATI: Во ред. 1694 01:15:02,120 --> 01:15:04,080 So. 1695 01:15:04,080 --> 01:15:08,370 Тука е нашата за вгнездени јамки. 1696 01:15:08,370 --> 01:15:13,140 Ние бевме во можност да се генерираат во внатрешниот циклус колку точки сакав 1697 01:15:13,140 --> 01:15:15,320 да се печати на почетокот, на крајот. 1698 01:15:15,320 --> 01:15:21,570 И надворешниот циклус контролирани колку рамки бев градење. 1699 01:15:21,570 --> 01:15:26,340 Почнавме со еден малку јадрото на проблемот, 1700 01:15:26,340 --> 01:15:30,320 и ние изградена надвор од таа точка. 1701 01:15:30,320 --> 01:15:30,820 Во ред. 1702 01:15:30,820 --> 01:15:33,500 >> Да направиме уште еден чекор. 1703 01:15:33,500 --> 01:15:35,040 Дали сте подготвени? 1704 01:15:35,040 --> 01:15:38,800 Има една работа во оваа земја каде ние сме всушност вид на доби 1705 01:15:38,800 --> 01:15:42,180 повеќе комплексност отколку што треба. 1706 01:15:42,180 --> 01:15:44,700 Ајде да ги разгледаме. 1707 01:15:44,700 --> 01:15:52,050 Па во нашата зајаче програма, ако јас одзумирате тука, 1708 01:15:52,050 --> 01:15:54,980 Јас всушност се направи некои од истите работа повторно и повторно. 1709 01:15:54,980 --> 01:15:59,032 Што да правам тоа е вид на истото се повторува два пати? 1710 01:15:59,032 --> 01:16:00,310 >> ЗВУЧНИК 32: Печатење на точки. 1711 01:16:00,310 --> 01:16:03,526 >> Брајан SCASSELLATI: Да Јас печати оние точки двапати. 1712 01:16:03,526 --> 01:16:05,710 Навистина, јас треба да имаат овој коментар овде долу. 1713 01:16:05,710 --> 01:16:09,037 Јас печати некои точки во почетокот, па се тука. 1714 01:16:09,037 --> 01:16:10,620 И јас тогаш печати некои точки на крајот. 1715 01:16:10,620 --> 01:16:14,694 И јас се вид на иста работа. 1716 01:16:14,694 --> 01:16:17,110 Она што се случува да се започне кои работат на и во наредните неколку недели 1717 01:16:17,110 --> 01:16:23,440 е да се биде во можност да ги преземат тие блокови на кодот кој ние ги користиме, одново и одново, 1718 01:16:23,440 --> 01:16:25,800 и преку процес наречен апстракција, 1719 01:16:25,800 --> 01:16:31,100 ние ќе треба да ги извлече и ги пишувам еднаш, така што можеме да потоа 1720 01:16:31,100 --> 01:16:35,130 повторна употреба нив одново и одново. 1721 01:16:35,130 --> 01:16:37,210 Значи, да се обидат тоа. 1722 01:16:37,210 --> 01:16:38,220 Подготвени? 1723 01:16:38,220 --> 01:16:42,200 >> Ние ќе треба да се земе овој блок од код. 1724 01:16:42,200 --> 01:16:45,280 А јас ќе одам да го земам од таму. 1725 01:16:45,280 --> 01:16:50,530 А јас ќе одам да define-- одредување на дното, 1726 01:16:50,530 --> 01:16:53,130 Одам да се напише нова функција. 1727 01:16:53,130 --> 01:16:54,750 Тоа не се случува да се врати ништо. 1728 01:16:54,750 --> 01:16:58,550 А јас ќе одам да го наречеме printDots. 1729 01:16:58,550 --> 01:17:01,530 >> Тоа се случува да се земе една аргумент, цел број кој 1730 01:17:01,530 --> 01:17:04,920 howManyDots вели дека треба да се печати. 1731 01:17:04,920 --> 01:17:09,310 1732 01:17:09,310 --> 01:17:17,720 И сега наместо печатење ѕ точки, јас ќе печати кажам howManyDots јас треба да се печати. 1733 01:17:17,720 --> 01:17:21,581 >> И има еден мал проблем овде. 1734 01:17:21,581 --> 01:17:22,580 Некој знае што е тоа? 1735 01:17:22,580 --> 01:17:27,270 1736 01:17:27,270 --> 01:17:31,505 Што имам дека е се наведени овде тоа не е дефинирана? 1737 01:17:31,505 --> 01:17:34,165 1738 01:17:34,165 --> 01:17:35,090 >> ПУБЛИКАТА: [Беззвучен] 1739 01:17:35,090 --> 01:17:37,465 >> Брајан SCASSELLATI: Па како многу точки се дефинира, па се 1740 01:17:37,465 --> 01:17:40,584 тука, но јас сум со користење дека променливата i. 1741 01:17:40,584 --> 01:17:43,750 Па јас ќе одам да се земе дека променливата i а јас ќе одам да го дефинираат долу тука 1742 01:17:43,750 --> 01:17:44,610 наместо тоа. 1743 01:17:44,610 --> 01:17:49,683 >> Па сега тоа се случува да stay-- Упс, доби големи букви врз somehow-- сум 1744 01:17:49,683 --> 01:17:52,060 случува да го задржи ли долу тука. 1745 01:17:52,060 --> 01:17:57,050 >> Па сега, тука е моето мало функција или под-рутина, и тој вели: 1746 01:17:57,050 --> 01:18:00,640 колку точки сум јас ќе ја печати? 1747 01:18:00,640 --> 01:18:05,300 И тоа ќе поминат низ овој циклус и да ги испечатите и одново и одново. 1748 01:18:05,300 --> 01:18:10,940 >> Тогаш јас може да го менува мојата програма до тука. 1749 01:18:10,940 --> 01:18:12,540 И што јас го нарекувам таа функција? 1750 01:18:12,540 --> 01:18:13,960 printDots. 1751 01:18:13,960 --> 01:18:17,060 Па јас ќе се јавам printDots. 1752 01:18:17,060 --> 01:18:21,530 Колку точки, сакам да се печати прв пат пред зајаче? 1753 01:18:21,530 --> 01:18:22,030 ПУБЛИКАТА: j. 1754 01:18:22,030 --> 01:18:23,230 Брајан SCASSELLATI: j. 1755 01:18:23,230 --> 01:18:27,110 Колку точки, сакам да се печати на крајот, по зајаче? 1756 01:18:27,110 --> 01:18:30,610 1757 01:18:30,610 --> 01:18:31,110 10-ѕ. 1758 01:18:31,110 --> 01:18:35,020 1759 01:18:35,020 --> 01:18:38,010 >> И има едно нешто јас сум недостасува. 1760 01:18:38,010 --> 01:18:43,740 Како што можете да забележите во предавање и денес, ние ќе треба да се изјасни printDots 1761 01:18:43,740 --> 01:18:52,430 горе да се даде на прототип. 1762 01:18:52,430 --> 01:18:56,740 1763 01:18:56,740 --> 01:18:58,220 ВО РЕД. 1764 01:18:58,220 --> 01:19:03,530 >> Значи она што го направив е Пробав да изолира дека повторно се користи дел од кодот 1765 01:19:03,530 --> 01:19:06,430 дека јас го направив, одново и одново. 1766 01:19:06,430 --> 01:19:11,120 И јас сум се обидел да го вадите, така што сите на кои се наоѓаат на едно место. 1767 01:19:11,120 --> 01:19:16,810 На тој начин, ако имам грешка некаде, Јас само треба да го поправите на едно место. 1768 01:19:16,810 --> 01:19:17,310 Во ред. 1769 01:19:17,310 --> 01:19:18,470 >> Па ајде да го спаси. 1770 01:19:18,470 --> 01:19:20,950 И ајде да се уверите дека работи. 1771 01:19:20,950 --> 01:19:22,050 Па ајде да одиме надвор. 1772 01:19:22,050 --> 01:19:25,200 Ќе одиме повторно на нашите терминал. 1773 01:19:25,200 --> 01:19:27,960 Ние ќе зумирате. 1774 01:19:27,960 --> 01:19:31,010 Ние ќе се направи овој процес зајаче. 1775 01:19:31,010 --> 01:19:32,380 >> Ох. 1776 01:19:32,380 --> 01:19:34,800 И тоа е ми даде предупредување. 1777 01:19:34,800 --> 01:19:37,070 Што е тоа да ми каже? 1778 01:19:37,070 --> 01:19:39,870 И во која било од овие пати, вие секогаш сакате 1779 01:19:39,870 --> 01:19:44,170 за да дојдете до самиот прв error-- сега на овој, Имам само уште еден. 1780 01:19:44,170 --> 01:19:52,700 >> Тоа ми кажува во bunny.c, on-line 8, колона 9, има еден проблем. 1781 01:19:52,700 --> 01:19:58,650 Таа вели дека, сте прогласи овој променливата i и не сте го користеле. 1782 01:19:58,650 --> 01:20:02,230 >> Сега нормално, тоа е не од најлошите грешки. 1783 01:20:02,230 --> 01:20:04,300 Тоа е лесна да се поправам. 1784 01:20:04,300 --> 01:20:07,550 И всушност, може да се вратите назад во. 1785 01:20:07,550 --> 01:20:09,910 Можеме да се вратиме на Bunny. 1786 01:20:09,910 --> 01:20:13,010 И во овој случај, сите ние треба да направите е да се ослободи од I, 1787 01:20:13,010 --> 01:20:16,630 бидејќи ние не сме користење Јас во главната повеќе. 1788 01:20:16,630 --> 01:20:19,860 Ние сме само да го користите во рамките на нашите под-рутина. 1789 01:20:19,860 --> 01:20:22,777 >> Значи, да се спаси. 1790 01:20:22,777 --> 01:20:23,360 Ние ќе се вратам. 1791 01:20:23,360 --> 01:20:26,760 1792 01:20:26,760 --> 01:20:28,630 И да зумирате. 1793 01:20:28,630 --> 01:20:30,700 Ќе уште еднаш направи зајаче. 1794 01:20:30,700 --> 01:20:33,810 1795 01:20:33,810 --> 01:20:36,530 И таму повторно се нашите 10 слики. 1796 01:20:36,530 --> 01:20:39,450 1797 01:20:39,450 --> 01:20:41,360 ВО РЕД. 1798 01:20:41,360 --> 01:20:43,190 >> Секое време си даде на procedure-- Да. 1799 01:20:43,190 --> 01:20:44,690 ЗВУЧНИК 33: Имам a-- Јас сум збунет. 1800 01:20:44,690 --> 01:20:45,892 Може да ви се врати на код? 1801 01:20:45,892 --> 01:20:46,850 Брајан SCASSELLATI: Да. 1802 01:20:46,850 --> 01:20:50,730 1803 01:20:50,730 --> 01:20:54,367 >> ЗВУЧНИК 33: Значи, кога ќе го напишал вашиот прототип, можете аргумент 1804 01:20:54,367 --> 01:20:56,550 сето тоа име беше наречен howMany? 1805 01:20:56,550 --> 01:20:57,540 Но, below-- 1806 01:20:57,540 --> 01:20:57,640 >> Брајан SCASSELLATI: О, да. 1807 01:20:57,640 --> 01:20:59,140 >> ЗВУЧНИК 33: ги --called нешто различни, јас не ги разбирам. 1808 01:20:59,140 --> 01:21:00,240 >> Брајан SCASSELLATI: Зошто тие се различни. 1809 01:21:00,240 --> 01:21:01,780 Значи тоа е големо прашање. 1810 01:21:01,780 --> 01:21:08,250 Значи, прашањето е, до тука, напишав howMany, 1811 01:21:08,250 --> 01:21:12,380 и долу, напишав howManyDots. 1812 01:21:12,380 --> 01:21:15,590 >> Причината е тоа што во вашиот прототип, тоа всушност не е обрнувајќи внимание 1813 01:21:15,590 --> 01:21:17,090 на имиња кои сте ставање во. 1814 01:21:17,090 --> 01:21:20,530 Сите што е навистина се грижи за е дека тоа е цел број. 1815 01:21:20,530 --> 01:21:23,080 Таа сака да знае форма на она што сте пуштање во. 1816 01:21:23,080 --> 01:21:31,560 >> Сега stylistically-- oops-- она ​​што треба направите, е Ми се допаѓа да се направат овие натпревар. 1817 01:21:31,560 --> 01:21:33,150 ВО РЕД. 1818 01:21:33,150 --> 01:21:36,430 Затоа што тоа ќе биде тоа го задржи полесно за мене да се запамети. 1819 01:21:36,430 --> 01:21:38,390 Но, тоа беше моја грешка Да. 1820 01:21:38,390 --> 01:21:47,620 >> ЗВУЧНИК 34: И така за Прототипот на работа, само 1821 01:21:47,620 --> 01:21:50,510 пишување таа линија, пишување на прототип, 1822 01:21:50,510 --> 01:21:53,932 им овозможува на таа функција која доаѓа веднаш под него да се оди до крај 1823 01:21:53,932 --> 01:21:55,140 и добивање што значи тоа? 1824 01:21:55,140 --> 01:21:58,480 >> Брајан SCASSELLATI: Што тоа значи е кога на компајлерот поминува, 1825 01:21:58,480 --> 01:22:01,930 тоа оди од врвот на Вашиот код на дното. 1826 01:22:01,930 --> 01:22:05,430 И она што оваа е прототип, е во основа тоа ветување. 1827 01:22:05,430 --> 01:22:09,570 >> Таа вели дека, таму се случува да биде функција дефинирана некаде. 1828 01:22:09,570 --> 01:22:11,880 Тоа се случува да биде наречен printDots. 1829 01:22:11,880 --> 01:22:15,110 И тоа се случува да се земе еден аргумент кој ќе биде цел број 1830 01:22:15,110 --> 01:22:18,590 и тоа се случува да се врати ништо, празнина тип. 1831 01:22:18,590 --> 01:22:19,310 ВО РЕД. 1832 01:22:19,310 --> 01:22:22,950 Јас ветувам дека ќе ви се случува да се биде дефинира некаде по патот. 1833 01:22:22,950 --> 01:22:25,590 Но, секој пат кога ќе видите кои, како што можете да одат надолу 1834 01:22:25,590 --> 01:22:28,710 па сè до крајот на мојот Главната функција, сакам 1835 01:22:28,710 --> 01:22:33,800 можете да постапуваме како функција кој трае цел број еден влез. 1836 01:22:33,800 --> 01:22:37,970 >> И така, кога на компајлерот оди надолу преку ова, што го гледа тоа ветување. 1837 01:22:37,970 --> 01:22:40,220 А кога тоа добива надолу, продолжува да се, и натаму ќе се случува, 1838 01:22:40,220 --> 01:22:43,060 го пронајде прв пат printDots се споменува. 1839 01:22:43,060 --> 01:22:46,910 И тој вели: Ох, ти си дава мене ова ѕ. ѕ е цел број. 1840 01:22:46,910 --> 01:22:49,570 >> Па ти ми вети дека ќе да биде цел број и дека е во право. 1841 01:22:49,570 --> 01:22:51,370 Во ред е. 1842 01:22:51,370 --> 01:22:53,880 А потоа конечно, долу на самото дно, 1843 01:22:53,880 --> 01:22:58,340 Пред да стигнам до крајот на мојот податотека, јас го исполни ветувањето ми 1844 01:22:58,340 --> 01:22:59,896 и јас го дефинираат. 1845 01:22:59,896 --> 01:23:01,868 ВО РЕД? 1846 01:23:01,868 --> 01:23:06,320 >> ЗВУЧНИК 35: Значи, тоа saves-- на Програмата ќе се спаси празни места 1847 01:23:06,320 --> 01:23:09,570 дека тоа се навраќа и пополнува на крајот? 1848 01:23:09,570 --> 01:23:12,140 >> Брајан SCASSELLATI: Тоа не е во врска со распределбата на меморија. 1849 01:23:12,140 --> 01:23:16,800 Тоа е всушност само за тоа што тип Ве очекуваме да се види. 1850 01:23:16,800 --> 01:23:19,340 Треба оваа работа има еден аргумент, или пет аргументи? 1851 01:23:19,340 --> 01:23:23,590 Треба да биде тоа цели броеви со оглед на тоа, или жици? 1852 01:23:23,590 --> 01:23:25,780 Тоа е се што е во потрага да направите е да се провери, 1853 01:23:25,780 --> 01:23:29,303 ќе ме на давање право вид на аргумент. 1854 01:23:29,303 --> 01:23:31,560 ВО РЕД? 1855 01:23:31,560 --> 01:23:32,300 Во ред. 1856 01:23:32,300 --> 01:23:38,570 >> Дозволете ми да ве остават со еден друг малку да се погледне. 1857 01:23:38,570 --> 01:23:44,850 ASCII уметност не е одличен модел на анимација, како што е денес. 1858 01:23:44,850 --> 01:23:50,850 Но, некои луѓе се разбира се работи а тие да се поттикнат до нивните крајности. 1859 01:23:50,850 --> 01:23:56,790 >> Ова е, како што покажува Дејвид во предавањето, дел од кодот 1860 01:23:56,790 --> 01:24:02,150 дека во никој случај не обидете се да си се дуплираат. 1861 01:24:02,150 --> 01:24:05,260 Затоа што тоа е страшно стилски. 1862 01:24:05,260 --> 01:24:11,180 Всушност, тој е дизајниран да биде како што е тешко како е можно да се прочита. 1863 01:24:11,180 --> 01:24:11,680 ВО РЕД. 1864 01:24:11,680 --> 01:24:16,210 >> Значи, да се направи повторно, да зумирате тука. 1865 01:24:16,210 --> 01:24:20,120 Одам да одиме одма промена директориум. 1866 01:24:20,120 --> 01:24:24,050 Одам да се оди до една ниво, се враќам на работен простор. 1867 01:24:24,050 --> 01:24:29,760 Тогаш јас ќе го промени директориумот во оваа Друго што сум ги создал. 1868 01:24:29,760 --> 01:24:36,190 >> И ова е на Меѓународната Криење на C Програмирање натпревар. 1869 01:24:36,190 --> 01:24:40,650 Нечитлив значи толку тешко како е можно да се разбере. 1870 01:24:40,650 --> 01:24:44,150 Затоа ве молам, не се плаши, ако се погледне во ова и да си одат, не можам да го прочитате тоа. 1871 01:24:44,150 --> 01:24:46,350 Тоа е поентата на тоа. 1872 01:24:46,350 --> 01:24:47,700 ВО РЕД? 1873 01:24:47,700 --> 01:24:52,770 >> Но, ние имаме овој прекрасна програма што сум 1874 01:24:52,770 --> 01:24:57,180 случува да се погледне во повеќе од само пишете. 1875 01:24:57,180 --> 01:25:01,890 И ајде да видам дали можам да одзумирате само малку, па можете да ја види 1876 01:25:01,890 --> 01:25:03,940 >> И ова е програмата. 1877 01:25:03,940 --> 01:25:08,080 Тоа е именуван endo.c. 1878 01:25:08,080 --> 01:25:14,850 И тоа изгледа како оваа кофа со вид на буквите Ф-Л-У-И-Г во неа. 1879 01:25:14,850 --> 01:25:16,440 >> Ова е всушност програма. 1880 01:25:16,440 --> 01:25:20,260 Текстот е пишуван во повеќето непознати начин на кој авторите може да можеби 1881 01:25:20,260 --> 01:25:21,760 го напише. 1882 01:25:21,760 --> 01:25:29,210 Но, тоа е прекрасен малку парче што генерира модел на динамиката на течноста. 1883 01:25:29,210 --> 01:25:34,870 >> И така ние се случува да се даде тој модел инпут 1884 01:25:34,870 --> 01:25:42,520 изгледа вака, на staired постави на контејнери 1885 01:25:42,520 --> 01:25:45,820 со некои течности, некои течност, на врвот. 1886 01:25:45,820 --> 01:25:48,790 И ние ќе го симулира она што се случува со неа. 1887 01:25:48,790 --> 01:25:52,415 >> Па јас ќе се јавам на таа функција, ендо. 1888 01:25:52,415 --> 01:25:59,000 А јас ќе и ја даде таа влезна датотека што сум ги имал. 1889 01:25:59,000 --> 01:26:02,830 И таму е нашата олицетворение на ASCII уметност. 1890 01:26:02,830 --> 01:26:08,960 А со полно течност динамика симулатор работи во само неколку линии на код. 1891 01:26:08,960 --> 01:26:13,750 >> Сега она што е всушност навистина прекрасно за оваа мала програма 1892 01:26:13,750 --> 01:26:17,280 е тоа што сакам да го запреме сега, па јас ќе одам да го користите она команда? 1893 01:26:17,280 --> 01:26:18,660 >> ПУБЛИКАТА: контрола-C. 1894 01:26:18,660 --> 01:26:20,390 >> Брајан SCASSELLATI: Контрола-C. ВО РЕД. 1895 01:26:20,390 --> 01:26:22,960 Па јас ќе го користат за контрола-C. С Тоа ќе го спречи тоа. 1896 01:26:22,960 --> 01:26:25,330 Јас ќе се расчисти повторно. 1897 01:26:25,330 --> 01:26:31,210 И сега ќе одам да се повика на програма, извршување на програмата, 1898 01:26:31,210 --> 01:26:33,740 самата користење како влез. 1899 01:26:33,740 --> 01:26:36,760 1900 01:26:36,760 --> 01:26:42,700 >> И ќе видиме динамичен течноста симулација на топење. 1901 01:26:42,700 --> 01:26:43,830 ВО РЕД. 1902 01:26:43,830 --> 01:26:48,180 Ве молиме, не дозволувајте тоа програмата биде нешто што вие збунува. 1903 01:26:48,180 --> 01:26:52,220 Тоа е само за да може да се стави крај на нешто кул и интересно. 1904 01:26:52,220 --> 01:26:53,930 ВО РЕД. 1905 01:26:53,930 --> 01:26:56,330 >> Најдоброто од среќа со вашиот проблем сета. 1906 01:26:56,330 --> 01:26:59,030 Ние ќе бидеме среќни да одговориме прашања по класа. 1907 01:26:59,030 --> 01:27:01,180 Благодарение многу, момци. 1908 01:27:01,180 --> 01:27:02,793