1 00:00:07,275 --> 00:00:08,980 [Powered by Google Translate] LEXI Росс: Добре, привіт всім. 2 00:00:08,980 --> 00:00:11,930 Ласкаво просимо в перший CS50 supersection. 3 00:00:11,930 --> 00:00:13,800 Це буде тільки тиждень supersections. 4 00:00:13,800 --> 00:00:17,130 Після цього ви будете йти до регулярних розділ з 5 00:00:17,130 --> 00:00:18,530 призначений TF. 6 00:00:18,530 --> 00:00:20,280 Але на цьому тижні, ми робимо це в трохи іншому 7 00:00:20,280 --> 00:00:23,530 Формат, хоча фактична форматі, як вона збирається піти 8 00:00:23,530 --> 00:00:25,950 на найближчі півтори години або близько того, буде досить 9 00:00:25,950 --> 00:00:27,700 подібно до того, що ви будете бачити на 10 00:00:27,700 --> 00:00:29,350 Інша частина семестру. 11 00:00:29,350 --> 00:00:33,630 >> Так що ми збираємося зробити, це почати з переходом 12 00:00:33,630 --> 00:00:35,920 розділ частини вашою проблемою набору. 13 00:00:35,920 --> 00:00:38,940 Так що якщо ви читали над безліччю р, яке, ми сподіваємося, у вас є, 14 00:00:38,940 --> 00:00:41,120 Ви побачите, що є частина під назвою "Секція 15 00:00:41,120 --> 00:00:43,190 Питання ", і вони призначені для пішла 16 00:00:43,190 --> 00:00:44,180 більше у вашій секції. 17 00:00:44,180 --> 00:00:47,510 Таким чином, у вас є перевага, перебуваючи тут в тому, що ви отримаєте 18 00:00:47,510 --> 00:00:50,680 перейти на ці більш концептуальні питання, засновані. 19 00:00:50,680 --> 00:00:52,780 І після того як ми це зробимо, ми будемо йти протягом останніх двох 20 00:00:52,780 --> 00:00:55,070 розділ питань, які є більш занурень 21 00:00:55,070 --> 00:00:56,330 в кодуванні типів питань. 22 00:00:56,330 --> 00:00:58,470 Таким чином, ми фактично будемо мати вас, хлопці зайняти декілька 23 00:00:58,470 --> 00:01:01,040 хвилин з кожного питання, спробувати вирішити їх за своїм розсудом, і 24 00:01:01,040 --> 00:01:03,590 Потім ми збираємося, щоб об'єднатися з використанням нових CS50 25 00:01:03,590 --> 00:01:06,670 Простору інструмент і перейти на відповіді, ви всі 26 00:01:06,670 --> 00:01:09,130 Правильний код для ознайомлення. 27 00:01:09,130 --> 00:01:10,790 >> Таким чином, пара оголошень. 28 00:01:10,790 --> 00:01:12,690 Не забувайте, що є офіс годин щоночі це 29 00:01:12,690 --> 00:01:16,500 тиждень в Annenberg від 8 до 11, так що взяти 30 00:01:16,500 --> 00:01:17,410 Перевагою з них. 31 00:01:17,410 --> 00:01:21,660 А також, не починайте р встановлений надто пізно на тиждень. 32 00:01:21,660 --> 00:01:24,640 Почати сьогодні ввечері або завтра ввечері в останній. 33 00:01:24,640 --> 00:01:26,770 Ви будете шкодувати про це, якщо ви будете чекати занадто довго, щоб почати 34 00:01:26,770 --> 00:01:27,970 і зіткнутися з проблемами. 35 00:01:27,970 --> 00:01:31,160 Так прийміть наші поради і, безумовно, рано. 36 00:01:31,160 --> 00:01:32,860 Це буде хороший спосіб, щоб почати роботу з 37 00:01:32,860 --> 00:01:34,450 це розділ питань. 38 00:01:34,450 --> 00:01:35,810 Так що я Lexi, до речі. 39 00:01:35,810 --> 00:01:36,740 Я TF. 40 00:01:36,740 --> 00:01:38,455 І це Ден, який також TF. 41 00:01:38,455 --> 00:01:38,940 Ден Бредлі: Гей, хлопці. 42 00:01:38,940 --> 00:01:39,770 LEXI Росс: І він збирається отримати 43 00:01:39,770 --> 00:01:41,370 почав з запитань. 44 00:01:41,370 --> 00:01:42,410 >> Ден Бредлі: Все правильно. 45 00:01:42,410 --> 00:01:46,730 Так що я збираюся просто ввести пару маленьких компіляторів 46 00:01:46,730 --> 00:01:50,350 питання, які ми збираємося поговорити і просто пройти через 47 00:01:50,350 --> 00:01:54,550 свого роду концептуальні ідеї, які ми повинні реально працювати 48 00:01:54,550 --> 00:01:59,120 коді, або в приладі або з нашими роду підроблені 49 00:01:59,120 --> 00:02:01,520 техніка, запустіть CS50 і Spaces. 50 00:02:01,520 --> 00:02:05,550 Так що давайте просто побачити, якщо хтось в аудиторії має жодного уявлення 51 00:02:05,550 --> 00:02:07,450 про що ми говоримо. 52 00:02:07,450 --> 00:02:11,130 >> Так що ж таке бібліотека в контексті коду? 53 00:02:11,130 --> 00:02:13,680 Будь-який, є які-небудь ідеї? 54 00:02:13,680 --> 00:02:14,250 Добре. 55 00:02:14,250 --> 00:02:15,770 Sweet. 56 00:02:15,770 --> 00:02:17,876 АУДИТОРІЯ: Як запас функцій, що хтось інший 57 00:02:17,876 --> 00:02:19,690 вже запрограмований, що ми можемо побудувати? 58 00:02:19,690 --> 00:02:20,230 Ден Бредлі: Абсолютно вірно. 59 00:02:20,230 --> 00:02:24,180 Таким чином, бібліотека є наявність функції, що хтось інший 60 00:02:24,180 --> 00:02:27,100 вже запрограмований, що ми не повинні 61 00:02:27,100 --> 00:02:28,480 повторно реалізувати себе. 62 00:02:28,480 --> 00:02:32,140 Тому у нас є такі речі, як стандартна бібліотека вводу / виводу, 63 00:02:32,140 --> 00:02:38,720 cs50.h бібліотеки, що є речі, які світ, 64 00:02:38,720 --> 00:02:41,870 Інтернет, персонал зробив те, що робить нашу 65 00:02:41,870 --> 00:02:43,670 Живе простіше, так як кодерів. 66 00:02:43,670 --> 00:02:46,410 Отже, як ви друкувати речі на екран? 67 00:02:46,410 --> 00:02:49,910 Я поняття не маю, Printf робить це для мене. 68 00:02:49,910 --> 00:02:52,290 Це те, що хтось інший вже зробив це 69 00:02:52,290 --> 00:02:54,640 дивним і працює досить добре. 70 00:02:54,640 --> 00:02:55,440 >> Добре. 71 00:02:55,440 --> 00:02:59,160 Таким чином, щоб використовувати бібліотеки, з іншого боку, однак, у вас є 72 00:02:59,160 --> 00:03:02,450 насправді робити деякі додаткові речі з вашим кодом. 73 00:03:02,450 --> 00:03:07,400 Так що вам доведеться використовувати щось на зразок цього # включити. 74 00:03:07,400 --> 00:03:09,190 Що ж це зробити? 75 00:03:09,190 --> 00:03:13,010 Яку роль, що гри, коли у вас в програмі? 76 00:03:13,010 --> 00:03:15,128 АУДИТОРІЯ: Він дозволяє використовувати будь-які функції, 77 00:03:15,128 --> 00:03:16,040 [Нерозбірливо] 78 00:03:16,040 --> 00:03:19,515 Бібліотека, просто за допомогою визначень, які вже 79 00:03:19,515 --> 00:03:20,425 [Нерозбірливо] 80 00:03:20,425 --> 00:03:20,880 бібліотеки. 81 00:03:20,880 --> 00:03:21,680 Ден Бредлі: Добре. 82 00:03:21,680 --> 00:03:25,930 Вона дозволяє тягнути бібліотеку функцій в коді, але 83 00:03:25,930 --> 00:03:29,320 він робить це таким чином, що це не зовсім те ж, що, як 84 00:03:29,320 --> 00:03:32,020 -Lcs50, який ми отримаємо в хвилину. 85 00:03:32,020 --> 00:03:36,010 Він просто дозволяє компілятору знати, що агов, є такі 86 00:03:36,010 --> 00:03:40,550 функції, які збираються приїхати в ваш код. 87 00:03:40,550 --> 00:03:44,240 Майте на увазі, що, якщо вони не в повній мірі описані в коді 88 00:03:44,240 --> 00:03:47,110 ось перед вами, є деякі функції бібліотеки 89 00:03:47,110 --> 00:03:49,510 , Яка буде піклуватися про нього. 90 00:03:49,510 --> 00:03:53,010 >> Таким чином, у разі Printf, що ми підемо за пару 91 00:03:53,010 --> 00:03:56,400 Якраз сьогодні, це стандартна бібліотека вводу / виводу. 92 00:03:56,400 --> 00:04:00,010 Тому, хоча я не визначають Printf де завгодно у моєму коді ніколи, 93 00:04:00,010 --> 00:04:05,340 стандартні I / O піклується про це для мене, і я зроблю # включити 94 00:04:05,340 --> 00:04:13,780 stdio.h, і він буде тягнути в ці функції, які я 95 00:04:13,780 --> 00:04:15,400 не все визначено. 96 00:04:15,400 --> 00:04:20,019 Так в чому ж різниця, то між цим # включити 97 00:04:20,019 --> 00:04:22,320 і-lcs50? 98 00:04:22,320 --> 00:04:25,890 Що-lcs50 робити, коли я передати його 99 00:04:25,890 --> 00:04:29,430 компілятора, як Clang? 100 00:04:29,430 --> 00:04:32,670 Будь-який, є які-небудь ідеї? 101 00:04:32,670 --> 00:04:34,631 Добре. 102 00:04:34,631 --> 00:04:35,605 Так? 103 00:04:35,605 --> 00:04:39,020 АУДИТОРІЯ: він дозволяє отримати доступ до CS50 бібліотеку? 104 00:04:39,020 --> 00:04:42,120 Ден Бредлі: Це дозволяє отримати доступ до CS50 бібліотеки в 105 00:04:42,120 --> 00:04:46,610 що він говорить компілятору, Clang, що агов, це де 106 00:04:46,610 --> 00:04:50,930 Ви дійсно піти, щоб отримати ці функції. 107 00:04:50,930 --> 00:04:55,010 Таким чином, # включити каже, що є 108 00:04:55,010 --> 00:04:58,510 ці функції де-небудь. 109 00:04:58,510 --> 00:05:02,680 -Lcs50 говорить, йдіть до цього місця у вашому комп'ютері - 110 00:05:02,680 --> 00:05:05,770 це CS50 бібліотеці - 111 00:05:05,770 --> 00:05:09,990 і потягніть вгору фактичний код для цих функцій. 112 00:05:13,110 --> 00:05:14,370 Чи має це сенс, все? 113 00:05:14,370 --> 00:05:17,930 >> Так що всі ці речі, які, щоб допомогти вашим компілятором 114 00:05:17,930 --> 00:05:22,490 поряд зі створенням коду реально працювати. 115 00:05:22,490 --> 00:05:23,350 Швидкий питання. 116 00:05:23,350 --> 00:05:24,870 Є люди знають, що компілятор? 117 00:05:28,220 --> 00:05:29,700 Гарне почуття? 118 00:05:29,700 --> 00:05:33,160 Це в основному приймаючи написав код, який у вас є, 119 00:05:33,160 --> 00:05:35,380 перетворивши його в двійковому, перетворення в машинний код, 120 00:05:35,380 --> 00:05:39,370 так що ваш комп'ютер дійсно може це зрозуміти. 121 00:05:39,370 --> 00:05:43,330 І, не мудруючи лукаво, ми збираємося піти в більш 122 00:05:43,330 --> 00:05:46,640 фактичне кодування вправи, які ви, хлопці, повеселимося 123 00:05:46,640 --> 00:05:49,850 встромити свої зуби в і Lexi підуть з цього приводу. 124 00:05:49,850 --> 00:05:51,110 >> LEXI Росс: Добре. 125 00:05:51,110 --> 00:05:51,455 Awesome. 126 00:05:51,455 --> 00:05:55,470 Так що ми збираємося перейти на два питання. 127 00:05:55,470 --> 00:06:01,170 Таким чином, перша людина насправді, ви можете бачити, це трохи 128 00:06:01,170 --> 00:06:03,240 невеликі прямо тут, але по суті він просить вас 129 00:06:03,240 --> 00:06:04,930 написати програму, прийняти деякі користувальницького введення. 130 00:06:04,930 --> 00:06:09,058 Я не впевнений, чому там чорний квадрат там. 131 00:06:09,058 --> 00:06:10,000 Це загадкове. 132 00:06:10,000 --> 00:06:12,180 Це повинно бути прекрасно, хоча. 133 00:06:12,180 --> 00:06:16,000 Таким чином, він хоче вас прийняти введення користувача в градусах Цельсія, конвертувати, що 134 00:06:16,000 --> 00:06:18,270 за Фаренгейтом, а потім сказати користувачеві, що температура 135 00:06:18,270 --> 00:06:19,720 буде в градусах за Фаренгейтом. 136 00:06:19,720 --> 00:06:25,530 Таким чином, ви можете побачити приклад вводу / виводу послідовності тут. 137 00:06:25,530 --> 00:06:28,770 Користувач входів - після того, як за Цельсієм, сміливі відноситься до 138 00:06:28,770 --> 00:06:29,300 користувальницького введення. 139 00:06:29,300 --> 00:06:32,460 Таким чином, користувач вводить 100, і програма виходу 140 00:06:32,460 --> 00:06:34,530 Fahrenheit, 212,0. 141 00:06:34,530 --> 00:06:36,700 І важливою відмінністю цієї програми є те, що ми 142 00:06:36,700 --> 00:06:41,770 буде мати тільки одного знака після коми, так що подивимося, як це зробити 143 00:06:41,770 --> 00:06:43,020 , Що добре. 144 00:06:43,020 --> 00:06:45,780 І інша справа, слід зазначити, що ми використовуємо a.out 145 00:06:45,780 --> 00:06:49,960 тому що Clang, компілятор, автоматично іменує його двійковий 146 00:06:49,960 --> 00:06:53,460 файли a.out, якщо не вказати його з певним прапором, щоб дати 147 00:06:53,460 --> 00:06:55,410 це від свого імені, але зараз ми просто будемо використовувати 148 00:06:55,410 --> 00:06:57,070 замовчуванням a.out. 149 00:06:57,070 --> 00:07:01,320 >> Так що давайте насправді займе кілька хвилин і спробуйте записати 150 00:07:01,320 --> 00:07:02,570 код для цього самі. 151 00:07:05,900 --> 00:07:07,380 Так що це 4:15. 152 00:07:07,380 --> 00:07:10,470 Таким чином, в 4:20, ми збираємося повернутися і - о, так. 153 00:07:10,470 --> 00:07:12,960 Простору. 154 00:07:12,960 --> 00:07:13,980 Cool. 155 00:07:13,980 --> 00:07:16,500 Це зразок того, що ми називаємо скелет коду в тому, що 156 00:07:16,500 --> 00:07:19,870 це скелет, але ви повинні заповнити м'ясом 157 00:07:19,870 --> 00:07:21,590 Програма насправді змусити його працювати. 158 00:07:21,590 --> 00:07:25,980 Таким чином, ви можете бачити # включити директиви туди, щоб включити 159 00:07:25,980 --> 00:07:28,040 CS50 і STDIO. 160 00:07:28,040 --> 00:07:32,010 Я зазначив у коментарі фактичної формули для перетворення 161 00:07:32,010 --> 00:07:35,310 Цельсія в градуси Фаренгейта, у випадку, якщо ви не пам'ятаєте, з високою 162 00:07:35,310 --> 00:07:36,740 Школа науки і ще багато чого. 163 00:07:36,740 --> 00:07:38,450 І тоді це всього лише скелет 164 00:07:38,450 --> 00:07:39,450 фактичні основні функції. 165 00:07:39,450 --> 00:07:41,680 Таким чином, все, що ви пишете буде йти тут. 166 00:07:45,640 --> 00:07:50,490 А для того, щоб дійсно дістатися до цього місця - 167 00:07:50,490 --> 00:07:56,105 так CS50 простору можна отримати за допомогою цього URL, який Ден 168 00:07:56,105 --> 00:08:02,505 збирається писати на дошці, і я буду диктувати, а також. 169 00:08:02,505 --> 00:08:12,093 Ден Бредлі: cs50.net/spaces-- 170 00:08:12,093 --> 00:08:12,580 LEXI РОСС: / qWLc - 171 00:08:12,580 --> 00:08:13,830 Мені дуже шкода, у. 172 00:08:18,806 --> 00:08:20,790 Ден Бредлі: Y?. 173 00:08:20,790 --> 00:08:21,290 LEXI Росс: Ні, ні, ні, ні. 174 00:08:21,290 --> 00:08:22,540 Це нормально. 175 00:08:26,088 --> 00:08:27,338 qYLcYWfg. 176 00:08:38,590 --> 00:08:41,150 Таким чином, я повинен бачити імена вид кожного з з'являтися тут. 177 00:08:41,150 --> 00:08:41,350 >> Awesome. 178 00:08:41,350 --> 00:08:42,209 Це виглядає здорово. 179 00:08:42,209 --> 00:08:44,700 Це означає, що люди вступають в просторі. 180 00:08:44,700 --> 00:08:46,130 Так що, якщо ви не отримали шанс пограти в 181 00:08:46,130 --> 00:08:47,990 Простору тим не менш, це насправді те, що ви збираєтеся використовувати 182 00:08:47,990 --> 00:08:50,750 з ТФ в розділ весь семестр. 183 00:08:50,750 --> 00:08:52,810 Як це працює, ніби все пишуть свої 184 00:08:52,810 --> 00:08:56,510 код, і ніхто не може бачити це поки ви не натиснете Save 185 00:08:56,510 --> 00:08:59,284 Кнопка, яку я вказую просто зараз. 186 00:08:59,284 --> 00:09:03,140 Так що я збираюся натиснути Save, і якщо ви все йдуть на моє ім'я, 187 00:09:03,140 --> 00:09:06,670 які ви повинні мати можливість побачити його в люди в цій 188 00:09:06,670 --> 00:09:09,510 Простір, який Lexis Beryl Росс. 189 00:09:09,510 --> 00:09:12,790 Так як це буде виглядати в натиснути на моє ім'я, і 190 00:09:12,790 --> 00:09:15,170 Ви побачите Редакція 5, який 191 00:09:15,170 --> 00:09:16,070 є останньої ревізії. 192 00:09:16,070 --> 00:09:18,930 Копіювання тільки Перегляд 5 в ваш простір, клацнувши по ньому. 193 00:09:22,570 --> 00:09:23,420 >> Добре. 194 00:09:23,420 --> 00:09:27,310 Так давайте пройдемо цю проблему разом, і я 195 00:09:27,310 --> 00:09:29,645 насправді відбувається, щоб написати код тут на екрані. 196 00:09:29,645 --> 00:09:31,420 Ви можете збільшити небагато. 197 00:09:31,420 --> 00:09:34,300 І ось одного разу я зробив, ви можете скопіювати мою останню версію 198 00:09:34,300 --> 00:09:37,930 у свій простір, якщо ви хочете, щоб побачити остаточне рішення. 199 00:09:37,930 --> 00:09:41,840 Тепер просторів має можливість для мене, щоб піти і подивитися будь-який з 200 00:09:41,840 --> 00:09:43,910 код, який ви, хлопці, написано, але тільки тому, що 201 00:09:43,910 --> 00:09:46,470 такий великий розділ, і ми насправді не мають ті ж 202 00:09:46,470 --> 00:09:50,150 роду обговорення можливості, менші 203 00:09:50,150 --> 00:09:51,890 розділ, ми тільки збираємося йти до кінця і я тільки збираюся 204 00:09:51,890 --> 00:09:53,140 писати код. 205 00:09:53,140 --> 00:09:55,250 Але, безумовно, зупинить мене з питаннями в будь-який момент. 206 00:09:55,250 --> 00:09:57,290 Ми збираємося пройти через це вид крок за кроком, щоб зробити 207 00:09:57,290 --> 00:10:00,032 впевнений, що ми розуміємо один частина того, що тут відбувається. 208 00:10:03,800 --> 00:10:06,710 Може все бачать цей текст тут? 209 00:10:06,710 --> 00:10:07,960 Хто-небудь хоче його більше? 210 00:10:10,240 --> 00:10:12,860 >> Так що перше, що ми будемо тут робити? 211 00:10:12,860 --> 00:10:14,840 Ну по суті, так як ми хочемо отримати ввід з 212 00:10:14,840 --> 00:10:17,460 користувачів, і ми хочемо, щоб він начебто хороший досвід для 213 00:10:17,460 --> 00:10:19,750 користувачів, ми насправді хочемо сказати їм, що ми шукаємо. 214 00:10:19,750 --> 00:10:23,120 Так що давайте роздрукувати саме те, що ми хочемо сформувати користувач. 215 00:10:23,120 --> 00:10:26,540 Так що не турбуйтеся піднімаючи руку, просто гримлять його. 216 00:10:26,540 --> 00:10:29,210 Яка команда надрукувати що-небудь на екрані? 217 00:10:29,210 --> 00:10:30,100 АУДИТОРІЯ: Є. 218 00:10:30,100 --> 00:10:31,247 LEXI РОСС: Awesome. 219 00:10:31,247 --> 00:10:33,393 Отже, Printf. 220 00:10:33,393 --> 00:10:34,339 >> АУДИТОРІЯ: Гей, Лексі? 221 00:10:34,339 --> 00:10:35,589 [Нерозбірливо]? 222 00:10:39,080 --> 00:10:40,130 LEXI РОСС: Звичайно. 223 00:10:40,130 --> 00:10:43,580 Так Printf, як ми бачили часто в лекції, є 224 00:10:43,580 --> 00:10:47,230 Команда надрукувати що-небудь на стандартний вихідний потік. 225 00:10:47,230 --> 00:10:52,370 Тому ми хочемо, щоб попросити користувача ввести 226 00:10:52,370 --> 00:10:53,620 температура в градусах Цельсія. 227 00:10:58,180 --> 00:11:01,180 І тепер, ми насправді хочемо взяти входу, що вони дають 228 00:11:01,180 --> 00:11:03,710 нам і зберігати його в змінної. 229 00:11:03,710 --> 00:11:06,415 Таким чином, ми дізналися небагато про типи. 230 00:11:06,415 --> 00:11:12,090 Може хтось пам'ятає, який тип ми хотіли б для змінної 231 00:11:12,090 --> 00:11:13,170 з десятковою місце в ньому? 232 00:11:13,170 --> 00:11:13,910 АУДИТОРІЯ: Float. 233 00:11:13,910 --> 00:11:14,180 LEXI РОСС: Float. 234 00:11:14,180 --> 00:11:15,480 Так, дивовижний. 235 00:11:15,480 --> 00:11:16,510 Це поплавок. 236 00:11:16,510 --> 00:11:17,760 Так. 237 00:11:21,860 --> 00:11:24,953 І як ми будемо - великий натяк - отримати 238 00:11:24,953 --> 00:11:25,430 плавати від користувача? 239 00:11:25,430 --> 00:11:25,923 АУДИТОРІЯ: GetFloat. 240 00:11:25,923 --> 00:11:27,173 LEXI Росс: Так. 241 00:11:33,320 --> 00:11:34,730 Cool. 242 00:11:34,730 --> 00:11:38,970 І користувач потенційно може означати і спробувати дати нам 243 00:11:38,970 --> 00:11:41,080 негативне число, але давайте не будемо турбуватися про те, що для цього 244 00:11:41,080 --> 00:11:41,710 Проблема зараз. 245 00:11:41,710 --> 00:11:43,390 Ви будете турбуватися про те, що трохи більше, на ваш 246 00:11:43,390 --> 00:11:45,570 домашнє завдання з проблеми набір. 247 00:11:45,570 --> 00:11:48,970 >> Отже, давайте припустимо, що вони дають нам хороший номер, і тепер ми 248 00:11:48,970 --> 00:11:51,590 насправді потрібно перетворити, які плавають за Цельсієм в 249 00:11:51,590 --> 00:11:52,400 За Фаренгейтом. 250 00:11:52,400 --> 00:11:56,730 Отже, давайте зверніться в наш формула тут, і давайте створимо 251 00:11:56,730 --> 00:12:00,290 Нова змінна і називати його за Фаренгейтом. 252 00:12:00,290 --> 00:12:01,130 Я вивчав правопису. 253 00:12:01,130 --> 00:12:04,640 Це свого роду безумство, я знаю. 254 00:12:04,640 --> 00:12:08,880 І давайте розраховувати на порядку операцій роблять вигляд 255 00:12:08,880 --> 00:12:14,340 свою роботу тут, але ми будемо використовувати дужки просто бути 256 00:12:14,340 --> 00:12:17,762 повністю докладні і ясні. 257 00:12:17,762 --> 00:12:24,453 Так Цельсія раз 9 ділиться на 5. 258 00:12:24,453 --> 00:12:26,740 Я хочу, щоб зменшити масштаб тільки трохи так що це може поміститися на 259 00:12:26,740 --> 00:12:29,390 один рядок, але я знову збільшити для тих, хто не може бачити, 260 00:12:29,390 --> 00:12:30,640 далі в спину. 261 00:12:38,150 --> 00:12:40,060 На жаль про це. 262 00:12:40,060 --> 00:12:42,680 Дивно курсор питань. 263 00:12:42,680 --> 00:12:51,688 Плюс 32. 264 00:12:51,688 --> 00:12:54,780 Гаразд, хто-небудь є які-небудь питання про те, як я поклав в 265 00:12:54,780 --> 00:12:56,460 Формула, або які-небудь проблеми з цим? 266 00:12:56,460 --> 00:12:56,700 Так. 267 00:12:56,700 --> 00:12:59,580 >> АУДИТОРІЯ: Чи потрібна нам поставити Printf до поплавка 268 00:12:59,580 --> 00:13:01,980 Цельсія, плавати за Фаренгейтом ліній сценарію? 269 00:13:01,980 --> 00:13:05,910 Чи має значення, в якому порядку вони в? 270 00:13:05,910 --> 00:13:08,580 LEXI Росс: Так питання було, ми повинні Printf 271 00:13:08,580 --> 00:13:11,820 перш, ніж ми насправді просять поплавок? 272 00:13:11,820 --> 00:13:13,070 Відповідь на це питання є те, що ми робимо. 273 00:13:13,070 --> 00:13:16,830 Таким чином, те, що курсор, що користувач отримує на вхід їх 274 00:13:16,830 --> 00:13:20,310 поплавок буде відбуватися після того, як друковані с, чи не так? 275 00:13:20,310 --> 00:13:23,480 І це має сенс, якщо ви думаєте про логіку, як 276 00:13:23,480 --> 00:13:26,660 Ви питаєте користувачеві питання, і тоді ви 277 00:13:26,660 --> 00:13:27,800 Отримавши відповідь. 278 00:13:27,800 --> 00:13:30,320 Таким чином, він друкує с, а там курсора, а потім 279 00:13:30,320 --> 00:13:32,470 Користувач може ввести значення, як ми побачимо 280 00:13:32,470 --> 00:13:34,200 пізніше, коли ми Demo. 281 00:13:34,200 --> 00:13:34,874 Так? 282 00:13:34,874 --> 00:13:37,660 >> АУДИТОРІЯ: Чому ми використовуємо поплавок, а не двійник? 283 00:13:37,660 --> 00:13:40,030 LEXI Росс: подвійний, по суті, в якості імені 284 00:13:40,030 --> 00:13:42,180 увазі, дає в два рази більше 285 00:13:42,180 --> 00:13:44,040 точності, як поплавок. 286 00:13:44,040 --> 00:13:48,490 Але зазвичай в C, в цьому, звичайно, для ряду 287 00:13:48,490 --> 00:13:50,340 причин, ми збираємося використовувати поплавці. 288 00:13:50,340 --> 00:13:53,330 І це дійсно все, що точність нам потрібна тільки для 289 00:13:53,330 --> 00:13:56,200 основні види перетворення температури. 290 00:13:56,200 --> 00:13:59,800 Як правило, двомісні більше використовується в мові Java, 291 00:13:59,800 --> 00:14:05,700 поплавці є більш поширеними в C. Гаразд, дивовижний. 292 00:14:05,700 --> 00:14:06,470 >> Ден Бредлі: один більше. 293 00:14:06,470 --> 00:14:07,530 LEXI Росс: Ще один. 294 00:14:07,530 --> 00:14:08,708 Так? 295 00:14:08,708 --> 00:14:10,684 АУДИТОРІЯ: де ви поклали Space Bar? 296 00:14:10,684 --> 00:14:13,648 Мовляв, [нерозбірливо] пробіл [нерозбірливо]? 297 00:14:13,648 --> 00:14:15,140 Хіба це важливо? 298 00:14:15,140 --> 00:14:15,560 LEXI Росс: О, ні. 299 00:14:15,560 --> 00:14:17,040 Так що це не має значення. 300 00:14:17,040 --> 00:14:19,910 Я насправді повинні були поставити ще один космічний тут. 301 00:14:19,910 --> 00:14:21,990 Але що справа в тому, що ви послідовно 302 00:14:21,990 --> 00:14:22,960 у всьому коді. 303 00:14:22,960 --> 00:14:25,510 Так що, якщо ви вирішите використовувати один стиль відстань, переконайтеся, що 304 00:14:25,510 --> 00:14:27,530 тримати його протягом усього вашого коду, або ви можете отримати стиль 305 00:14:27,530 --> 00:14:28,610 очки. 306 00:14:28,610 --> 00:14:29,822 Таким чином, послідовність є ключовим чинником. 307 00:14:29,822 --> 00:14:31,590 Ден Бредлі: Я думаю, він говорив про те, що простір. 308 00:14:31,590 --> 00:14:33,190 LEXI Росс: О, ви говорите про те, що простір? 309 00:14:33,190 --> 00:14:34,920 За фактичними C? 310 00:14:34,920 --> 00:14:35,335 АУДИТОРІЯ: Так. 311 00:14:35,335 --> 00:14:37,910 LEXI Росс: О, так це тільки за зовнішність, чи не так? 312 00:14:37,910 --> 00:14:41,280 Так що шлях, коли ми запустимо код, якщо у нас не було цього 313 00:14:41,280 --> 00:14:43,730 Простір тут, якщо це виглядало так, користувач почне 314 00:14:43,730 --> 00:14:45,690 ввести номер, і було б роздавлений прямо 315 00:14:45,690 --> 00:14:48,800 проти товстої кишки після C, і вона буде виглядати трохи 316 00:14:48,800 --> 00:14:50,770 краще, якби було місце. 317 00:14:50,770 --> 00:14:52,470 І ви можете бачити, що трохи краще, як тільки ми насправді 318 00:14:52,470 --> 00:14:53,970 запустити цей код, коли ми його закінчили. 319 00:14:57,060 --> 00:14:58,200 Awesome. 320 00:14:58,200 --> 00:14:59,330 Так, ще одне питання. 321 00:14:59,330 --> 00:15:01,658 >> АУДИТОРІЯ: Чи повинен я поставити десяткову крапку після одного з 322 00:15:01,658 --> 00:15:04,000 [Нерозбірливо]? 323 00:15:04,000 --> 00:15:06,770 LEXI Росс: Так що ви цього не зробите, тому що порядку 324 00:15:06,770 --> 00:15:07,500 операцій. 325 00:15:07,500 --> 00:15:11,020 Таким чином тому, що Фаренгейтом вже з плаваючою точкою, як це 326 00:15:11,020 --> 00:15:14,050 Цельсія, вам не потрібно явно наводити будь-яку з цих 327 00:15:14,050 --> 00:15:15,990 інші номери, як поплавки, хоча в інших 328 00:15:15,990 --> 00:15:18,180 обставинах, коли ви маєте справу з цілими, ви можете 329 00:15:18,180 --> 00:15:21,280 повинні поставити крапку явно привести його в якості поплавка. 330 00:15:24,160 --> 00:15:24,595 Так? 331 00:15:24,595 --> 00:15:26,629 АУДИТОРІЯ: Мені було просто цікаво, якщо капіталізація питань у 332 00:15:26,629 --> 00:15:29,150 ці команди, як GetFloat? 333 00:15:29,150 --> 00:15:30,160 LEXI Росс: Так, гарне питання. 334 00:15:30,160 --> 00:15:33,530 Таким чином, питання було, робить капіталізації речовини в 335 00:15:33,530 --> 00:15:34,800 команди, як GetFloat? 336 00:15:34,800 --> 00:15:36,650 Відповідь: Так, це так. 337 00:15:36,650 --> 00:15:39,720 Так GetFloat, як Ден описував раніше, бібліотека 338 00:15:39,720 --> 00:15:44,000 функції в CS50 бібліотеки, і воно було написано в якості капіталу 339 00:15:44,000 --> 00:15:47,360 G, капітал F. Таким чином, якщо ви не пишете його з тими столиць 340 00:15:47,360 --> 00:15:50,150 там, компілятор не буде розуміти, що 341 00:15:50,150 --> 00:15:52,750 функціонувати ви маєте на увазі. 342 00:15:52,750 --> 00:15:53,130 Добре. 343 00:15:53,130 --> 00:15:53,815 Так? 344 00:15:53,815 --> 00:15:55,446 >> Зали: основний аргумент на користь завжди порожнечу? 345 00:15:55,446 --> 00:15:57,920 LEXI Росс: Так, це ще одне велике питання. 346 00:15:57,920 --> 00:16:01,850 Таким чином, код, який ви скопіювали з мого простору помилково було 347 00:16:01,850 --> 00:16:02,500 ще кілька аргументів. 348 00:16:02,500 --> 00:16:06,530 Таким чином, питання було, є аргумент основні функції 349 00:16:06,530 --> 00:16:10,620 Завжди порожнеча, яка по суті нічого не значить? 350 00:16:10,620 --> 00:16:11,890 Відповідь: ні. 351 00:16:11,890 --> 00:16:13,920 Ви можете помітити, що код, який ви скопіювали з мого попереднього 352 00:16:13,920 --> 00:16:17,700 перегляд мав те, що може виглядати як нічого, що дійсно робить 353 00:16:17,700 --> 00:16:21,060 сенс прямо зараз, деякі символ *, ARGV, агдс. 354 00:16:21,060 --> 00:16:23,630 Не турбуйтеся про те, що на даний момент, але ви дізнаєтеся пізніше 355 00:16:23,630 --> 00:16:25,060 на вони роблять різниці. 356 00:16:25,060 --> 00:16:27,480 Але якщо ви не використовуєте таку додаткову функціональність 357 00:16:27,480 --> 00:16:28,940 про які ви дізнаєтеся трохи пізніше, порожнеча 358 00:16:28,940 --> 00:16:32,085 цілком нормально. 359 00:16:32,085 --> 00:16:32,530 >> Добре. 360 00:16:32,530 --> 00:16:34,690 І у нас є ще один крок, який є те, що ми хочемо 361 00:16:34,690 --> 00:16:38,840 насправді показати користувачеві, що перетворені температури. 362 00:16:38,840 --> 00:16:46,730 Отже, ще раз, ми збираємося використовувати Printf, і скажімо, F, просто 363 00:16:46,730 --> 00:16:48,000 Заради узгодженості в. 364 00:16:48,000 --> 00:16:50,780 І тепер ми збираємося зробити щось трохи складніше. 365 00:16:50,780 --> 00:16:57,190 Так що ми збираємося використовувати прапор, або особливого роду позначення, 366 00:16:57,190 --> 00:17:02,510 сказати Printf для друку тільки одного знака після коми. 367 00:17:02,510 --> 00:17:05,240 А хто-небудь випадково не знаєте, що це буде виглядати 368 00:17:05,240 --> 00:17:06,810 хотів, перш ніж я друкую це? 369 00:17:06,810 --> 00:17:07,089 Так? 370 00:17:07,089 --> 00:17:08,339 АУДИТОРІЯ: 0,2% е? 371 00:17:10,369 --> 00:17:10,880 LEXI Росс: Так, так. 372 00:17:10,880 --> 00:17:12,960 Таким чином, насправді, це дуже близько. 373 00:17:12,960 --> 00:17:23,520 0.01f на 0,01% F, а потім ми повинні пам'ятати, щоб включити 374 00:17:23,520 --> 00:17:26,950 Інший аргумент на Printf, яка є самою змінною, 375 00:17:26,950 --> 00:17:28,685 який с. 376 00:17:33,690 --> 00:17:34,580 >> І останній крок. 377 00:17:34,580 --> 00:17:36,880 Може хтось пам'ятає, що це таке в нашому основна функція? 378 00:17:36,880 --> 00:17:37,265 Так, там. 379 00:17:37,265 --> 00:17:38,320 АУДИТОРІЯ: Повернення? 380 00:17:38,320 --> 00:17:38,840 LEXI РОСС: Абсолютно вірно. 381 00:17:38,840 --> 00:17:42,030 Таким чином, так як це основний повертається в INT, ми хочемо 382 00:17:42,030 --> 00:17:43,926 Також повернутися в Int. 383 00:17:43,926 --> 00:17:48,280 Ден Бредлі: Відсоток повинен бути на іншій стороні. 384 00:17:48,280 --> 00:17:48,540 LEXI Росс: Добре. 385 00:17:48,540 --> 00:17:49,290 Вибачте, хлопці. 386 00:17:49,290 --> 00:17:50,240 Це була помилка. 387 00:17:50,240 --> 00:17:52,150 Таким чином, відсоток доходить до 0,01. 388 00:17:52,150 --> 00:17:54,450 Так це 0,01% ф. 389 00:17:54,450 --> 00:17:55,970 Це свого роду важко запам'ятати. 390 00:17:55,970 --> 00:17:57,470 Багато людей, як я, просто подивіться їх 391 00:17:57,470 --> 00:17:58,710 всякий раз, коли ми їх використовуємо. 392 00:17:58,710 --> 00:17:59,340 Так, там. 393 00:17:59,340 --> 00:18:02,525 АУДИТОРІЯ: Чому це 0,01 і не 0,2 або 0,1? 394 00:18:05,710 --> 00:18:07,530 LEXI Росс: Я не знаю, насправді. 395 00:18:07,530 --> 00:18:08,130 Чи знаєте ви? 396 00:18:08,130 --> 00:18:14,050 Ден Бредлі: причина це 0,01, а не 0,02, або 397 00:18:14,050 --> 00:18:19,380 0,2, або 0,1, є досить довільним чином, що 398 00:18:19,380 --> 00:18:21,230 Програміст спочатку розроблений його. 399 00:18:21,230 --> 00:18:22,200 АУДИТОРІЯ: Це не те, що я мав на увазі. 400 00:18:22,200 --> 00:18:24,140 Я не запитую, чому. 401 00:18:24,140 --> 00:18:25,378 [Нерозбірливо] чому. 402 00:18:25,378 --> 00:18:28,800 У мене написано, як 0,2, і це доставляє два - 403 00:18:28,800 --> 00:18:29,270 Ден Бредлі: Так. 404 00:18:29,270 --> 00:18:30,410 Так що ми були тільки бажаючи один. 405 00:18:30,410 --> 00:18:31,250 АУДИТОРІЯ: Ой, ладно. 406 00:18:31,250 --> 00:18:33,270 Таким чином, можна потім 0,01. 407 00:18:33,270 --> 00:18:35,340 Ден Бредлі: 0,1, ймовірно, також працює. 408 00:18:35,340 --> 00:18:37,430 0,01 працює також. 409 00:18:37,430 --> 00:18:39,288 LEXI Росс: О, 0 може бути, щоб показати нулю, якщо 410 00:18:39,288 --> 00:18:40,870 це менше, ніж одна. 411 00:18:40,870 --> 00:18:43,080 Ден Бредлі: Так, я думаю, що це правильно. 412 00:18:43,080 --> 00:18:49,220 Так що 0,01 буде показувати нуль, якщо вона не має нічого 413 00:18:49,220 --> 00:18:51,670 що б туди природним шляхом. 414 00:18:51,670 --> 00:18:55,860 Так що якщо ви, скажімо, покласти в 100 для Цельсієм, це було б 415 00:18:55,860 --> 00:19:00,230 виходить до 212 зазвичай в градусах за Фаренгейтом, як 212 точно. 416 00:19:00,230 --> 00:19:05,810 Якщо у вас є 0,01, вона покаже 212,0, а 417 00:19:05,810 --> 00:19:07,005 не просто 212. 418 00:19:07,005 --> 00:19:07,330 LEXI Росс: Це вірно. 419 00:19:07,330 --> 00:19:13,000 Таким чином, читаючи в основному говорить Printf, друкувати десяткову крапку, 420 00:19:13,000 --> 00:19:14,760 і надрукувати 0, якщо це необхідно. 421 00:19:14,760 --> 00:19:16,780 Якщо ні, то друк першої десяткової позиції. 422 00:19:16,780 --> 00:19:18,270 Ден Бредлі: І ми будемо досліджувати деякі з цього, коли ми 423 00:19:18,270 --> 00:19:19,270 насправді працює код. 424 00:19:19,270 --> 00:19:20,150 LEXI Росс: Так. 425 00:19:20,150 --> 00:19:21,030 АУДИТОРІЯ: Тому я ставлю 0,1. 426 00:19:21,030 --> 00:19:21,910 Він як і раніше друкує свої нуля. 427 00:19:21,910 --> 00:19:23,460 Ден Бредлі: Він як і раніше друкує свої нуля? 428 00:19:23,460 --> 00:19:23,930 АУДИТОРІЯ: Так. 429 00:19:23,930 --> 00:19:25,211 Ден Бредлі: Хм, ладно. 430 00:19:25,211 --> 00:19:27,666 LEXI РОСС: Cool. 431 00:19:27,666 --> 00:19:29,140 >> Добре. 432 00:19:29,140 --> 00:19:33,310 Більше питань на цей код, перш ніж я скомпілювати і запустити? 433 00:19:33,310 --> 00:19:35,380 Хто-небудь бачить помилки тут, в першу чергу? 434 00:19:35,380 --> 00:19:39,420 Хто-небудь бачив те, що повинно бути тут? 435 00:19:39,420 --> 00:19:41,920 Якби це була ваша проблема набору, що б бути тут, які не 436 00:19:41,920 --> 00:19:44,490 там прямо зараз? 437 00:19:44,490 --> 00:19:45,710 Так, відмінно. 438 00:19:45,710 --> 00:19:48,200 Так що я не включати коментарі, тому що я їх доставки 439 00:19:48,200 --> 00:19:50,570 в усній формі, але якщо б я писав цю задачу в набір, я б 440 00:19:50,570 --> 00:19:54,290 безумовно хочете, щоб покласти коментарі, щоб вказати, що я 441 00:19:54,290 --> 00:19:55,820 робить, по суті, в програмі. 442 00:19:55,820 --> 00:19:57,870 І ви будете виду відчути це, як Ви рухаєтеся через 443 00:19:57,870 --> 00:19:59,680 семестру, потрібну кількість коментарів. 444 00:19:59,680 --> 00:20:01,520 Ви не хочете бути занадто багатослівним і поклав ліній і 445 00:20:01,520 --> 00:20:03,710 рядків коментарів для кожного з ваших рядків коду, але ви 446 00:20:03,710 --> 00:20:06,720 Також не хочу бути не досить докладний і залишити 447 00:20:06,720 --> 00:20:09,440 Читач, щоб спробувати з'ясувати, якого біса 448 00:20:09,440 --> 00:20:11,595 Ваш код робить. 449 00:20:11,595 --> 00:20:12,770 >> Добре, прохолодно. 450 00:20:12,770 --> 00:20:14,020 Давайте спробуємо запустити цей код. 451 00:20:18,290 --> 00:20:21,650 Гаразд, я піду, щоб зменшити масштаб небагато. 452 00:20:21,650 --> 00:20:22,020 Cool. 453 00:20:22,020 --> 00:20:24,560 Таким чином, ви помітите, що є кнопка Play тут. 454 00:20:24,560 --> 00:20:25,994 Давайте натисніть Play. 455 00:20:34,915 --> 00:20:39,190 Таким чином, ви побачите тут, як і в специфікації по проблемі 456 00:20:39,190 --> 00:20:43,300 встановити, є. / a.out. 457 00:20:43,300 --> 00:20:46,510 a.out це ім'я виконуваний файл, який є 458 00:20:46,510 --> 00:20:50,590 довге слово всього за файл, що складається з двійкового коду, який 459 00:20:50,590 --> 00:20:51,710 комп'ютер насправді працює. 460 00:20:51,710 --> 00:20:54,390 Так як ми очікували, ми маємо C тут. 461 00:20:54,390 --> 00:20:56,007 Так називають ряд. 462 00:20:56,007 --> 00:20:58,630 АУДИТОРІЯ: 23. 463 00:20:58,630 --> 00:21:05,090 LEXI РОСС: 23. 464 00:21:05,090 --> 00:21:06,360 Ден Бредлі: Ваша програма займає надто багато часу для запуску. 465 00:21:06,360 --> 00:21:07,310 Просто запустіть його знову. 466 00:21:07,310 --> 00:21:07,700 LEXI Росс: О, мій поганий. 467 00:21:07,700 --> 00:21:09,450 Добре. 468 00:21:09,450 --> 00:21:10,770 Простору є прискіпливим іноді. 469 00:21:10,770 --> 00:21:13,060 Вона хоче, щоб ви думали на ноги. 470 00:21:13,060 --> 00:21:15,060 Ладно, 23. 471 00:21:15,060 --> 00:21:16,256 Awesome. 472 00:21:16,256 --> 00:21:18,920 Чи всі в це повірити? 473 00:21:18,920 --> 00:21:20,600 Круто, тому що вона працює. 474 00:21:20,600 --> 00:21:22,670 >> Добре. 475 00:21:22,670 --> 00:21:24,280 Давайте спробуємо ще парочку. 476 00:21:24,280 --> 00:21:25,910 Давайте спробуємо краю в даному випадку. 477 00:21:25,910 --> 00:21:28,900 У комп'ютерній науці, коли ми говоримо про крайні випадки, ми маємо на увазі 478 00:21:28,900 --> 00:21:33,640 випадків для запуску програми які є свого роду на самому 479 00:21:33,640 --> 00:21:38,430 Краю розумних входах або, що тест певних кутах 480 00:21:38,430 --> 00:21:41,680 Логіка в вашу програму, і це має більше сенсу, коли ми 481 00:21:41,680 --> 00:21:43,080 робити більш складні програми. 482 00:21:43,080 --> 00:21:45,440 Давайте спробуємо 0. 483 00:21:45,440 --> 00:21:45,950 Awesome. 484 00:21:45,950 --> 00:21:48,460 Ми все це знаємо. 485 00:21:48,460 --> 00:21:48,745 Cool. 486 00:21:48,745 --> 00:21:50,520 Є ще питання по цьому перш ніж перейти 487 00:21:50,520 --> 00:21:51,930 до наступної програми? 488 00:21:55,560 --> 00:21:57,160 Гаразд, дивовижний. 489 00:21:57,160 --> 00:22:00,066 Отже, тепер ми збираємося - 490 00:22:00,066 --> 00:22:01,180 Ви хочете просто використовувати мій комп'ютер? 491 00:22:01,180 --> 00:22:01,940 Ден Бредлі: Так, це досить легко. 492 00:22:01,940 --> 00:22:06,660 >> Гаразд, піду і говорити про те, щоб відсотки. 493 00:22:06,660 --> 00:22:11,440 Так що ми по суті, в наступному невелику вправу, збирається 494 00:22:11,440 --> 00:22:16,020 взяти два цілих входи від користувача, сподіваючись на 495 00:22:16,020 --> 00:22:21,250 невід'ємні чисельник і знаменник позитивний, і 496 00:22:21,250 --> 00:22:24,410 в основному розділяючи їх і виводить те, що виступає в якості 497 00:22:24,410 --> 00:22:25,820 відсоток. 498 00:22:25,820 --> 00:22:33,430 Таким чином, ми хочемо, щоб приймати тільки невід'ємні чисельники і 499 00:22:33,430 --> 00:22:37,930 приймати тільки позитивні знаменники, і продовжуйте питати 500 00:22:37,930 --> 00:22:43,286 на нові, якщо вони не отримали те, що він хоче. 501 00:22:43,286 --> 00:22:43,710 Все в порядку? 502 00:22:43,710 --> 00:22:44,960 Так дайте що йдуть. 503 00:22:48,015 --> 00:22:49,390 LEXI Росс: О, так, ти хочеш зробити - 504 00:22:49,390 --> 00:22:51,310 ой, може бути, люди повинні скопіювати мій код. 505 00:22:51,310 --> 00:22:51,790 Ден Бредлі: Так. 506 00:22:51,790 --> 00:22:52,270 LEXI РОСС: [нерозбірливо] 507 00:22:52,270 --> 00:22:54,994 Простору. 508 00:22:54,994 --> 00:22:55,986 >> АУДИТОРІЯ: У мене є питання. 509 00:22:55,986 --> 00:22:58,466 Якщо я використовую просторів і я хочу, щоб зберегти [нерозбірливо] 510 00:22:58,466 --> 00:23:04,440 Фаренгейт перетворення, я можу зберегти його, а потім зробити новий - 511 00:23:04,440 --> 00:23:06,880 LEXI Росс: Ми могли б просто зробити новий простір, або ви можете просто 512 00:23:06,880 --> 00:23:09,600 потрібно скопіювати і вставити в текстовий файл або 513 00:23:09,600 --> 00:23:11,040 щось таке у вас є. 514 00:23:11,040 --> 00:23:12,400 Ден Бредлі: Я просто змінити своє ім'я. 515 00:23:12,400 --> 00:23:15,430 LEXI Росс: Я тільки що врятував останній редакції 516 00:23:15,430 --> 00:23:20,700 tofahrenheit.c, так що якщо ви йдете в AAAA Lexis Beryl 517 00:23:20,700 --> 00:23:23,270 Росс, ви можете піти і скопіювати цей останній код, а потім 518 00:23:23,270 --> 00:23:26,360 почати цей новий, який я думаю, що Ден буде надавати 519 00:23:26,360 --> 00:23:30,540 деякі скелет коду для також. 520 00:23:30,540 --> 00:23:33,430 Добре. 521 00:23:33,430 --> 00:23:36,590 Ден Бредлі: остання версія у мене є на шахті, тому 522 00:23:36,590 --> 00:23:40,080 це на самому верху цей час, Редакція 4, і 523 00:23:40,080 --> 00:23:42,050 він буде мати те, що вам потрібно, щоб почати роботу. 524 00:23:47,970 --> 00:23:49,370 LEXI Росс: Все в порядку, і я буду копіювати, що в шахті, а також. 525 00:23:49,370 --> 00:23:50,520 >> Ден Бредлі: Все правильно. 526 00:23:50,520 --> 00:23:53,840 Я думаю, що ми збираємося просто почати рухатися з цього приводу, якщо 527 00:23:53,840 --> 00:23:57,470 хтось зацікавлений. 528 00:23:57,470 --> 00:23:59,710 LEXI Росс: Ми всі зацікавлені. 529 00:23:59,710 --> 00:24:02,370 Ден Бредлі: Ми збираємося почати просто, оголосивши 530 00:24:02,370 --> 00:24:08,290 деякі змінні. Тому у нас є чисельник, і заради 531 00:24:08,290 --> 00:24:13,770 Тепер, я збираюся просто почати його зі значенням -1, 532 00:24:13,770 --> 00:24:24,070 і тоді я створив DO-циклу. Хоча - 533 00:24:24,070 --> 00:24:28,270 тому, коли я хочу, щоб це цикл? 534 00:24:28,270 --> 00:24:30,250 Коли я хочу, щоб продовжувати запитувати - 535 00:24:30,250 --> 00:24:31,761 да? 536 00:24:31,761 --> 00:24:34,960 АУДИТОРІЯ: Коли вона менше або дорівнює нулю. 537 00:24:34,960 --> 00:24:37,734 Ден Бредлі: чому вона не може дорівнювати нулю? 538 00:24:37,734 --> 00:24:39,526 АУДИТОРІЯ: [нерозбірливо]. 539 00:24:39,526 --> 00:24:39,980 Ден Бредлі: Так. 540 00:24:39,980 --> 00:24:42,590 Таким чином, для чисельника, це просто в той час як в чисельнику 541 00:24:42,590 --> 00:24:43,840 менше нуля. 542 00:24:49,570 --> 00:24:50,480 Чи має це сенс для людей? 543 00:24:50,480 --> 00:24:53,190 Ми продовжуємо цикл а чисельник менше нуля, 544 00:24:53,190 --> 00:24:58,530 ми продовжуємо просити новий вхід, і тримати вимагаючи, щоб вони 545 00:24:58,530 --> 00:24:59,520 введення нових речей. 546 00:24:59,520 --> 00:25:10,436 Так що я просто трохи Printf тут, невід'ємні 547 00:25:10,436 --> 00:25:11,686 кількість циліндрів -. 548 00:25:17,780 --> 00:25:21,940 І тоді ми робимо те ж саме, що й раніше, тільки ми робимо 549 00:25:21,940 --> 00:25:25,220 GetInt, тільки тому, що ми хотіли зробити його як 550 00:25:25,220 --> 00:25:27,600 Відсоток цілих чисел. 551 00:25:27,600 --> 00:25:32,010 Таким чином, чисельник = GetInt. 552 00:25:36,420 --> 00:25:39,420 >> Добре, тепер кілька речей. 553 00:25:39,420 --> 00:25:41,030 Чи потрібно мені це -1 тут? 554 00:25:41,030 --> 00:25:41,976 АУДИТОРІЯ: [нерозбірливо]. 555 00:25:41,976 --> 00:25:42,449 Ден Бредлі: Ні. 556 00:25:42,449 --> 00:25:44,814 Чому ні? 557 00:25:44,814 --> 00:25:47,440 АУДИТОРІЯ: Тому що ви отримуєте випадкове значення від користувача. 558 00:25:47,440 --> 00:25:48,540 Ден Бредлі: Абсолютно вірно. 559 00:25:48,540 --> 00:25:53,540 Але я хочу, щоб декларація тут? 560 00:25:53,540 --> 00:25:53,950 Так. 561 00:25:53,950 --> 00:25:54,220 Чому? 562 00:25:54,220 --> 00:25:56,640 АУДИТОРІЯ: Ви повинні знайти поза циклом. 563 00:25:56,640 --> 00:25:59,060 В іншому випадку, ви не будете мати змінну для відпочинку 564 00:25:59,060 --> 00:26:00,520 програми. 565 00:26:00,520 --> 00:26:01,270 Ден Бредлі: Абсолютно вірно. 566 00:26:01,270 --> 00:26:03,290 Область. 567 00:26:03,290 --> 00:26:04,750 Sweet. 568 00:26:04,750 --> 00:26:05,790 Чи має це сенс для всіх? 569 00:26:05,790 --> 00:26:07,090 АУДИТОРІЯ: Чи можете ви сказати, що ще раз? 570 00:26:07,090 --> 00:26:07,410 Ден Бредлі: Добре. 571 00:26:07,410 --> 00:26:12,000 Так що, якщо б я був заявити про це чисельник всередині циклу, якщо 572 00:26:12,000 --> 00:26:14,850 У мене було це замість того, чисельник чисельник Int, 573 00:26:14,850 --> 00:26:17,720 і я позбувся від цього повністю, 574 00:26:17,720 --> 00:26:19,710 чисельник зникне. 575 00:26:19,710 --> 00:26:23,540 Вона не могла б існувати поза цього циклу, тому що всі 576 00:26:23,540 --> 00:26:25,370 знаходиться в рамках цих фігурні дужки. 577 00:26:28,180 --> 00:26:28,790 Сенс? 578 00:26:28,790 --> 00:26:30,460 Добре. 579 00:26:30,460 --> 00:26:34,750 >> Таким чином, для знаменника, ми робимо щось досить схожі, внутр 580 00:26:34,750 --> 00:26:39,850 знаменник = - 581 00:26:39,850 --> 00:26:41,950 і мені не потрібно одно - 582 00:26:41,950 --> 00:26:52,900 робити, і в той час як в даному випадку, те, що я хочу? 583 00:26:52,900 --> 00:26:56,338 В якому стані я хочу, щоб це все ще петля на? 584 00:26:56,338 --> 00:26:57,790 АУДИТОРІЯ: менше або дорівнює 0. 585 00:26:57,790 --> 00:26:59,100 Ден Бредлі: менше або дорівнює 0. 586 00:26:59,100 --> 00:27:04,680 Знаменник <= 0. 587 00:27:10,350 --> 00:27:13,630 Не забудьте взяти з комою, діти. 588 00:27:13,630 --> 00:27:26,950 Таким чином, ми робимо те ж саме, як і колись, Printf позитивні 589 00:27:26,950 --> 00:27:38,920 знаменника, і ми отримуємо Int звідси. 590 00:27:43,240 --> 00:27:44,573 Там ми йдемо. 591 00:27:52,461 --> 00:27:53,711 GetInt. 592 00:27:56,585 --> 00:27:57,810 Добре. 593 00:27:57,810 --> 00:28:02,360 А потім, в кінці кінців, ми хочемо, щоб роздрукувати певний відсоток. 594 00:28:02,360 --> 00:28:10,282 Таким чином, щоб зробити це, те, що повинно нашому рядок виглядає? 595 00:28:10,282 --> 00:28:11,532 Printf. 596 00:28:18,010 --> 00:28:20,210 Будь-які інші ідеї про те, що я можу тут робити? 597 00:28:20,210 --> 00:28:20,480 Так? 598 00:28:20,480 --> 00:28:26,204 АУДИТОРІЯ: Може бути,% 0,2 [нерозбірливо]. 599 00:28:26,204 --> 00:28:27,454 Ден Бредлі: Так. 600 00:28:31,300 --> 00:28:32,170 Добре. 601 00:28:32,170 --> 00:28:41,680 Я почну з першого біта,% .02%%, 602 00:28:41,680 --> 00:28:42,957 лапки, кома. 603 00:28:46,370 --> 00:28:48,380 І я збираюся кинути нової лінії тут, тільки тому, що 604 00:28:48,380 --> 00:28:50,390 як нові лінії, коли я роблю речі. 605 00:28:53,210 --> 00:28:57,945 Яке математичне вираз, я повинен тут? 606 00:28:57,945 --> 00:29:00,250 АУДИТОРІЯ: Дужки і плавати. 607 00:29:00,250 --> 00:29:00,620 Ден Бредлі: Добре. 608 00:29:00,620 --> 00:29:01,875 Чому я хочу мати його в поплавок? 609 00:29:01,875 --> 00:29:03,125 АУДИТОРІЯ: [нерозбірливо]. 610 00:29:05,640 --> 00:29:07,960 Ден Бредлі: Добре, добре. 611 00:29:07,960 --> 00:29:09,210 Float. 612 00:29:11,236 --> 00:29:12,486 АУДИТОРІЯ: чисельник. 613 00:29:14,640 --> 00:29:15,610 Ден Бредлі: Чисельник? 614 00:29:15,610 --> 00:29:18,596 Гаразд, так що я плавати чисельнику. 615 00:29:18,596 --> 00:29:20,524 АУДИТОРІЯ: Розділені по - 616 00:29:20,524 --> 00:29:22,142 Ден Бредлі: Розділені по? 617 00:29:22,142 --> 00:29:23,480 АУДИТОРІЯ: знаменника. 618 00:29:23,480 --> 00:29:26,290 Ден Бредлі: я роблю тільки знаменник, або я роблю поплавком 619 00:29:26,290 --> 00:29:26,900 знаменник? 620 00:29:26,900 --> 00:29:29,410 АУДИТОРІЯ: Просто знаменника. 621 00:29:29,410 --> 00:29:30,335 Ден Бредлі: Добре. 622 00:29:30,335 --> 00:29:35,285 АУДИТОРІЯ: І ви можете помножити це на 100. 623 00:29:35,285 --> 00:29:39,130 Ден Бредлі: А я множимо на 100. 624 00:29:39,130 --> 00:29:40,560 АУДИТОРІЯ: А потім дужки навколо всього виразу. 625 00:29:40,560 --> 00:29:41,810 Ден Бредлі: Так. 626 00:29:47,110 --> 00:29:48,360 >> Добре. 627 00:29:50,575 --> 00:29:52,860 Добре виглядати? 628 00:29:52,860 --> 00:29:54,110 Давайте спробуємо. 629 00:29:58,170 --> 00:30:00,800 -50. 630 00:30:00,800 --> 00:30:03,590 Добре, 50. 631 00:30:03,590 --> 00:30:08,010 0, 100, 50%. 632 00:30:08,010 --> 00:30:10,500 Це спрацювало так, як ми хотіли. 633 00:30:10,500 --> 00:30:13,510 Чи означає це, коду глузд людей? 634 00:30:13,510 --> 00:30:17,600 Я збираюся зберегти його таким чином, ви можете отримати його копію. 635 00:30:17,600 --> 00:30:18,684 Так? 636 00:30:18,684 --> 00:30:20,055 АУДИТОРІЯ: Чому б тобі не потрібно ставити [нерозбірливо]? 637 00:30:22,800 --> 00:30:24,603 Ден Бредлі: Де? 638 00:30:24,603 --> 00:30:26,076 АУДИТОРІЯ: Як і коли ви говорите, знаменник дорівнює 639 00:30:26,076 --> 00:30:28,040 [Нерозбірливо]. 640 00:30:28,040 --> 00:30:30,630 Ден Бредлі: Коли в мене тут? 641 00:30:30,630 --> 00:30:32,510 Чому я повинен Int перед ним? 642 00:30:32,510 --> 00:30:37,120 АУДИТОРІЯ: Тому що інший має Int перед ним. 643 00:30:37,120 --> 00:30:40,060 Ден Бредлі: Ну, так, щоб не було в циклі, чи не так? 644 00:30:40,060 --> 00:30:45,960 Таким чином, я заявляю це Int знаменника вище циклу, 645 00:30:45,960 --> 00:30:48,880 і в мене немає його в петлю, тому що я був би 646 00:30:48,880 --> 00:30:52,680 оголосивши його купу разів, і вона не буде фактично виконувати 647 00:30:52,680 --> 00:30:54,280 до де-небудь ще в програмі. 648 00:30:54,280 --> 00:30:56,520 LEXI Росс: Так, важливо пам'ятати, що 649 00:30:56,520 --> 00:30:58,530 Змінні тільки потрібно бути оголошений один раз. 650 00:30:58,530 --> 00:31:00,570 Отже, уявіть, це все одно, ввівши нову змінну 651 00:31:00,570 --> 00:31:04,640 в світі, називаючи його Int або поплавець або етажерка, і 652 00:31:04,640 --> 00:31:07,170 як тільки він заявив, все що вам потрібно зробити, щоб змінити це 653 00:31:07,170 --> 00:31:10,510 просто назвати його по імені: знаменника, або х або у. 654 00:31:10,510 --> 00:31:13,347 Вам тільки потрібно насправді називати це Int тільки один раз. 655 00:31:13,347 --> 00:31:14,325 >> Ден Бредлі: Так. 656 00:31:14,325 --> 00:31:16,770 АУДИТОРІЯ: Чи можете ви пояснити різницю між% D 657 00:31:16,770 --> 00:31:21,180 і% F, і якщо ви коли-небудь оголосити 658 00:31:21,180 --> 00:31:22,790 змінну у вигляді десяткового? 659 00:31:22,790 --> 00:31:25,850 Ден Бредлі: Отже, г% і% F тут? 660 00:31:28,950 --> 00:31:32,190 LEXI Росс: D насправді ставиться тільки цифра, не 661 00:31:32,190 --> 00:31:33,630 десяткової, яка є своєрідною оману. 662 00:31:33,630 --> 00:31:36,310 Там немає фактичний тип даних, який називається десятковою, і коли ви 663 00:31:36,310 --> 00:31:39,750 хочете роздрукувати INT, ви звертаєтесь до нього, як% D, або 664 00:31:39,750 --> 00:31:44,440 %-Все-D. F для поплавок, який можна подумати, що це 665 00:31:44,440 --> 00:31:49,070 був би я, але насправді D для внутр. 666 00:31:49,070 --> 00:31:49,420 >> Ден Бредлі: Так? 667 00:31:49,420 --> 00:31:52,180 АУДИТОРІЯ: Так що в іншій програмі, то чому б нам не зробити 668 00:31:52,180 --> 00:31:57,764 Те ж саме, коли ви говорите за Фаренгейтом? 669 00:31:57,764 --> 00:32:00,760 Чому ми не поклав, як і -? 670 00:32:00,760 --> 00:32:02,465 Ден Бредлі: У нижній тут? 671 00:32:02,465 --> 00:32:03,810 Ви могли б мати. 672 00:32:03,810 --> 00:32:05,900 Це було б абсолютно законними. 673 00:32:05,900 --> 00:32:08,290 Мені подобається робити це таким чином, інші люди хотіли відділення 674 00:32:08,290 --> 00:32:10,450 його в різних рядків коду. 675 00:32:10,450 --> 00:32:12,290 У будь-якому випадку добре працює. 676 00:32:12,290 --> 00:32:12,760 В чому справа? 677 00:32:12,760 --> 00:32:13,700 >> АУДИТОРІЯ: Чи можете ви пояснити, що%% 678 00:32:13,700 --> 00:32:14,170 [Нерозбірливо]? 679 00:32:14,170 --> 00:32:15,520 Ден Бредлі: Отже, відсотків, відсотків. 680 00:32:15,520 --> 00:32:18,520 Так, я збирався піти з цього приводу. 681 00:32:18,520 --> 00:32:21,970 Перший відсотків називають керуючий символ, і він просто 682 00:32:21,970 --> 00:32:28,730 говорить, що річ за цим насправді не код. 683 00:32:28,730 --> 00:32:36,230 Таким чином, це перше відсотка, право,% 0,02 е, всі ці 0,02% F 684 00:32:36,230 --> 00:32:40,860 щось значити для Printf як функції. 685 00:32:40,860 --> 00:32:44,520 %%, Я просто хотів, щоб це насправді просто роздрукувати 686 00:32:44,520 --> 00:32:45,670 Знак відсотка. 687 00:32:45,670 --> 00:32:47,960 Так що я не говорю, що нічого важливого за ним. 688 00:32:47,960 --> 00:32:49,820 Я просто кажу, що є знак відсотка за нею. 689 00:32:49,820 --> 00:32:52,345 Будь ласка, роздрукуйте знак відсотка. 690 00:32:52,345 --> 00:32:54,010 Так відсотків, потім ще відсотків. 691 00:32:54,010 --> 00:32:56,415 АУДИТОРІЯ: Чи можете ви показати, що це буде виглядати, якщо у вас є 692 00:32:56,415 --> 00:32:57,858 плавати на основі іншої лінії? 693 00:32:57,858 --> 00:33:01,490 Ден Бредлі: О, так, звичайно. 694 00:33:01,490 --> 00:33:05,730 Так що я просять, щоб показати, що це буде виглядати, якщо я 695 00:33:05,730 --> 00:33:10,500 був цей поплавок чисельник, все це математика, по іншій лінії. 696 00:33:10,500 --> 00:33:16,200 Таким чином, поплавець відсотків = - 697 00:33:20,630 --> 00:33:25,970 і я хотів би позбутися цього і просто поставити у відсотках. 698 00:33:25,970 --> 00:33:29,400 І він робить ту ж саму річ, я просто 699 00:33:29,400 --> 00:33:30,763 є ще одна змінна. 700 00:33:30,763 --> 00:33:33,030 >> АУДИТОРІЯ: [нерозбірливо]. 701 00:33:33,030 --> 00:33:34,130 Ден Бредлі: Перейдіть до чого? 702 00:33:34,130 --> 00:33:35,512 АУДИТОРІЯ: Так що я бачу [нерозбірливо]. 703 00:33:40,380 --> 00:33:42,016 Ден Бредлі: Що ти не бачиш? 704 00:33:42,016 --> 00:33:43,510 АУДИТОРІЯ: Вибачте, я був [нерозбірливо]. 705 00:33:47,992 --> 00:33:48,490 Ден Бредлі: Так. 706 00:33:48,490 --> 00:33:50,980 АУДИТОРІЯ: Так що, якщо ми замінюємо символ екранування, 707 00:33:50,980 --> 00:33:54,466 припустимо, що ми хотіли мати знак долара замість цього, тільки для 708 00:33:54,466 --> 00:33:57,780 Наприклад, знак долара за відсоток? 709 00:33:57,780 --> 00:33:58,510 Ден Бредлі: Ні. 710 00:33:58,510 --> 00:34:01,400 Це всього лише долар, тільки один знак долара, тому що долар 711 00:34:01,400 --> 00:34:03,740 Знак нічого не значить для Printf. 712 00:34:03,740 --> 00:34:07,980 Питання було, мені потрібно, щоб у екрануючий символ для 713 00:34:07,980 --> 00:34:10,135 символи, такі як знак долара? 714 00:34:10,135 --> 00:34:13,330 АУДИТОРІЯ: Так начебто пов'язані, чи є інші випадки, які 715 00:34:13,330 --> 00:34:15,466 ми повинні знати, коли щось подібне відсотків 716 00:34:15,466 --> 00:34:18,820 знак може означати щось [нерозбірливо]? 717 00:34:18,820 --> 00:34:20,330 LEXI Росс: Так. 718 00:34:20,330 --> 00:34:24,469 Не обов'язково знак відсотка, але зворотну косу риску, см. 719 00:34:24,469 --> 00:34:26,370 як у нас є люфт кінця тут? 720 00:34:26,370 --> 00:34:29,800 Припустимо, ми насправді хотіли надрукувати люфт, ми повинні були б 721 00:34:29,800 --> 00:34:31,070 уникнути цього - 722 00:34:31,070 --> 00:34:32,670 і це буде збивати з пантелику - 723 00:34:32,670 --> 00:34:34,260 з іншого зворотну косу риску. 724 00:34:34,260 --> 00:34:36,370 Тому, якщо ми хочемо вивести \ \, ми б 725 00:34:36,370 --> 00:34:40,730 достатньо ввести це, або додаткові 726 00:34:40,730 --> 00:34:42,247 зворотну косу риску, іншого виходу. 727 00:34:48,340 --> 00:34:50,774 І ще один, якщо ми хочемо, щоб роздрукувати цитата - так 728 00:34:50,774 --> 00:34:53,040 В принципі, нічого такого позначає щось особливе 729 00:34:53,040 --> 00:34:55,800 у рядок, ми хочемо уникнути. 730 00:34:55,800 --> 00:34:58,700 Так що давайте говорити, що ми насправді хочемо мати цитата тут, ми б 731 00:34:58,700 --> 00:34:59,840 хочу зробити \ ". 732 00:34:59,840 --> 00:35:02,450 АУДИТОРІЯ: Так що це, як правило, зворотну косу риску? 733 00:35:02,450 --> 00:35:03,490 Ден Бредлі: Це, як правило, зворотну косу риску. 734 00:35:03,490 --> 00:35:03,740 LEXI Росс: Так. 735 00:35:03,740 --> 00:35:06,962 З якоїсь причини тут, це знак відсотка. 736 00:35:06,962 --> 00:35:08,212 >> АУДИТОРІЯ: [нерозбірливо]? 737 00:35:11,680 --> 00:35:13,400 Ден Бредлі: Цей хлопець? 738 00:35:13,400 --> 00:35:17,570 Це просто сказати, річ, яка ділиться тут 739 00:35:17,570 --> 00:35:20,170 буде розглядатися як поплавок заради поділу. 740 00:35:25,110 --> 00:35:30,370 Таким чином, у разі 50, поділений на 100, якщо у мене не було 741 00:35:30,370 --> 00:35:33,260 плавати там, це було б просто 0. 742 00:35:33,260 --> 00:35:35,930 Це все, що вийде, тому що 50 ділиться на 743 00:35:35,930 --> 00:35:40,510 100, якщо ви не включаючи будь знаків після коми, від 0. - 744 00:35:40,510 --> 00:35:43,520 і все після коми тільки з усіченим. 745 00:35:43,520 --> 00:35:44,891 АУДИТОРІЯ: Гм, 746 00:35:44,891 --> 00:35:48,550 Чому б нам не поставити її перед знаменника, а? 747 00:35:48,550 --> 00:35:51,310 Ден Бредлі: То чому ми не ставимо його перед 748 00:35:51,310 --> 00:35:56,010 знаменника, тому що коли ви щось поділу на 749 00:35:56,010 --> 00:35:59,320 ціле, вона працює просто відмінно. 750 00:35:59,320 --> 00:36:00,630 Наявність більшої кількості на дні 751 00:36:00,630 --> 00:36:02,790 нічого не змінює. 752 00:36:02,790 --> 00:36:06,120 Ви можете розділити на цілих просто відмінно. 753 00:36:06,120 --> 00:36:07,250 Це просто не має значення. 754 00:36:07,250 --> 00:36:09,053 Ви могли б, це нічого не змінило б. 755 00:36:09,053 --> 00:36:11,368 АУДИТОРІЯ: Так що якщо ви хотіли трьох знаків після коми, не так 756 00:36:11,368 --> 00:36:13,220 Ви ставите 0,03 відсотка? 757 00:36:13,220 --> 00:36:14,100 Ден Бредлі: Так. 758 00:36:14,100 --> 00:36:17,440 Ви б поставив 0,03%, якщо ви хочете 759 00:36:17,440 --> 00:36:20,207 трьох знаків після коми. 760 00:36:20,207 --> 00:36:23,793 >> АУДИТОРІЯ: А у команди, в чому різниця між 761 00:36:23,793 --> 00:36:26,330 , Що і просто роблю той час як на вершині? 762 00:36:26,330 --> 00:36:30,540 Ден Бредлі: Так зроби той час як у порівнянні якийсь час циклу два 763 00:36:30,540 --> 00:36:32,950 досить схожі команди. 764 00:36:32,950 --> 00:36:36,810 Єдина відмінність полягає у виконанні коду один раз, ви запустите 765 00:36:36,810 --> 00:36:40,510 код всередині циклу один раз перед 766 00:36:40,510 --> 00:36:42,940 Ви вносите будь-які фактичні перевірки. 767 00:36:42,940 --> 00:36:46,970 Таким чином, це також причина того, що я можу сказати знаменника, не даючи 768 00:36:46,970 --> 00:36:48,970 це число. 769 00:36:48,970 --> 00:36:52,180 Так що, якщо я сказав Int знаменника, а потім, (знаменник <= 770 00:36:52,180 --> 00:36:55,020 0), він може навіть не 771 00:36:55,020 --> 00:36:56,890 виконання коду всередині. 772 00:36:56,890 --> 00:36:59,350 Це зробить перевірку, що і раніше - 773 00:36:59,350 --> 00:37:00,600 так і тут. 774 00:37:14,590 --> 00:37:19,020 Так що, якщо у мене було це під час циклу тут, я повинен був би мати 775 00:37:19,020 --> 00:37:25,280 знаменник дорівнює, скажімо, -2 або деяке число менше 776 00:37:25,280 --> 00:37:28,150 або рівним 0, так було б насправді спробуйте запустити код 777 00:37:28,150 --> 00:37:30,130 усередині першої. 778 00:37:30,130 --> 00:37:33,190 Таким чином, взагалі кажучи, ви хочете використовувати зроби той час як цикл 779 00:37:33,190 --> 00:37:37,750 замість того, щоб у той час як цикл, коли ви просите для користувача введення 780 00:37:37,750 --> 00:37:41,820 тому що працює код один раз, просячи небудь користувачів 781 00:37:41,820 --> 00:37:46,920 дасть вам, як правило, краще рішення, а не 782 00:37:46,920 --> 00:37:50,250 просто вірити, що ви поклали, щоб почати с. 783 00:37:50,250 --> 00:37:53,290 АУДИТОРІЯ: А ви завжди супроводжується деякий час. 784 00:37:53,290 --> 00:37:56,550 Ден Бредлі: У слідують деякі шматок коду, який ви 785 00:37:56,550 --> 00:38:01,470 хочете виконати, а потім, деякий умова. 786 00:38:01,470 --> 00:38:03,820 LEXI РОСС: Думайте про це як одна команда роду розпалася 787 00:38:03,820 --> 00:38:04,390 на дві частини. 788 00:38:04,390 --> 00:38:06,836 Це робити-то час, а не як от зробити, і тоді я 789 00:38:06,836 --> 00:38:10,655 збирається додати деякий час, це просто зроби час. 790 00:38:10,655 --> 00:38:13,322 >> АУДИТОРІЯ: Я розумію причини, чому ви використовуєте 791 00:38:13,322 --> 00:38:15,990 два знаки відсотка, але ви можете пояснити мені, чому ми повинні 792 00:38:15,990 --> 00:38:19,390 є [нерозбірливо]? 793 00:38:19,390 --> 00:38:22,690 Ден Бредлі: Отже, на один процентний знак просто кажу, 794 00:38:22,690 --> 00:38:26,150 Printf, ось команди, що я хочу, щоб ви 795 00:38:26,150 --> 00:38:28,380 заповнити деяке число. 796 00:38:28,380 --> 00:38:31,750 Тому я хочу, щоб ви заповните його з двома знаками після коми та 797 00:38:31,750 --> 00:38:35,080 плавати, і ви побачите, поплавок в кінці 798 00:38:35,080 --> 00:38:37,548 Команда, саме ця відсотка. 799 00:38:37,548 --> 00:38:39,407 Чи має це сенс? 800 00:38:39,407 --> 00:38:39,894 АУДИТОРІЯ: Так. 801 00:38:39,894 --> 00:38:41,355 Ден Бредлі: Добре. 802 00:38:41,355 --> 00:38:44,764 >> АУДИТОРІЯ: Чи є щось, про зроби той час як цикл, який 803 00:38:44,764 --> 00:38:49,390 якщо умова не виконується, якщо ви отримуєте 804 00:38:49,390 --> 00:38:52,324 негативне число для чисельника, це буде просто тримати 805 00:38:52,324 --> 00:38:57,200 питаючи і буде продовжувати запитувати користувача? 806 00:38:57,200 --> 00:38:57,400 Ден Бредлі: Так. 807 00:38:57,400 --> 00:39:02,230 Таким чином, якщо умова а не виконується в кінці 808 00:39:02,230 --> 00:39:04,200 робити-то час, вона буде бігти назад до старту. 809 00:39:04,200 --> 00:39:05,860 Це просто цикл. 810 00:39:05,860 --> 00:39:08,000 Так що це як час циклу, що умова не було 811 00:39:08,000 --> 00:39:09,250 виконані на. 812 00:39:10,930 --> 00:39:13,740 Він просто працює ще один раз. 813 00:39:13,740 --> 00:39:14,558 Так. 814 00:39:14,558 --> 00:39:18,302 АУДИТОРІЯ: Так що, якщо ви робите це, ви можете, в той час як для вашої, 815 00:39:18,302 --> 00:39:22,430 покласти дві умови? 816 00:39:22,430 --> 00:39:24,452 Ден Бредлі: Можна. 817 00:39:24,452 --> 00:39:26,350 Це залежить від того, що ви просите. 818 00:39:26,350 --> 00:39:35,150 Таким чином, ви можете помістити дві умови в циклі якщо у вас є 819 00:39:35,150 --> 00:39:39,470 всі в якийсь логічний оператор, який звучить 820 00:39:39,470 --> 00:39:44,740 потворний, але це в основному цей знаменник менше або 821 00:39:44,740 --> 00:39:48,730 дорівнює нулю, або повертає істинне або помилкове, чи не так? 822 00:39:48,730 --> 00:39:51,760 Це менше або дорівнює нулю чи ні. 823 00:39:51,760 --> 00:39:55,640 Таким чином, ви можете зробити інші логічні оператори, що скажуть в той час як 824 00:39:55,640 --> 00:39:59,020 це також вірно і в той час як це теж брехня. 825 00:39:59,020 --> 00:40:04,630 Так що це такі речі, як і чисельник більше 826 00:40:04,630 --> 00:40:05,770 нулю, чи не так? 827 00:40:05,770 --> 00:40:10,130 Ось і питаю, це буде тільки петля в той час як знаменник менше 828 00:40:10,130 --> 00:40:12,496 нуля і у вас є позитивні чисельнику. 829 00:40:12,496 --> 00:40:13,700 АУДИТОРІЯ: А ви два НСРА, вірно? 830 00:40:13,700 --> 00:40:14,545 Ден Бредлі: Два НСРА. 831 00:40:14,545 --> 00:40:17,120 LEXI Росс: Ми розповімо, що більш пізніше. 832 00:40:17,120 --> 00:40:20,620 >> АУДИТОРІЯ: Що робити, якщо хтось не поклав у позитивному 833 00:40:20,620 --> 00:40:22,018 знаменник? 834 00:40:22,018 --> 00:40:26,410 Якщо вони поклали в негативній чисельник, ви можете спонукати їх 835 00:40:26,410 --> 00:40:27,540 , Скажімо, покласти в ненегативним чисельником і є 836 00:40:27,540 --> 00:40:30,460 Команда для цього? 837 00:40:30,460 --> 00:40:30,980 Ден Бредлі: Ви могли. 838 00:40:30,980 --> 00:40:32,066 АУДИТОРІЯ: зараз він просто говорить невід'ємних чисельнику. 839 00:40:32,066 --> 00:40:33,690 Що б бути використані для цього? 840 00:40:33,690 --> 00:40:38,230 Ден Бредлі: Отже, ви б, якщо умова, оскільки якщо 841 00:40:38,230 --> 00:40:42,282 чисельник менше нуля. 842 00:40:42,282 --> 00:40:43,960 LEXI Росс: Ви, напевно, просто хочу, щоб розбити його на більш 843 00:40:43,960 --> 00:40:44,810 кроки, вірно? 844 00:40:44,810 --> 00:40:49,660 Таким чином, в перший раз вони поставили на вході, ми просто скажемо, дати 845 00:40:49,660 --> 00:40:50,880 нам чисельник і ще багато чого. 846 00:40:50,880 --> 00:40:53,430 І потім, якщо вони роблять неправильні речі, це може бути у випадку 847 00:40:53,430 --> 00:40:55,570 на деякий час циклу, а не зроби той час, тому що у нас є 848 00:40:55,570 --> 00:41:01,460 Вперше ми маємо GetInt, а потім, що вхідний 849 00:41:01,460 --> 00:41:04,040 це погано, ми постійно питати їх для подальшого входу з 850 00:41:04,040 --> 00:41:10,560 різного роду текст, як це не працює або дати нам 851 00:41:10,560 --> 00:41:12,760 невід'ємні чисельнику замість того, що такі речі. 852 00:41:17,670 --> 00:41:19,143 >> Ден Бредлі: Так? 853 00:41:19,143 --> 00:41:22,089 АУДИТОРІЯ: Як ви зніміть речі, які [нерозбірливо] 854 00:41:22,089 --> 00:41:23,562 термінал? 855 00:41:23,562 --> 00:41:25,526 LEXI РОСС: Ясно. 856 00:41:25,526 --> 00:41:27,140 Ден Бредлі: Так, ви не можете ввести в неї. 857 00:41:27,140 --> 00:41:28,710 LEXI Росс: Насправді, це не реальний термінал. 858 00:41:28,710 --> 00:41:31,170 Питання в тому, як ви зрозуміти, що речі там, внизу? 859 00:41:31,170 --> 00:41:33,200 Відповідь на це питання, це не реальний термінал, але припустимо, що ви 860 00:41:33,200 --> 00:41:34,450 в реальному терміналу. 861 00:41:42,420 --> 00:41:45,200 Очистіть. 862 00:41:45,200 --> 00:41:46,450 О, це кішка. 863 00:41:53,940 --> 00:41:55,190 Ден Бредлі: [нерозбірливо]? 864 00:41:59,500 --> 00:42:01,120 Це що, правда? 865 00:42:01,120 --> 00:42:01,790 LEXI Росс: Ні, це всі мої речі. 866 00:42:01,790 --> 00:42:03,040 Ден Бредлі: [нерозбірливо]. 867 00:42:05,300 --> 00:42:07,912 LEXI РОСС: Там ми йдемо. 868 00:42:07,912 --> 00:42:08,340 Ден Бредлі: Так? 869 00:42:08,340 --> 00:42:10,030 >> АУДИТОРІЯ: Чи ясно роботу, якщо у вас є - 870 00:42:10,030 --> 00:42:12,787 як, скажімо запуску програми [нерозбірливо], і вона просить 871 00:42:12,787 --> 00:42:15,315 Ви за щось, а ви не хочете. 872 00:42:15,315 --> 00:42:16,080 Як ви - 873 00:42:16,080 --> 00:42:17,200 Ден Бредлі: Ctrl + C? 874 00:42:17,200 --> 00:42:17,780 LEXI Росс: Так. 875 00:42:17,780 --> 00:42:20,640 Так що якщо ви запускаєте програму і щось не збираються 876 00:42:20,640 --> 00:42:22,410 як ви хочете, щоб і ви просто хочете, щоб вийти цілому 877 00:42:22,410 --> 00:42:25,560 Програма, Control + C. Навіть якщо ви знаходитесь на Mac, а не Apple + C, 878 00:42:25,560 --> 00:42:34,341 Control + C. 879 00:42:34,341 --> 00:42:35,523 АУДИТОРІЯ: А у вас є правильна версія у 880 00:42:35,523 --> 00:42:36,820 перегляд у вашому профілі? 881 00:42:36,820 --> 00:42:39,780 Ден Бредлі: Я думаю, що це збережено, чи не так? 882 00:42:39,780 --> 00:42:40,350 Так. 883 00:42:40,350 --> 00:42:41,040 LEXI Росс: Це простір. 884 00:42:41,040 --> 00:42:42,290 Так. 885 00:42:49,685 --> 00:42:57,496 Я думаю, що перегляд 11. 886 00:42:57,496 --> 00:42:59,468 >> Ден Бредлі: Так? 887 00:42:59,468 --> 00:43:02,426 АУДИТОРІЯ: Чи C робити ніяких припущень про те, що 888 00:43:02,426 --> 00:43:05,877 змінну, якщо ви визначаєте змінну, але не призначити 889 00:43:05,877 --> 00:43:07,590 все, щоб вона негайно? 890 00:43:07,590 --> 00:43:11,380 Ден Бредлі: Так що будемо приймати тільки цілі в цьому місці. 891 00:43:11,380 --> 00:43:13,980 Так що якщо ви оголосите його - 892 00:43:13,980 --> 00:43:16,842 АУДИТОРІЯ: Якби я тільки що зробив Int знаменника крапка з комою, робить це 893 00:43:16,842 --> 00:43:18,750 Припустимо, що він дорівнює нулю або будь-який номер -? 894 00:43:18,750 --> 00:43:20,210 Ден Бредлі: Ні. 895 00:43:20,210 --> 00:43:25,920 Так що якщо ви не призначите, скажімо, INT знаменника в будь-яке значення, 896 00:43:25,920 --> 00:43:28,860 це може бути що завгодно. 897 00:43:28,860 --> 00:43:31,150 Це по старій пам'яті, що було в цьому місці. 898 00:43:31,150 --> 00:43:34,050 Таким чином, вона може бути негативною 2 млрд, це може бути позитивним 899 00:43:34,050 --> 00:43:38,030 2 млрд, і це може бути де завгодно. 900 00:43:38,030 --> 00:43:44,170 Так що якщо ви насправді працює речах, переконайтеся, що ви 901 00:43:44,170 --> 00:43:46,080 присвоїти значення змінної. 902 00:43:46,080 --> 00:43:49,050 Це не має значення, тому що ми відразу 903 00:43:49,050 --> 00:43:52,580 присвоєння значення, але в цілому, так. 904 00:44:01,660 --> 00:44:04,640 Будь-які інші питання? 905 00:44:04,640 --> 00:44:06,300 >> LEXI Росс: Ми також можемо просто взяти загальні питання в цій 906 00:44:06,300 --> 00:44:10,600 точки на лекційного матеріалу, з безліччю матеріалу, все, що ви 907 00:44:10,600 --> 00:44:15,363 було цікаво, про, це хороший час, щоб запитати у тих. 908 00:44:15,363 --> 00:44:16,325 АУДИТОРІЯ: Таким чином, у покрокових посібників, Zamyla 909 00:44:16,325 --> 00:44:17,768 згадується круглий функції. 910 00:44:17,768 --> 00:44:21,540 Ви не могли б роз'яснював, як реалізувати це? 911 00:44:21,540 --> 00:44:22,940 LEXI РОСС: Звичайно, як реалізувати це? 912 00:44:22,940 --> 00:44:25,700 АУДИТОРІЯ: Вона сказала, що раунд. 913 00:44:25,700 --> 00:44:26,580 LEXI Росс: О, так. 914 00:44:26,580 --> 00:44:29,880 Так що просто так ми все ж Vocab та інше, 915 00:44:29,880 --> 00:44:33,070 реалізувати як правило, означає фактично писати з нуля. 916 00:44:33,070 --> 00:44:35,530 І тому я не думаю, що вона мала на увазі щось подібне до написання 917 00:44:35,530 --> 00:44:36,010 круглий функції. 918 00:44:36,010 --> 00:44:37,820 Вона, напевно, просто мав на увазі, як його використовувати. 919 00:44:37,820 --> 00:44:41,900 Реалізація значить, ніби як створюють. 920 00:44:41,900 --> 00:44:48,670 Таким чином, в цілому, час, коли ми хочемо використовувати круглі функція Я 921 00:44:48,670 --> 00:44:49,170 маю на увазі, начебто, наприклад, 922 00:44:49,170 --> 00:44:50,260 якщо ви хочете, щоб закруглити. 923 00:44:50,260 --> 00:44:53,140 Чи можете ви дати мені трохи більше контексту, в який 924 00:44:53,140 --> 00:44:53,907 Проблема була? 925 00:44:53,907 --> 00:44:56,192 АУДИТОРІЯ: Щоб уникнути неточностей знаків після коми 926 00:44:56,192 --> 00:44:58,480 роблячи їх число з плаваючою крапкою. 927 00:44:58,480 --> 00:44:59,020 LEXI Росс: Так. 928 00:44:59,020 --> 00:45:02,770 Так що питання з поплавками, що ми начебто посилався на це 929 00:45:02,770 --> 00:45:04,820 що через те, як вони зберігаються в машині, 930 00:45:04,820 --> 00:45:08,700 вони не є 100% точною в тому, як ви могли б подумати 931 00:45:08,700 --> 00:45:10,060 калькулятор буде зберігати їх. 932 00:45:13,560 --> 00:45:16,560 Це важко для мене, щоб показати приклад, не знаючи, що 933 00:45:16,560 --> 00:45:17,750 контекст був. 934 00:45:17,750 --> 00:45:18,920 Я не знаю, чи можете ви думати про щось, Ден? 935 00:45:18,920 --> 00:45:23,120 >> Ден Бредлі: Так що, якщо ви питаєте, скажімо, числа 936 00:45:23,120 --> 00:45:26,590 більше, ніж 10, і ви використовуєте поплавці, і ви додаванням одного 937 00:45:26,590 --> 00:45:30,810 з поплавцем кожен раз, вона буде іноді чекати, поки ви не 938 00:45:30,810 --> 00:45:34,470 отримали до 12, перш ніж воно буде сказати, що це насправді число 939 00:45:34,470 --> 00:45:36,520 більше 10. 940 00:45:36,520 --> 00:45:42,530 Поплавці є серйозні питання як раз між 32-й 941 00:45:42,530 --> 00:45:49,970 і тридцять третій десяткове місце, підемо, так що може 9,9999999, або 942 00:45:49,970 --> 00:45:53,210 це може бути 10.0000001, вірно? 943 00:45:53,210 --> 00:45:55,680 Це дійсно не розрізняють між ними, так що якщо ви 944 00:45:55,680 --> 00:45:59,310 очікування речей більше або дорівнює 10, ви можете 945 00:45:59,310 --> 00:46:03,440 Не добратися на те, що ви думаєте, 10-й ітерації. 946 00:46:03,440 --> 00:46:07,760 Ви можете отримати там, в 11-му. 947 00:46:07,760 --> 00:46:08,980 LEXI РОСС: По суті, так. 948 00:46:08,980 --> 00:46:11,490 Коли ви циклу по багато плаває, що, коли 949 00:46:11,490 --> 00:46:13,276 неточностей трапитися. 950 00:46:13,276 --> 00:46:18,350 Залу: Я думаю, тому в основному, це як на р 951 00:46:18,350 --> 00:46:24,030 встановлена, вона хоче, щоб ви круглий значення з плаваючою точкою, і якщо ви покладете в 952 00:46:24,030 --> 00:46:29,940 4,24 для величини зміни необхідно тому, якщо ви просто робите 953 00:46:29,940 --> 00:46:33,970 раз 100, це буде насправді зміниться в 423 - 954 00:46:33,970 --> 00:46:34,460 Ден Бредлі: Іноді, так. 955 00:46:34,460 --> 00:46:36,974 АУДИТОРІЯ: Так що я думаю, що це так само, як, як ви використовуєте круглий 956 00:46:36,974 --> 00:46:39,390 функції в реальному коді зробити так, щоб він не робить цього? 957 00:46:39,390 --> 00:46:44,390 Ден Бредлі: Так що якщо ви округленням 424 шляхом множення 958 00:46:44,390 --> 00:46:48,320 на 100 і перетворити його в ціле, вона буде іноді 959 00:46:48,320 --> 00:46:52,130 зробити його 423 через те, що неточність. 960 00:46:52,130 --> 00:46:58,926 І так, що ви можете зробити, це просто додати 0,0000003. 961 00:46:58,926 --> 00:47:00,744 Залу: Але я думаю, що, насправді, вони хочуть 962 00:47:00,744 --> 00:47:02,400 нам використовувати раунд. 963 00:47:02,400 --> 00:47:03,250 Ден Бредлі: круглий функції? 964 00:47:03,250 --> 00:47:06,310 Там, напевно, математичні функції, то в 965 00:47:06,310 --> 00:47:06,996 математичну бібліотеку. 966 00:47:06,996 --> 00:47:07,910 АУДИТОРІЯ: # включити математику. 967 00:47:07,910 --> 00:47:10,150 Ден Бредлі: # включити , і є 968 00:47:10,150 --> 00:47:10,990 Ймовірно, круглі функції. 969 00:47:10,990 --> 00:47:12,480 АУДИТОРІЯ: Так само, як круглі () -? 970 00:47:12,480 --> 00:47:13,840 LEXI РОСС: По суті, тому що ви хочете, щоб округлити до 971 00:47:13,840 --> 00:47:14,720 найближчого цента. 972 00:47:14,720 --> 00:47:16,440 Ден Бредлі: Давайте підтягти людина сторінок. 973 00:47:16,440 --> 00:47:19,460 Таким зручний інструмент, якщо ви не знаєте, - 974 00:47:19,460 --> 00:47:21,800 Ви тягнете терміналу - 975 00:47:21,800 --> 00:47:23,670 це якщо ви йдете до людини математиці. 976 00:47:27,272 --> 00:47:29,030 LEXI РОСС: Cool. 977 00:47:29,030 --> 00:47:34,970 >> Таким чином, ви можете бачити, так і людина є скороченням від керівництва, а не людини, а 978 00:47:34,970 --> 00:47:37,660 вона дозволяє шукати додаткову інформацію про будь 979 00:47:37,660 --> 00:47:40,000 функції або бібліотеки, які ви можете мати справу. 980 00:47:40,000 --> 00:47:44,040 Так що я просто набрав в людині математики. 981 00:47:44,040 --> 00:47:45,290 Дозвольте мені змінити масштаб зображення 982 00:47:50,990 --> 00:47:52,610 Ден Бредлі: Ми можемо спробувати круглий людина, теж. 983 00:47:52,610 --> 00:47:55,060 LEXI РОСС: Звичайно. 984 00:47:55,060 --> 00:47:56,870 Ден Бредлі: І це буде перерахувати - 985 00:47:56,870 --> 00:48:00,640 Людина математиці буду перераховувати все, що в математичну бібліотеку, 986 00:48:00,640 --> 00:48:02,820 які ми будемо включати. 987 00:48:02,820 --> 00:48:04,080 Так, у нас також є тур. 988 00:48:04,080 --> 00:48:06,690 LEXI Росс: Так що я тільки що зробив чоловік раунд. 989 00:48:06,690 --> 00:48:10,460 Тут можна побачити в резюме, це говорить # включити 990 00:48:10,460 --> 00:48:16,510 , так що це ніби як cs50.h, stdio.h. 991 00:48:16,510 --> 00:48:19,020 І, схоже, це насправді перевантажені, це означає, 992 00:48:19,020 --> 00:48:22,930 вона приймає різні типи аргументів, тому ви можете навколо 993 00:48:22,930 --> 00:48:24,320 подвоюється або поплавками. 994 00:48:24,320 --> 00:48:26,740 Ден Бредлі: Круглий проти roundf. 995 00:48:26,740 --> 00:48:27,335 LEXI РОСС: Roundf. 996 00:48:27,335 --> 00:48:30,128 А Zamyla кажучи вже про roundf проти турі? 997 00:48:30,128 --> 00:48:34,120 АУДИТОРІЯ: У керівництві, це була просто кругла (). 998 00:48:34,120 --> 00:48:36,780 Ден Бредлі: Отже, вона, ймовірно, використовував подвійні, 999 00:48:36,780 --> 00:48:39,110 Потім, на відміну від поплавка. 1000 00:48:39,110 --> 00:48:43,080 Отже, ви б помножити на 100, а потім навколо нього, і 1001 00:48:43,080 --> 00:48:47,950 ви отримаєте число найближчих до нього, я думаю. 1002 00:48:47,950 --> 00:48:50,450 >> LEXI Росс: круглий функція повертає інтеграл 1003 00:48:50,450 --> 00:48:53,760 Значення найближчого до х округлення половини випадків від 0, 1004 00:48:53,760 --> 00:48:55,850 незалежно від поточного напряму округлення. 1005 00:48:55,850 --> 00:49:00,160 Таким чином, по суті, ви хотіли б тільки навколо, як тільки ви на 1006 00:49:00,160 --> 00:49:01,830 ціле число, так що ви помножити на 1007 00:49:01,830 --> 00:49:03,896 100, а потім раунд. 1008 00:49:03,896 --> 00:49:05,787 Чи означає це, більше сенсу? 1009 00:49:05,787 --> 00:49:10,580 АУДИТОРІЯ: Щоб використовувати цю функцію у файлі C, вам потрібно 1010 00:49:10,580 --> 00:49:15,475 покласти круглий поплавок, як якщо б ваша змінна називається Q, ви 1011 00:49:15,475 --> 00:49:21,216 покласти раунд (поплавок) д, а потім дужки, або може 1012 00:49:21,216 --> 00:49:23,770 ви просто поставити круглі, а потім Питання в дужках? 1013 00:49:23,770 --> 00:49:27,180 Ден Бредлі: Отже, якщо ви намагаєтеся використовувати цю функцію 1014 00:49:27,180 --> 00:49:33,360 насправді, ви б вважати, що Q, Q є поплавець, 1015 00:49:33,360 --> 00:49:34,995 або як її оголосили? 1016 00:49:34,995 --> 00:49:35,980 АУДИТОРІЯ: Q являє собою поплавок. 1017 00:49:35,980 --> 00:49:39,080 Ден Бредлі: Отже, якщо Q оголошений як поплавок, ви б 1018 00:49:39,080 --> 00:49:42,150 просто взяти раунд, а потім дати йому ц. 1019 00:49:42,150 --> 00:49:45,770 Можливо, вам доведеться оголосити його як подвійну в цьому випадку. 1020 00:49:45,770 --> 00:49:47,170 LEXI Росс: Так, якщо ви хочете використовувати roundf. 1021 00:49:47,170 --> 00:49:50,620 Залу: Я міг би просто використовувати roundf, а потім д в лапках? 1022 00:49:50,620 --> 00:49:53,706 Ден Бредлі: Ні, не в лапках, тільки ц. 1023 00:49:53,706 --> 00:49:55,542 АУДИТОРІЯ: На жаль, не в лапках, в дужках. 1024 00:49:55,542 --> 00:49:56,792 Ден Бредлі: в дужках, так. 1025 00:50:00,330 --> 00:50:02,040 LEXI РОСС: Вибачте, що була трохи заплутаною. 1026 00:50:02,040 --> 00:50:03,067 Є ще питання? 1027 00:50:03,067 --> 00:50:04,041 >> Ден Бредлі: Так? 1028 00:50:04,041 --> 00:50:07,450 АУДИТОРІЯ: Так круглих тільки раундів до цілих чисел? 1029 00:50:07,450 --> 00:50:08,920 LEXI Росс: Так. 1030 00:50:08,920 --> 00:50:11,020 Ден Бредлі: Так, тільки круглий турів до цілих. 1031 00:50:11,020 --> 00:50:13,030 АУДИТОРІЯ: Так що, якщо ви хочете мати те, що точна 1032 00:50:13,030 --> 00:50:15,146 повинна бути [нерозбірливо], помножених на 100, а потім 1033 00:50:15,146 --> 00:50:17,536 розділений на 100 раз, якщо ви хотіли - 1034 00:50:20,410 --> 00:50:23,497 LEXI Росс: Так що, якщо ви хочете отримати його в десятковій формі? 1035 00:50:23,497 --> 00:50:27,224 АУДИТОРІЯ: Ну, наприклад, наприклад, [нерозбірливо] ви 1036 00:50:27,224 --> 00:50:30,732 є 1,25, а потім [нерозбірливо] 1037 00:50:30,732 --> 00:50:36,100 1,24, якщо ви хочете зберегти це як 1,25, ви б 1038 00:50:36,100 --> 00:50:39,516 множимо на 100, навколо нього, а потім розділити його на 100 1039 00:50:39,516 --> 00:50:41,480 знову, щоб отримати 1,25? 1040 00:50:41,480 --> 00:50:41,860 LEXI Росс: Так. 1041 00:50:41,860 --> 00:50:46,770 Таким чином, питання, так як округлення, як людина сторінку 1042 00:50:46,770 --> 00:50:50,470 говорить, округлюється до найближчого цілого значення, це означає, 1043 00:50:50,470 --> 00:50:53,420 що хотіли б помножити на 100, виконайте 1044 00:50:53,420 --> 00:50:56,260 округлення, і розділити на 100 ще раз, щоб, скажімо, отримати правильне 1045 00:50:56,260 --> 00:50:58,750 доларів і центів значення? 1046 00:50:58,750 --> 00:51:02,000 І відповідь -? 1047 00:51:02,000 --> 00:51:02,160 Ден Бредлі: Ні. 1048 00:51:02,160 --> 00:51:04,840 Я маю на увазі, якщо ви просто отримуєте значення з плаваючою точкою, якщо ви почнете 1049 00:51:04,840 --> 00:51:08,730 з поплавцем значення 1,25, що те, як це буде 1050 00:51:08,730 --> 00:51:10,260 інтерпретувати. 1051 00:51:10,260 --> 00:51:13,790 Так що якщо ви помножте його на 100, а потім розділіть його на 100, 1052 00:51:13,790 --> 00:51:17,130 вона як і раніше буде інтерпретовано як 1,25, або 1053 00:51:17,130 --> 00:51:18,260 можливо 1,249 ... 1054 00:51:18,260 --> 00:51:19,440 .. 999. 1055 00:51:19,440 --> 00:51:21,630 LEXI Росс: Я думаю, що питання було б, ви б 1056 00:51:21,630 --> 00:51:24,850 множення, а потім використовувати круглий, а потім розділити, так що це як - 1057 00:51:24,850 --> 00:51:25,290 Ден Бредлі: Так. 1058 00:51:25,290 --> 00:51:27,530 Я все ще не думаю, що це міняє нічого, хоча. 1059 00:51:27,530 --> 00:51:28,000 Я думаю, що це досі. 1060 00:51:28,000 --> 00:51:30,550 LEXI Росс: Тому що кругла робить - він використовує цілі числа. 1061 00:51:30,550 --> 00:51:34,080 Так що, якщо ви спробуєте навколо 1,25, ви просто отримаєте 1. 1062 00:51:34,080 --> 00:51:36,570 Тому я думаю, для того, щоб отримати як додаткову точність, 1063 00:51:36,570 --> 00:51:37,720 якщо це те, що ви говорите. 1064 00:51:37,720 --> 00:51:42,260 >> АУДИТОРІЯ: Отже, у яких випадках ви використовуєте круглі, то? 1065 00:51:42,260 --> 00:51:44,920 Ден Бредлі: Так в цьому випадку, якщо ви хочете, скажімо, числа 1066 00:51:44,920 --> 00:51:51,570 центів з $ 1,25, ви б помножити на 100, круглий, отримаємо 1067 00:51:51,570 --> 00:51:56,980 125, і залишити все як, що, як цента, на відміну від намагаєтеся 1068 00:51:56,980 --> 00:51:58,760 перетворити його назад в долари і центи. 1069 00:51:58,760 --> 00:52:02,092 LEXI Росс: О, так, так, звичайно. 1070 00:52:02,092 --> 00:52:04,948 АУДИТОРІЯ: Навіщо вам потрібно округлити, що [нерозбірливо]? 1071 00:52:07,810 --> 00:52:10,740 Ден Бредлі: Так що якщо ви помножте його на 100, а потім 1072 00:52:10,740 --> 00:52:14,060 відразу ж перетворити його в ціле число, яке більше 1073 00:52:14,060 --> 00:52:17,950 корисній формі, що, коли ви маєте справу з 1074 00:52:17,950 --> 00:52:19,470 неточностей, вірно? 1075 00:52:19,470 --> 00:52:26,450 Таким чином, це може бути 124.999999, і тому, якщо ви потім перетворити це в 1076 00:52:26,450 --> 00:52:29,480 ціле число, він просто падає все геть це нижче 1077 00:52:29,480 --> 00:52:29,930 десяткового знака. 1078 00:52:29,930 --> 00:52:31,160 АУДИТОРІЯ: Так вона буде давати вам [нерозбірливо]. 1079 00:52:31,160 --> 00:52:34,960 Ден Бредлі: Точно, замість 125, який є 1080 00:52:34,960 --> 00:52:37,074 Чому ви хочете, щоб закруглити. 1081 00:52:37,074 --> 00:52:38,850 >> АУДИТОРІЯ: Вибачте, не могли б ви повторити те, що ви сказали, 1082 00:52:38,850 --> 00:52:40,680 повинні робити, а не те, що ви не повинні робити? 1083 00:52:40,680 --> 00:52:40,910 Ден Бредлі: Добре. 1084 00:52:40,910 --> 00:52:45,725 Так що ви повинні зробити, якщо ви починаєте з 1,25, помножимо 1085 00:52:45,725 --> 00:52:51,960 це на 100, а потім навколо, що ціле число, що 125 або 1086 00:52:51,960 --> 00:52:56,420 124.9999, і отримаємо, що до найближчого цілого числа. 1087 00:52:56,420 --> 00:52:58,420 АУДИТОРІЯ: Так що якщо ви навколо, що ставить його 1088 00:52:58,420 --> 00:52:59,920 до найближчого цілого числа? 1089 00:52:59,920 --> 00:53:01,420 Ден Бредлі: Так. 1090 00:53:01,420 --> 00:53:07,420 АУДИТОРІЯ: Чи є спосіб обмежити, якщо ви попросите поплавком 1091 00:53:07,420 --> 00:53:10,920 буде вводиться, чи є спосіб обмежити кількість десяткових 1092 00:53:10,920 --> 00:53:13,920 місця, які ви можете ввести поплавок? 1093 00:53:13,920 --> 00:53:16,210 LEXI Росс: Не використовується реалізації CS50 автора. 1094 00:53:16,210 --> 00:53:22,560 Я маю на увазі, ви можете розраховувати, наскільки великий вхід дається 1095 00:53:22,560 --> 00:53:25,020 користувачів, але це зажадає впровадження нових 1096 00:53:25,020 --> 00:53:29,780 з GetFloat, і тому вам не потрібно турбуватися про це. 1097 00:53:29,780 --> 00:53:34,850 Ден Бредлі: Так що, якщо вони, скажімо, вхідний 1,256, ви можете просто 1098 00:53:34,850 --> 00:53:38,310 використовувати 1,25, або ви могли б зробити 1,26. 1099 00:53:38,310 --> 00:53:40,450 У будь-якому випадку, я думаю, що здійснення говорить, що ви можете - 1100 00:53:40,450 --> 00:53:41,860 АУДИТОРІЯ: ви можете просто його навколо, щоб - 1101 00:53:41,860 --> 00:53:46,860 Ден Бредлі: все, що хоче, та тих пір, поки ви 1102 00:53:46,860 --> 00:53:48,110 свого роду округлення. 1103 00:53:51,410 --> 00:53:53,950 Небудь ще? 1104 00:53:53,950 --> 00:53:55,200 Не повинно бути близько округлення. 1105 00:54:00,886 --> 00:54:01,374 LEXI Росс: Так? 1106 00:54:01,374 --> 00:54:03,814 >> АУДИТОРІЯ: Якщо ми хочемо, щоб перевірити, якщо стиль нашої 1107 00:54:03,814 --> 00:54:06,285 Код є прийнятним або кращий стиль 1108 00:54:06,285 --> 00:54:08,585 що це може бути, в тому, що такі речі ми будемо виховувати в 1109 00:54:08,585 --> 00:54:11,460 розділ, або в офісі годин, або в тому, що річ 1110 00:54:11,460 --> 00:54:15,582 можна і по пошті приватним на речі, на обговорення, а потім 1111 00:54:15,582 --> 00:54:17,280 звернутися за порадою по? 1112 00:54:17,280 --> 00:54:20,400 LEXI Росс: ми не знаємо, в робочий час або на CS50 1113 00:54:20,400 --> 00:54:23,510 Обговоріть, ми не будемо насправді клас вашого р набором заздалегідь 1114 00:54:23,510 --> 00:54:26,420 за стилем, але я думаю, що, ймовірно, найкорисніший 1115 00:54:26,420 --> 00:54:29,800 що ви могли б зробити, щоб подивитися на приклади, і ви 1116 00:54:29,800 --> 00:54:35,290 повинні бути в змозі виявити, що в розділ коду, який повинен бути 1117 00:54:35,290 --> 00:54:39,290 поширюватися в Інтернеті, а також лекції слайди, є 1118 00:54:39,290 --> 00:54:40,730 повинні бути прикладами коду. 1119 00:54:40,730 --> 00:54:43,150 Але якщо у вас є окремі питання про певне 1120 00:54:43,150 --> 00:54:46,300 Стиль питання, безумовно, не соромтеся запитувати про те, що CS50 1121 00:54:46,300 --> 00:54:49,320 Обговорити та офісні годинники, чи на своєму власному часі. 1122 00:54:49,320 --> 00:54:52,330 Але якщо це більш загальний погляд на мого коду, найкраще 1123 00:54:52,330 --> 00:54:55,610 вид використання прикладів і спробувати відповідати вашим кодом до цього. 1124 00:54:55,610 --> 00:54:57,560 І я вважаю, що стиль керівництва на - 1125 00:54:57,560 --> 00:54:58,640 Ден Бредлі: Там стилю керівництва. 1126 00:54:58,640 --> 00:54:59,830 Стиль керівництва є дивним. 1127 00:54:59,830 --> 00:55:03,670 Вона вчить вас все, що вам потрібно, і воно охоплює досить 1128 00:55:03,670 --> 00:55:07,710 ступеня кожен Приміром, відомих людині, або принаймні мені не відомо. 1129 00:55:10,750 --> 00:55:12,000 >> Небудь ще? 1130 00:55:14,830 --> 00:55:15,275 Добре. 1131 00:55:15,275 --> 00:55:15,840 Круто, хлопці. 1132 00:55:15,840 --> 00:55:16,440 LEXI РОСС: Майте великий день. 1133 00:55:16,440 --> 00:55:17,690 Ден Бредлі: Спасибі, що прийшли.