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 JASON Hirschhorn: OK, всички. 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 Имаме Andi, който е ръководител на екипа за техническа помощ 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 и кой ви е TA. 26 00:01:03,350 --> 00:01:08,610 >> Проблем Set 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-- всичко David преминава в лекция, 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 Study е фантастичен ресурс. 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 >> Сега, ние ще отидем типове данни и оператори в C. 72 00:03:16,430 --> 00:03:19,990 Тогава Andi ще дойде тук и разясни библиотеки в C, ФОРМАТ (), 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 И вие също така ще разясни условни и примки. 76 00:03:27,810 --> 00:03:30,900 >> И накрая, Scaz ще отидем ID на CS50. 77 00:03:30,900 --> 00:03:34,250 Ако не сте се гмурна в вече във Проблем Set 1, 78 00:03:34,250 --> 00:03:37,060 както и как да се използва терминални и полезни команди 79 00:03:37,060 --> 00:03:42,280 и след това да ви дам някои демонстрации и кодиране практика в ID на 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, не може просто да има променлива х и той да бъде на линия 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 Така че това е една буква A, B, C, D. Това също може да бъде пространство, 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 има предвид, че едно цяло число е 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 Това не е реално, вградена в C. 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 бита има осем 0s и 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 >> Strings, това е под въпрос защото това е Катерачът за по-късно. 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 Това е Катерачът. 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 Но отново, това е Катерачът за по-късно. 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 И така може да се наложи две променливи х и у. 155 00:07:46,850 --> 00:07:48,810 Можете да направите х + у в кода си. 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 Можете да направите инт за тип, пространство Накратко, наименование на променливата, = 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 >> JASON 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 JASON Hirschhorn: 4. 171 00:08:22,203 --> 00:08:25,770 Sum вероятно е грешно име за тази променлива, но 4 ще се съхранява. 172 00:08:25,770 --> 00:08:31,890 >> За да се размножава в C, използвайте малкото, Star характер, не е нужно да използвате х. 173 00:08:31,890 --> 00:08:35,990 За да се разделят, да се използва Forward Не Слаш символа дивизия. 174 00:08:35,990 --> 00:08:39,580 И да по модул, използвайте символа Percent. 175 00:08:39,580 --> 00:08:47,900 >> Така че нека да кажа, че искам да видя инт г = 7% 3, което ще се съхраняват в Z? 176 00:08:47,900 --> 00:08:51,250 Така че, това е по същество пита какво прави по модул направя? 177 00:08:51,250 --> 00:08:52,750 Някой знае ли какво прави по модул? 178 00:08:52,750 --> 00:08:53,940 Да. 179 00:08:53,940 --> 00:08:54,870 у 4. 180 00:08:54,870 --> 00:08:56,120 SPEAKER 1: Това е остатъка. 181 00:08:56,120 --> 00:08:58,369 JASON Hirschhorn: Това е най- остатък, когато се разделят. 182 00:08:58,369 --> 00:09:02,790 Така 7, разделена на 3 е 2 остатък 1. 183 00:09:02,790 --> 00:09:04,690 Така един ще се съхранява. 184 00:09:04,690 --> 00:09:06,970 >> Справи изваждане, но това е как тя работи. 185 00:09:06,970 --> 00:09:09,140 Това е, което операторът на модул прави. 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 >> SPEAKER 2: 2. 193 00:09:30,090 --> 00:09:32,240 >> JASON Hirschhorn: Защо 2 и не 2,333? 194 00:09:32,240 --> 00:09:34,560 >> SPEAKER 2: Мисля, че това намалява изключва след като цяло число. 195 00:09:34,560 --> 00:09:36,310 JASON 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 разделена на три. 201 00:09:51,120 --> 00:09:54,010 Това всъщност, ние знаем, че за да се върнете 2.666, 202 00:09:54,010 --> 00:09:57,050 но пържоли всичко започва в десетичната, всичко отрязъци, 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 SPEAKER 3: Използвайте плувка? 212 00:10:15,110 --> 00:10:16,942 JASON Hirschhorn: Какво искаш да кажеш? 213 00:10:16,942 --> 00:10:19,786 SPEAKER 3: Понеже ти каза плувка е за номера [недоловим] 214 00:10:19,786 --> 00:10:22,900 215 00:10:22,900 --> 00:10:23,900 JASON 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-- PB и J 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 тя ще каже, OK, сега имаме работа с поплавъци. 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 SPEAKER 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 >> JASON 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 >> SPEAKER 4: OK. 244 00:11:37,640 --> 00:11:41,950 >> JASON Hirschhorn: Но ако исках да направя 7, разделено на 3 и се получи, че десетични, 245 00:11:41,950 --> 00:11:48,540 Аз ще направя плувка г = 7.0 / с 3.0; и че ще ми даде плаваща запетая 246 00:11:48,540 --> 00:11:49,273 номер. 247 00:11:49,273 --> 00:11:50,000 >> SPEAKER 4: OK. 248 00:11:50,000 --> 00:11:56,370 >> JASON Hirschhorn: Ако го бях направил нещо като инт г = 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 >> SPEAKER 4: Да. 252 00:12:02,320 --> 00:12:02,950 >> JASON Hirschhorn: OK. 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 >> Така че тук аз съм проверка, ако х == у, нека отново се предположи, че х е 7, а у е 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 >> АУДИТОРИЯ: False. 265 00:12:35,275 --> 00:12:36,150 JASON Hirschhorn: OK. 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 АУДИТОРИЯ: False. 269 00:12:39,720 --> 00:12:40,130 JASON Hirschhorn: False. 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 АУДИТОРИЯ: True. 275 00:12:51,370 --> 00:12:52,650 JASON Hirschhorn: True. 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 >> АУДИТОРИЯ: True. 284 00:13:07,692 --> 00:13:08,650 JASON Hirschhorn: True. 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 >> [Вмъкване VOICES] 312 00:14:21,680 --> 00:14:22,250 >> JASON 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 >> JASON 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 Perfect. 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 могат да получат достъп до тази библиотека е чрез таг # включват. 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 Така че, както вече David обяснено в лекция, 358 00:16:14,610 --> 00:16:17,460 стандартната I / O библиотека, или стандартния вход / изход библиотека 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 >> И така всеки път, когато използвате всички функции, например ФОРМАТ функция (), които 363 00:16:29,990 --> 00:16:33,319 ние ще отидем на следващия слайд, се уверете, че да се включи стандарта I / O 364 00:16:33,319 --> 00:16:36,360 библиотека или друго, което няма да можете да използвате функцията за ФОРМАТ (). 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 Така, че вие ​​като програмист може да стъпи 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 >> SPEAKER 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 >> АНДИ Пенг: Great въпрос. 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 И тогава, когато таг # включват, на библиотеката там. 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 Това се нарича () функцията ФОРМАТ. 405 00:18:05,690 --> 00:18:08,450 Така че, ФОРМАТ () функция, както съм Вече казах, в последния слайд, 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 всеки път, когато използвате () функцията ФОРМАТ, 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 О, аз не знам къде ФОРМАТ () е, ти не ми казваш къде ФОРМАТ () 412 00:18:26,140 --> 00:18:26,830 е. 413 00:18:26,830 --> 00:18:30,150 Ами ФОРМАТ () е включена в стандартна I / O, така че, когато използвате ФОРМАТ (), 414 00:18:30,150 --> 00:18:32,960 уверете се, че да има Линия над кода си. 415 00:18:32,960 --> 00:18:36,040 >> Така например, ФОРМАТ () тук е функция. 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 >> ВЕРДИ: Дъното. 422 00:18:51,380 --> 00:18:53,510 >> АНДИ Пенг: Verdi, защо не отидеш напред и да се каже, че целият отчет? 423 00:18:53,510 --> 00:18:55,718 >> ВЕРДИ: Здравейте, моето име е Andi, и аз съм на 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-- пробив п. 435 00:19:23,610 --> 00:19:24,640 Така пробив п. 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 SPEAKER 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 >> SPEAKER 7: резюме. 450 00:19:55,740 --> 00:19:56,010 >> АНДИ Пенг: Съжаляваме? 451 00:19:56,010 --> 00:19:57,100 >> SPEAKER 7: Има ли го сложи край на изложението? 452 00:19:57,100 --> 00:19:57,766 >> АНДИ Пенг: Да. 453 00:19:57,766 --> 00:20:02,670 Така в С, или програмиране език, точка и запетая 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 взети AP Computer Science или програмиран в Java и преди, някога? 467 00:20:37,210 --> 00:20:37,710 ДОБРЕ. 468 00:20:37,710 --> 00:20:38,210 Lovely. 469 00:20:38,210 --> 00:20:41,340 Това няма да е приложимо след това, но в Java, можете 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 Мади, никого. 486 00:21:25,511 --> 00:21:27,260 Мади: О, това подсказва ви за цяло число. 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 можем да вървим напред и място че в нашата ФОРМАТ () функцията. 500 00:22:03,720 --> 00:22:08,970 Така че синтаксиса обикновено за ФОРМАТ () е че където и в действителност физическото си 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 Така че ти започваш да се включи % аз, защото това е цяло число. 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 за струнен и аз% 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 И така, ако исках да вход, Hello, Моето име Andi, и аз съм на 20 години. 536 00:23:42,720 --> 00:23:46,370 Ако въведеният Andi и 20 г. точно същото нещо ще отпечата; 537 00:23:46,370 --> 00:23:51,134 Въпреки това, сега ние имаме две съхранява променливи на име, както и Int. 538 00:23:51,134 --> 00:23:51,634 Да. 539 00:23:51,634 --> 00:23:54,124 >> SPEAKER 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 >> SPEAKER 8: String. 546 00:24:03,950 --> 00:24:05,440 >> АНДИ Пенг: И това, което тип променлива е възрастта? 547 00:24:05,440 --> 00:24:06,231 >> SPEAKER 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 Това ще провери за низ, и ако се опитате да го дам едно цяло число, 551 00:24:16,250 --> 00:24:18,083 това ще бъде като изчакайте аз съм объркан, вие 552 00:24:18,083 --> 00:24:21,100 ми каза, че трябва да бъде разпределяне на паметта за инт. 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 Мади. 560 00:24:39,476 --> 00:24:44,620 >> Мади: Ето, аз знам, след като видяхме най примери в клас, където те попитам 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 можете просто да добавите ФОРМАТ () функция който казва, Моля, въведете вашия възраст, 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 >> SPEAKER 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 моля да ми дадете вашата възраст, а след това ще трябва да ФОРМАТ (), които сами. 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 >> SPEAKER 10: Така, само за да се изясни, когато което правите вход името и възрастта 584 00:25:38,236 --> 00:25:43,020 така че тя да се появи на мястото на% ите? 585 00:25:43,020 --> 00:25:44,320 >> АНДИ Пенг: Както във потребителя? 586 00:25:44,320 --> 00:25:47,165 >> SPEAKER 10: Да, като например как да направя направи it-- къде сложих Andi, 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 това беше много интуитивен в Scratch, и е трудно за кодиране 608 00:26:39,090 --> 00:26:41,950 в синтаксиса ние ще се използва за класа, която е C. 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 следобед до Science Hill са Вероятно прави дясната 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 вече имаме променлива от тип инт нарича домашна часа точно тук. 632 00:27:49,920 --> 00:27:53,870 Ако домашните часа е по-малко от пет ФОРМАТ (), Животът е чудесен. 633 00:27:53,870 --> 00:27:57,330 Запомни пазят / п, защото искате нов ред след това. 634 00:27:57,330 --> 00:27:59,660 Else печат, Борбата е реално. 635 00:27:59,660 --> 00:28:03,720 >> Всички ли се разбере как I прехвърлен от този блок 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 >> Така че ако трябва да се изработи програма, I означава обикновено във всички очите ни, 646 00:28:30,730 --> 00:28:35,490 90-100 е А, 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 >> SPEAKER 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 SPEAKER 11: Една грешка? 658 00:28:59,820 --> 00:29:01,140 АНДИ Пенг: Една грешка? 659 00:29:01,140 --> 00:29:02,740 Great предположение, не е съвсем прав. 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, имаш B, имаш C. 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 И тогава нека просто кажем, I въведена длъжността на 95. 671 00:29:26,200 --> 00:29:30,360 Така 95 сега се съхранява в на INT наречения клас. 672 00:29:30,360 --> 00:29:33,610 >> И така, C е език която работи до горе до долу, 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 ФОРМАТ (), която получих от A. Great, I имаме 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 >> И тези от course-- мисля за тях, както стълби, или като стъпала на 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, ФОРМАТ (), аз имам една A. Great. 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 I 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 от друго ... ИС. 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 и веднага след като един от тях не е верен, почивка също, те дори няма да се покажат. 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 Така че в изявление превключвател, Ви Обикновено, обикновено, всъщност ви 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 Искам тя да се види дали това е А, B или C. I може да има случай тук. 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 И нека просто кажем, че входния 1636. 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 ФОРМАТ () Не трябва ли да по това училище на север? 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 и печат Добре дошли в Yale! 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-- то се случва да отида до подразбиране за печат, Hello Internet! 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 >> SPEAKER 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 SPEAKER 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 >> SPEAKER 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 SPEAKER 14: Cool. 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 >> SPEAKER 14: И ти не можаха направя случаи като и по-голяма от. 778 00:34:16,687 --> 00:34:17,270 АНДИ Пенг: No. 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, I искате да зададете ниска към низ, 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 Между другото, това е SAJ-- Scaz, Andi, 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 защото тя никога не се случва да се направи оценка на невярна 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 SPEAKER 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 Отивам да направя ФОРМАТ () Каква е твоята възраст? 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 години или нещо такова. 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 >> SPEAKER 16: Опа, съжалявам. 888 00:39:05,580 --> 00:39:06,288 >> АНДИ Пенг: Да. 889 00:39:06,288 --> 00:39:09,424 >> SPEAKER 16: Има ли, не да бъде задник, but-- 890 00:39:09,424 --> 00:39:10,340 АНДИ Пенг: Не се тревожете. 891 00:39:10,340 --> 00:39:11,990 SPEAKER 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 и ние вече знаем, Oh искам този цикъл да се изпълни като 10 пъти, 914 00:39:58,900 --> 00:40:03,060 тогава do-- Ще отидем пример на следващата страница. 915 00:40:03,060 --> 00:40:07,830 >> Така че тук например, в Scratch, ако Исках нещо да се повтаря 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 име аз. 921 00:40:26,040 --> 00:40:30,089 Отивам да се инициализира то до 0, така че аз = 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 Но аз ще отида в продължение на Псевдокод пример за това 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 По същество в Псевдокод, това, което се случва в тази програма, 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, ако аз прираста това е, това е вече една. 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 >> SPEAKER 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-- OK. 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 Ние получаваме в реално Inception тип неща тук. 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 Style. 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 Но за нас, тъй като вашата прекрасна СНС, които ще да се чете и оценка на вашите 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 >> SPEAKER 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, инт andi_age, инт 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 И в Проблемна Set 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 >> Така че в този IDE, трябва да имате това, което изглежда като един много традиционен файлов браузър 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, Ubuntu, 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 те започват да използват команда, наречена ли, или списък. 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 >> За да промените директорията, вие ще използвате командата сд. 1135 00:49:31,190 --> 00:49:35,180 И вие ще бъдете в състояние да промените директорията както за да преминете към вашата домашна директория. 1136 00:49:35,180 --> 00:49:38,500 Това е просто сд всичко от себе си, сд с двама 1137 00:49:38,500 --> 00:49:42,930 точки ще ви върнат с още един равнище за предишния си директория. 1138 00:49:42,930 --> 00:49:46,400 А също така можете сд до поддиректория, като напишете в сд 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 >> IDE The 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 Те са изброени в червено, защото вие трябва да мислим "Danger" всеки път, 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 от изпълняващата чрез въвеждане на контрол, че се държите натиснат Control-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 вие ще бъдете в състояние да използват Tab до довършим няколко инструкции. 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-- C е компилиран език. 1187 00:52:18,830 --> 00:52:23,210 Това означава, че ние ще се вземе източник file-- това е текста, който пишете, 1188 00:52:23,210 --> 00:52:26,500 командите, които ти пиша, за ФОРМАТ () становища, примките, 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 Така че, когато ние работим с тях файлове, ще напиши файл в C. 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 >> SPEAKER 19: Отново. 1239 00:55:09,217 --> 00:55:11,050 БРАЯН SCASSELLATI: One повече време, всичко е наред. 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 IDE. 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 Това е така, че мога да получа ФОРМАТ () функция, за да работят. 1274 00:57:12,560 --> 00:57:15,240 >> Аз тогава имам моята основна функция. 1275 00:57:15,240 --> 00:57:18,760 И това все още изглежда малко тайнствена или неясно на някои от вас. 1276 00:57:18,760 --> 00:57:20,010 Това е добре. 1277 00:57:20,010 --> 00:57:23,190 All тя казва, е, че чиято основна функция се 1278 00:57:23,190 --> 00:57:27,830 не arguments-- невалидни средства нищо в C. И това 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 Винаги записвайте в English коментар нещо 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 Или когато TA сяда с вас, за да се опита да ви помогне в работно време, 1294 00:58:17,590 --> 00:58:20,890 те могат да погледнете това и си отиват, I да видим какво сте се опитвали да направите, 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 >> SPEAKER 20: ние използваме за Двойна наклонена черта да коментирате? 1310 00:59:12,507 --> 00:59:14,340 БРАЯН SCASSELLATI: Can използвате double-- Да. 1311 00:59:14,340 --> 00:59:16,920 Има няколко начина за оставят коментари в C. One 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 Отивам да гледам и да видим какво е в тази директория, LS, избройте навън. 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 И аз ще съм само да напишете част от него, а след това просто да натиснете Tab. 1323 00:59:58,380 --> 01:00:01,520 И това ще допише за мен. 1324 01:00:01,520 --> 01:00:03,370 Fancy. 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 И тази заповед, да направи зайче, докато звучи малко странно, 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 >> SPEAKER 21: Slash л или наклонена черта п. 1351 01:01:14,478 --> 01:01:15,602 БРАЯН SCASSELLATI: Slash п. 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 Ще сложа в ФОРМАТ (). 1362 01:01:38,430 --> 01:01:41,350 И това, което мога да пробва? 1363 01:01:41,350 --> 01:01:41,890 / п. 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 Така че, ако се вгледате в това, което имам, Сложих / п там, но имах грешен черта. 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 И още един път, ние ще направим зайче. 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 Първото нещо, което трябва да направите, е, че трябва да се инициализира аз. 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 >> АУДИТОРИЯ: Five. 1437 01:05:06,921 --> 01:05:08,170 БРАЯН SCASSELLATI: Five отново? 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 SPEAKER 22: Two. 1441 01:05:13,250 --> 01:05:13,580 БРАЯН SCASSELLATI: Two. 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 >> АУДИТОРИЯ: Three. 1445 01:05:19,140 --> 01:05:20,530 >> БРАЯН SCASSELLATI: Three. 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 >> SPEAKER 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 + 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 Отивам да направя ФОРМАТ () и аз отивам за да го направи, така че мога само отпечатате една точка 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 >> SPEAKER 24: к. 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 Аз не се нуждаят от тях отново, когато I стигнем до тази точка. 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 SPEAKER 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 >> АУДИТОРИЯ: Eight. 1503 01:07:32,570 --> 01:07:33,611 >> БРАЯН SCASSELLATI: Eight. 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 >> АУДИТОРИЯ: аз ++. 1509 01:07:42,670 --> 01:07:44,400 >> БРАЯН SCASSELLATI: аз ++. 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 >> SPEAKER 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 Така че точно сега имам някак програмирани винаги да направя две точки в началото 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 Искам да променя колко точки I печатат в началото 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 Отивам да подчертае всички това, и аз отивам да се удари Tab. 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-- Опа, 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 И това, което мога да направя в края, за да й? 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 SPEAKER 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: I искам тя да се промени, нали? 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 Какво да задам й до най-напред? 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 За втори път през линия, к-те ще бъде един, защото аз го увеличите. 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 >> АУДИТОРИЯ: Three. 1619 01:12:20,587 --> 01:12:22,170 БРАЯН SCASSELLATI: й ще бъде 3. 1620 01:12:22,170 --> 01:12:24,890 Колко точки отивам да печатате? 1621 01:12:24,890 --> 01:12:26,817 О, съжалявам, й се случва да бъде 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 >> SPEAKER 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 >> АУДИТОРИЯ: Five. 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 АУДИТОРИЯ: Four. 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 АУДИТОРИЯ: Three. 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-J. 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 Е, колко зайчета виждам там? 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: No. 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 SPEAKER 29: Точно така. 1670 01:13:58,290 --> 01:14:00,502 БРАЯН SCASSELLATI: Така че, какво съм забравяйте да го направите? 1671 01:14:00,502 --> 01:14:01,750 SPEAKER 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 SPEAKER 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 И аз ще Tab пред него, за да показват, че това е на мястото си. 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: OK. 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 И външният контур контролирано колко кадъра I строеше. 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 >> SPEAKER 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 I трябва да се отпечатат. 1731 01:17:04,920 --> 01:17:09,310 1732 01:17:09,310 --> 01:17:17,720 И сега, вместо да печатате й точки, аз ще отпечатате кажа howManyDots I трябва да се отпечатат. 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 тук, но аз съм с тази променлива аз. 1741 01:17:40,584 --> 01:17:43,750 Така че аз ще взема тази променлива аз и аз отивам да го определят предвидени в тук 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 АУДИТОРИЯ: к. 1754 01:18:22,030 --> 01:18:23,230 БРАЯН SCASSELLATI: к. 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-J. 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 >> Oh. 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, он-лайн 8, колона 9, че има проблем. 1781 01:19:52,700 --> 01:19:58,650 Той казва, че сте обявен за това променлива аз и не сте го използвали. 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 Ние можем да се върнем към зайче. 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 SPEAKER 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 >> SPEAKER 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 >> SPEAKER 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-- какво трябва да да се I искал да направи това в срещата. 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 >> SPEAKER 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 >> SPEAKER 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 >> Това е, както е показано David в лекция, част от код 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 И това изглежда така кофа с вид на буквите F-L-U-I-D в него. 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 >> АУДИТОРИЯ: Control-C. 1894 01:26:18,660 --> 01:26:20,390 >> БРАЯН SCASSELLATI: Control-C. ДОБРЕ. 1895 01:26:20,390 --> 01:26:22,960 Така че аз ще използвате Control-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