1 00:00:00,000 --> 00:00:05,830 2 00:00:05,830 --> 00:00:08,650 >> Джейсон Hirschhorn: Добро пожаловать в CS50 разделе, все. 3 00:00:08,650 --> 00:00:11,430 Меня зовут Джейсон Hirschhorn. 4 00:00:11,430 --> 00:00:15,850 Я много ваш ТФ, но много людей, мы надеемся, присоединится к нам 5 00:00:15,850 --> 00:00:20,420 онлайн, расширение студентов или студентов пытаясь заглянуть через раздел, если они 6 00:00:20,420 --> 00:00:22,830 упустили свой раздел, который неделю или просто догнать, если они хотят 7 00:00:22,830 --> 00:00:24,510 рассмотреть некоторые материалы. 8 00:00:24,510 --> 00:00:30,060 >> Так, согласно программе, которая все из вас читали, правильно? 9 00:00:30,060 --> 00:00:31,390 Я вижу много головы кивает. 10 00:00:31,390 --> 00:00:34,220 Разделы предоставит вам возможности для изучения курса 11 00:00:34,220 --> 00:00:37,420 материал в более интимной обстановке, , а также погрузиться в 12 00:00:37,420 --> 00:00:38,810 практические занятия. 13 00:00:38,810 --> 00:00:41,230 >> Так что это в основном то, что мы собираюсь делать каждую неделю. 14 00:00:41,230 --> 00:00:45,090 Мы собираемся пройти через то, что имеем определены как наиболее важные 15 00:00:45,090 --> 00:00:49,170 Темы, затронутые в лекции, а те, также, вероятно, наиболее полезным и 16 00:00:49,170 --> 00:00:52,780 Скорее всего, чтобы придумать на домашних заданий и в викторинах, и в Вашем кодировании 17 00:00:52,780 --> 00:00:53,970 жизнь вне CS50. 18 00:00:53,970 --> 00:00:57,260 Итак, мы собираемся идти в эти темы, обсудить их, идите за ними, 19 00:00:57,260 --> 00:01:00,660 ответить на любые вопросы вы, ребята, и Затем мы собираемся делать много 20 00:01:00,660 --> 00:01:02,250 практике проблемы в кодировании. 21 00:01:02,250 --> 00:01:04,239 >> Вы принесли все ноутбуки, , который является фантастическим. 22 00:01:04,239 --> 00:01:05,710 Это класс информатики. 23 00:01:05,710 --> 00:01:10,070 Тем не менее, много упражнений, которые мы делаем, вам не нужно будет для ваших ноутбуков. 24 00:01:10,070 --> 00:01:11,720 Вы можете сделать их на листе бумаги. 25 00:01:11,720 --> 00:01:13,580 Вот как вы собираетесь делать их на викторины. 26 00:01:13,580 --> 00:01:16,450 И в самом деле, это отличный способ знаю, что вы, как это сделать 27 00:01:16,450 --> 00:01:19,720 что-то, если у вас нет Заезд 50 до полагаются на Или Сделать полагаться на, говоря 28 00:01:19,720 --> 00:01:20,620 Вы были допущены ошибки. 29 00:01:20,620 --> 00:01:25,670 >> Таким образом, вы всегда можете кода на Прибор или run.cs50.net, которая является 30 00:01:25,670 --> 00:01:29,770 другой инструмент, который позволяет кодировать онлайн, но я также рекомендовал бы, если 31 00:01:29,770 --> 00:01:32,280 вы еще не пробовали его, используя лист бумаги и пытаются эти практики 32 00:01:32,280 --> 00:01:33,640 задачи на листе бумаги. 33 00:01:33,640 --> 00:01:35,330 Потому что опять же, это в конечном счете то, что вы собираетесь быть 34 00:01:35,330 --> 00:01:37,430 попросили сделать на викторины. 35 00:01:37,430 --> 00:01:44,080 >> Итак, давайте начнем с нашей повестки дня на сегодня. 36 00:01:44,080 --> 00:01:47,710 Мы собираемся пойти на некоторые нормы наш раздел, то мы собираемся нырять 37 00:01:47,710 --> 00:01:51,180 в массивы, функции и командной строки аргументы, что и вы, ребята, 38 00:01:51,180 --> 00:01:56,200 покрыли на прошлой неделе в лекционных а затем понедельник, и что Вы расскажу 39 00:01:56,200 --> 00:01:57,330 более завтрашнего дня. 40 00:01:57,330 --> 00:01:59,060 И, наконец, мы собираемся говорить о pset2. 41 00:01:59,060 --> 00:02:03,640 Если бы я мог получить поднятием рук, если вы не смотрел на проблему установить два 42 00:02:03,640 --> 00:02:04,890 спецификации. 43 00:02:04,890 --> 00:02:07,060 44 00:02:07,060 --> 00:02:08,120 Мы скажем каждому. 45 00:02:08,120 --> 00:02:09,419 Фантастика. 46 00:02:09,419 --> 00:02:12,070 >> Мы будем говорить о проблеме множеств в бит, но если вы прочитали Поставленная задача 47 00:02:12,070 --> 00:02:14,340 спецификации, это Все, что вам нужно делать. 48 00:02:14,340 --> 00:02:18,370 Если вы читали, что, прежде чем прийти к класс и раздел во вторник, вы 49 00:02:18,370 --> 00:02:19,220 быть отличной позиции. 50 00:02:19,220 --> 00:02:21,680 Мы можем пройти через проблемы множество, что мы и собираемся 51 00:02:21,680 --> 00:02:22,090 сделать в конце. 52 00:02:22,090 --> 00:02:23,500 Мы собираемся пройти через Логика, убедитесь, 53 00:02:23,500 --> 00:02:24,710 все на той же странице. 54 00:02:24,710 --> 00:02:28,650 >> Я хочу, чтобы иметь возможность оставить вторник чувствуя себя очень комфортно с тем, что вы 55 00:02:28,650 --> 00:02:31,560 нужно сделать для проблемной набора на этой неделе, и если вы этого не сделаете, я будем счастливо 56 00:02:31,560 --> 00:02:33,050 остаться после и работать с вами. 57 00:02:33,050 --> 00:02:36,850 Но одна вещь, которую вы должны сделать, но я думаю, что было бы действительно умный, 58 00:02:36,850 --> 00:02:40,500 только, чтобы прочитать Поставленная задача спецификации класса во вторник, 59 00:02:40,500 --> 00:02:42,640 которой она звучит как Многие из вас, ребята сделали. 60 00:02:42,640 --> 00:02:45,810 >> Я начну с повестки дня каждого класса так что вы знаете, куда мы идем. 61 00:02:45,810 --> 00:02:49,520 Это также полезно для людей, наблюдающих Интернет, потому что каждый раздел 62 00:02:49,520 --> 00:02:53,540 имеет цветовую маркировку, так что если вы хотите приехать назад и просто смотреть 10 минут, а 63 00:02:53,540 --> 00:02:56,950 чем весь 90-минутный разделе можете просто пойти с цветной маркировкой разделе 64 00:02:56,950 --> 00:02:57,890 и смотреть на эту часть. 65 00:02:57,890 --> 00:03:01,510 Так я пытался разбить их в хорошие модули, которые позволят вам - 66 00:03:01,510 --> 00:03:03,960 если вы хотите возвращаться и пересматривать, или других студентов, которые просто 67 00:03:03,960 --> 00:03:05,350 смотреть разделе можно просмотреть - 68 00:03:05,350 --> 00:03:08,130 найти конкретные вещи они хочу обратить внимание на 69 00:03:08,130 --> 00:03:10,480 и узнать больше о. 70 00:03:10,480 --> 00:03:11,390 Сладкий. 71 00:03:11,390 --> 00:03:12,180 >> Норм. 72 00:03:12,180 --> 00:03:13,680 Я лидер ФОП на территории кампуса. 73 00:03:13,680 --> 00:03:14,900 Я не знаю, если кто-нибудь сделал ФОП. 74 00:03:14,900 --> 00:03:16,280 Кто-нибудь сделать ФОП? 75 00:03:16,280 --> 00:03:17,100 Один человек сделал ФОП. 76 00:03:17,100 --> 00:03:18,430 Два человека сделали ФОП. 77 00:03:18,430 --> 00:03:19,250 Потрясающе. 78 00:03:19,250 --> 00:03:22,360 Так ФОП является первым годом Открытый Ориентация программы. 79 00:03:22,360 --> 00:03:27,240 Возьмем первокурсников в лес и сделать Самый волшебный опытом 80 00:03:27,240 --> 00:03:28,830 их жизни, правильно? 81 00:03:28,830 --> 00:03:29,220 Да. 82 00:03:29,220 --> 00:03:30,080 Похоже на правду. 83 00:03:30,080 --> 00:03:36,360 >> Так что я просто хотел начать наш самый первый раздел с обсуждения некоторых норм 84 00:03:36,360 --> 00:03:38,860 для класса, и наши отношения потому что я думаю 85 00:03:38,860 --> 00:03:40,010 они очень важны. 86 00:03:40,010 --> 00:03:43,630 В первую очередь, как те из вас, кто мои разделе получили и 87 00:03:43,630 --> 00:03:47,150 обсуждалось в который E-mail, я люблю это. 88 00:03:47,150 --> 00:03:48,130 Это моя любимая часть года. 89 00:03:48,130 --> 00:03:49,100 Я был так взволнован. 90 00:03:49,100 --> 00:03:50,040 Я был здесь в течение нескольких часов сегодня. 91 00:03:50,040 --> 00:03:54,560 Я не оставил это здание за исключением пойти поесть, потому что люблю CS50 разделе я 92 00:03:54,560 --> 00:03:58,620 люблю преподавать, я люблю работать с вами, ребята. 93 00:03:58,620 --> 00:04:02,000 >> Одна из моих главных приоритетов, если не моя Приоритетом номер один не только для 94 00:04:02,000 --> 00:04:05,130 этого класса, но в том числе мои другие классов и Extracurriculars, это 95 00:04:05,130 --> 00:04:09,350 поддержать вас, ребята, и помочь вам, ребята, и сделать все возможное, чтобы убедиться, что вы 96 00:04:09,350 --> 00:04:13,780 ребята, замечательно, весело, продуктивно, привлекательным, захватывающим 97 00:04:13,780 --> 00:04:15,250 опыт в этом классе. 98 00:04:15,250 --> 00:04:16,190 Это то, что я твердо намерен. 99 00:04:16,190 --> 00:04:17,959 Вот почему я люблю делать это. 100 00:04:17,959 --> 00:04:20,190 Это моя вещь номер один, подсказать вам ребята. 101 00:04:20,190 --> 00:04:25,110 Если у вас есть какие-либо вопросы о лекции, Поставленная задача, раздел, 102 00:04:25,110 --> 00:04:28,830 жизни, даже если вы хотите говорить о жизни, пожалуйста, не стесняйтесь обратиться. 103 00:04:28,830 --> 00:04:31,210 >> У вас есть мой номер сотового телефона, у вас есть моя электронная почта 104 00:04:31,210 --> 00:04:32,910 адрес, у вас есть мой GChat. 105 00:04:32,910 --> 00:04:37,540 Вы можете связаться со мной в любое или все всякий раз, когда те, но, вероятно, не получит 106 00:04:37,540 --> 00:04:38,720 ответ всякий раз, когда. 107 00:04:38,720 --> 00:04:41,020 Я пытаюсь вернуть в течение 24 часов. 108 00:04:41,020 --> 00:04:44,760 Часто это будет в пределах 20 минут или 24 минут. 109 00:04:44,760 --> 00:04:46,110 Я должен был сказать, что чтобы сделать его параллельно. 110 00:04:46,110 --> 00:04:48,840 Но вы получите ответ довольно быстро. 111 00:04:48,840 --> 00:04:54,220 >> Если вы мне текст за час до Проблема набора должно, я успокоит вас 112 00:04:54,220 --> 00:04:57,660 вниз и делать упражнения по глубокому дыханию с вами, но если вы еще не начали, 113 00:04:57,660 --> 00:05:00,270 Вы, вероятно, не собирается до конца, и Я не могу помочь вам там 114 00:05:00,270 --> 00:05:01,710 хотя я буду стараться изо всех. 115 00:05:01,710 --> 00:05:03,920 Поэтому я сделаю все, Я могу поддержать вас. 116 00:05:03,920 --> 00:05:07,980 Пожалуйста, не стесняйтесь обратиться ли это в разделе снова, в офисе Часы 117 00:05:07,980 --> 00:05:09,150 Если вы видите меня, или даже на улице. 118 00:05:09,150 --> 00:05:11,800 Я счастлив настроить время, для удовлетворения и работать через проблемы 119 00:05:11,800 --> 00:05:14,410 с или перейти материала. 120 00:05:14,410 --> 00:05:15,990 Так что это номер один, поддержка. 121 00:05:15,990 --> 00:05:17,940 Я сделаю все от меня может поддержать вас. 122 00:05:17,940 --> 00:05:21,520 >> Номер два, встреча в середине. 123 00:05:21,520 --> 00:05:24,760 Столько, сколько я хотел бы быть, я не всемогущ или всемогущая или 124 00:05:24,760 --> 00:05:28,410 всезнающий, так что я не знаю всех времени, если, что я делаю становится 125 00:05:28,410 --> 00:05:33,410 в поперечнике, если так, как я учу тема поможет вам узнать это, или если вы 126 00:05:33,410 --> 00:05:36,120 путают по теме, но не поднимите руку или спросить меня 127 00:05:36,120 --> 00:05:37,390 или напишите мне письмо. 128 00:05:37,390 --> 00:05:42,150 Или даже если вы, опять же, путаются о чем-то на проблемы множество. 129 00:05:42,150 --> 00:05:44,240 Если вы не дотянуться до меня, Я не могу знать этого наверняка. 130 00:05:44,240 --> 00:05:46,950 Я буду делать все возможное, чтобы проверить в на вы, ребята, убедитесь, что все 131 00:05:46,950 --> 00:05:51,170 идет хорошо, попробуем научить вещи таким образом, что будет способствовать большей части 132 00:05:51,170 --> 00:05:54,910 ваши стили обучения, но если есть что я могу сделать, дайте мне знать. 133 00:05:54,910 --> 00:05:58,520 >> В том же ключе, если вы хотите некоторую помощь с проблемой набора, я больше 134 00:05:58,520 --> 00:05:59,700 чем рады помочь Вам с проблемой набора. 135 00:05:59,700 --> 00:06:02,300 Мы собираемся делать много что ко второму 136 00:06:02,300 --> 00:06:03,460 половина этого раздела. 137 00:06:03,460 --> 00:06:06,040 Но если вы не читали домашних заданий назад и не смотрел ходьбы 138 00:06:06,040 --> 00:06:09,310 до конца и не смотрел шорты и ждет меня, чтобы научить вас 139 00:06:09,310 --> 00:06:13,260 все, что было видеозапись онлайн или что вы можете найти на CS50 140 00:06:13,260 --> 00:06:16,720 исследование, это не совсем справедливо мне или на другие узлы. 141 00:06:16,720 --> 00:06:20,440 142 00:06:20,440 --> 00:06:25,730 >> Поэтому, пожалуйста, я более чем счастлив помочь вас, но вы, ребята, добрался, чтобы встретить меня в 143 00:06:25,730 --> 00:06:27,230 середине. 144 00:06:27,230 --> 00:06:30,100 У нас есть тонны ресурсов для Вам доступно на CS50. 145 00:06:30,100 --> 00:06:31,230 Я упомянул о некоторых из них. 146 00:06:31,230 --> 00:06:32,960 Пожалуйста, воспользоваться ими. 147 00:06:32,960 --> 00:06:35,140 Если вы смущены, я более чем счастлив чтобы помочь вам объяснить их 148 00:06:35,140 --> 00:06:39,290 другому, но это не справедливо, если студенты появляются в офисе часов, 149 00:06:39,290 --> 00:06:42,530 еще не начали ничего, и это Четверг ночью, и они ожидают 150 00:06:42,530 --> 00:06:45,880 TF ходить их через каждый вещь для проблемы с настройкой из-за 151 00:06:45,880 --> 00:06:47,140 в полдень на следующий день. 152 00:06:47,140 --> 00:06:48,300 Смысл? 153 00:06:48,300 --> 00:06:50,890 Опять же, пожалуйста, встретиться с нами в середине. 154 00:06:50,890 --> 00:06:53,230 >> И, наконец, большие надежды. 155 00:06:53,230 --> 00:06:58,010 Я собираюсь быть классификации все, кто В моей секции, или присвоения баллов 156 00:06:58,010 --> 00:06:59,020 Проблема множеств. 157 00:06:59,020 --> 00:07:01,240 Вы не вернулся проблемы установить ноль или один еще. 158 00:07:01,240 --> 00:07:02,250 К сожалению об этом. 159 00:07:02,250 --> 00:07:04,970 Нам потребовалось некоторое время, чтобы, наконец, урегулировать секции и сейчас 160 00:07:04,970 --> 00:07:05,560 мы можем начать с классификации. 161 00:07:05,560 --> 00:07:09,560 >> Я получу их обратно к вам как можно скорее. 162 00:07:09,560 --> 00:07:11,890 Таковы некоторые из моих advisees там. 163 00:07:11,890 --> 00:07:14,150 Я получу их обратно к вам как можно скорее. 164 00:07:14,150 --> 00:07:18,046 И проблема установить два, мы будем на планировать и мы начнем получать их 165 00:07:18,046 --> 00:07:20,440 Вам довольно быстро после Вы включаете их сюда 166 00:07:20,440 --> 00:07:24,130 >> Когда вы получите вашу проблему в стороне, вы получит баллы, как вы знаете из 167 00:07:24,130 --> 00:07:28,150 чтение учебной программы - правильность, Дизайн, объем и стиль баллы. 168 00:07:28,150 --> 00:07:29,760 Вы также получите комментарии. 169 00:07:29,760 --> 00:07:32,160 Комментарии являются более важными, чем оценки. 170 00:07:32,160 --> 00:07:33,780 Я думаю, можно с уверенностью сказать, что. 171 00:07:33,780 --> 00:07:37,930 >> Результаты просто номер от 4:59. 172 00:07:37,930 --> 00:07:38,930 Трудно читать на тех. 173 00:07:38,930 --> 00:07:40,720 Трудно улучшить от тех. 174 00:07:40,720 --> 00:07:44,460 Но комментарии укажу конкретные вещи, которые вы сделали хорошо или области 175 00:07:44,460 --> 00:07:48,360 Вы можете изменить к лучшему и дать вам несколько идеи на будущее или альтернативной 176 00:07:48,360 --> 00:07:49,160 способы ведения дел. 177 00:07:49,160 --> 00:07:52,270 >> Поэтому, пожалуйста, пожалуйста, пожалуйста, прочитайте через комментарии. 178 00:07:52,270 --> 00:07:54,190 Я положил много времени в эти замечания. 179 00:07:54,190 --> 00:07:57,190 Пожалуйста, ознакомьтесь с ними и не только прокрутки вниз к нижней части 180 00:07:57,190 --> 00:08:01,890 PDF, посмотрите на ваш счет, или выходить в интернет и найти свой счет, а затем игнорировать 181 00:08:01,890 --> 00:08:02,800 комментарии. 182 00:08:02,800 --> 00:08:03,910 Это не так, как вы изменится к лучшему. 183 00:08:03,910 --> 00:08:06,550 Это не как вы собираетесь увеличить Ваши результаты в конечном счете, всего 184 00:08:06,550 --> 00:08:07,340 глядя на баллы. 185 00:08:07,340 --> 00:08:08,760 Пожалуйста, посмотрите на эти замечания. 186 00:08:08,760 --> 00:08:13,240 >> И по линии высоких ожиданий, опять же, как я сказал, вы 187 00:08:13,240 --> 00:08:14,260 может быть забит с первой по пятую. 188 00:08:14,260 --> 00:08:17,120 Двойки, тройки, и четверки являются Подавляющее большинство баллов 189 00:08:17,120 --> 00:08:17,940 Вы будете получать. 190 00:08:17,940 --> 00:08:20,180 Одни пятерки и оба действительно редко. 191 00:08:20,180 --> 00:08:21,720 Там всегда вещи мы можем сделать лучше. 192 00:08:21,720 --> 00:08:23,490 Всякий раз, когда я код программы, есть Я всегда что-то 193 00:08:23,490 --> 00:08:24,800 мог бы сделать лучше. 194 00:08:24,800 --> 00:08:28,740 >> Поэтому вместо того, говорят, что вы получите пять все время на все и сделал 195 00:08:28,740 --> 00:08:31,960 все идеально, я не думаю, что любой из нас действительно считаю, что мы - или 196 00:08:31,960 --> 00:08:34,830 Будем надеяться, что мы не будем делать все, совершенствовать все время. 197 00:08:34,830 --> 00:08:37,010 Так что не волнуйтесь, если вы не получал пять. 198 00:08:37,010 --> 00:08:40,470 Пятый не отображение на, четыре не отображение на B, делает три 199 00:08:40,470 --> 00:08:42,950 Не отображение на C. Это не как работать баллов. 200 00:08:42,950 --> 00:08:48,140 >> Как Давид много раз говорил, по крайней семестр закончить все свои очки и 201 00:08:48,140 --> 00:08:53,390 входные от меня, вашего TF, собрались вместе и определить итоговую оценку для вас. 202 00:08:53,390 --> 00:08:56,760 Но опять же, это не пять, , Четыре, B, и так далее. 203 00:08:56,760 --> 00:09:01,150 Так что я собираюсь иметь высокие ожидания для вас, ребята. 204 00:09:01,150 --> 00:09:03,670 Я собираюсь ожидать хороших проблемы садится, и я собираюсь дать 205 00:09:03,670 --> 00:09:05,010 Вам обратную связь как таковую. 206 00:09:05,010 --> 00:09:07,430 И это не будет означать, что ты собирается получить хуже классе. 207 00:09:07,430 --> 00:09:09,760 Вы оцениваются с точки зрения за продвижением от недели 208 00:09:09,760 --> 00:09:11,260 нулю до конца курса. 209 00:09:11,260 --> 00:09:17,190 >> И, наконец, с точки зрения высокого ожидания в классе, я люблю, когда 210 00:09:17,190 --> 00:09:18,460 люди участвуют. 211 00:09:18,460 --> 00:09:23,180 Я понимаю, некоторые люди чувствуют себя более или менее комфортно участвуют. 212 00:09:23,180 --> 00:09:26,050 Другие люди участвуют не поднять руку и 213 00:09:26,050 --> 00:09:27,320 все время говорю. 214 00:09:27,320 --> 00:09:30,570 Но мы в этом классе будет делать много мелких проблем, много 215 00:09:30,570 --> 00:09:33,770 мини вопросы, а затем некоторые из большие проблемы с кодированием. 216 00:09:33,770 --> 00:09:36,760 Так определенно работают эти упражнения из когда мы делаем их на вашем компьютере или на 217 00:09:36,760 --> 00:09:37,900 лист бумаги. 218 00:09:37,900 --> 00:09:40,933 >> Но я также дадим вам некоторое время, прежде Кто-нибудь должен ответить на некоторые 219 00:09:40,933 --> 00:09:42,220 из вопросов, я прошу. 220 00:09:42,220 --> 00:09:44,930 Итак, потому что я дам вам некоторое время, чтобы думаю об этом, потому что мы собираемся 221 00:09:44,930 --> 00:09:49,380 сделать что-то в партнеры иногда, Я буду ожидать всех 222 00:09:49,380 --> 00:09:52,150 заниматься несколько. 223 00:09:52,150 --> 00:09:56,030 И за неимением лучшего термина, есть , вероятно, будет холодных звонков, которые 224 00:09:56,030 --> 00:09:59,045 то, где у каждого будет шанс думать над ответом, а затем 225 00:09:59,045 --> 00:10:01,150 Я призываю вас, а затем Вы скажете ответ. 226 00:10:01,150 --> 00:10:05,200 >> Не волнуйтесь или бояться об этом. 227 00:10:05,200 --> 00:10:08,610 Я делал это в прошлом, и мы обнаружили, что это гораздо более успешным, 228 00:10:08,610 --> 00:10:11,810 Также читал исследования в области образования на нее, чтобы определить, действительно ли это было 229 00:10:11,810 --> 00:10:12,640 хорошая тактика. 230 00:10:12,640 --> 00:10:15,790 Это очень полезно, особенно если вы дать студентам время подумать о 231 00:10:15,790 --> 00:10:20,070 ответы и не делают их только что и сказать с места в карьер. 232 00:10:20,070 --> 00:10:22,620 Но если вы не чувствуете себя комфортно ответив, я также довольно хорошо 233 00:10:22,620 --> 00:10:25,370 чувствуя, что, и мы не собираемся поставить вас на место, особенно на 234 00:10:25,370 --> 00:10:28,240 камеру, хотя ни одна из Вы находитесь на камеру прямо сейчас. 235 00:10:28,240 --> 00:10:32,250 >> Таким образом, те нормы у меня есть. 236 00:10:32,250 --> 00:10:34,670 И еще один момент по линии встречи в середине. 237 00:10:34,670 --> 00:10:36,490 Я собираюсь дать вам парни много откликов. 238 00:10:36,490 --> 00:10:38,310 Пожалуйста, дайте мне обратную связь, а также. 239 00:10:38,310 --> 00:10:46,190 Там в веб-сайт, sayat.me/cs50. 240 00:10:46,190 --> 00:10:48,380 Так что это честную обратную связь. 241 00:10:48,380 --> 00:10:50,730 Если вы хотите, чтобы дать ему на секциях, Я получаю электронную почту всякий раз, когда это происходит. 242 00:10:50,730 --> 00:10:53,820 Мы возьмем перерыв в немного, так что я просматривать результат воздействия после этого. 243 00:10:53,820 --> 00:10:55,970 Если вы всегда имеете любую обратную связь, пожалуйста, дайте мне его там. 244 00:10:55,970 --> 00:11:01,380 >> Если вы дадите мне обратную связь на Q, это замечательно, но это руководство 245 00:11:01,380 --> 00:11:02,570 что вы делаете в конце. 246 00:11:02,570 --> 00:11:05,690 Но это будет в конце семестра так Я не буду в состоянии принять ни одного из этого 247 00:11:05,690 --> 00:11:08,620 обратную связь и превратить его в обучении вы, ребята, лучше. 248 00:11:08,620 --> 00:11:11,020 Поэтому, пожалуйста, если у вас есть обратную связь, дать его мне. 249 00:11:11,020 --> 00:11:12,010 Я люблю обратной связи. 250 00:11:12,010 --> 00:11:14,490 Назад к ФОП, мы получаем обратную связь все время. 251 00:11:14,490 --> 00:11:18,610 >> Вы можете дать мне плюсы, хорошие вещи, дельт, что я могу улучшить. 252 00:11:18,610 --> 00:11:20,600 Вы можете комментировать мои наряды. 253 00:11:20,600 --> 00:11:24,170 Это не будет, как полезные, но вы можете оставить комментарии к любой и 254 00:11:24,170 --> 00:11:24,570 все. 255 00:11:24,570 --> 00:11:26,280 Пожалуйста, пожалуйста, дайте мне обратную связь. 256 00:11:26,280 --> 00:11:28,740 Я ценю это много, и это очень много значит для меня. 257 00:11:28,740 --> 00:11:31,760 258 00:11:31,760 --> 00:11:33,280 >> Еще одна норма, весело. 259 00:11:33,280 --> 00:11:34,530 Мы собираемся, чтобы иметь много веселья. 260 00:11:34,530 --> 00:11:36,930 Надеюсь, в этот курс, вы будете есть много веселья. 261 00:11:36,930 --> 00:11:38,780 Придется конфеты на разделе. 262 00:11:38,780 --> 00:11:40,040 Придется музыки. 263 00:11:40,040 --> 00:11:45,510 Мы будем, мы надеемся, узнавая друг Несколько другую, так что я хочу 264 00:11:45,510 --> 00:11:47,690 это будет весело, привлечение опыта. 265 00:11:47,690 --> 00:11:50,890 >> Я знаю, некоторые из вас заснул в лекции у вас было сегодня утром, 266 00:11:50,890 --> 00:11:53,750 так что надеюсь, что не будет иметь место сейчас. 267 00:11:53,750 --> 00:11:55,960 И если это имеет место сейчас, просто не храпят потому что это может 268 00:11:55,960 --> 00:11:57,580 быть пойман на камеру. 269 00:11:57,580 --> 00:11:58,770 Сладкий. 270 00:11:58,770 --> 00:12:04,020 Любые вопросы, комментарии или замечания перед тем, как двигаться дальше о все, что мы 271 00:12:04,020 --> 00:12:05,270 говорили? 272 00:12:05,270 --> 00:12:08,620 273 00:12:08,620 --> 00:12:11,350 Великий. 274 00:12:11,350 --> 00:12:14,830 >> Таким образом, мы собираемся пойти в массивы, в первую очередь. 275 00:12:14,830 --> 00:12:17,140 Это, как вы сделать массив. 276 00:12:17,140 --> 00:12:18,410 Мы видели это прежде. 277 00:12:18,410 --> 00:12:21,830 У вас есть тип данных, у вас есть имя, а затем у вас есть размеры. 278 00:12:21,830 --> 00:12:24,430 Прямо здесь, я создаю два массива. 279 00:12:24,430 --> 00:12:30,360 Первый из них представляет собой массив символов, и она имеет 26 мест. 280 00:12:30,360 --> 00:12:33,790 Вторая представляет собой массив баллов, и он имеет три 281 00:12:33,790 --> 00:12:35,390 места для трех целых чисел. 282 00:12:35,390 --> 00:12:35,827 Да? 283 00:12:35,827 --> 00:12:38,200 >> СТУДЕНТ: Являются ли все эти слайды доступно где-нибудь для нас? 284 00:12:38,200 --> 00:12:38,850 >> Джейсон Hirschhorn: Хороший вопрос. 285 00:12:38,850 --> 00:12:40,650 Вопрос в том, все ли Эти слайды доступны? 286 00:12:40,650 --> 00:12:40,920 Да. 287 00:12:40,920 --> 00:12:43,420 Все эти слайды будут доступны, и в будущем, я буду их по электронной почте 288 00:12:43,420 --> 00:12:44,640 Вы перед разделом. 289 00:12:44,640 --> 00:12:47,340 Но сегодня, потому что это первый неделе, у нас был поздний старт. 290 00:12:47,340 --> 00:12:49,675 Так обычно, вы получите эти слайды, но они будут доступны в Интернете и 291 00:12:49,675 --> 00:12:52,420 Я буду отправить их к вам сразу после класса. 292 00:12:52,420 --> 00:12:54,140 Любые другие вопросы? 293 00:12:54,140 --> 00:13:01,330 >> Итак, еще раз, массивы коробки, из-за отсутствия лучшего слова, которые держат несколько 294 00:13:01,330 --> 00:13:06,420 Элементы одного типа данных, и они рядом друг с другом в памяти. 295 00:13:06,420 --> 00:13:11,370 И вот опять же, это, как вы можете Включены два типа массивов. 296 00:13:11,370 --> 00:13:15,090 >> Таким образом, после вы сделали свой массив с что первая строка - Олимпийские баллы, кронштейн 297 00:13:15,090 --> 00:13:17,430 три, закрывающую скобку - вы хотите инициализировать его. 298 00:13:17,430 --> 00:13:19,050 Вы хотите, чтобы поставить некоторые значения в там. 299 00:13:19,050 --> 00:13:24,660 И это, как вы выразились некоторые значения в там, просто выбор и Indice 300 00:13:24,660 --> 00:13:25,670 написание число. 301 00:13:25,670 --> 00:13:27,130 Давайте нарисуем это на доске. 302 00:13:27,130 --> 00:13:28,270 Все ли могут посмотреть? 303 00:13:28,270 --> 00:13:29,030 Это все видят. 304 00:13:29,030 --> 00:13:30,790 Сладкий. 305 00:13:30,790 --> 00:13:36,550 >> Так что это будет мой массиве результаты. 306 00:13:36,550 --> 00:13:37,730 Как вы можете видеть, это размер три. 307 00:13:37,730 --> 00:13:39,210 Есть три коробки в там. 308 00:13:39,210 --> 00:13:43,120 Каждая из них может подходит то, что тип тип данных? 309 00:13:43,120 --> 00:13:43,790 >> СТУДЕНТ: Integer. 310 00:13:43,790 --> 00:13:45,250 >> Джейсон Hirschhorn: целое в этом. 311 00:13:45,250 --> 00:13:48,790 Мы написали десятичного баллов, и первое слово это тип данных, который собирается 312 00:13:48,790 --> 00:13:50,910 Заходим в коробки в этом массиве. 313 00:13:50,910 --> 00:13:52,160 Так что я могу соответствовать трем. 314 00:13:52,160 --> 00:13:54,880 315 00:13:54,880 --> 00:13:57,000 Почему я должен нуля до там на борту? 316 00:13:57,000 --> 00:13:59,240 Почему сказано счетом ноль равно 1? 317 00:13:59,240 --> 00:14:02,090 318 00:14:02,090 --> 00:14:03,180 Напомните мне ваше имя. 319 00:14:03,180 --> 00:14:03,470 >> СТУДЕНТ: Курт. 320 00:14:03,470 --> 00:14:04,070 >> Джейсон Hirschhorn: Курт. 321 00:14:04,070 --> 00:14:04,480 >> СТУДЕНТ: Да. 322 00:14:04,480 --> 00:14:04,920 >> Джейсон Hirschhorn: Почему? 323 00:14:04,920 --> 00:14:07,230 >> СТУДЕНТ: Потому что первый индекс нулю, мы начинаем считать с нуля. 324 00:14:07,230 --> 00:14:08,480 >> Джейсон Hirschhorn: Итак, мы начинаем отсчет с нуля. 325 00:14:08,480 --> 00:14:09,580 Это абсолютно верно. 326 00:14:09,580 --> 00:14:12,340 Это часть запутанной и отключится вас, особенно если вы 327 00:14:12,340 --> 00:14:14,900 пытается перебрать массивы, который мы сделаем в немного. 328 00:14:14,900 --> 00:14:15,980 Мы начинаем отсчет с нуля. 329 00:14:15,980 --> 00:14:19,170 Так что, если я хочу обратиться к первому коробки, это не одно окно. 330 00:14:19,170 --> 00:14:22,290 К сожалению, это окно нулю. 331 00:14:22,290 --> 00:14:26,460 Второе окно один, и в этом случае, третий является коробке два. 332 00:14:26,460 --> 00:14:28,700 >> Как насчет поле три? 333 00:14:28,700 --> 00:14:30,670 Где поле три? 334 00:14:30,670 --> 00:14:34,750 Или, если я хочу сделать оценки, кронштейн три, закрывающей скобки, что это такое? 335 00:14:34,750 --> 00:14:37,650 336 00:14:37,650 --> 00:14:39,760 Так вы сказали, что этот символ. 337 00:14:39,760 --> 00:14:41,600 Любые другие мысли? 338 00:14:41,600 --> 00:14:44,590 Что такое очковая три кронштейна? 339 00:14:44,590 --> 00:14:48,045 >> СТУДЕНТ: Это на самом деле не существуют, потому что Вы только определяется как оценки, 340 00:14:48,045 --> 00:14:49,370 Кронштейн три. 341 00:14:49,370 --> 00:14:51,400 >> Джейсон Hirschhorn: Так вы говорите, на самом деле не существует. 342 00:14:51,400 --> 00:14:54,230 В некоторых случаях, когда мы имеем дело с строк, вообще мы поместим нулевой 343 00:14:54,230 --> 00:14:54,790 символ в конце. 344 00:14:54,790 --> 00:14:56,100 Мы вернемся к этому в секунду. 345 00:14:56,100 --> 00:15:01,020 Однако в этом случае существует Третьего не дано коробки здесь. 346 00:15:01,020 --> 00:15:06,390 Так что последнее поле в любом массиве является размер минус 1. 347 00:15:06,390 --> 00:15:11,310 Так что, если у нас есть массив размером N, первое поле на нуле, последний из которых является 348 00:15:11,310 --> 00:15:12,700 в N минус 1. 349 00:15:12,700 --> 00:15:14,970 И в этом случае не существует. 350 00:15:14,970 --> 00:15:17,970 Существует что-то здесь, в памяти, но это не наше. 351 00:15:17,970 --> 00:15:18,460 Мы не являетесь его владельцем. 352 00:15:18,460 --> 00:15:19,570 Мы не просили его. 353 00:15:19,570 --> 00:15:22,606 Так что, если мы пытаемся получить к нему доступ, который мы сделать в немного, мы, вероятно, будет 354 00:15:22,606 --> 00:15:24,970 попасть в беду. 355 00:15:24,970 --> 00:15:29,180 >> В этом случае, я инициализации моего массив с тремя переменными. 356 00:15:29,180 --> 00:15:36,195 Мы положить одну в коробке нулю, два в коробке один, и три в коробке два. 357 00:15:36,195 --> 00:15:39,280 Кто-нибудь есть какие-либо вопросы об инициализации массива? 358 00:15:39,280 --> 00:15:44,540 359 00:15:44,540 --> 00:15:46,970 >> И мы пошли по этому только сейчас. 360 00:15:46,970 --> 00:15:52,725 Результаты, кронштейн три, закрывающую скобку, что не существует. 361 00:15:52,725 --> 00:15:58,130 Мы нулю индексироваться в области компьютерных наук, так мы начинаем считать с нуля. 362 00:15:58,130 --> 00:16:01,860 Последний коробки доступны для нас, это третья коробка, но это называется коробке 363 00:16:01,860 --> 00:16:03,110 номер два. 364 00:16:03,110 --> 00:16:05,790 365 00:16:05,790 --> 00:16:09,710 >> Там немного, это альтернатива способ инициализации массивов. 366 00:16:09,710 --> 00:16:13,410 Таким образом, вместо создания массива на один линии, заполняя первую коробку, то 367 00:16:13,410 --> 00:16:17,070 второе поле, то третья коробка, Вы можете сделать это все в одной строке. 368 00:16:17,070 --> 00:16:19,040 Таким образом, в этой линии, как массивы. 369 00:16:19,040 --> 00:16:23,460 Это создает точно такой же массив то, что мы создали прямо здесь, но это 370 00:16:23,460 --> 00:16:24,710 просто делает это в одной строке. 371 00:16:24,710 --> 00:16:29,740 372 00:16:29,740 --> 00:16:31,360 >> Теперь мы создали массив. 373 00:16:31,360 --> 00:16:34,100 Обычно, как только вы создаете массив, вы хочу сделать что-то с ним, будь то 374 00:16:34,100 --> 00:16:38,430 что Пополнить ее или получить вещи из него и распечатать их на экране. 375 00:16:38,430 --> 00:16:42,270 В этом случае, мы собираемся через нашу оценки массива, который мы инициализирована 376 00:16:42,270 --> 00:16:44,740 Первая линия здесь, в сером. 377 00:16:44,740 --> 00:16:49,600 А потом на второй линии, мы начинаем итерации по массиву. 378 00:16:49,600 --> 00:16:52,640 Кто-нибудь есть какие-либо вопросы о структура для цикла? 379 00:16:52,640 --> 00:16:55,250 380 00:16:55,250 --> 00:16:56,400 >> Так что это петля для. 381 00:16:56,400 --> 00:16:59,530 У нас есть начальное условие, а затем наше окончательное условие, и тогда мы 382 00:16:59,530 --> 00:17:01,160 итерации, я, каждый цикл. 383 00:17:01,160 --> 00:17:05,579 И в фигурных скобках в этом для петли, что произойдет, если я должен был работать 384 00:17:05,579 --> 00:17:06,290 эта программа? 385 00:17:06,290 --> 00:17:10,410 Кто-нибудь может сказать мне, что мы получим? 386 00:17:10,410 --> 00:17:11,589 [? Мату? ?] 387 00:17:11,589 --> 00:17:13,819 >> MATU: Печать всех баллов на каждой строке. 388 00:17:13,819 --> 00:17:14,900 Было бы печатать каждый счет на отдельной строке. 389 00:17:14,900 --> 00:17:16,300 >> Джейсон Hirschhorn: Что именно бы это напечатать? 390 00:17:16,300 --> 00:17:19,790 >> СТУДЕНТ: Было бы напечатать один, потом два, потом три. 391 00:17:19,790 --> 00:17:20,235 >> Джейсон Hirschhorn: Совершенно верно. 392 00:17:20,235 --> 00:17:23,490 Было бы напечатать один, потом два, затем три, каждый на отдельной строке, так как 393 00:17:23,490 --> 00:17:27,810 мы собираемся через массив, и вы будете видеть, что второе, Е 394 00:17:27,810 --> 00:17:29,275 заявления, оценки я. 395 00:17:29,275 --> 00:17:32,880 Так что на первый тур через наш для петлю, я равна нулю, что означает, что мы 396 00:17:32,880 --> 00:17:34,640 получение значения в нуле Оценка - 397 00:17:34,640 --> 00:17:36,900 которая, если мы вернемся к наша диаграмма, одна - 398 00:17:36,900 --> 00:17:38,630 и заполнение - 399 00:17:38,630 --> 00:17:39,700 О, это говорит в. 400 00:17:39,700 --> 00:17:41,680 Это должно быть% D. 401 00:17:41,680 --> 00:17:43,970 Я поможет это исправить немного, когда Я руку, которая к вам, ребята. 402 00:17:43,970 --> 00:17:48,670 Но мы представляем целое так что должен быть% D прямо здесь, а не C%. 403 00:17:48,670 --> 00:17:50,340 Что такое% для C? 404 00:17:50,340 --> 00:17:50,790 >> СТУДЕНТ: Характер. 405 00:17:50,790 --> 00:17:52,680 >> Джейсон Hirschhorn: Характер, именно так. 406 00:17:52,680 --> 00:17:53,690 Что такое другой? 407 00:17:53,690 --> 00:17:56,260 Если вы не хотите сделать для% D целое, что еще вы можете сделать? 408 00:17:56,260 --> 00:17:57,000 >> СТУДЕНТ: я. 409 00:17:57,000 --> 00:17:59,180 >> Джейсон Hirschhorn:% I, точно. 410 00:17:59,180 --> 00:18:01,660 Так что любые вопросы о переборе через массив? 411 00:18:01,660 --> 00:18:05,500 412 00:18:05,500 --> 00:18:07,800 Что случится, если мы это делаем? 413 00:18:07,800 --> 00:18:10,290 Вместо того чтобы делать я меньше три, мы я меньше 414 00:18:10,290 --> 00:18:11,390 чем или равно трем. 415 00:18:11,390 --> 00:18:13,420 Что происходит, когда мы запускаем этот код? 416 00:18:13,420 --> 00:18:17,510 417 00:18:17,510 --> 00:18:18,940 Да, Энни? 418 00:18:18,940 --> 00:18:22,030 >> СТУДЕНТ: Они собираются, чтобы распечатать странные вещи на четвертую строчку. 419 00:18:22,030 --> 00:18:23,850 >> Джейсон Hirschhorn: Так вы сказали, это собирается распечатать странные вещи на 420 00:18:23,850 --> 00:18:24,390 Четвертая строка? 421 00:18:24,390 --> 00:18:25,750 Кто-нибудь есть ответ на свой вопрос? 422 00:18:25,750 --> 00:18:28,940 423 00:18:28,940 --> 00:18:33,160 Так что вполне вероятно, что, когда мы добираемся до - 424 00:18:33,160 --> 00:18:36,700 так по четвертому раунду через наше для петли, как вы думали, Энни, 425 00:18:36,700 --> 00:18:39,430 это будет три оценки кронштейн, который Мы уже поняли, не 426 00:18:39,430 --> 00:18:41,990 существует, и мы собираемся, чтобы попытаться и доступ к этому, распечатать его 427 00:18:41,990 --> 00:18:43,350 из, использовать его каким-либо образом. 428 00:18:43,350 --> 00:18:46,060 Так компьютер, вероятно, злиться на нас. 429 00:18:46,060 --> 00:18:46,760 Вы совершенно правы. 430 00:18:46,760 --> 00:18:48,830 >> Это могло бы выйти из программы в целом. 431 00:18:48,830 --> 00:18:52,222 Это может распечатать что-то действительно странно. 432 00:18:52,222 --> 00:18:53,420 Вы не можете сказать наверняка. 433 00:18:53,420 --> 00:18:56,210 Вполне вероятно, это скорее всего будет зол на Вам и просто бросить сразу. 434 00:18:56,210 --> 00:19:00,100 >> Но это общая ошибка, которую вы должны будете где вы находитесь в непосредственной близости от одной на 435 00:19:00,100 --> 00:19:05,110 конца, и это ошибка, которая будет чума вас на протяжении всего кодирования. 436 00:19:05,110 --> 00:19:09,350 437 00:19:09,350 --> 00:19:14,150 Один способ, которым я хотел бы сделать, это просто на доски, пройти каждой итерации 438 00:19:14,150 --> 00:19:18,190 из петли на руке или на бумаге, чтобы увидеть то, что происходит, и тогда вы 439 00:19:18,190 --> 00:19:20,440 обычно понимают, Ой, подождите, я не должен пошли в меньшую или 440 00:19:20,440 --> 00:19:20,870 равно трем. 441 00:19:20,870 --> 00:19:24,730 Я должен был остановиться на двух, которая является Что произойдет, если ваше состояние меньше 442 00:19:24,730 --> 00:19:26,206 чем три. 443 00:19:26,206 --> 00:19:29,120 Есть вопросы до сих пор? 444 00:19:29,120 --> 00:19:31,010 Сладкий. 445 00:19:31,010 --> 00:19:33,360 >> Так что у вас всех есть компьютеры открытым. 446 00:19:33,360 --> 00:19:36,760 Мы собираемся дать вам 2:58 минут, чтобы написать программу, которая 447 00:19:36,760 --> 00:19:40,460 создает массив целыми одного через пять, а затем распечатывает каждый 448 00:19:40,460 --> 00:19:41,720 целое с новой строки. 449 00:19:41,720 --> 00:19:44,330 450 00:19:44,330 --> 00:19:46,000 И если у вас есть какие-либо вопросы, поднимите руку. 451 00:19:46,000 --> 00:19:48,140 Я счастлив прибыть. 452 00:19:48,140 --> 00:19:50,630 Как я сказал, давайте три минут, чтобы написать это. 453 00:19:50,630 --> 00:20:41,300 454 00:20:41,300 --> 00:20:45,110 Все ли хорошо, если я иду в новое окно и закрыть это? 455 00:20:45,110 --> 00:22:13,420 456 00:22:13,420 --> 00:22:15,520 >> Мне жаль, если у вас не было шанса до конца, но мы собираемся сделать это 457 00:22:15,520 --> 00:22:17,310 вместе прямо сейчас. 458 00:22:17,310 --> 00:22:23,640 Так на экране, я # включить cs50.h, # Включить stdio.h. 459 00:22:23,640 --> 00:22:26,090 Может кто-нибудь сказать мне, что этими двумя строками делать? 460 00:22:26,090 --> 00:22:32,250 461 00:22:32,250 --> 00:22:33,155 Майкл? 462 00:22:33,155 --> 00:22:40,030 >> СТУДЕНТ: Они включают в себя библиотеки CS50, что сделано и что Стив 463 00:22:40,030 --> 00:22:44,210 сохранены для вас использовать, чтобы сделать вашу жизнь проще. 464 00:22:44,210 --> 00:22:46,820 >> Джейсон Hirschhorn: Таким образом, вы сказали, что они включают в себя библиотеки, которая CS50 465 00:22:46,820 --> 00:22:51,230 сделано, cs50.h, и тот, который просто стандарт, поставляется с 466 00:22:51,230 --> 00:22:53,510 Пакет C, stdio.h. 467 00:22:53,510 --> 00:22:54,890 Что вы имеете в виду включать библиотек, правда? 468 00:22:54,890 --> 00:22:55,770 Можете ли вы быть немного более конкретно? 469 00:22:55,770 --> 00:23:01,180 >> СТУДЕНТ: он делает так, что вы можете использовать определенные кодовые слова, чтобы иметь 470 00:23:01,180 --> 00:23:05,710 функционировать произойти без того, чтобы идти и сделать функцию с себя. 471 00:23:05,710 --> 00:23:08,730 >> Джейсон Hirschhorn: Можете ли вы дать мне пример? 472 00:23:08,730 --> 00:23:11,160 >> СТУДЕНТ: Как и Е тот, который вы можете использовать. 473 00:23:11,160 --> 00:23:11,860 >> Джейсон Hirschhorn: Printf. 474 00:23:11,860 --> 00:23:14,680 Так вы сказали, Е является одним из тех функций, где вместо того, чтобы 475 00:23:14,680 --> 00:23:19,840 написать Е на свой собственный, Е является включены фактически в stdio.h, так что вы 476 00:23:19,840 --> 00:23:22,010 можете просто использовать его и предположим, что он будет работать. 477 00:23:22,010 --> 00:23:28,270 В stdio.h, если вы открыли этот файл, бы включить как Е 478 00:23:28,270 --> 00:23:31,620 работ, весь код для Е? 479 00:23:31,620 --> 00:23:33,105 Почему вы качаете головой? 480 00:23:33,105 --> 00:23:35,710 >> СТУДЕНТ: потому что заголовок файла просто включающее в себя функции декларации. 481 00:23:35,710 --> 00:23:36,400 >> Джейсон Hirschhorn: Совершенно верно. 482 00:23:36,400 --> 00:23:39,680 Файл заголовка включает в себя только Объявление функции. 483 00:23:39,680 --> 00:23:42,950 Так в основном, при компиляции этого, Сделать ударил графа, который мы сделаем в 484 00:23:42,950 --> 00:23:48,070 Во-вторых, компилятор знает, что, если Вы используете Е, Е существует. 485 00:23:48,070 --> 00:23:49,370 Это собирается быть определен где-то. 486 00:23:49,370 --> 00:23:51,200 Это не проблема для вас использовать. 487 00:23:51,200 --> 00:23:55,490 И затем позже, он будет включать в себя нулей и единиц, что на самом деле содержат 488 00:23:55,490 --> 00:23:58,360 Е в реализации и объединить их с вашим кодом. 489 00:23:58,360 --> 00:24:01,935 Как вы убедитесь, что она включает в себя нулей и единиц, скажем, взять веревку? 490 00:24:01,935 --> 00:24:05,670 491 00:24:05,670 --> 00:24:07,210 >> СТУДЕНТ: Получить строку в cs50.h. 492 00:24:07,210 --> 00:24:07,830 >> Джейсон Hirschhorn: Верно. 493 00:24:07,830 --> 00:24:11,110 Так говорит, что взять веревку существует, Объявление функции. 494 00:24:11,110 --> 00:24:15,410 Но тогда единиц и нулей, двоичный файла, который на самом деле включает в себя 495 00:24:15,410 --> 00:24:17,370 осуществление взять веревку? 496 00:24:17,370 --> 00:24:19,310 Как вы убедитесь, что идет с вашей программой? 497 00:24:19,310 --> 00:24:23,220 >> СТУДЕНТ: Передайте в компоновщик Аргумент командной строки. 498 00:24:23,220 --> 00:24:25,430 >> Джейсон Hirschhorn: Pass компоновщик в аргументе командной строки. 499 00:24:25,430 --> 00:24:26,700 Как вы это сделали? 500 00:24:26,700 --> 00:24:29,730 >> СТУДЕНТ: Это-L линии в лязгом 501 00:24:29,730 --> 00:24:30,480 >> Джейсон Hirschhorn: Совершенно верно. 502 00:24:30,480 --> 00:24:32,900 Вы говорите, что L-CS50, верно? 503 00:24:32,900 --> 00:24:34,940 Это включает в себя единицы и нули. 504 00:24:34,940 --> 00:24:36,460 >> СТУДЕНТ: Но убедитесь, делает что для вас, не так ли? 505 00:24:36,460 --> 00:24:37,010 >> Джейсон Hirschhorn: Совершенно верно. 506 00:24:37,010 --> 00:24:40,390 Сделать сделает это за вас, но в конце концов, Вы не будете есть сделать, или 507 00:24:40,390 --> 00:24:43,220 Вы должны будете сделать сделать по своему усмотрению, так что это 508 00:24:43,220 --> 00:24:43,940 Хорошая вещь, чтобы помнить. 509 00:24:43,940 --> 00:24:47,350 Если вы собираетесь использовать одну из этих других библиотек, не только у вас есть 510 00:24:47,350 --> 00:24:49,490 написать # включить и Затем библиотеку. 511 00:24:49,490 --> 00:24:51,420 Кроме того, необходимо связать его дюйма 512 00:24:51,420 --> 00:24:54,480 И эти две вещи разные. CS50-L отличается 513 00:24:54,480 --> 00:24:59,260 # чем включать cs50.h. 514 00:24:59,260 --> 00:25:02,870 >> Тогда у нас есть тап_п пустоту фигурные скобки, и теперь мы собираемся код 515 00:25:02,870 --> 00:25:03,590 внутри основного. 516 00:25:03,590 --> 00:25:07,090 Первая линия у меня здесь есть комментарий , который говорит, создать массив 517 00:25:07,090 --> 00:25:08,820 с целыми с первого по пятый. 518 00:25:08,820 --> 00:25:12,600 Что такое хорошее слово, чтобы описать то, что я есть сейчас на экране, просто 519 00:25:12,600 --> 00:25:14,170 комментарии внутри основного? 520 00:25:14,170 --> 00:25:15,722 Как мы называем это? 521 00:25:15,722 --> 00:25:16,820 >> СТУДЕНТ: псевдокод. 522 00:25:16,820 --> 00:25:17,840 >> Джейсон Hirschhorn: псевдокод. 523 00:25:17,840 --> 00:25:18,420 Спасибо, Джеффри. 524 00:25:18,420 --> 00:25:19,540 Совершенно верно. 525 00:25:19,540 --> 00:25:20,005 Псевдокоде. 526 00:25:20,005 --> 00:25:22,854 Ребята, вы видели псевдокод раньше? 527 00:25:22,854 --> 00:25:28,340 Поднимите руку, если вы использовали псевдокод перед проблемой установить один. 528 00:25:28,340 --> 00:25:29,400 Около половины из вас. 529 00:25:29,400 --> 00:25:32,700 >> Я очень рекомендовал бы использование псевдокод, чтобы сломать проблемы в 530 00:25:32,700 --> 00:25:35,210 меньшие, более легко откусить куски. 531 00:25:35,210 --> 00:25:38,630 Кроме того, если вы делаете псевдокод, вы ваши замечания уже в значительной степени 532 00:25:38,630 --> 00:25:40,760 встроенная, так что вам не придется вернуться назад и попытаться выяснить, 533 00:25:40,760 --> 00:25:42,450 то, что вы делали. 534 00:25:42,450 --> 00:25:44,730 Так может кто-нибудь дать мне эту первую линию Для создания массива целых чисел с одной 535 00:25:44,730 --> 00:25:45,980 через пять? 536 00:25:45,980 --> 00:25:48,700 537 00:25:48,700 --> 00:25:49,130 Вы? 538 00:25:49,130 --> 00:25:53,350 >> СТУДЕНТ: Int, а затем вы можете позвонить независимо от количества, а затем квадратные 539 00:25:53,350 --> 00:25:54,830 Кронштейн пять. 540 00:25:54,830 --> 00:25:57,820 >> Джейсон Hirschhorn: Так десятичного числа, квадратная скобка пять. 541 00:25:57,820 --> 00:25:59,160 >> СТУДЕНТ: равных и Затем фигурные скобки. 542 00:25:59,160 --> 00:26:00,830 >> Джейсон Hirschhorn: равно, фигурные скобки. 543 00:26:00,830 --> 00:26:01,830 >> СТУДЕНТ: Раз, два, три, четыре. 544 00:26:01,830 --> 00:26:05,566 >> Джейсон Hirschhorn: Раз, два, три, четыре, пять. 545 00:26:05,566 --> 00:26:07,390 >> СТУДЕНТ: А потом фигурные скобки а затем с запятой. 546 00:26:07,390 --> 00:26:09,240 >> Джейсон Hirschhorn: и вьющиеся скобки и точка с запятой. 547 00:26:09,240 --> 00:26:10,330 Отлично. 548 00:26:10,330 --> 00:26:12,210 Распечатайте каждого десятичного с новой строки. 549 00:26:12,210 --> 00:26:17,140 Может ли кто-нибудь дать еще мне, что код, пожалуйста? 550 00:26:17,140 --> 00:26:17,530 [? Мату? ?] 551 00:26:17,530 --> 00:26:18,560 Идем дальше. 552 00:26:18,560 --> 00:26:20,440 >> СТУДЕНТ: Для ( 553 00:26:20,440 --> 00:26:21,750 >> Джейсон Hirschhorn: Для ( 554 00:26:21,750 --> 00:26:23,740 >> СТУДЕНТ: Int I = 0 555 00:26:23,740 --> 00:26:26,070 >> Джейсон Hirschhorn: Int I = 0 556 00:26:26,070 --> 00:26:28,190 >> СТУДЕНТ: точку с запятой я меньше пяти. 557 00:26:28,190 --> 00:26:31,680 >> Джейсон Hirschhorn: точка с запятой, я меньше 5. 558 00:26:31,680 --> 00:26:33,600 >> СТУДЕНТ: точку с запятой, я + +. 559 00:26:33,600 --> 00:26:35,140 >> Джейсон Hirschhorn: точку с запятой, я + +. 560 00:26:35,140 --> 00:26:37,720 >> СТУДЕНТ: Закрытое скобках, Затем открывающей фигурной скобки. 561 00:26:37,720 --> 00:26:39,410 >> Джейсон Hirschhorn: Закрытое скобках и две скобки. 562 00:26:39,410 --> 00:26:40,510 Внутри брекеты? 563 00:26:40,510 --> 00:26:47,640 >> СТУДЕНТ: И тогда Е "% D / N" 564 00:26:47,640 --> 00:26:48,695 >> Джейсон Hirschhorn: Извините, держись. 565 00:26:48,695 --> 00:26:52,330 Printf "% D / N, закрытая цитаты. 566 00:26:52,330 --> 00:26:55,980 >> СТУДЕНТ: А потом закрытая цитаты, запятой, граф, я кронштейна. 567 00:26:55,980 --> 00:26:58,350 >> Джейсон Hirschhorn: запятая, Количество, кронштейн я. 568 00:26:58,350 --> 00:26:59,970 >> СТУДЕНТ: Извините, я номера кронштейна. 569 00:26:59,970 --> 00:27:01,416 >> Джейсон Hirschhorn: Числа, кронштейн я. 570 00:27:01,416 --> 00:27:03,200 >> СТУДЕНТ: Извините. 571 00:27:03,200 --> 00:27:04,750 , А затем закрывается скобках, запятой. 572 00:27:04,750 --> 00:27:07,156 >> Джейсон Hirschhorn: Закрыто скобки, точка с запятой. 573 00:27:07,156 --> 00:27:08,680 Я иду, чтобы спасти это. 574 00:27:08,680 --> 00:27:12,670 Мы собираемся сделать счет. 575 00:27:12,670 --> 00:27:14,742 И как мне запустить рассчитывать? 576 00:27:14,742 --> 00:27:16,470 >> СТУДЕНТ: Обратная косая черта. 577 00:27:16,470 --> 00:27:17,180 >> СТУДЕНТ: Dot косую черту - 578 00:27:17,180 --> 00:27:18,050 >> Джейсон Hirschhorn:. / Отсчет, именно так. 579 00:27:18,050 --> 00:27:19,380 Спасибо. . / Отсчет. 580 00:27:19,380 --> 00:27:21,060 Один, два, три, четыре, на пять новых линий. 581 00:27:21,060 --> 00:27:22,110 Похоже, это сработало. 582 00:27:22,110 --> 00:27:23,200 Да, Ной? 583 00:27:23,200 --> 00:27:26,660 >> СТУДЕНТ: Вы также можете сделать меньше или равным четырем, как я меньше 584 00:27:26,660 --> 00:27:27,630 или равно четырем? 585 00:27:27,630 --> 00:27:31,190 Есть ли какие-либо преимущества, чтобы делать меньше чем пять лет, или просто другой способ 586 00:27:31,190 --> 00:27:31,610 записав его? 587 00:27:31,610 --> 00:27:35,280 >> Джейсон Hirschhorn: Так что вопрос вы мог бы сделать я меньше или 588 00:27:35,280 --> 00:27:37,450 равной четырем вместо Я меньше пяти. 589 00:27:37,450 --> 00:27:38,935 Бы это работало то же самое? 590 00:27:38,935 --> 00:27:39,760 >> СТУДЕНТ: он должен. 591 00:27:39,760 --> 00:27:39,860 >> Джейсон Hirschhorn: Да. 592 00:27:39,860 --> 00:27:41,660 Это полностью бы работать так же. 593 00:27:41,660 --> 00:27:44,780 Стилистически, это как правило, менее, и вы увидите, во втором, когда 594 00:27:44,780 --> 00:27:48,160 мы строками, вы можете использовать что-то называется StrLen, которые вы видели 595 00:27:48,160 --> 00:27:50,380 раньше, чтобы получить длину струны. 596 00:27:50,380 --> 00:27:54,090 И вы не можете сделать меньше или равна StrLen. 597 00:27:54,090 --> 00:27:56,500 Вы могли бы сделать меньше или равным StrLen минус один. 598 00:27:56,500 --> 00:27:59,260 Так что это просто приятнее сделать меньше, чем StrLen. 599 00:27:59,260 --> 00:28:00,240 Да? 600 00:28:00,240 --> 00:28:03,270 >> СТУДЕНТ: И в реальной викторины, сделать мы должны представить свои замечания по нашей 601 00:28:03,270 --> 00:28:04,620 код, а? 602 00:28:04,620 --> 00:28:06,130 >> Джейсон Hirschhorn: вопрос был в викторинах, вы 603 00:28:06,130 --> 00:28:07,760 должны предоставить комментарии? 604 00:28:07,760 --> 00:28:12,050 Таким образом, мы будем говорить больше о викторинах, когда они приходят, но в целом, хорошее 605 00:28:12,050 --> 00:28:14,530 правило: всякий раз, когда вы написание кода, представить свои замечания. 606 00:28:14,530 --> 00:28:18,130 Если вы получите код неправильно, но комментарий, для этого, вы можете получить некоторые 607 00:28:18,130 --> 00:28:22,280 кредитования, как от меня, если я был классификации Вы на проблему набора или на викторину. 608 00:28:22,280 --> 00:28:24,660 Так что комментарии всегда хорошо, чтобы обеспечить. 609 00:28:24,660 --> 00:28:25,040 Сладкий. 610 00:28:25,040 --> 00:28:25,460 Граф. 611 00:28:25,460 --> 00:28:26,720 Отличная работа. 612 00:28:26,720 --> 00:28:28,570 Давайте двигаться дальше. 613 00:28:28,570 --> 00:28:29,920 >> Strings. 614 00:28:29,920 --> 00:28:30,630 Strings. 615 00:28:30,630 --> 00:28:31,730 Мы видели это раньше в лекции. 616 00:28:31,730 --> 00:28:33,390 Это взорвал мой взгляд, когда я первый узнал об этом. 617 00:28:33,390 --> 00:28:37,240 Это, вероятно, не взрывал ничьим виду, но это нормально. 618 00:28:37,240 --> 00:28:41,260 >> Строки массивы символов, а они заканчиваются, как Вы сказали ранее, 619 00:28:41,260 --> 00:28:45,710 нулевой символ, который это / символ 0. 620 00:28:45,710 --> 00:28:47,740 Если мы собираемся привлечь в строку на доска, мы будем рисовать его сюда. 621 00:28:47,740 --> 00:28:53,080 622 00:28:53,080 --> 00:28:56,420 Итак, как долго это строки? 623 00:28:56,420 --> 00:28:56,680 Извините. 624 00:28:56,680 --> 00:28:57,660 Как долго длится эта строка? 625 00:28:57,660 --> 00:28:57,910 >> СТУДЕНТ: [неразборчиво]. 626 00:28:57,910 --> 00:28:59,010 >> Джейсон Hirschhorn: четыре? 627 00:28:59,010 --> 00:28:59,880 Почему четыре? 628 00:28:59,880 --> 00:29:02,240 >> СТУДЕНТ: Потому что на пятом месте является для нулевого символа. 629 00:29:02,240 --> 00:29:04,070 >> Джейсон Hirschhorn: Так пятое место является для нулевого символа. 630 00:29:04,070 --> 00:29:07,130 Так что, если бы я должен был работать на StrLen этом, что это даст мне четыре. 631 00:29:07,130 --> 00:29:07,850 Правильно. 632 00:29:07,850 --> 00:29:11,640 И массив, хотя, если бы я был инициализировать этот массив, сколько пробелов 633 00:29:11,640 --> 00:29:13,444 я должен был бы попросить? 634 00:29:13,444 --> 00:29:13,821 >> СТУДЕНТ: пять. 635 00:29:13,821 --> 00:29:14,200 >> Джейсон Hirschhorn: пять. 636 00:29:14,200 --> 00:29:17,650 Я должен был бы попросить пять, но не могу только поставить четыре символа здесь 637 00:29:17,650 --> 00:29:19,750 потому что мне нужно поставить, что нулевой терминатор на конце. 638 00:29:19,750 --> 00:29:25,260 Итак, мы собираемся писать в "Ohai» и поставить в нулевое окончание в конце. 639 00:29:25,260 --> 00:29:31,820 640 00:29:31,820 --> 00:29:34,940 Мы скажем, что эта строка с равным этому. 641 00:29:34,940 --> 00:29:36,610 Что такое кронштейн с нуля? 642 00:29:36,610 --> 00:29:40,210 643 00:29:40,210 --> 00:29:41,550 с кронштейном нулю, Энни? 644 00:29:41,550 --> 00:29:41,950 >> СТУДЕНТ: О. 645 00:29:41,950 --> 00:29:45,400 >> Джейсон Hirschhorn: О, точно. Кронштейн с одним? 646 00:29:45,400 --> 00:29:48,200 с кронштейном пять? 647 00:29:48,200 --> 00:29:52,670 648 00:29:52,670 --> 00:29:53,955 с кронштейном пять? 649 00:29:53,955 --> 00:29:54,740 >> СТУДЕНТ: Не существует. 650 00:29:54,740 --> 00:29:55,040 >> Джейсон Hirschhorn: Не существует. 651 00:29:55,040 --> 00:29:57,050 Совершенно верно. 652 00:29:57,050 --> 00:29:57,940 Круто. 653 00:29:57,940 --> 00:30:03,120 Любые вопросы о понимании Строки как массивы символов? 654 00:30:03,120 --> 00:30:03,870 Хорошо, тогда. 655 00:30:03,870 --> 00:30:05,440 Еще одна программа для вас, ребята. 656 00:30:05,440 --> 00:30:09,190 Напишите программу, которая запрашивает у пользователя для струнного Затем печатает каждый 657 00:30:09,190 --> 00:30:11,880 характера на новую строку. 658 00:30:11,880 --> 00:30:14,160 Итак, давайте три минуты, чтобы написать эту программу, и тогда мы будем его код 659 00:30:14,160 --> 00:30:15,410 в группе. 660 00:30:15,410 --> 00:31:04,730 661 00:31:04,730 --> 00:31:04,830 >> Извините. 662 00:31:04,830 --> 00:31:06,470 Вы должны видеть это? 663 00:31:06,470 --> 00:31:07,410 >> СТУДЕНТ: Нет 664 00:31:07,410 --> 00:31:08,660 >> Джейсон Hirschhorn: OK. 665 00:31:08,660 --> 00:31:36,390 666 00:31:36,390 --> 00:31:40,605 Давайте еще одна минута, чтобы закодировать это, или по крайней мере начать работу на нем. 667 00:31:40,605 --> 00:32:13,900 668 00:32:13,900 --> 00:32:17,020 >> Так что вы можете продолжать работать, но я собираюсь начать ходить через него. 669 00:32:17,020 --> 00:32:22,560 Так, как раньше, у меня на экране # Включить cs50.h, # Включить stdio.h. 670 00:32:22,560 --> 00:32:24,020 Int основных недействительными. 671 00:32:24,020 --> 00:32:28,880 В фигурных скобках основного автора, у меня есть два комментария, псевдокод. 672 00:32:28,880 --> 00:32:30,980 Одним из них является попросить строку от пользователя. 673 00:32:30,980 --> 00:32:33,900 Второй распечатывать каждый характера на новую строку. 674 00:32:33,900 --> 00:32:39,780 Так Анна, вы можете дать мне спросить для строки от пользователя? 675 00:32:39,780 --> 00:32:41,970 >> СТУДЕНТ: Printf. 676 00:32:41,970 --> 00:32:42,720 >> Джейсон Hirschhorn: Printf? 677 00:32:42,720 --> 00:32:45,050 >> СТУДЕНТ: Да. 678 00:32:45,050 --> 00:32:46,165 ( 679 00:32:46,165 --> 00:32:47,610 >> Джейсон Hirschhorn: ( 680 00:32:47,610 --> 00:32:49,300 >> Студент: "дайте мне строки. 681 00:32:49,300 --> 00:32:52,380 >> Джейсон Hirschhorn: "дать Мне ул - ой - 682 00:32:52,380 --> 00:32:53,710 строку. 683 00:32:53,710 --> 00:32:59,980 >> СТУДЕНТ: / п ") точку с запятой. 684 00:32:59,980 --> 00:33:02,300 >> Джейсон Hirschhorn: Конец строки, закрытой скобки, точка с запятой. 685 00:33:02,300 --> 00:33:03,550 >> СТУДЕНТ: Да. 686 00:33:03,550 --> 00:33:09,080 А потом следующую строку, строка S = получить строку. 687 00:33:09,080 --> 00:33:11,240 >> Джейсон Hirschhorn: String S = получить строку. 688 00:33:11,240 --> 00:33:11,665 >> СТУДЕНТ: Да. 689 00:33:11,665 --> 00:33:13,080 И тогда () 690 00:33:13,080 --> 00:33:14,365 >> Джейсон Hirschhorn: () 691 00:33:14,365 --> 00:33:14,720 >> СТУДЕНТ: точку с запятой. 692 00:33:14,720 --> 00:33:15,540 >> Джейсон Hirschhorn: точку с запятой. 693 00:33:15,540 --> 00:33:16,890 Фантастика. 694 00:33:16,890 --> 00:33:19,000 Так что я иду, чтобы получить строку и Я собираюсь сохранить его в чем? 695 00:33:19,000 --> 00:33:21,830 Какая переменная с именем что вы создали? 696 00:33:21,830 --> 00:33:23,290 >> СТУДЕНТ: String с. 697 00:33:23,290 --> 00:33:24,580 >> Джейсон Hirschhorn: переменная называется с. 698 00:33:24,580 --> 00:33:25,700 Это тип строка. 699 00:33:25,700 --> 00:33:27,200 Именно так. 700 00:33:27,200 --> 00:33:30,080 Следующая вещь, которую мы хотим это распечатать каждый символ с новой строки. 701 00:33:30,080 --> 00:33:31,710 Кто может дать мне этот код? 702 00:33:31,710 --> 00:33:32,110 [Неразборчиво]? 703 00:33:32,110 --> 00:33:33,000 Можете ли вы дать мне его? 704 00:33:33,000 --> 00:33:33,580 >> СТУДЕНТ: Конечно. 705 00:33:33,580 --> 00:33:35,420 >> Джейсон Hirschhorn: Давайте сделаем это. 706 00:33:35,420 --> 00:33:36,080 А жаль. 707 00:33:36,080 --> 00:33:38,896 Я не хотел бы повторить то, что вы говорите, потому что вы получить это право, но я 708 00:33:38,896 --> 00:33:42,100 придется повторить его так, что, когда они транскрибировать это, они могут получить все 709 00:33:42,100 --> 00:33:44,870 Текст на транскрипций. 710 00:33:44,870 --> 00:33:47,180 Таким образом, вы можете просто продолжать говорить. 711 00:33:47,180 --> 00:33:48,590 К сожалению, у меня есть сказать, что это над вами. 712 00:33:48,590 --> 00:33:49,510 Мне очень жаль, но - 713 00:33:49,510 --> 00:33:50,610 >> СТУДЕНТ: Это хорошо. 714 00:33:50,610 --> 00:33:53,010 Для INT I = 0 715 00:33:53,010 --> 00:33:54,170 >> Джейсон Hirschhorn: Для INT I = 0 716 00:33:54,170 --> 00:33:56,740 >> СТУДЕНТ: Я меньше - 717 00:33:56,740 --> 00:33:58,206 >> Джейсон Hirschhorn: точку с запятой. 718 00:33:58,206 --> 00:34:00,650 >> СТУДЕНТ: До этого мы можем положить переменную так что вы получите десятичного длина имени? 719 00:34:00,650 --> 00:34:01,870 >> Джейсон Hirschhorn: О, вы не хочу поставить точку с запятой? 720 00:34:01,870 --> 00:34:02,310 ОК. 721 00:34:02,310 --> 00:34:05,120 Так что же вы будете делать после нуля? 722 00:34:05,120 --> 00:34:09,340 >> СТУДЕНТ: Я хочу, чтобы длина строки с и 723 00:34:09,340 --> 00:34:10,410 Установлено, что в переменной? 724 00:34:10,410 --> 00:34:11,760 >> Джейсон Hirschhorn: Хорошо, так как я могу это сделать? 725 00:34:11,760 --> 00:34:17,636 >> Слушатель: То есть вы делаете десятичного длина = 726 00:34:17,636 --> 00:34:20,010 >> Джейсон Hirschhorn: длина = Int 727 00:34:20,010 --> 00:34:22,230 >> Студент: S-T-R-L-E-N. 728 00:34:22,230 --> 00:34:24,260 >> ДЖЕЙСОН Hirschhorn: S-T-R-L-E-N - 729 00:34:24,260 --> 00:34:25,380 >> СТУДЕНТ: Из с. 730 00:34:25,380 --> 00:34:25,790 Скобки. 731 00:34:25,790 --> 00:34:27,920 >> ДЖЕЙСОН Hirschhorn: (а). 732 00:34:27,920 --> 00:34:33,040 >> СТУДЕНТ: И тогда я думаю, что нужно поставить точку с запятой между двумя целыми. 733 00:34:33,040 --> 00:34:34,590 >> Джейсон Hirschhorn: Точка с запятой после нуля? 734 00:34:34,590 --> 00:34:35,260 >> СТУДЕНТ: Да. 735 00:34:35,260 --> 00:34:40,670 Затем поставить точку с запятой после этого, и вы говорите, я меньше длины. 736 00:34:40,670 --> 00:34:43,250 я меньше, чем длина, которую является переменной. 737 00:34:43,250 --> 00:34:44,590 >> СТУДЕНТ: А потом запятой. 738 00:34:44,590 --> 00:34:45,790 >> Джейсон Hirschhorn: точку с запятой. 739 00:34:45,790 --> 00:34:46,290 >> СТУДЕНТ: Я + +. 740 00:34:46,290 --> 00:34:46,909 >> Джейсон Hirschhorn: Я + +. 741 00:34:46,909 --> 00:34:47,530 Там в нашем цикле. 742 00:34:47,530 --> 00:34:48,860 Хорошо, внутри цикла. 743 00:34:48,860 --> 00:34:51,670 >> СТУДЕНТ: И потом Е. 744 00:34:51,670 --> 00:34:53,340 >> Джейсон Hirschhorn: Printf. 745 00:34:53,340 --> 00:34:53,889 >> СТУДЕНТ: скобки. 746 00:34:53,889 --> 00:34:55,130 >> Джейсон Hirschhorn: скобки, кавычки. 747 00:34:55,130 --> 00:34:59,930 >> СТУДЕНТ: скобки, кавычки,% C / N. 748 00:34:59,930 --> 00:35:00,760 >> Джейсон Hirschhorn:% С, ОК. 749 00:35:00,760 --> 00:35:01,670 >> СТУДЕНТ: / N. 750 00:35:01,670 --> 00:35:03,470 >> Джейсон Hirschhorn: / N. 751 00:35:03,470 --> 00:35:04,410 >> СТУДЕНТ: Закрытое кавычки. 752 00:35:04,410 --> 00:35:05,270 >> Джейсон Hirschhorn: Закрытое кавычки. 753 00:35:05,270 --> 00:35:05,810 >> СТУДЕНТ: запятую. 754 00:35:05,810 --> 00:35:06,860 >> Джейсон Hirschhorn: запятую. 755 00:35:06,860 --> 00:35:07,800 >> СТУДЕНТ: С. 756 00:35:07,800 --> 00:35:08,070 >> Джейсон Hirschhorn: С. 757 00:35:08,070 --> 00:35:08,690 >> СТУДЕНТ: Кронштейн я. 758 00:35:08,690 --> 00:35:10,230 >> Джейсон Hirschhorn: Кронштейн я. 759 00:35:10,230 --> 00:35:11,520 >> СТУДЕНТ: А потом закрыты скобках. 760 00:35:11,520 --> 00:35:12,540 >> Джейсон Hirschhorn: Закрытое скобках. 761 00:35:12,540 --> 00:35:13,660 >> СТУДЕНТ: А потом запятой. 762 00:35:13,660 --> 00:35:13,770 >> Джейсон Hirschhorn: точку с запятой. 763 00:35:13,770 --> 00:35:14,380 Фантастика. 764 00:35:14,380 --> 00:35:16,890 Так давайте сохраним это. 765 00:35:16,890 --> 00:35:19,770 Сделать заклинание. 766 00:35:19,770 --> 00:35:20,040 О мальчик. 767 00:35:20,040 --> 00:35:22,275 У меня есть пара ошибок. 768 00:35:22,275 --> 00:35:33,120 Первая ошибка в строке 11, он говорит, Ожидается выражение, и это дает 769 00:35:33,120 --> 00:35:36,910 мне ошибку, что второй Интеллект, есть ошибки. 770 00:35:36,910 --> 00:35:38,430 Там некоторые ошибки вокруг там. 771 00:35:38,430 --> 00:35:41,060 Кто-нибудь знает, что это ошибка? 772 00:35:41,060 --> 00:35:41,640 Курт? 773 00:35:41,640 --> 00:35:44,108 >> СТУДЕНТ: Я думаю, это должно быть запятая, а не точка с запятой. 774 00:35:44,108 --> 00:35:46,010 >> Джейсон Hirschhorn: Хорошо, запятая вместо запятой. 775 00:35:46,010 --> 00:35:47,340 Так что в том, что все, что нужно исправить? 776 00:35:47,340 --> 00:35:47,655 >> СТУДЕНТ: Нет 777 00:35:47,655 --> 00:35:48,930 >> Джейсон Hirschhorn: Что еще нам нужно исправить? 778 00:35:48,930 --> 00:35:50,920 >> СТУДЕНТ: мы должны включить string.h. 779 00:35:50,920 --> 00:35:51,680 >> Джейсон Hirschhorn: включит string.h. 780 00:35:51,680 --> 00:35:53,730 Куда я должен включить это? 781 00:35:53,730 --> 00:35:57,085 >> СТУДЕНТ: То же место вы в том числе другие вещи, правильно 782 00:35:57,085 --> 00:35:59,560 После включает stdio.h. 783 00:35:59,560 --> 00:36:01,610 >> Джейсон Hirschhorn: Давайте посмотрим, если это работает первых, потому что в целом, мне нравится 784 00:36:01,610 --> 00:36:06,360 изменить что-то одно, а затем запустите его, а затем увидеть ошибки, которые мы получаем. 785 00:36:06,360 --> 00:36:11,620 Итак, мы собираемся, чтобы очистить терминал с контролем N, давайте сделаем сделать заклинание. 786 00:36:11,620 --> 00:36:15,190 787 00:36:15,190 --> 00:36:18,770 Таким образом, другая ошибка в строке 11. 788 00:36:18,770 --> 00:36:20,540 Ожидаемые запятой. 789 00:36:20,540 --> 00:36:22,640 И я все еще получаю Ошибки на этой линии. 790 00:36:22,640 --> 00:36:25,270 Так что он не дал мне ошибку говоря, что это не понимает, что StrLen есть, 791 00:36:25,270 --> 00:36:28,980 но это дает мне ошибки на этом линии, так что еще не так? 792 00:36:28,980 --> 00:36:29,690 Марком? 793 00:36:29,690 --> 00:36:30,940 Маркус. 794 00:36:30,940 --> 00:36:32,570 >> СТУДЕНТ: У вас есть, чтобы удалить второй десятичного декларации? 795 00:36:32,570 --> 00:36:34,990 >> Джейсон Hirschhorn: Удалить второй Int. 796 00:36:34,990 --> 00:36:35,710 Давайте попробуем это. 797 00:36:35,710 --> 00:36:37,600 Теперь ясно терминала. 798 00:36:37,600 --> 00:36:40,130 Сделать заклинание. 799 00:36:40,130 --> 00:36:40,490 Ошибка. 800 00:36:40,490 --> 00:36:42,890 Неявном объявлении библиотеки Функция StrLen. 801 00:36:42,890 --> 00:36:44,270 Так что теперь мы видим эту ошибку. 802 00:36:44,270 --> 00:36:45,760 Что нам нужно, чтобы включить? 803 00:36:45,760 --> 00:36:46,660 >> СТУДЕНТ: string.h. 804 00:36:46,660 --> 00:36:51,880 >> Джейсон Hirschhorn: включит string.h, сделаем # включить string.h в верхней 805 00:36:51,880 --> 00:36:52,920 части экрана. 806 00:36:52,920 --> 00:36:55,450 Спасем, сделать заклинание. 807 00:36:55,450 --> 00:36:56,970 Сейчас составлен. 808 00:36:56,970 --> 00:37:01,970 Итак, еще раз, то, что мы должны помните линии 12 в нашем цикле, когда 809 00:37:01,970 --> 00:37:08,010 мы устанавливаем его, INT I = 0, длина = StrLen (ов). 810 00:37:08,010 --> 00:37:09,350 >> Это фантастическая стратегия. 811 00:37:09,350 --> 00:37:12,590 Стиль этого велика, Дизайн это здорово. 812 00:37:12,590 --> 00:37:15,620 Мы можем пойти в эти причины спустя, но таким образом вы достаточно позвонить по телефону 813 00:37:15,620 --> 00:37:19,040 StrLen единожды, а каждый запуске через петлю. 814 00:37:19,040 --> 00:37:22,255 Однако, вам нужно использовать запятую там и вам не нужно десятичного снова. 815 00:37:22,255 --> 00:37:24,180 Если вы и те, объявив переменные вместе, вы 816 00:37:24,180 --> 00:37:26,850 не нужно десятичного снова. 817 00:37:26,850 --> 00:37:29,820 И потом, если вы собираетесь использовать StrLen, что является еще одной библиотеки 818 00:37:29,820 --> 00:37:33,560 функция не включена в stdio.h или cs50.h, убедитесь, 819 00:37:33,560 --> 00:37:35,310 что вы включаете string.h. 820 00:37:35,310 --> 00:37:35,900 Курт? 821 00:37:35,900 --> 00:37:39,085 >> Слушатель: То есть тогда, если вы не нужно сказать, какой тип длины, значит ли это 822 00:37:39,085 --> 00:37:40,290 означает, что она должна быть Целочисленное? 823 00:37:40,290 --> 00:37:41,930 Вы не могли бы иметь два разных типа там? 824 00:37:41,930 --> 00:37:43,290 >> Джейсон Hirschhorn: Так что вы можете имеют два различных типов. 825 00:37:43,290 --> 00:37:45,730 Длина Целочисленное здесь, однако. 826 00:37:45,730 --> 00:37:48,590 Длина Целочисленное потому что это запятая , а затем то же самое. 827 00:37:48,590 --> 00:37:50,460 >> Слушатель: То есть он предполагает, что это будет такой же, как и первый? 828 00:37:50,460 --> 00:37:52,423 >> Джейсон Hirschhorn: Совершенно верно. 829 00:37:52,423 --> 00:37:54,970 Мы не собираемся делать этого сейчас, но вы может включать в себя два переменных на 830 00:37:54,970 --> 00:37:57,080 одной линии с использованием одного типа данных. 831 00:37:57,080 --> 00:38:01,415 Так десятичного х, у создаст двух переменных. 832 00:38:01,415 --> 00:38:05,830 833 00:38:05,830 --> 00:38:10,770 Так десятичного х, у, если мы сделаем это, это дает Мне неиспользуемых переменных х и у, потому что 834 00:38:10,770 --> 00:38:12,020 Мы ими не пользуетесь. 835 00:38:12,020 --> 00:38:17,950 836 00:38:17,950 --> 00:38:21,650 Так положить пустоту перед просто фантазии трюк, если вы не используете 837 00:38:21,650 --> 00:38:22,810 что-то, чтобы использовать его. 838 00:38:22,810 --> 00:38:26,300 Но, как видите, я создаю х и у на той же строке через запятую. 839 00:38:26,300 --> 00:38:28,450 Это создает два целых числа прямо там. 840 00:38:28,450 --> 00:38:31,560 Так да, вполне возможно создать две вещи, на той же линии 841 00:38:31,560 --> 00:38:33,720 разделенных запятыми. 842 00:38:33,720 --> 00:38:35,470 Давайте избавимся от тех, однако. 843 00:38:35,470 --> 00:38:36,370 >> Таким образом, есть заклинание. 844 00:38:36,370 --> 00:38:39,200 Спасибо ребятам за кодирование для нас. 845 00:38:39,200 --> 00:38:43,040 Давайте сделаем это еще раз, запустите его. 846 00:38:43,040 --> 00:38:44,580 Дайте мне строки. 847 00:38:44,580 --> 00:38:45,580 [Неразборчиво], вы сделали большую его часть. 848 00:38:45,580 --> 00:38:47,910 Что строки? 849 00:38:47,910 --> 00:38:48,250 >> СТУДЕНТ: Здравствуйте. 850 00:38:48,250 --> 00:38:50,110 >> Джейсон Hirschhorn: Здравствуйте. 851 00:38:50,110 --> 00:38:52,810 H-E-L-L-O, каждый символ в одной строке. 852 00:38:52,810 --> 00:38:53,700 Выглядит здорово. 853 00:38:53,700 --> 00:38:54,750 Давайте запустим его снова. 854 00:38:54,750 --> 00:38:56,050 Всегда собираюсь проверить для угловых случаев. 855 00:38:56,050 --> 00:38:57,750 Что такое хороший случай углу, чтобы проверить? 856 00:38:57,750 --> 00:39:00,250 857 00:39:00,250 --> 00:39:00,890 >> СТУДЕНТ: число? 858 00:39:00,890 --> 00:39:02,240 >> Джейсон Hirschhorn: число. 859 00:39:02,240 --> 00:39:06,580 Так я положу в 1, и она выведет 1. 860 00:39:06,580 --> 00:39:08,970 Он не просит, для писем, так кажется, что работа чисел. 861 00:39:08,970 --> 00:39:09,890 Хороший случай углу, чтобы проверить. 862 00:39:09,890 --> 00:39:11,740 Что еще одним хорошим углом случай, чтобы проверить? 863 00:39:11,740 --> 00:39:12,420 >> СТУДЕНТ: пустая строка. 864 00:39:12,420 --> 00:39:12,910 >> Джейсон Hirschhorn: Хм? 865 00:39:12,910 --> 00:39:13,880 >> СТУДЕНТ: как пустая строка. 866 00:39:13,880 --> 00:39:14,400 >> Джейсон Hirschhorn: пустая строка. 867 00:39:14,400 --> 00:39:16,730 Так что давайте не ставить ни в чем. 868 00:39:16,730 --> 00:39:18,660 И то, что можно распечатать? 869 00:39:18,660 --> 00:39:19,090 >> СТУДЕНТ: Ничего. 870 00:39:19,090 --> 00:39:19,870 >> Джейсон Hirschhorn: Ничего. 871 00:39:19,870 --> 00:39:20,555 Кажется, что это работает. 872 00:39:20,555 --> 00:39:23,790 Вы можете попробовать больше случаев угол, но обычно номера, различные данные 873 00:39:23,790 --> 00:39:26,160 замечательно попробовать, а ничего нет. 874 00:39:26,160 --> 00:39:29,180 Ничего, ноль, негатива не всегда большие вещи, чтобы попробовать и вещи, которые вы 875 00:39:29,180 --> 00:39:33,140 следует проверить, все, конечно, мы протестируем Проверьте и для 50 будет проверяться. 876 00:39:33,140 --> 00:39:34,720 Любые вопросы о spell.c? 877 00:39:34,720 --> 00:39:37,752 878 00:39:37,752 --> 00:39:39,310 >> Хорошо, давайте голову назад. 879 00:39:39,310 --> 00:39:42,420 У меня есть еще одна программа для вас, ребята, чтобы писать. 880 00:39:42,420 --> 00:39:44,700 Она называется students.c. 881 00:39:44,700 --> 00:39:49,020 Это программа, которая запрашивает у пользователя пять имен, а затем случайным образом выбирает 882 00:39:49,020 --> 00:39:51,600 и выводит одно из имен. 883 00:39:51,600 --> 00:39:54,840 Эта программа представляет собой немного больше активное участие, чем в последние два мы писали, 884 00:39:54,840 --> 00:39:58,080 Так почему бы нам не пять минут, чтобы закодировать его индивидуально, и тогда мы будем 885 00:39:58,080 --> 00:40:00,130 кодироваться как группа. 886 00:40:00,130 --> 00:40:03,795 >> Эта программа также включает некоторые вещи вы не могли видеть раньше, так что если 887 00:40:03,795 --> 00:40:06,390 у вас есть вопрос о, как делать Я делаю это, поднимите руку. 888 00:40:06,390 --> 00:40:08,530 Я приеду и указать вам в правильном направлении. 889 00:40:08,530 --> 00:40:10,820 Но мы также делаем это, потому что это будет хороший способ ввести некоторые 890 00:40:10,820 --> 00:40:12,070 темы, которые сложно. 891 00:40:12,070 --> 00:44:14,600 892 00:44:14,600 --> 00:44:15,560 >> Так он работает, не так ли? 893 00:44:15,560 --> 00:44:17,580 >> СТУДЕНТ: Да. 894 00:44:17,580 --> 00:44:19,180 >> Джейсон Hirschhorn: Всякий раз, когда вы включаете в Проблема набора, есть много способов сделать 895 00:44:19,180 --> 00:44:20,790 , но некоторые из них более Элегантный, чем другие. 896 00:44:20,790 --> 00:44:29,000 897 00:44:29,000 --> 00:44:31,110 Давайте погружение дюйма 898 00:44:31,110 --> 00:44:32,880 # Включить cs50.h. 899 00:44:32,880 --> 00:44:34,250 # Включить stdio.h. 900 00:44:34,250 --> 00:44:37,240 тап_п пустоту, фигурные скобки. 901 00:44:37,240 --> 00:44:39,430 В фигурных скобках, У меня есть два замечания. 902 00:44:39,430 --> 00:44:41,500 Первый из них, спросите пользователь в течение пяти имен. 903 00:44:41,500 --> 00:44:46,580 Второй один, случайным образом выбирать и распечатать одно из имен. 904 00:44:46,580 --> 00:44:50,250 Так давайте сделаем первый, спросите пользователь в течение пяти имен. 905 00:44:50,250 --> 00:44:53,730 Кто спросил у пользователя пять имен и может сказать мне, как это сделать? 906 00:44:53,730 --> 00:44:56,760 907 00:44:56,760 --> 00:44:58,570 Только два человека сделали первую часть. 908 00:44:58,570 --> 00:45:00,150 Три человека сделали первую часть. 909 00:45:00,150 --> 00:45:00,670 Четыре, пять. 910 00:45:00,670 --> 00:45:03,140 Тому, как вы это делаете? 911 00:45:03,140 --> 00:45:09,940 >> СТУДЕНТ: можно объявить строку а затем имя, кронштейн пять. 912 00:45:09,940 --> 00:45:12,070 >> Джейсон Hirschhorn: String Кронштейн назвать пять. 913 00:45:12,070 --> 00:45:15,350 Так что же это делаешь линию, имя строки кронштейн пять? 914 00:45:15,350 --> 00:45:17,800 >> СТУДЕНТ: можно объявить массив строк. 915 00:45:17,800 --> 00:45:19,000 >> Джейсон Hirschhorn: Это массив строк. 916 00:45:19,000 --> 00:45:21,590 Сколько строк собираются чтобы соответствовать здесь? 917 00:45:21,590 --> 00:45:22,010 >> СТУДЕНТ: пять. 918 00:45:22,010 --> 00:45:22,320 >> Джейсон Hirschhorn: пять. 919 00:45:22,320 --> 00:45:22,660 Отлично. 920 00:45:22,660 --> 00:45:26,360 Мы собираемся называть имена, потому что он Мы собираемся, чтобы получить несколько. 921 00:45:26,360 --> 00:45:27,790 Хорошо, дальше? 922 00:45:27,790 --> 00:45:29,270 >> СТУДЕНТ: И тогда вы есть цикл - 923 00:45:29,270 --> 00:45:30,060 >> Джейсон Hirschhorn: для петли. 924 00:45:30,060 --> 00:45:33,035 >> Студент: - для I = 0. 925 00:45:33,035 --> 00:45:37,040 >> Джейсон Hirschhorn: для (INT = 0. 926 00:45:37,040 --> 00:45:38,270 >> СТУДЕНТ: точку с запятой. 927 00:45:38,270 --> 00:45:38,880 >> Джейсон Hirschhorn: точку с запятой. 928 00:45:38,880 --> 00:45:39,790 >> СТУДЕНТ: Я меньше пяти. 929 00:45:39,790 --> 00:45:41,310 >> Джейсон Hirschhorn: Я меньше пяти. 930 00:45:41,310 --> 00:45:42,230 >> СТУДЕНТ: точку с запятой. 931 00:45:42,230 --> 00:45:42,560 >> Джейсон Hirschhorn: точку с запятой. 932 00:45:42,560 --> 00:45:43,380 >> СТУДЕНТ: Я + +. 933 00:45:43,380 --> 00:45:46,050 >> Джейсон Hirschhorn: Я + +. 934 00:45:46,050 --> 00:45:47,100 >> СТУДЕНТ: А потом закрыты скобках. 935 00:45:47,100 --> 00:45:48,600 >> Джейсон Hirschhorn: Закрытое скобках, , а затем некоторые фигурные скобки. 936 00:45:48,600 --> 00:45:50,050 В фигурных скобках? 937 00:45:50,050 --> 00:45:51,423 >> СТУДЕНТ: А потом Е. 938 00:45:51,423 --> 00:45:52,535 >> Джейсон Hirschhorn: Printf. 939 00:45:52,535 --> 00:45:56,200 >> СТУДЕНТ: Открытые скобках, имя% D. 940 00:45:56,200 --> 00:45:57,090 >> Джейсон Hirschhorn: Простите? 941 00:45:57,090 --> 00:45:57,660 >> СТУДЕНТ: Имя. 942 00:45:57,660 --> 00:45:58,200 >> Джейсон Hirschhorn: Имя. 943 00:45:58,200 --> 00:46:01,700 >> СТУДЕНТ: А потом пробел, а затем% D. 944 00:46:01,700 --> 00:46:02,950 >> Джейсон Hirschhorn: Имя, пространство,% D. 945 00:46:02,950 --> 00:46:05,630 946 00:46:05,630 --> 00:46:10,820 >> СТУДЕНТ: А потом / N, а затем закрывается. 947 00:46:10,820 --> 00:46:15,070 >> Джейсон Hirschhorn: Так называют, пространство, % D / N, закрытые скобки. 948 00:46:15,070 --> 00:46:17,730 >> СТУДЕНТ: запятая, я + 1. 949 00:46:17,730 --> 00:46:19,390 Мне очень жаль. 950 00:46:19,390 --> 00:46:21,040 Закрытая цитата, а затем запятая, я +1. 951 00:46:21,040 --> 00:46:24,400 >> Джейсон Hirschhorn: Закрыто цитаты, запятая, я +1. 952 00:46:24,400 --> 00:46:25,850 >> СТУДЕНТ: Да. 953 00:46:25,850 --> 00:46:27,650 А потом следующая строка - 954 00:46:27,650 --> 00:46:29,400 >> Джейсон Hirschhorn: I + 1. 955 00:46:29,400 --> 00:46:31,600 >> СТУДЕНТ: Да. 956 00:46:31,600 --> 00:46:36,440 А потом на следующий слайд это имена кронштейн я. 957 00:46:36,440 --> 00:46:39,000 >> Джейсон Hirschhorn: Следующая строка это имена кронштейн я. 958 00:46:39,000 --> 00:46:41,360 >> СТУДЕНТ: = получить строку. 959 00:46:41,360 --> 00:46:43,460 >> Джейсон Hirschhorn: = Get - 960 00:46:43,460 --> 00:46:44,510 капитала G-E-T - 961 00:46:44,510 --> 00:46:45,530 строку. 962 00:46:45,530 --> 00:46:47,800 Ой, извините. 963 00:46:47,800 --> 00:46:49,050 >> СТУДЕНТ: открытые, закрытые скобки , а затем - 964 00:46:49,050 --> 00:46:50,940 >> Джейсон Hirschhorn: открытая, закрытая скобка. 965 00:46:50,940 --> 00:46:51,030 >> СТУДЕНТ: точку с запятой. 966 00:46:51,030 --> 00:46:52,500 >> Джейсон Hirschhorn: точку с запятой. 967 00:46:52,500 --> 00:46:57,545 Итак, вы инициализировать массив строк, имена, а затем пройти через 968 00:46:57,545 --> 00:47:02,720 цикл, и в пять раз распечатать некоторые подскажет пользователю, а затем сохранить 969 00:47:02,720 --> 00:47:03,360 пять строк. 970 00:47:03,360 --> 00:47:08,090 Кто-нибудь есть какие-либо коррективы в это? 971 00:47:08,090 --> 00:47:10,030 Том, я думаю, что все согласен с вами. 972 00:47:10,030 --> 00:47:10,880 Выглядит довольно хорошо. 973 00:47:10,880 --> 00:47:11,660 ОК. 974 00:47:11,660 --> 00:47:14,830 Зачем ты это сделал я +1, правда? 975 00:47:14,830 --> 00:47:18,000 >> СТУДЕНТ: Я имею в виду, не имеет быть, но я +1 так, чтобы это 976 00:47:18,000 --> 00:47:19,700 Назовите одну назвать пять. 977 00:47:19,700 --> 00:47:21,930 В противном случае было бы название нулю назвать четыре. 978 00:47:21,930 --> 00:47:24,400 >> Джейсон Hirschhorn: Так что вы сделали я +1 потому что иначе это будет иметь 979 00:47:24,400 --> 00:47:27,060 распечатал от нуля до четырех, потому что вот как компьютеры думать, но люди 980 00:47:27,060 --> 00:47:28,530 не читаю подобное. 981 00:47:28,530 --> 00:47:30,190 Это другое дело Вы столкнетесь. 982 00:47:30,190 --> 00:47:33,210 Иногда, когда вы что-то распечатать для пользователя, вы хотите, чтобы сделать его 983 00:47:33,210 --> 00:47:35,733 немного красивее, и делать +1 в этом случае 984 00:47:35,733 --> 00:47:37,430 способ сделать его красивее. 985 00:47:37,430 --> 00:47:41,380 >> Я также вижу пять дважды, имя строки в пять, я меньше пяти. 986 00:47:41,380 --> 00:47:42,430 Я знаю, где вы получили пять. 987 00:47:42,430 --> 00:47:44,890 Вы получили это от меня говорить вам пять имен. 988 00:47:44,890 --> 00:47:49,000 Но если бы мы хотели, чтобы сделать код немного более надежным, единственное, что мы 989 00:47:49,000 --> 00:47:53,110 можете сделать, это здесь, за пределами Интеллект, мы могли бы сделать что-то вроде этого, 990 00:47:53,110 --> 00:47:57,070 # Определить, и мы могли бы сделать ИМЕНА 5. 991 00:47:57,070 --> 00:48:01,580 992 00:48:01,580 --> 00:48:05,390 >> В общем, везде, где я пишу капитала N, капитала, капитала M, буквы Е, 993 00:48:05,390 --> 00:48:08,890 капитала S, эта строка, он заменит что с 5 в коде. 994 00:48:08,890 --> 00:48:11,530 995 00:48:11,530 --> 00:48:13,445 Или давайте просто называть его - мы будем просто назвать его номер. 996 00:48:13,445 --> 00:48:17,190 Так я определяю все заглавные буквы Номер, который будет 5. 997 00:48:17,190 --> 00:48:22,830 >> Так что теперь там, где у меня есть номер 5, я можете заменить его со всеми НОМЕР шапки. 998 00:48:22,830 --> 00:48:26,880 И теперь, если я хочу, чтобы изменить количество имен, все, что мне нужно сделать, это 999 00:48:26,880 --> 00:48:31,350 это одна линия, четвертая строка, где у меня есть # Определить номер 5, изменить это до 10, 1000 00:48:31,350 --> 00:48:34,340 или изменить его на 4. 1001 00:48:34,340 --> 00:48:37,400 Когда код становится больше, вы не собираются, чтобы вспомнить все места, которые вы 1002 00:48:37,400 --> 00:48:41,630 положил, сколько имен вы хотели, и в Для того, чтобы не пропустить одну, это 1003 00:48:41,630 --> 00:48:45,490 Хороший способ сделать это, чтобы найти что-то наверху, а затем просто использовать эту фразу 1004 00:48:45,490 --> 00:48:46,400 везде во всем коде. 1005 00:48:46,400 --> 00:48:46,780 Маркус? 1006 00:48:46,780 --> 00:48:49,780 >> СТУДЕНТ: Это стилистически предпочтительным не глобально определяющим 1007 00:48:49,780 --> 00:48:51,270 постоянная N? 1008 00:48:51,270 --> 00:48:53,760 >> Джейсон Hirschhorn: Так в том, что стилистически предпочтительными, чем глобально 1009 00:48:53,760 --> 00:48:54,980 определение постоянной N? 1010 00:48:54,980 --> 00:48:59,036 Так вы говорите, вы могли бы делать, внутр число = 5? 1011 00:48:59,036 --> 00:49:01,300 >> СТУДЕНТ: Есть ли у них согласных Не в C или нет? 1012 00:49:01,300 --> 00:49:02,720 >> Джейсон Hirschhorn: Или строительства - равными. 1013 00:49:02,720 --> 00:49:04,275 Так вы говорите, просто глобальная переменная? 1014 00:49:04,275 --> 00:49:04,990 >> СТУДЕНТ: Да. 1015 00:49:04,990 --> 00:49:08,670 >> Джейсон Hirschhorn: Так стилистически, Там не обязательно одно право 1016 00:49:08,670 --> 00:49:12,050 ответил, но оба эти лучше чем просто бросать эти случайные 1017 00:49:12,050 --> 00:49:12,960 номера во всем коде. 1018 00:49:12,960 --> 00:49:14,650 Мы называем их магическими числами. 1019 00:49:14,650 --> 00:49:16,450 Когда я смотрю на код или когда Кто-нибудь читает через него, они 1020 00:49:16,450 --> 00:49:18,790 не хотят просто этих случайных чисел , которые не имеет смысла. 1021 00:49:18,790 --> 00:49:22,420 Даже число 26, что в целом является количество букв в алфавите, 1022 00:49:22,420 --> 00:49:28,870 лучше определить АЛФАВИТ наверху и сохраните номер 26 в этой строке, 1023 00:49:28,870 --> 00:49:29,550 если это имеет смысл. 1024 00:49:29,550 --> 00:49:33,210 >> Или на вопрос, поставленный одним, а не - опять же, мы не говорим об этом в 1025 00:49:33,210 --> 00:49:37,020 времени, но вместо того, чтобы просто бросать В 25 всюду или 10, вы можете 1026 00:49:37,020 --> 00:49:41,860 сохранить номер 25 в квартал или 10, как Дим, и что делает его легче для 1027 00:49:41,860 --> 00:49:44,140 тот, кто читает через ваш код понимаю, почему ты выбрал именно этот номер. 1028 00:49:44,140 --> 00:49:46,540 А также для вас, если вы хотите, чтобы обновить код, он делает его немного 1029 00:49:46,540 --> 00:49:47,290 более надежной. 1030 00:49:47,290 --> 00:49:48,070 Да? 1031 00:49:48,070 --> 00:49:50,830 >> СТУДЕНТ: Этот код также собирается быть доступным для нас после? 1032 00:49:50,830 --> 00:49:52,453 >> Джейсон Hirschhorn: Все эти коды , что мы написали вместе, 1033 00:49:52,453 --> 00:49:54,620 будет отправлен к вам Парни и доступным. 1034 00:49:54,620 --> 00:49:55,740 Да. 1035 00:49:55,740 --> 00:49:58,040 Так спросите у пользователя пяти имен. 1036 00:49:58,040 --> 00:50:00,280 Случайный выбор и печать одно из названий. 1037 00:50:00,280 --> 00:50:00,940 Кто это сделал линию? 1038 00:50:00,940 --> 00:50:02,230 Это наиболее сложный линия здесь. 1039 00:50:02,230 --> 00:50:02,450 К сожалению, Том. 1040 00:50:02,450 --> 00:50:05,510 Вы сделали действительно хорошую работу, но это немного сложнее. 1041 00:50:05,510 --> 00:50:06,600 Маркус, идти вперед. 1042 00:50:06,600 --> 00:50:10,180 >> СТУДЕНТ: Ну во-первых, вы собираетесь необходимо включить stdlib.h и time.h. 1043 00:50:10,180 --> 00:50:13,200 >> Джейсон Hirschhorn: Так вы говорите, на верхней части, включают две библиотеки. 1044 00:50:13,200 --> 00:50:18,830 Ты хочешь, чтобы включать в себя S-Т-Д-Л-Я-B точку H, стандартной библиотеки, и то, что 1045 00:50:18,830 --> 00:50:19,760 был другой? 1046 00:50:19,760 --> 00:50:21,010 >> СТУДЕНТ: Time.h. 1047 00:50:21,010 --> 00:50:25,130 1048 00:50:25,130 --> 00:50:27,840 >> Джейсон Hirschhorn: # Включить time.h. 1049 00:50:27,840 --> 00:50:29,470 Таким образом, эти два нескольких библиотек. 1050 00:50:29,470 --> 00:50:31,790 Я предполагаю, что теперь мы будем использовать Функции, которые содержатся в этих 1051 00:50:31,790 --> 00:50:34,240 два, и именно поэтому вам нужно включить их? 1052 00:50:34,240 --> 00:50:36,980 >> Слушатель: То есть то, во-первых, вы собирается хотите написать srand. 1053 00:50:36,980 --> 00:50:38,770 >> Джейсон Hirschhorn: Srand. 1054 00:50:38,770 --> 00:50:42,070 >> Студентов: (времени (0) 1055 00:50:42,070 --> 00:50:42,700 >> Джейсон Hirschhorn: Извините. 1056 00:50:42,700 --> 00:50:45,580 Srand (время ( 1057 00:50:45,580 --> 00:50:46,890 >> СТУДЕНТ: 0. 1058 00:50:46,890 --> 00:50:47,230 >> Джейсон Hirschhorn: 0. 1059 00:50:47,230 --> 00:50:49,990 >> СТУДЕНТ:)), точка с запятой. 1060 00:50:49,990 --> 00:50:51,320 >> Джейсон Hirschhorn: Еще один парень закрытой? 1061 00:50:51,320 --> 00:50:51,650 Точка с запятой. 1062 00:50:51,650 --> 00:50:53,610 Я собираюсь просто заменить Вам нулевой с NULL. 1063 00:50:53,610 --> 00:50:55,980 Он будет делать то же самое, но Как правило, вы увидите пустое значение, что 1064 00:50:55,980 --> 00:50:57,720 Мы поговорим об этом линии в секунду. 1065 00:50:57,720 --> 00:50:58,580 >> СТУДЕНТ: Стилистически лучше? 1066 00:50:58,580 --> 00:51:02,240 >> Джейсон Hirschhorn: Как правило, люди Право NULL, но то же самое. 1067 00:51:02,240 --> 00:51:05,010 >> СТУДЕНТ: А потом десятичного имя. 1068 00:51:05,010 --> 00:51:06,490 >> Джейсон Hirschhorn: Int имя. 1069 00:51:06,490 --> 00:51:07,280 >> СТУДЕНТ: = 1070 00:51:07,280 --> 00:51:07,780 >> Джейсон Hirschhorn: = 1071 00:51:07,780 --> 00:51:08,580 >> СТУДЕНТ: Рэнд. 1072 00:51:08,580 --> 00:51:09,340 >> Джейсон Hirschhorn: Рэнд. 1073 00:51:09,340 --> 00:51:10,420 >> Студентов: () 1074 00:51:10,420 --> 00:51:11,500 >> Джейсон Hirschhorn: () 1075 00:51:11,500 --> 00:51:12,850 >> СТУДЕНТ: модуль числа. 1076 00:51:12,850 --> 00:51:14,310 >> Джейсон Hirschhorn: Что такое модуль? 1077 00:51:14,310 --> 00:51:14,970 Характер? 1078 00:51:14,970 --> 00:51:16,000 Символ процента? 1079 00:51:16,000 --> 00:51:17,790 >> СТУДЕНТ: символ процента. 1080 00:51:17,790 --> 00:51:19,521 Modulo НОМЕР которого вы определили наверху. 1081 00:51:19,521 --> 00:51:22,030 >> Джейсон Hirschhorn: Modulo число. 1082 00:51:22,030 --> 00:51:24,052 >> СТУДЕНТ: А потом запятой. 1083 00:51:24,052 --> 00:51:24,660 >> Джейсон Hirschhorn: точку с запятой. 1084 00:51:24,660 --> 00:51:27,820 >> СТУДЕНТ: И тогда новая линия, Е. 1085 00:51:27,820 --> 00:51:28,460 >> Джейсон Hirschhorn: Printf. 1086 00:51:28,460 --> 00:51:29,730 >> Студентов: ( 1087 00:51:29,730 --> 00:51:30,620 >> Джейсон Hirschhorn: ( 1088 00:51:30,620 --> 00:51:31,650 >> Студент: " 1089 00:51:31,650 --> 00:51:32,630 >> Джейсон Hirschhorn: " 1090 00:51:32,630 --> 00:51:35,320 >> СТУДЕНТ:% S / N 1091 00:51:35,320 --> 00:51:37,220 >> Джейсон Hirschhorn:% S / N 1092 00:51:37,220 --> 00:51:38,420 >> Студент: " 1093 00:51:38,420 --> 00:51:40,640 >> Джейсон Hirschhorn:% S / N " 1094 00:51:40,640 --> 00:51:43,540 >> СТУДЕНТ: запятая, пробел имена. 1095 00:51:43,540 --> 00:51:44,350 >> Джейсон Hirschhorn: Космос - 1096 00:51:44,350 --> 00:51:46,300 >> СТУДЕНТ: О, я думаю, что же мы называем его здесь? 1097 00:51:46,300 --> 00:51:48,640 >> Джейсон Hirschhorn: Мы назвали его именем. 1098 00:51:48,640 --> 00:51:52,360 >> СТУДЕНТ: открывающая скобка, имя. 1099 00:51:52,360 --> 00:51:55,090 >> Джейсон Hirschhorn: открывающая скобка, имя. 1100 00:51:55,090 --> 00:51:55,850 >> СТУДЕНТ: Закрытое кронштейна. 1101 00:51:55,850 --> 00:51:56,490 >> Джейсон Hirschhorn: Закрытое кронштейна. 1102 00:51:56,490 --> 00:51:57,460 >> СТУДЕНТ:) 1103 00:51:57,460 --> 00:51:58,800 >> Джейсон Hirschhorn:) 1104 00:51:58,800 --> 00:51:59,440 >> СТУДЕНТ: точку с запятой. 1105 00:51:59,440 --> 00:52:00,410 >> Джейсон Hirschhorn: точку с запятой. 1106 00:52:00,410 --> 00:52:01,500 Хорошо, давайте экономить. 1107 00:52:01,500 --> 00:52:04,410 Давайте сделаем этот код. 1108 00:52:04,410 --> 00:52:06,365 Студентов. 1109 00:52:06,365 --> 00:52:07,100 Давайте запустим этот код. 1110 00:52:07,100 --> 00:52:08,480 Студентов. 1111 00:52:08,480 --> 00:52:11,630 Не. / Студента. . / Студентов. 1112 00:52:11,630 --> 00:52:12,870 Имя одного. 1113 00:52:12,870 --> 00:52:15,490 Мы скажем, Давида. 1114 00:52:15,490 --> 00:52:18,070 Назовите два, RJ. 1115 00:52:18,070 --> 00:52:20,561 Назовите три, Роб. 1116 00:52:20,561 --> 00:52:22,490 Назовите четыре, Лукас. 1117 00:52:22,490 --> 00:52:26,060 Назовите пять, Иосиф. 1118 00:52:26,060 --> 00:52:28,850 А потом она выводит Джозеф снова. 1119 00:52:28,850 --> 00:52:31,730 >> Итак, позвольте мне запустить это снова. 1120 00:52:31,730 --> 00:52:32,460 Позвольте мне сделать то же самое имена. 1121 00:52:32,460 --> 00:52:39,760 Дэвид, RJ, Роб, Лукас, Джозеф. 1122 00:52:39,760 --> 00:52:41,070 И это дало мне Давида, на этот раз. 1123 00:52:41,070 --> 00:52:43,030 Так я и сделал то же самое, но это дало мне другое дело, и это 1124 00:52:43,030 --> 00:52:45,410 потому что, конечно, мы просим для случайного имени. 1125 00:52:45,410 --> 00:52:50,950 Так что я думаю, основанный от меня блуждающий по комнате, что большинство людей 1126 00:52:50,950 --> 00:52:55,960 вероятно, получил первую правую часть, создании этого массива, а затем получить 1127 00:52:55,960 --> 00:52:56,430 все имена. 1128 00:52:56,430 --> 00:52:59,320 Я говорю о строках с 10 по 16. 1129 00:52:59,320 --> 00:53:02,150 Но линии 18 через 21, вероятно, некоторые вещи, которые вы раньше не видели, 1130 00:53:02,150 --> 00:53:03,750 так что давайте пойдем через эти. 1131 00:53:03,750 --> 00:53:10,390 >> Эта линия, srand время NULL по существу - 1132 00:53:10,390 --> 00:53:14,300 К сожалению, давайте пропустим вниз линии, RAND (). 1133 00:53:14,300 --> 00:53:17,320 Это дает вам случайное число, случайное целое. 1134 00:53:17,320 --> 00:53:19,630 И если вы попали человека Рэнд, которая Многие из вас сделали - 1135 00:53:19,630 --> 00:53:21,530 М-Н пространство R-N-D - 1136 00:53:21,530 --> 00:53:25,910 в терминале так, M-A-N пространства R--N-D, нажмите Enter. 1137 00:53:25,910 --> 00:53:30,490 Вы подошли бы к руководству и сможет прочитать, что Рэнд 1138 00:53:30,490 --> 00:53:34,260 команда выводит Num псевдослучайных байтов после посева случайное число 1139 00:53:34,260 --> 00:53:35,510 генератор один раз. 1140 00:53:35,510 --> 00:53:38,450 1141 00:53:38,450 --> 00:53:39,700 >> Так что это описание. 1142 00:53:39,700 --> 00:53:43,860 1143 00:53:43,860 --> 00:53:46,800 Это то, что Рэнд делает, дает Вы случайное число, когда 1144 00:53:46,800 --> 00:53:48,610 вы называете эту функцию. 1145 00:53:48,610 --> 00:53:53,140 К сожалению, это не совсем случайным потому что если вы просто позвоните случайной 1146 00:53:53,140 --> 00:53:55,970 без получения его некоторых семян, некоторые Отправной точкой, он всегда будет выбирать 1147 00:53:55,970 --> 00:53:59,100 тот же самый, и он использует формула Для определения следующего. 1148 00:53:59,100 --> 00:54:01,730 Так что если вы звоните Рэнд, это будет просто дать вам то же самое. 1149 00:54:01,730 --> 00:54:02,610 Это будет очень предсказуемым. 1150 00:54:02,610 --> 00:54:03,790 Это на самом деле не будет случайным. 1151 00:54:03,790 --> 00:54:09,610 >> Итак, что нам нужно сделать, за Маркуса Инструкция для меня, были семена Рэнд 1152 00:54:09,610 --> 00:54:13,810 с чем-то еще, что и Функция srand делает. 1153 00:54:13,810 --> 00:54:18,055 Это семена Рэнд с чем-то немного больше случайными, чем то же самое, и 1154 00:54:18,055 --> 00:54:23,360 он посева она со временем NULL, которое есть, только по соглашению, текущее 1155 00:54:23,360 --> 00:54:24,650 время в секундах. 1156 00:54:24,650 --> 00:54:29,790 >> Так что Вы предполагаете, что все это не собирается запустить код в точном 1157 00:54:29,790 --> 00:54:33,620 Вторая же, так что это безопасная ставка, что Время NULL будет различным 1158 00:54:33,620 --> 00:54:35,250 каждый раз, когда этот код выполняется. 1159 00:54:35,250 --> 00:54:39,020 Уверенностью сказать, что таким образом, будет srand Рэнд семян с чем-то другим каждый 1160 00:54:39,020 --> 00:54:39,990 один раз. 1161 00:54:39,990 --> 00:54:44,110 Так что по соглашению, когда мы хотим случайное число, мы пишем эту линию, 1162 00:54:44,110 --> 00:54:50,540 srand NULL время, чтобы дать нам гораздо больше случайных семян, а затем мы запускаем 1163 00:54:50,540 --> 00:54:52,080 Рэнд, которая дает нам случайное число. 1164 00:54:52,080 --> 00:54:52,840 Да? 1165 00:54:52,840 --> 00:54:54,140 >> СТУДЕНТ: Можете ли вы сказать, что Вы подразумеваете под семя? 1166 00:54:54,140 --> 00:54:55,630 >> Джейсон Hirschhorn: семена, как и в - 1167 00:54:55,630 --> 00:54:58,730 так Рэнд собирается забрать некоторые числа и он собирается использовать некоторые 1168 00:54:58,730 --> 00:55:00,060 формулу, чтобы получить там. 1169 00:55:00,060 --> 00:55:03,250 Так он собирается начать с чего-то , а затем превратить его в нечто, основанное 1170 00:55:03,250 --> 00:55:03,890 от этой формулы. 1171 00:55:03,890 --> 00:55:06,090 Если вы всегда дать ему то же самое, это всегда собирается превратить его в 1172 00:55:06,090 --> 00:55:06,790 то же самое. 1173 00:55:06,790 --> 00:55:08,450 Так что первое, что вы дать это семя. 1174 00:55:08,450 --> 00:55:10,880 Итак, вы хотите, чтобы дать ему что-то различных, чтобы начать с, и таким образом это 1175 00:55:10,880 --> 00:55:12,610 превратит его в нечто иное. 1176 00:55:12,610 --> 00:55:15,840 >> И, наконец, строка 20, это% называется 1177 00:55:15,840 --> 00:55:17,470 по модулю, и что сбивает с толку. 1178 00:55:17,470 --> 00:55:19,850 Это то, что немного здесь по-другому, что вы действительно не 1179 00:55:19,850 --> 00:55:22,240 сталкиваемся в реальной жизни математику. 1180 00:55:22,240 --> 00:55:27,430 Но по сути, когда вы берете гигантская номер, и вы разделите на С, что 1181 00:55:27,430 --> 00:55:29,482 происходит с остатком? 1182 00:55:29,482 --> 00:55:30,510 >> СТУДЕНТ: Это остается усеченным. 1183 00:55:30,510 --> 00:55:31,220 >> Джейсон Hirschhorn: Это остается усеченным. 1184 00:55:31,220 --> 00:55:35,200 Так что 20 делится на 3 и что? 1185 00:55:35,200 --> 00:55:37,950 Что это вернуться к Вы, 20, разделенные на 3. 1186 00:55:37,950 --> 00:55:39,260 К сожалению, 10 разделить на 3. 1187 00:55:39,260 --> 00:55:41,062 Что это вернется к вам? 1188 00:55:41,062 --> 00:55:41,540 >> СТУДЕНТ: [неразборчиво]. 1189 00:55:41,540 --> 00:55:45,170 >> Джейсон Hirschhorn: 10 разделить на 3 всего возвращает 3, а не 3 остаток 1. 1190 00:55:45,170 --> 00:55:51,490 Так что 10 по модулю 3 возвращает это только остаток, 1. 1191 00:55:51,490 --> 00:55:54,020 Так что если вы хотели узнать, что 10 разделенный на 3 на самом деле было, вы бы 1192 00:55:54,020 --> 00:55:58,950 сделать 10 разделить на 3, вы получите ваши 3, а затем вам нужно сделать 10 по модулю 3, и 1193 00:55:58,950 --> 00:55:59,860 Вы получили бы 1. 1194 00:55:59,860 --> 00:56:04,630 Таким образом, вы бы поняли, что 10 разделенный на 3 на 3, остаток 1. 1195 00:56:04,630 --> 00:56:07,990 >> И в этой линии, может быть рэнд любое целое число, по существу. 1196 00:56:07,990 --> 00:56:12,660 Так говорит модулю, разделите его на число, которое является в данном случае 5. 1197 00:56:12,660 --> 00:56:16,420 И если вы когда-нибудь разделить на число, целое всегда должна быть меньше, чем 1198 00:56:16,420 --> 00:56:17,590 это число. 1199 00:56:17,590 --> 00:56:22,200 Так что если вы деления на число 5, остаток всегда будет 1200 00:56:22,200 --> 00:56:23,396 от нуля до четырех. 1201 00:56:23,396 --> 00:56:25,520 Вот только, как математика работает. 1202 00:56:25,520 --> 00:56:29,700 >> Таким образом, большое количество moduloed по меньшей число всегда будет возвращаться 1203 00:56:29,700 --> 00:56:33,530 остатка и всегда будет возвращать некоторые число, которое меньше, чем число вы 1204 00:56:33,530 --> 00:56:34,693 деленное на. 1205 00:56:34,693 --> 00:56:37,920 Кто-нибудь есть какие-либо вопросы о модулю, потому что она придет очень, 1206 00:56:37,920 --> 00:56:41,450 очень удобно, поэтому я хочу, чтобы убедиться, все понимают это? 1207 00:56:41,450 --> 00:56:43,710 Круто. 1208 00:56:43,710 --> 00:56:46,000 И мы увидели, что эта программа работает. 1209 00:56:46,000 --> 00:56:50,280 Хорошо, как двигаться дальше. 1210 00:56:50,280 --> 00:56:52,970 >> Так что в следующий, мы собираемся идти в функций, и мы собираемся пойти 1211 00:56:52,970 --> 00:56:55,580 до конца этот материал довольно быстро, потому что я хочу, чтобы добраться до 1212 00:56:55,580 --> 00:56:57,150 аргументы командной строки. 1213 00:56:57,150 --> 00:57:00,330 Так функций по существу, как вы видели, черные ящики. 1214 00:57:00,330 --> 00:57:04,290 Они принимают вещи в называются параметрами, они делают что-то для них, либо 1215 00:57:04,290 --> 00:57:06,990 изменить их или создать некоторые побочные эффекты, И, наконец, они плюют 1216 00:57:06,990 --> 00:57:09,530 что-то, что является возвращаемого значения. 1217 00:57:09,530 --> 00:57:12,495 Кто-нибудь может дать мне хоть одну причину Поэтому мы будем использовать функции? 1218 00:57:12,495 --> 00:57:15,870 1219 00:57:15,870 --> 00:57:16,360 Кто-нибудь? 1220 00:57:16,360 --> 00:57:19,360 Одна из причин, почему мы должны использовать функции? 1221 00:57:19,360 --> 00:57:21,280 Любой? 1222 00:57:21,280 --> 00:57:22,700 Я увидел двух рук. 1223 00:57:22,700 --> 00:57:23,590 Что такое хорошая причина? 1224 00:57:23,590 --> 00:57:24,930 Маркус? 1225 00:57:24,930 --> 00:57:27,730 >> СТУДЕНТ: Если у вас есть, чтобы вызвать тот же самый блок кода несколько раз. 1226 00:57:27,730 --> 00:57:29,150 >> Джейсон Hirschhorn: Хорошо, если вам нужно чтобы вызвать тот же самый кусок 1227 00:57:29,150 --> 00:57:30,040 код несколько раз. 1228 00:57:30,040 --> 00:57:32,470 Джефф, у вас было по другой причине? 1229 00:57:32,470 --> 00:57:34,230 >> СТУДЕНТ: просто так, что вы можете написать меньше. 1230 00:57:34,230 --> 00:57:35,070 >> Джейсон Hirschhorn: Вы можете кодировать меньше. 1231 00:57:35,070 --> 00:57:35,320 Право. 1232 00:57:35,320 --> 00:57:38,720 Если вы хотите сделать что-то много - 1233 00:57:38,720 --> 00:57:41,720 В предыдущем коде, я мог бы написано получить строку в пять раз, но 1234 00:57:41,720 --> 00:57:44,620 цикл делает его красивее и Вы должны писать меньше кода. 1235 00:57:44,620 --> 00:57:45,760 Функции подобную идею. 1236 00:57:45,760 --> 00:57:48,720 Если я хочу сделать то же самое много, переместить его в функцию и называют это 1237 00:57:48,720 --> 00:57:49,610 функционировать каждый раз. 1238 00:57:49,610 --> 00:57:51,190 Это сделает это для вас. 1239 00:57:51,190 --> 00:57:53,740 Это отличный повод использовать функции. 1240 00:57:53,740 --> 00:57:54,870 >> Так анатомии функции. 1241 00:57:54,870 --> 00:57:56,670 Функция в основном выглядеть следующим образом. 1242 00:57:56,670 --> 00:57:59,280 Это начнем с возвращаемым типом, то вы получите имя. 1243 00:57:59,280 --> 00:58:02,935 Это займет аргументы, в противном случае Известно, что и параметры, а внутри 1244 00:58:02,935 --> 00:58:05,290 эти фигурные скобки, вы написать свой код. 1245 00:58:05,290 --> 00:58:07,150 >> Мы видели одну функцию много. 1246 00:58:07,150 --> 00:58:09,160 Это основные. 1247 00:58:09,160 --> 00:58:13,820 Вот основные накладывается на анатомии, что у меня было раньше. 1248 00:58:13,820 --> 00:58:15,525 Что десятичного прямо здесь означает? 1249 00:58:15,525 --> 00:58:18,534 1250 00:58:18,534 --> 00:58:19,450 Что десятичного значит? 1251 00:58:19,450 --> 00:58:21,026 Когда я пишу тап_п (недействительными). 1252 00:58:21,026 --> 00:58:21,740 >> СТУДЕНТ: Возвращение типа? 1253 00:58:21,740 --> 00:58:22,350 >> Джейсон Hirschhorn: Простите? 1254 00:58:22,350 --> 00:58:23,170 >> СТУДЕНТ: тип возвращаемого значения. 1255 00:58:23,170 --> 00:58:24,820 >> Джейсон Hirschhorn: Int является тип возвращаемого значения, точно. 1256 00:58:24,820 --> 00:58:25,870 Главная возвращает Int. 1257 00:58:25,870 --> 00:58:28,678 Что является основным? 1258 00:58:28,678 --> 00:58:29,510 >> СТУДЕНТ: Имя функции. 1259 00:58:29,510 --> 00:58:30,800 >> Джейсон Hirschhorn: главной из которых является имя функции. 1260 00:58:30,800 --> 00:58:31,510 Совершенно верно. 1261 00:58:31,510 --> 00:58:31,840 И пустоту? 1262 00:58:31,840 --> 00:58:33,190 Что такое пустота внутри скобок? 1263 00:58:33,190 --> 00:58:36,650 1264 00:58:36,650 --> 00:58:42,030 >> СТУДЕНТ: Это не займет любое внешнее значение. 1265 00:58:42,030 --> 00:58:42,930 >> Джейсон Hirschhorn: Так пустота - 1266 00:58:42,930 --> 00:58:43,240 право. 1267 00:58:43,240 --> 00:58:45,940 В скобках, положим параметры или аргументы 1268 00:58:45,940 --> 00:58:48,480 Функция принимает, что происходит внутри черного ящика. 1269 00:58:48,480 --> 00:58:50,760 Когда вы пишете пустоту, вы говорите, это ничего не берет дюйма 1270 00:58:50,760 --> 00:58:53,802 Так тап_п означает пустоту в основной Не принимая ничего дюйма 1271 00:58:53,802 --> 00:58:56,950 >> В фигурных скобках, у нас есть код, а затем мы видим, в конце 1272 00:58:56,950 --> 00:58:57,640 возвратить нуль. 1273 00:58:57,640 --> 00:59:01,220 Что означает возвращение нуля означает? 1274 00:59:01,220 --> 00:59:02,470 Ну, мы говорили о возвращаемого типа. 1275 00:59:02,470 --> 00:59:03,780 Главное необходимо вернуться Int. 1276 00:59:03,780 --> 00:59:04,960 Это то, что делает эту линию. 1277 00:59:04,960 --> 00:59:07,330 Она возвращает целое, нуль. 1278 00:59:07,330 --> 00:59:13,600 >> Конечно, мы не видели, что много потому что в программировании мы делаем с 1279 00:59:13,600 --> 00:59:16,070 Машины, которые мы делаем, и компиляторы мы используем наше время, вы 1280 00:59:16,070 --> 00:59:16,990 не нужно эту линию. 1281 00:59:16,990 --> 00:59:20,070 Главная особенный достаточно того, что он знает, когда вы дойдете до конца основного, просто 1282 00:59:20,070 --> 00:59:22,060 возвратить нуль, если все прошло хорошо. 1283 00:59:22,060 --> 00:59:25,560 В самом деле, если что-то пойдет не так, Основной часто возвращаются различные 1284 00:59:25,560 --> 00:59:28,500 число, означающее, что что-то пошло не так с вашей программой. 1285 00:59:28,500 --> 00:59:32,470 >> Так вообще, когда вы видите код, не пишите возвращения нулю, но это хорошо 1286 00:59:32,470 --> 00:59:34,770 знать, что это происходит за сцены, потому что когда вы пишете 1287 00:59:34,770 --> 00:59:36,370 другой тип функции Вы будете нуждаться, чтобы 1288 00:59:36,370 --> 00:59:37,400 включают обратной линии. 1289 00:59:37,400 --> 00:59:39,710 Если вы говорите, что я собираюсь вернуться Интеллект, вы должны 1290 00:59:39,710 --> 00:59:41,250 вернуть что-то написать. 1291 00:59:41,250 --> 00:59:45,160 Если вы говорите, пустота здесь на начала, силы основных пустоту, для 1292 00:59:45,160 --> 00:59:48,670 Например, то это не возвращаются ничего - пустота ничего не значит - 1293 00:59:48,670 --> 00:59:50,320 так что вам не нужно, что обратной линии. 1294 00:59:50,320 --> 00:59:53,610 Но вы когда-нибудь написать то, что не которые на данный тип возвращаемого значения, необходимо 1295 00:59:53,610 --> 00:59:55,950 строку, которая говорит возвращения, и вы нужно положить что-то там 1296 00:59:55,950 --> 00:59:57,650 , соответствующий типу. 1297 00:59:57,650 --> 00:59:58,900 Есть вопросы по этому поводу? 1298 00:59:58,900 --> 01:00:03,110 1299 01:00:03,110 --> 01:00:04,680 Сладкий. 1300 01:00:04,680 --> 01:00:05,930 >> Scope. 1301 01:00:05,930 --> 01:00:07,360 Это то, что мы затронули также. 1302 01:00:07,360 --> 01:00:10,720 Каждая переменная, как мы знаем, имеет некоторому объему, и это в основном 1303 01:00:10,720 --> 01:00:14,160 говорить о том, где переменная может или не может быть указан. 1304 01:00:14,160 --> 01:00:16,310 И я хотел бы сказать, что происходит в фигурных скобках остается 1305 01:00:16,310 --> 01:00:18,000 в фигурных скобках. 1306 01:00:18,000 --> 01:00:21,490 Так, например, если мы посмотрим на этот код, мы определяем глобальную переменную 1307 01:00:21,490 --> 01:00:24,510 за пределами основного, Интеллект, здесь на самом верху. 1308 01:00:24,510 --> 01:00:27,380 Мы называем другое Int внутри основного. 1309 01:00:27,380 --> 01:00:29,760 У нас есть еще несколько фигурные скобки, и мы вызываем другую INT A. 1310 01:00:29,760 --> 01:00:31,690 >> У нас есть три в коде. 1311 01:00:31,690 --> 01:00:32,550 Это не то же самое. 1312 01:00:32,550 --> 01:00:34,880 Я создал три различные переменные. 1313 01:00:34,880 --> 01:00:39,370 Тогда внутри этих внутренних фигурных подтяжки, я говорю = 4. 1314 01:00:39,370 --> 01:00:44,130 Какой в ​​том, что говоришь, Первый, второй, 1315 01:00:44,130 --> 01:00:47,045 или третий? 1316 01:00:47,045 --> 01:00:47,920 >> СТУДЕНТ: третий. 1317 01:00:47,920 --> 01:00:49,320 >> Джейсон Hirschhorn: Это говорят о третьей. 1318 01:00:49,320 --> 01:00:52,850 Все эти на самом деле может быть говорили в данном 1319 01:00:52,850 --> 01:00:58,660 Например, потому что их объем все идет в эти внутренние фигурные скобки. 1320 01:00:58,660 --> 01:01:02,360 Однако, когда вы называть вещи той же имя, есть то, что называется скрывается. 1321 01:01:02,360 --> 01:01:09,670 Таким образом, вы иметь дело только с или исправить или использовать последних переменной или один 1322 01:01:09,670 --> 01:01:11,090 ближайший к вам. 1323 01:01:11,090 --> 01:01:14,760 Так что здесь внутри, это третье ближе на этой линии, а = 4, так что это 1324 01:01:14,760 --> 01:01:16,550 влияет на третью. 1325 01:01:16,550 --> 01:01:19,890 И последняя строка, = 2, что является что говорить о, первый, второй, 1326 01:01:19,890 --> 01:01:20,805 или третий? 1327 01:01:20,805 --> 01:01:22,530 >> СТУДЕНТ: Второй. 1328 01:01:22,530 --> 01:01:24,430 >> Джейсон Hirschhorn: Это говорят о втором. 1329 01:01:24,430 --> 01:01:27,970 Конечно, третий находится ближе всего к в коде, но третий 1330 01:01:27,970 --> 01:01:30,200 не существует вне эти фигурные скобки. 1331 01:01:30,200 --> 01:01:32,650 Как только вы получите, что в фигурные скобки, это как он ушел, 1332 01:01:32,650 --> 01:01:33,570 по существу. 1333 01:01:33,570 --> 01:01:36,150 Таким образом, только два вы оставили те Первые два, и, конечно, в настоящее время 1334 01:01:36,150 --> 01:01:37,960 это ближе к второму. 1335 01:01:37,960 --> 01:01:39,410 >> Так что это хорошая вещь, чтобы помните о размахе. 1336 01:01:39,410 --> 01:01:42,900 Например, я уверен, что вы столкнулись это в то время как сделать петлю. 1337 01:01:42,900 --> 01:01:46,680 При инициализации переменной внутри делать во время цикла, а затем вы пытаетесь 1338 01:01:46,680 --> 01:01:50,360 доступ к нему на улице, вы, вероятно, получил несколько предупреждений, как это 1339 01:01:50,360 --> 01:01:51,680 переменная не существует. 1340 01:01:51,680 --> 01:01:54,370 Это потому, что сферы идеей, что вещи существуют только 1341 01:01:54,370 --> 01:01:55,320 внутри этих фигурных скобках. 1342 01:01:55,320 --> 01:01:59,320 Фигурные скобки как гигантский объятием Вы даете в коде, является еще одним 1343 01:01:59,320 --> 01:02:01,380 способ думать об этом. 1344 01:02:01,380 --> 01:02:05,280 >> Так что это еще одна функция, то для вас, ребята код, hellofunction.c. 1345 01:02:05,280 --> 01:02:08,240 Мы собираемся, чтобы пропустить на данный момент, но это то, что я призываю вас 1346 01:02:08,240 --> 01:02:09,740 практике по своему усмотрению. 1347 01:02:09,740 --> 01:02:12,510 Написать программу, в которой основной звонки другую функцию, которая выводит 1348 01:02:12,510 --> 01:02:13,750 приветствие для пользователя. 1349 01:02:13,750 --> 01:02:17,750 Это, по существу принимая привет мир и абстрагирования, что в Е 1350 01:02:17,750 --> 01:02:18,680 другой функции. 1351 01:02:18,680 --> 01:02:22,360 Но мы не собираемся сделать это прямо сейчас потому что мы не так много времени 1352 01:02:22,360 --> 01:02:23,350 оставить как мне бы хотелось. 1353 01:02:23,350 --> 01:02:26,250 >> Так что объявление функции. 1354 01:02:26,250 --> 01:02:28,080 Мы видели это раньше, а также. 1355 01:02:28,080 --> 01:02:31,180 Если вы хотите написать еще одну функцию, Вам нужно, чтобы компьютер и знаю 1356 01:02:31,180 --> 01:02:32,600 Основной знаем, что она существует. 1357 01:02:32,600 --> 01:02:37,140 Итак, что мы делаем, над главной, мы пишем возвращаемый тип, имя и 1358 01:02:37,140 --> 01:02:42,970 параметры, а затем внизу основного, здесь, мы фактически скопировать эту строку 1359 01:02:42,970 --> 01:02:45,080 , а затем написать фактический код. 1360 01:02:45,080 --> 01:02:50,990 Так что этот путь, если вы вызываете функцию в главном в верхней части, знает, что основная 1361 01:02:50,990 --> 01:02:54,650 привет существует, например, если бы я был позвонить привет, а затем он смотрит на 1362 01:02:54,650 --> 01:02:56,710 осуществление внизу. 1363 01:02:56,710 --> 01:02:59,680 Что произойдет, если я не включаю эту линии наверху, аннулированию привет (недействительными)? 1364 01:02:59,680 --> 01:03:03,820 1365 01:03:03,820 --> 01:03:06,560 >> Если я не включить эту строку и основные звонки Здравствуйте, я 1366 01:03:06,560 --> 01:03:07,640 собирается получить ошибку. 1367 01:03:07,640 --> 01:03:10,090 Я собираюсь получить сообщение об ошибке, потому что компилятор не знает, 1368 01:03:10,090 --> 01:03:13,070 что эта вещь существует. 1369 01:03:13,070 --> 01:03:16,680 Это подобно тому, почему делаем # включают cs50.h. 1370 01:03:16,680 --> 01:03:21,390 То, что существенным cs50.h делает ставит взять веревку там. 1371 01:03:21,390 --> 01:03:23,120 Он надевает получить Int там. 1372 01:03:23,120 --> 01:03:26,570 Это положить все эти функции Прототипы перед основной, так что когда 1373 01:03:26,570 --> 01:03:29,900 Вы называете их в основные, основные знает что эти вещи существуют. 1374 01:03:29,900 --> 01:03:31,630 Это то, что тех. Ч файлов делают. 1375 01:03:31,630 --> 01:03:33,850 И поэтому, если вы собираетесь сделать свой собственный функцию, вы должны убедиться, что 1376 01:03:33,850 --> 01:03:36,690 вы положили, что прототип там. 1377 01:03:36,690 --> 01:03:38,380 Есть вопросы об этом до сих пор? 1378 01:03:38,380 --> 01:03:41,630 1379 01:03:41,630 --> 01:03:42,490 >> Аргументы командной строки. 1380 01:03:42,490 --> 01:03:44,780 Это то, что мы собираемся закончить на, а затем, надеюсь, мы 1381 01:03:44,780 --> 01:03:46,180 втиснуть в некоторых PSET. 1382 01:03:46,180 --> 01:03:48,700 Я не знаю, если мы сможем выжать что из-за времени, но 1383 01:03:48,700 --> 01:03:51,560 с вами, ребята, которые находятся здесь, и если вы ребята хотят сказать после немного, мы 1384 01:03:51,560 --> 01:03:54,290 может пойти по ней снаружи. 1385 01:03:54,290 --> 01:03:56,020 Но мы собираемся, чтобы покончить с аргументы командной строки 1386 01:03:56,020 --> 01:03:58,510 В течение последних 15 минут. 1387 01:03:58,510 --> 01:03:59,930 Мы проснулись, Майкл? 1388 01:03:59,930 --> 01:04:01,180 Ты не спишь? 1389 01:04:01,180 --> 01:04:01,660 Хорошо. 1390 01:04:01,660 --> 01:04:03,760 Я не знаю, если вы спите с закрытыми глазами. 1391 01:04:03,760 --> 01:04:05,800 Было бы сложно. 1392 01:04:05,800 --> 01:04:07,180 >> Аргументы командной строки. 1393 01:04:07,180 --> 01:04:10,430 Те, являются одним из способов передачи информации в программу. 1394 01:04:10,430 --> 01:04:12,780 В конце концов, мы будем сталкиваться с другими. 1395 01:04:12,780 --> 01:04:15,600 Но по существу, мы собираемся, чтобы остановить написание тап_п (недействительными), если мы хотим 1396 01:04:15,600 --> 01:04:16,720 принять некоторые аргументы командной строки. 1397 01:04:16,720 --> 01:04:19,850 Мы собираемся написать эту вещь называется тап_п (INT ARGC, 1398 01:04:19,850 --> 01:04:22,430 Строка ARGV, кронштейны. 1399 01:04:22,430 --> 01:04:23,710 Это сбивает с толку. 1400 01:04:23,710 --> 01:04:26,070 Это очень много писем, которые не находятся в человека английском языке, поэтому мы собираемся 1401 01:04:26,070 --> 01:04:27,680 распаковать их прямо сейчас. 1402 01:04:27,680 --> 01:04:30,450 >> ARGC означает количество аргументов - 1403 01:04:30,450 --> 01:04:32,600 и опять же, все это будет будет доступна в Интернете - 1404 01:04:32,600 --> 01:04:34,280 и это число аргументов. 1405 01:04:34,280 --> 01:04:37,940 Argv обозначает вектор аргументов, и те сами аргументы. 1406 01:04:37,940 --> 01:04:38,830 Это массив строк. 1407 01:04:38,830 --> 01:04:40,880 Мы на самом деле видел массив строк до сегодняшнего дня. 1408 01:04:40,880 --> 01:04:44,390 Мы создали одну в последнем Программа, которую мы закодированы. 1409 01:04:44,390 --> 01:04:45,720 >> Итак, вот пример. 1410 01:04:45,720 --> 01:04:50,230 Я пишу. / Ohai CS50 разделе на моей командной строки. 1411 01:04:50,230 --> 01:04:54,090 ARGC в этом случае равно 3. 1412 01:04:54,090 --> 01:05:01,170 Argv кронштейн 0 Ohai, агду кронштейн 1 является CS50, агду подвеска 2 раздела. 1413 01:05:01,170 --> 01:05:05,160 Опять же, ARGC является число аргументов, и сбить вас с толку мало 1414 01:05:05,160 --> 01:05:08,710 бит, всегда считать название функции в качестве первого аргумента. 1415 01:05:08,710 --> 01:05:12,350 Таким образом, в этом случае, есть три аргументов, имя функции 1416 01:05:12,350 --> 01:05:14,590 а затем эти два, что я ввели дюйма 1417 01:05:14,590 --> 01:05:18,900 >> Далее, мы собираемся, чтобы спасти тех сами аргументы в ARGV. 1418 01:05:18,900 --> 01:05:22,690 И снова, как мы видели ранее, мы сделали это в последней программе мы написали. 1419 01:05:22,690 --> 01:05:27,110 Вы можете перемещаться по массиву Argv и получить эти строки. 1420 01:05:27,110 --> 01:05:28,830 Вот, по существу то, что мы сделали в в конце нашей последней программе. 1421 01:05:28,830 --> 01:05:33,190 Мы выбрали случайным именем, а затем отправился в все имена кронштейн и печатных 1422 01:05:33,190 --> 01:05:34,580 Строка из расположенных там. 1423 01:05:34,580 --> 01:05:39,870 1424 01:05:39,870 --> 01:05:43,670 >> На вершине только один массив, так строки сами массивы, как 1425 01:05:43,670 --> 01:05:46,320 говорили, вы можете иметь массивы массивов, которая является 1426 01:05:46,320 --> 01:05:48,530 по существу, что является ARGV. 1427 01:05:48,530 --> 01:05:51,370 Один из способов вы можете думать о это строк и столбцов. 1428 01:05:51,370 --> 01:05:54,750 Я могу нарисовать это прямо сейчас. 1429 01:05:54,750 --> 01:05:57,370 Так ARGV - 1430 01:05:57,370 --> 01:05:58,630 это не удаление. 1431 01:05:58,630 --> 01:05:59,880 Давайте нарисуем под Ohai. 1432 01:05:59,880 --> 01:06:09,320 1433 01:06:09,320 --> 01:06:12,490 >> Итак, если я писал в разделе Ohai CS50, Я собираюсь обрезать 1434 01:06:12,490 --> 01:06:14,520 раздел для этого примера. 1435 01:06:14,520 --> 01:06:29,026 Но по существу, моя многомерная Массив, Ohai CS50, 1436 01:06:29,026 --> 01:06:32,200 Мы собираемся сделать секту. 1437 01:06:32,200 --> 01:06:34,610 Так вот, я могу получить доступ - 1438 01:06:34,610 --> 01:06:40,930 1439 01:06:40,930 --> 01:06:45,710 если я приведу агду одно число - 1440 01:06:45,710 --> 01:06:46,390 это неправильно. 1441 01:06:46,390 --> 01:06:49,020 Что не так в этой схеме? 1442 01:06:49,020 --> 01:06:49,690 >> СТУДЕНТ: начинаются с нуля. 1443 01:06:49,690 --> 01:06:50,350 >> Джейсон Hirschhorn: оно должно начинать с нуля. 1444 01:06:50,350 --> 01:06:52,940 Я, вероятно, следует также вращать его, но так как я уже обращал на это, я 1445 01:06:52,940 --> 01:06:54,120 собирается оставить его там на данный момент. 1446 01:06:54,120 --> 01:06:55,160 Но это начинается с нуля. 1447 01:06:55,160 --> 01:06:56,410 Это верно. 1448 01:06:56,410 --> 01:06:58,980 1449 01:06:58,980 --> 01:07:00,120 Мне жаль, если этого мала. 1450 01:07:00,120 --> 01:07:01,370 Может вы, ребята отчасти видеть? 1451 01:07:01,370 --> 01:07:03,620 1452 01:07:03,620 --> 01:07:06,670 Поэтому, если я агду 0, я буду получить все Ohai. 1453 01:07:06,670 --> 01:07:08,555 Если я делаю агду 1, я получу все CS50. 1454 01:07:08,555 --> 01:07:10,720 Если я делаю агду 2, я получу все секты. 1455 01:07:10,720 --> 01:07:13,370 >> Но теперь, как мы уже говорили, струны сами являются массивами. 1456 01:07:13,370 --> 01:07:19,740 Так что же я могу сделать, я могу относиться к этому как многомерный массив, и я 1457 01:07:19,740 --> 01:07:24,190 может сделать что-то вдоль линий ARGV 0, 0, что дает мне только 1458 01:07:24,190 --> 01:07:25,400 Персонаж 0. 1459 01:07:25,400 --> 01:07:28,760 Argv 0, 1, что дает мне всего час. 1460 01:07:28,760 --> 01:07:33,960 Argv 1, 3, что дает мне просто 0 это здесь, в CS50. 1461 01:07:33,960 --> 01:07:37,690 >> Итак, потому что сами строки являются массивами, мы помещаем 1462 01:07:37,690 --> 01:07:38,540 что в другом массиве. 1463 01:07:38,540 --> 01:07:42,850 Теперь у нас есть массив массивов, и мы индексу, для чего наш первый массив и 1464 01:07:42,850 --> 01:07:44,840 Затем индекс в нашем втором массиве. 1465 01:07:44,840 --> 01:07:48,650 И, как и следовало ожидать, мы это сделаем, просто положить на этих двух - 1466 01:07:48,650 --> 01:07:51,760 мы делаем только квадратные скобки рядом друг с другом. 1467 01:07:51,760 --> 01:07:58,930 Таким образом, в этом примере ARGV 1 CS50 и ARGV 1, 2, как мы уже говорили, находится всего в 5. 1468 01:07:58,930 --> 01:08:02,120 Кто-нибудь есть какие-либо вопросы о многомерные массивы? 1469 01:08:02,120 --> 01:08:05,090 1470 01:08:05,090 --> 01:08:06,380 Вы, ребята, делаете удивительным. 1471 01:08:06,380 --> 01:08:07,750 Сладкий. 1472 01:08:07,750 --> 01:08:11,980 >> Итак, мы имеем другую программу прямо здесь, и это последнее, что мы 1473 01:08:11,980 --> 01:08:13,690 собирается сделать прямо сейчас. 1474 01:08:13,690 --> 01:08:18,160 Поэтому я хочу, чтобы вы написали программу, которая принимает полное имя пользователя, два и только 1475 01:08:18,160 --> 01:08:21,649 два аргумента командной строки, и, наконец, распечатать приветствие 1476 01:08:21,649 --> 01:08:24,180 пользователь, который помимо имени. 1477 01:08:24,180 --> 01:08:27,800 Так почему бы вам не взять три или четыре минут, чтобы сделать это, и тогда мы будем идти 1478 01:08:27,800 --> 01:08:29,870 над ним, как группа, и тогда мы будем заворачивать? 1479 01:08:29,870 --> 01:09:44,189 1480 01:09:44,189 --> 01:09:48,084 >> И опять же, здесь, когда мы говорим, принять полное имя пользователя в описании 1481 01:09:48,084 --> 01:09:54,473 данной проблемы, она должна быть командой строки, не пользуясь получить строку. 1482 01:09:54,473 --> 01:09:55,450 Да, Маркус? 1483 01:09:55,450 --> 01:09:58,260 >> Слушатель: То есть когда вы говорите, две команды строки, является то, что в дополнение к 1484 01:09:58,260 --> 01:10:00,000 . / бежать, или - 1485 01:10:00,000 --> 01:10:02,980 >> Джейсон Hirschhorn: Хороший вопрос. 1486 01:10:02,980 --> 01:10:05,995 Ли, в том числе. / Run, три аргументы командной строки. 1487 01:10:05,995 --> 01:10:08,550 1488 01:10:08,550 --> 01:10:11,320 Или в том числе. / Персонализированные, в этом случае, потому что это 1489 01:10:11,320 --> 01:10:12,360 Имя этого файла. 1490 01:10:12,360 --> 01:10:13,300 Так ARGC будет три. 1491 01:10:13,300 --> 01:10:19,480 Но я хочу только два аргумента данной программы. 1492 01:10:19,480 --> 01:10:20,400 Я должен указать, что. 1493 01:10:20,400 --> 01:10:23,380 Я сделаю, что изменения прежде чем я вывешиваю и пришлите их нам с вами, ребята. 1494 01:10:23,380 --> 01:10:32,747 1495 01:10:32,747 --> 01:10:34,740 >> СТУДЕНТ: Что делать, если вы есть второе имя? 1496 01:10:34,740 --> 01:10:36,800 >> Джейсон Hirschhorn: Если у вас есть средний имя, вам не повезло. 1497 01:10:36,800 --> 01:10:38,050 Мне очень жаль. 1498 01:10:38,050 --> 01:10:40,320 1499 01:10:40,320 --> 01:10:43,744 Или, если вы только идете Шакирой, Вы также не повезло. 1500 01:10:43,744 --> 01:10:55,672 1501 01:10:55,672 --> 01:10:56,425 Да? 1502 01:10:56,425 --> 01:11:00,760 >> Слушатель: То есть, когда люди не имеют cs50.h, не они определяют агду 1503 01:11:00,760 --> 01:11:03,450 как символ звезды агду? 1504 01:11:03,450 --> 01:11:05,160 Или это до сих пор называется строкой агду? 1505 01:11:05,160 --> 01:11:07,430 >> Джейсон Hirschhorn: Да. 1506 01:11:07,430 --> 01:11:10,480 Так строку, опять же, мы маску на то, что именно там происходит. 1507 01:11:10,480 --> 01:11:14,040 Это собирается быть распакованы, может быть, в среду, но в ближайшее время. 1508 01:11:14,040 --> 01:11:16,380 Это как дополнительные колеса. 1509 01:11:16,380 --> 01:11:18,370 Потому что по существу, это то же самое. 1510 01:11:18,370 --> 01:11:37,040 1511 01:11:37,040 --> 01:11:42,560 >> Итак, давайте еще минута, чтобы программа это, а затем мы рассмотрим 1512 01:11:42,560 --> 01:11:45,130 его в качестве группы, а затем как я сказал, завернуть. 1513 01:11:45,130 --> 01:11:47,770 И я думаю, что они все еще дополнительные конфеты, Так вы, ребята, будем надеяться, принять 1514 01:11:47,770 --> 01:11:49,790 , что, пожалуйста, или что. 1515 01:11:49,790 --> 01:12:20,380 1516 01:12:20,380 --> 01:12:22,560 >> Извините, если вы все еще пишу, но я хочу, чтобы нырнуть, и мы 1517 01:12:22,560 --> 01:12:24,010 можете закончить его вместе. 1518 01:12:24,010 --> 01:12:30,470 Так что я написал в, # включить cs50.h, # Включить stdio.h. 1519 01:12:30,470 --> 01:12:33,970 тап_п (недействительными), фигурной скобки, фигурные скобки, внутри три линии 1520 01:12:33,970 --> 01:12:38,760 псевдокод, принять полное имя пользователя, два и только два командной строки 1521 01:12:38,760 --> 01:12:42,670 Аргументы, распечатайте приветствие пользователь, который помимо имени. 1522 01:12:42,670 --> 01:12:45,810 >> Таким образом, первый, принимать полное имя пользователя. 1523 01:12:45,810 --> 01:12:47,290 Кто может помочь мне принять полное имя пользователя? 1524 01:12:47,290 --> 01:12:50,882 1525 01:12:50,882 --> 01:12:52,780 Как мне это сделать, что часть? 1526 01:12:52,780 --> 01:12:57,685 1527 01:12:57,685 --> 01:12:59,500 Ребята, вы делаете, что первая часть? 1528 01:12:59,500 --> 01:13:02,587 1529 01:13:02,587 --> 01:13:03,894 Возьмите полное имя пользователя. 1530 01:13:03,894 --> 01:13:05,860 Ну, для этого одной командной строке Аргумент, что я должен написать? 1531 01:13:05,860 --> 01:13:09,624 Что я должен изменить в мое объявление функции? 1532 01:13:09,624 --> 01:13:11,140 >> СТУДЕНТ: Вы не хотите его недействительным больше. 1533 01:13:11,140 --> 01:13:11,410 >> Джейсон Hirschhorn: Совершенно верно. 1534 01:13:11,410 --> 01:13:12,385 Я не хочу, чтобы это было пустоты. 1535 01:13:12,385 --> 01:13:13,630 Что я хочу, чтобы он был? 1536 01:13:13,630 --> 01:13:14,650 >> СТУДЕНТ: ARGC Int. 1537 01:13:14,650 --> 01:13:15,720 >> Джейсон Hirschhorn: ARGC Int. 1538 01:13:15,720 --> 01:13:17,430 >> СТУДЕНТ: String ARGV. 1539 01:13:17,430 --> 01:13:19,055 >> Джейсон Hirschhorn: String ARGV. 1540 01:13:19,055 --> 01:13:19,705 >> СТУДЕНТ: кронштейн, кронштейн. 1541 01:13:19,705 --> 01:13:20,070 >> Джейсон Hirschhorn: кронштейн, кронштейн. 1542 01:13:20,070 --> 01:13:21,780 Вот именно, и это на самом деле, как я иду, чтобы получить 1543 01:13:21,780 --> 01:13:22,820 полное имя пользователя. 1544 01:13:22,820 --> 01:13:24,070 Они собираются, чтобы положить его в там. 1545 01:13:24,070 --> 01:13:27,720 1546 01:13:27,720 --> 01:13:28,780 Так что одно делается. 1547 01:13:28,780 --> 01:13:30,780 Так что теперь я хочу два и только два аргументы командной строки. 1548 01:13:30,780 --> 01:13:35,065 Так Ной, что является одним из способов я могу проверить количество команд 1549 01:13:35,065 --> 01:13:36,315 строки у меня есть? 1550 01:13:36,315 --> 01:13:39,676 1551 01:13:39,676 --> 01:13:40,725 >> СТУДЕНТ: Вы делаете заявление, если. 1552 01:13:40,725 --> 01:13:42,270 >> Джейсон Hirschhorn: Если заявлении, именно так. 1553 01:13:42,270 --> 01:13:44,830 Что я хочу в качестве условия? 1554 01:13:44,830 --> 01:13:48,370 >> СТУДЕНТ: Если ARGC больше 3. 1555 01:13:48,370 --> 01:13:52,485 >> Джейсон Hirschhorn: Если ARGC больше 3. 1556 01:13:52,485 --> 01:13:58,430 Если ARGC больше 3, что мне делать? 1557 01:13:58,430 --> 01:13:59,400 >> СТУДЕНТ: возвращение 1. 1558 01:13:59,400 --> 01:14:01,856 >> Джейсон Hirschhorn: Возвращение 1. 1559 01:14:01,856 --> 01:14:04,050 Будет ли это гарантировать, что я есть два и только два? 1560 01:14:04,050 --> 01:14:07,280 1561 01:14:07,280 --> 01:14:07,820 >> СТУДЕНТ: Нет 1562 01:14:07,820 --> 01:14:13,110 Если агдс больше 3 и меньше 2. 1563 01:14:13,110 --> 01:14:17,770 >> Джейсон Hirschhorn: Если ARGC больше чем 3 и агдс меньше 2. 1564 01:14:17,770 --> 01:14:21,540 Что один из способов я могу написать это всего одной линии, или без использования которые 1565 01:14:21,540 --> 01:14:23,890 и логический оператор? 1566 01:14:23,890 --> 01:14:25,942 >> СТУДЕНТ: Это не равно 2. 1567 01:14:25,942 --> 01:14:28,790 >> Джейсон Hirschhorn: Если ARGC не равно 2. 1568 01:14:28,790 --> 01:14:29,260 Именно так. 1569 01:14:29,260 --> 01:14:34,890 Таким образом, если агдс не равно 2, то даст мне эту программу, 1570 01:14:34,890 --> 01:14:37,250 персонализированный, когда я запускаю его, и , что даст мне сколько 1571 01:14:37,250 --> 01:14:38,740 аргументы командной строки? 1572 01:14:38,740 --> 01:14:42,110 Сколько я буду проверить? 1573 01:14:42,110 --> 01:14:42,370 >> Извините. 1574 01:14:42,370 --> 01:14:43,400 Позвольте мне перефразировать это. 1575 01:14:43,400 --> 01:14:46,620 Если ARGC = 2, как много сделал Пользователь написать в линию? 1576 01:14:46,620 --> 01:14:47,500 >> СТУДЕНТ: Один. 1577 01:14:47,500 --> 01:14:49,120 >> Джейсон Hirschhorn: Только один. 1578 01:14:49,120 --> 01:14:50,430 Поэтому, прежде чем, вы были правы, Ной. 1579 01:14:50,430 --> 01:14:52,192 Что мне на самом деле нужно поставить там? 1580 01:14:52,192 --> 01:14:53,640 >> СТУДЕНТ: Это равняется 3. 1581 01:14:53,640 --> 01:14:55,970 >> Джейсон Hirschhorn: ARGC не равно 3. 1582 01:14:55,970 --> 01:15:00,250 Я хочу равным 3, потому что я хочу персонализированные плюс два других. 1583 01:15:00,250 --> 01:15:02,560 Так что если ARGC не равно 3, возвращают 1. 1584 01:15:02,560 --> 01:15:04,475 Почему ты сказал возвращать 1? 1585 01:15:04,475 --> 01:15:06,180 >> СТУДЕНТ: Потому, что означает, что это не так. 1586 01:15:06,180 --> 01:15:08,420 >> Джейсон Hirschhorn: Это означает, что это неправильно, А это что собираетесь делать? 1587 01:15:08,420 --> 01:15:10,360 >> СТУДЕНТ: Re-предложит пользователю. 1588 01:15:10,360 --> 01:15:11,940 >> Джейсон Hirschhorn: Это будет бросить программы, так что придется побегать 1589 01:15:11,940 --> 01:15:14,520 снова, но мы ничего не имею сюда, чтобы попросить их снова. 1590 01:15:14,520 --> 01:15:14,840 Я не просил за это. 1591 01:15:14,840 --> 01:15:15,990 Так что это совершенно верно. 1592 01:15:15,990 --> 01:15:17,680 Возвращение 1 просто выход из программы. 1593 01:15:17,680 --> 01:15:18,520 Великий. 1594 01:15:18,520 --> 01:15:21,600 >> И распечатать приветствием к пользователю , что помимо имени. 1595 01:15:21,600 --> 01:15:24,010 Как я могу это сделать? 1596 01:15:24,010 --> 01:15:25,990 Анна? 1597 01:15:25,990 --> 01:15:26,580 >> СТУДЕНТ: Printf. 1598 01:15:26,580 --> 01:15:27,785 >> Джейсон Hirschhorn: Printf. 1599 01:15:27,785 --> 01:15:28,640 >> СТУДЕНТ: (" 1600 01:15:28,640 --> 01:15:30,460 >> Джейсон Hirschhorn: ( 1601 01:15:30,460 --> 01:15:31,600 >> Студент: "привет 1602 01:15:31,600 --> 01:15:33,210 >> Джейсон Hirschhorn: "привет 1603 01:15:33,210 --> 01:15:34,800 >> СТУДЕНТ:% S 1604 01:15:34,800 --> 01:15:37,230 >> Джейсон Hirschhorn:% S 1605 01:15:37,230 --> 01:15:38,840 >> СТУДЕНТ: / N 1606 01:15:38,840 --> 01:15:41,030 >> Джейсон Hirschhorn: / N 1607 01:15:41,030 --> 01:15:43,120 >> Студент: ", 1608 01:15:43,120 --> 01:15:45,130 >> Джейсон Hirschhorn: ", 1609 01:15:45,130 --> 01:15:46,620 >> СТУДЕНТ: Argv 1610 01:15:46,620 --> 01:15:47,080 >> Джейсон Hirschhorn: Простите? 1611 01:15:47,080 --> 01:15:47,750 >> СТУДЕНТ: Argv 1612 01:15:47,750 --> 01:15:48,840 >> Джейсон Hirschhorn: Argv 1613 01:15:48,840 --> 01:15:50,190 >> СТУДЕНТ: Квадратные скобки 1. 1614 01:15:50,190 --> 01:15:51,230 >> Джейсон Hirschhorn: Квадратные скобки? 1615 01:15:51,230 --> 01:15:51,870 >> СТУДЕНТ: 1. 1616 01:15:51,870 --> 01:15:54,050 >> Джейсон Hirschhorn: 1. 1617 01:15:54,050 --> 01:15:55,850 >> СТУДЕНТ: А) точка с запятой. 1618 01:15:55,850 --> 01:15:58,290 >> Джейсон Hirschhorn:) запятой. 1619 01:15:58,290 --> 01:16:00,250 Теперь давайте посмотрим на это. 1620 01:16:00,250 --> 01:16:03,730 Сделать персонализированным. 1621 01:16:03,730 --> 01:16:06,392 . / Персонализированные. 1622 01:16:06,392 --> 01:16:07,420 Он только что ушел. 1623 01:16:07,420 --> 01:16:10,390 Почему это бросить? 1624 01:16:10,390 --> 01:16:11,310 >> СТУДЕНТ: Вы не указали никаких аргументов. 1625 01:16:11,310 --> 01:16:12,560 >> Джейсон Hirschhorn: Я не положить любые аргументы дюйма 1626 01:16:12,560 --> 01:16:16,360 1627 01:16:16,360 --> 01:16:16,920 Выглядит здорово. 1628 01:16:16,920 --> 01:16:18,130 Вы, ребята, прибил его. 1629 01:16:18,130 --> 01:16:22,420 Итак, еще раз, вы вошли в ARGV и вы проверяется в начале ARGC. 1630 01:16:22,420 --> 01:16:24,390 Это два важных вещей, чтобы помнить. 1631 01:16:24,390 --> 01:16:29,250 Таким образом, в наших последних двух минут, прежде чем мы уехать, мы не денется PSET два, но 1632 01:16:29,250 --> 01:16:33,585 как я уже сказал, если вы хотите остаться после в течение 10 минут, я был бы он рад пойти 1633 01:16:33,585 --> 01:16:35,710 более с вами, ребята логики Проблема для этих множеств. 1634 01:16:35,710 --> 01:16:37,930 У нас было много, чтобы покрыть сегодня так что я не добраться до них. 1635 01:16:37,930 --> 01:16:39,820 Вообще, я хотел бы включить что в конце. 1636 01:16:39,820 --> 01:16:42,150 Поэтому если вы хотите, чтобы остаться, остаться на 10 минут. 1637 01:16:42,150 --> 01:16:42,990 Мы сделаем это. 1638 01:16:42,990 --> 01:16:46,250 >> Тогда, как я уже говорил в начале, PSET нулем и единицей, то мы получим, что 1639 01:16:46,250 --> 01:16:48,040 обратной связи с Вами можно скорее. 1640 01:16:48,040 --> 01:16:51,260 Цель состоит в том, чтобы получить обратную связь PSET одной, часть комментариев, 1641 01:16:51,260 --> 01:16:52,850 Перед PSET два объясняется. 1642 01:16:52,850 --> 01:16:56,730 Так что если вы допустили несколько ошибок или Стилистически вещи могли быть лучше, 1643 01:16:56,730 --> 01:17:01,330 вы будете иметь эту информацию, чтобы вы не будет делать то же самое в PSET два. 1644 01:17:01,330 --> 01:17:06,140 И тогда в будущем, вы получите все ваши отзывы и комментарии PSET 1645 01:17:06,140 --> 01:17:08,190 еще до следующего объясняется. 1646 01:17:08,190 --> 01:17:12,695 >> Наконец, если я мог бы поставить в другой разъем для обратной связи. 1647 01:17:12,695 --> 01:17:13,935 Это ваш первый раздел. 1648 01:17:13,935 --> 01:17:15,920 Это был мой первый раздел обучение в этом году. 1649 01:17:15,920 --> 01:17:16,930 Отправляйтесь туда. 1650 01:17:16,930 --> 01:17:19,800 Написать материал, хорошее и плохое, и я буду использовать его, чтобы сделать 1651 01:17:19,800 --> 01:17:21,320 раздел лучше в следующий раз. 1652 01:17:21,320 --> 01:17:24,870 И последнее, опять же, если вам нужно ничего, дайте мне знать. 1653 01:17:24,870 --> 01:17:26,410 Я более чем счастлив помочь вам, ребята. 1654 01:17:26,410 --> 01:17:28,420 Если вы просто хотите конфету, я будет иметь дополнительные конфеты. 1655 01:17:28,420 --> 01:17:29,800 Я счастлив, чтобы привести его к вам. 1656 01:17:29,800 --> 01:17:31,190 >> Это собирается быть удивительным конечно. 1657 01:17:31,190 --> 01:17:34,900 Это один из самых, если не самый мой любимый Конечно, я взял за всю свою жизнь, 1658 01:17:34,900 --> 01:17:37,220 и я надеюсь, что это будет то, что замечательно для вас. 1659 01:17:37,220 --> 01:17:40,090 Так что я хочу сделать все, что в моих силах чтобы сделать его, что огромная для вас. 1660 01:17:40,090 --> 01:17:46,590 Я собираюсь отправить электронную почту, если Вы в моей секции или Ной, и 1661 01:17:46,590 --> 01:17:50,310 собираюсь попробовать и запланировать с каждым из вы, ребята, время, чтобы проверить в более чем 1662 01:17:50,310 --> 01:17:53,820 ближайшие пару недель, чтобы я мог получить ощущение того, что ваша CS фон, 1663 01:17:53,820 --> 01:17:58,170 и это также поможет мне приспособить эти разделам в соответствии с Вашими потребностями. 1664 01:17:58,170 --> 01:17:59,740 Так вот что у меня выстроились. 1665 01:17:59,740 --> 01:18:02,260 Опять же, я увижу тебя на улице Если вы хотите быть там. 1666 01:18:02,260 --> 01:18:03,700 Это было недели две секции. 1667 01:18:03,700 --> 01:18:04,950 Спасибо, ребята так много. 1668 01:18:04,950 --> 01:18:09,067