1 00:00:00,000 --> 00:00:10,920 >> [Muzikavimo] 2 00:00:10,920 --> 00:00:14,680 >> DAVID J Malan: Gerai, Sveiki sugrįžę CS50. 3 00:00:14,680 --> 00:00:16,500 Tai savaitės dviejų pradžia. 4 00:00:16,500 --> 00:00:18,940 Iš vieno iš mūsų žodis draugai miesteliu - 5 00:00:18,940 --> 00:00:22,620 jei jus domina, jei įmanoma, arba dabar arba tam tikru metu ateityje terminas 6 00:00:22,620 --> 00:00:25,670 net, kai patogiau, mokymas vidurinių mokyklų moksleiviai mažai 7 00:00:25,670 --> 00:00:27,680 kažkas apie kompiuterių mokslą, padaryti galva, kad URL. 8 00:00:27,680 --> 00:00:32,360 Jie yra ypač reikalinga dabar iš mokytojai, ypač jei turite 9 00:00:32,360 --> 00:00:34,700 turėjo tam tikrą poveikį kompiuterių mokslo. 10 00:00:34,700 --> 00:00:38,060 >> Taigi priminti, kad paskutinį kartą, mes pristatėme keletas duomenų tipai C, ir 11 00:00:38,060 --> 00:00:40,590 jums gali tekti pradėjo gauti savo rankas purvinas su jais iki šiol 12 00:00:40,590 --> 00:00:41,940 į problemą nustatyti vieną. 13 00:00:41,940 --> 00:00:43,230 Ir mes turėjome Char. 14 00:00:43,230 --> 00:00:49,100 Taigi, šiek tiek techninių terminų, kas yra char kaip žinote šiandien? 15 00:00:49,100 --> 00:00:51,050 >> Taigi tai simbolis, bet tegul Tiksliau dabar. 16 00:00:51,050 --> 00:00:53,735 Ką mums reiškia pobūdžio arba individuali char? 17 00:00:53,735 --> 00:00:56,700 18 00:00:56,700 --> 00:00:59,500 Ne skaitmeninis pobūdis - 19 00:00:59,500 --> 00:01:00,670 todėl nebūtinai. 20 00:01:00,670 --> 00:01:04,580 Pasirodo, kad net numerius, net skyrybos ir raidės 21 00:01:04,580 --> 00:01:06,980 atstovaujama su šiais duomenimis įveskite žinomas kaip Char. 22 00:01:06,980 --> 00:01:09,440 Taigi tai nebūtinai abėcėlės. 23 00:01:09,440 --> 00:01:11,100 Taip? 24 00:01:11,100 --> 00:01:12,275 >> Taigi tai ASCII simbolių. 25 00:01:12,275 --> 00:01:15,510 Taigi, jei manote, kad atgal į savaitę nulio, kai mes turėjome savo baitą savanorių 26 00:01:15,510 --> 00:01:19,150 sugalvoti ir arba laikyti savo rankas ar ne, jie atstovavo bitai. 27 00:01:19,150 --> 00:01:22,450 Bet kartu kaip aštuonerių grupės jie atstovavo baitą. 28 00:01:22,450 --> 00:01:26,030 Ir mes pristatė ASCII sąvoka tuo paskaitą, kuri paprasčiausiai yra 29 00:01:26,030 --> 00:01:28,170 kartografavimo tarp skaičių ir raidžių. 30 00:01:28,170 --> 00:01:32,010 Ir ASCII panaudojimas, kaip tie žmonės numanomų, aštuonis bitus 31 00:01:32,010 --> 00:01:33,660 atstovauti simbolį. 32 00:01:33,660 --> 00:01:36,890 >> Taigi, atitinkamai, jei aštuonis bitus gali imtųsi vieną iš dviejų verčių - 33 00:01:36,890 --> 00:01:38,010 nulis arba vienas - 34 00:01:38,010 --> 00:01:40,280 Tai reiškia, kad buvo dvi galimybės už šio asmens - 35 00:01:40,280 --> 00:01:41,230 nulis arba vienas - 36 00:01:41,230 --> 00:01:44,070 du už šio asmens, du tai žmogus, du šio vieno. 37 00:01:44,070 --> 00:01:47,450 Taigi du kartus iš viso du kartus du kartus du kartus du - 38 00:01:47,450 --> 00:01:49,700 todėl du iš viso aštuntas. 39 00:01:49,700 --> 00:01:54,320 Taigi, čia yra bendras simbolių skaičius 256 gali būti, kad jūs galite 40 00:01:54,320 --> 00:01:55,750 sudaro su aštuonis bitus. 41 00:01:55,750 --> 00:01:59,210 >> Dabar, tiems iš jūsų, kurie kalba Azijos kalbos gali žinoti, kad yra daugiau 42 00:01:59,210 --> 00:02:02,620 simbolių pasaulyje ne tik Kaip ir pusryčių ir Cs ir DS. 43 00:02:02,620 --> 00:02:06,130 Ir iš tiesų, ASCII nėra pakanka kalbų pasaulyje daug. 44 00:02:06,130 --> 00:02:07,760 Bet daugiau apie tai kitą kartą. 45 00:02:07,760 --> 00:02:11,240 Nes dabar, žinau, kad C, jei norite atstovauti laišką, gabalas 46 00:02:11,240 --> 00:02:15,780 skyrybos, arba tiesiog kažkas pobūdis pobūdžio, mes naudojame Char. 47 00:02:15,780 --> 00:02:18,240 Ir tai vienas baitas ar aštuonis bitus. 48 00:02:18,240 --> 00:02:19,690 >> Kaip apie int? 49 00:02:19,690 --> 00:02:20,780 Na, int yra sveikasis skaičius. 50 00:02:20,780 --> 00:02:23,175 Kiek bitų, jei jūs žinote, buvo sveikasis skaičius paprastai? 51 00:02:23,175 --> 00:02:25,930 52 00:02:25,930 --> 00:02:27,512 Kiekvienas prisiminti? 53 00:02:27,512 --> 00:02:29,600 Taigi, tai paprastai 32. 54 00:02:29,600 --> 00:02:32,120 Jis tikrai priklauso nuo kompiuterio kad jūs naudojate. 55 00:02:32,120 --> 00:02:35,770 Tačiau prietaiso, ir daug kompiuterių, tai 32 bitų ar keturis 56 00:02:35,770 --> 00:02:37,140 baitų - aštuonis kartus keturi. 57 00:02:37,140 --> 00:02:39,790 Ir ints tiesiog naudojama saugoti numeriai, arba neigiamas, 58 00:02:39,790 --> 00:02:41,610 teigiamas arba lygus nuliui. 59 00:02:41,610 --> 00:02:45,250 >> Ir jei jūs turite 32 bitų ir turite tik rūpinasi teigiamais skaičiais, gali 60 00:02:45,250 --> 00:02:48,960 kas apytikrė kiek įmanoma sveikieji skaičiai kompiuteris gali atstovauti nuo 61 00:02:48,960 --> 00:02:51,820 nuliui iki? 62 00:02:51,820 --> 00:02:56,130 Taigi būtų du į 32, o yra maždaug keturis milijardus. 63 00:02:56,130 --> 00:02:59,720 Taigi šie du įgaliojimai bus pasikartojančios temos kompiuterių mokslo. 64 00:02:59,720 --> 00:03:03,930 Kaip matysime, jie gana patogus dirbti, net jei tai ne visai 65 00:03:03,930 --> 00:03:05,790 lengva padaryti matematikos galvą. 66 00:03:05,790 --> 00:03:07,000 >> Taigi, mes pasakyti maždaug keturis milijardus. 67 00:03:07,000 --> 00:03:08,620 Dabar, ilgai ilgai - 68 00:03:08,620 --> 00:03:09,770 galite rūšies atspėti. 69 00:03:09,770 --> 00:03:10,480 Tai daugiau nei int. 70 00:03:10,480 --> 00:03:12,440 Kiek bitų? 71 00:03:12,440 --> 00:03:14,250 Taigi, 64 bitų ar aštuoni baitai. 72 00:03:14,250 --> 00:03:17,480 Tai tiesiog reiškia, kad jums gali atstovauti net didesni numeriai, didesnis teigiamas arba 73 00:03:17,480 --> 00:03:19,160 didesni neigiami skaičiai. 74 00:03:19,160 --> 00:03:20,060 >> Ir kaip apie plaukti? 75 00:03:20,060 --> 00:03:22,260 Štai slankaus kablelio vertė 32 bitų. 76 00:03:22,260 --> 00:03:25,180 Tai tik realusis skaičius, kažkas su kablelio. 77 00:03:25,180 --> 00:03:30,100 Bet jei vietoj reikia daugiau vietų po kablelio arba norite 78 00:03:30,100 --> 00:03:33,720 sudaro didesnę numeris su kai frakcija po to, galite naudoti 79 00:03:33,720 --> 00:03:36,260 dvigubai, o tai yra 64 bitai. 80 00:03:36,260 --> 00:03:38,240 >> Tačiau yra įdomus Takeaway čia. 81 00:03:38,240 --> 00:03:42,890 Taigi, jei ints riboja 32 bitų ir net ilgi ilgi riboja 64 82 00:03:42,890 --> 00:03:46,180 bitai, kad tarsi kyla klausimas, ką daryti, jei jūs iš tikrųjų norite suskaičiuoti 83 00:03:46,180 --> 00:03:48,790 didesnis nei int 4 mlrd? 84 00:03:48,790 --> 00:03:50,330 Na, jūs tiesiog naudokite ilgai ilgai. 85 00:03:50,330 --> 00:03:54,200 Bet kas, jei norite skaičiuoti didesnis nei du su 64th, duoti ar priimti? 86 00:03:54,200 --> 00:03:55,810 >> Dabar, kad didžiulis skaičius. 87 00:03:55,810 --> 00:03:59,250 Bet galų gale, jūs iš tiesų gali rūpintis šių vertybių rūšių, 88 00:03:59,250 --> 00:04:03,070 ypač jei jūs naudojate duombazę ir pradeda rinkti daug ir daug 89 00:04:03,070 --> 00:04:06,190 ir daug duomenų ir Unikalių numerius kiekvienai šio duomenų gabalas. 90 00:04:06,190 --> 00:04:07,430 Taigi mes tarsi turi problemą. 91 00:04:07,430 --> 00:04:10,700 Ir panašiai, su slankaus kablelio vertybės - plūdes arba dviviečiai - 92 00:04:10,700 --> 00:04:14,290 jei jūs tik gavau baigtinio skaičiaus bitai, kiek iš viso numeriai tu galėjai 93 00:04:14,290 --> 00:04:16,980 galbūt atstovauja? 94 00:04:16,980 --> 00:04:19,540 >> Na, tai mažiau akivaizdu, kai jūs įtraukti dešimtainį kablelį. 95 00:04:19,540 --> 00:04:20,899 Bet tai tikrai ribotas. 96 00:04:20,899 --> 00:04:24,390 Jei turite baigtinio skaičiaus bitai, ribotas skaičius žmonių, baigtinis 97 00:04:24,390 --> 00:04:27,350 skaičius lemputes, be abejo, galite sudaro tik baigtinio skaičiaus 98 00:04:27,350 --> 00:04:28,510 slankiojo kablelio vertybes. 99 00:04:28,510 --> 00:04:33,170 Bet kiek realieji skaičiai yra jų pasaulyje? 100 00:04:33,170 --> 00:04:33,680 Yra begalinis. 101 00:04:33,680 --> 00:04:37,280 Štai kokios problemos, nes mes neturi begalinį kiekį 102 00:04:37,280 --> 00:04:39,970 atminties arba atminties viduje mūsų kompiuteriuose. 103 00:04:39,970 --> 00:04:41,780 Taigi, kai sudėtinga viskas gali atsitikti. 104 00:04:41,780 --> 00:04:43,900 >> Taigi eikime į priekį ir pabandyti išreikšti tai čia. 105 00:04:43,900 --> 00:04:46,240 Leiskite man eiti į priekį ir atverti gedit. 106 00:04:46,240 --> 00:04:50,360 Aš ruošiuosi eiti į priekį ir išsaugoti failą vadinamas "floats0.c" tiesiog būti 107 00:04:50,360 --> 00:04:54,630 atitikti pavyzdį, kuris yra galima rasti internete, jei norite. 108 00:04:54,630 --> 00:04:58,080 Ir aš ruošiuosi eiti į priekį ir apibrėžti taip - 109 00:04:58,080 --> 00:05:01,540 Aš ruošiuosi eiti į priekį ir pasakyti, int Pagrindinis negalioja, nes mes dažnai darome. 110 00:05:01,540 --> 00:05:07,190 >> Ir tada šios programos, aš ruošiuosi paskelbti sau plūduriuoti, todėl 32 bitų 111 00:05:07,190 --> 00:05:09,700 kintamasis vadinamas f savavališkai. 112 00:05:09,700 --> 00:05:13,910 Ir tada aš ruošiuosi laikyti jį Aš nežinau, vieną dešimtąją, todėl 0.1. 113 00:05:13,910 --> 00:05:16,590 Taigi, aš ruošiuosi pareikšti, kad viena padalintas iš 10, kurie puikiai 114 00:05:16,590 --> 00:05:17,790 teisėta C. 115 00:05:17,790 --> 00:05:20,460 >> Ir tada antroje eilutėje, aš tiesiog norite atsispausdinti šią vertę. 116 00:05:20,460 --> 00:05:22,950 Taigi priminti, kad mes galime naudoti susipažinęs printf. 117 00:05:22,950 --> 00:05:25,420 Mes nenorime naudoti% I int. 118 00:05:25,420 --> 00:05:28,360 Mes norime naudoti% F plūdės. 119 00:05:28,360 --> 00:05:33,080 Ir tada aš ruošiuosi daryti backslash n, Uždaryti citata, kablelis, f, kabliataškis. 120 00:05:33,080 --> 00:05:34,400 >> Taigi čia mano programa. 121 00:05:34,400 --> 00:05:35,820 Yra jau viena klaida. 122 00:05:35,820 --> 00:05:38,640 Ar kas nors, kam tai paspaudėte jau noriu atkreipti bent 123 00:05:38,640 --> 00:05:40,220 viena klaida aš padariau? 124 00:05:40,220 --> 00:05:42,470 Taip? 125 00:05:42,470 --> 00:05:42,800 Taip. 126 00:05:42,800 --> 00:05:47,860 Aš pamiršau "# include" ne viršuje, jos simptomas, kuri, jei bandau 127 00:05:47,860 --> 00:05:50,490 surinkti tai bus, kad sudarytojas ketina klykauti ne man, 128 00:05:50,490 --> 00:05:52,770 sakydamas neapibrėžtą simbolį arba ką šiuo klausimu. 129 00:05:52,770 --> 00:05:55,360 Ji nesupranta, ką kaip printf. 130 00:05:55,360 --> 00:05:59,380 >> Taigi, aš ruošiuosi daryti "# include "Išsaugokite failą. 131 00:05:59,380 --> 00:06:00,400 Ir dabar jis yra geresnės formos. 132 00:06:00,400 --> 00:06:02,690 Bet aš taip pat ketina atkreipti iš viena nauja detalė šiandien. 133 00:06:02,690 --> 00:06:08,620 Be to, nurodant vietą turėtojai, pavyzdžiui,% f% i% s, galite 134 00:06:08,620 --> 00:06:12,320 kartais įtakoja elgesį tos vietos rezervavimo ženklą. 135 00:06:12,320 --> 00:06:15,540 Pavyzdžiui, atsižvelgiant į kintamųjų atveju punkto vertė, jei aš tik noriu 136 00:06:15,540 --> 00:06:22,200 rodyti vienos dešimtosios tikslumu po laikotarpis, aš iš tiesų gali padaryti 0.1f. 137 00:06:22,200 --> 00:06:26,830 Taigi, kitaip tariant, aš atskirti f ir procento ženklas su 0,1, tik 138 00:06:26,830 --> 00:06:30,200 sakau printf, galite turėti visą krūva skaičių po kablelio 139 00:06:30,200 --> 00:06:30,930 priminti man. 140 00:06:30,930 --> 00:06:32,870 Bet aš tik noriu pamatyti vieną iš jų. 141 00:06:32,870 --> 00:06:36,280 >> Taigi, aš ruošiuosi eiti į priekį dabar ir sutaupykite ši programa, eikite į mano terminalo 142 00:06:36,280 --> 00:06:41,870 langą, ir aš ruošiuosi eiti į priekį ir tipo, kad flotacinio 0, įveskite. 143 00:06:41,870 --> 00:06:44,930 Matau, kad šiek tiek paslaptingas liniją, kuri pradės daugiau prasmės, kaip mes 144 00:06:44,930 --> 00:06:46,900 erzinti jį išskiria šią savaitę ir toliau. 145 00:06:46,900 --> 00:06:50,480 Dabar aš ruošiuosi eiti į priekį ir paleisti float nulį. 146 00:06:50,480 --> 00:06:52,020 Ir nusispjauti. 147 00:06:52,020 --> 00:06:54,880 >> Taigi yra ir kitas klaidą čia dėl kažkokios priežasties. 148 00:06:54,880 --> 00:07:02,490 Aš esu gana įsitikinęs, kad viena dešimtoji, arba vienas, padalytas iš 10, yra ne 0.0. 149 00:07:02,490 --> 00:07:04,590 Gal aš tiesiog ne ieško ne pakankamai skaitmenų. 150 00:07:04,590 --> 00:07:08,580 Tad kodėl gi ne sakau du .2 pamatyti du dešimtųjų tikslumu, o ne tik vieną. 151 00:07:08,580 --> 00:07:11,810 Leiskite man grįžti į savo terminalo langą čia ir nukentėjo iki porą kartų į 152 00:07:11,810 --> 00:07:12,840 pamatyti savo istoriją. 153 00:07:12,840 --> 00:07:15,910 Ar padaryti plaukti nulio vėl, ir tada vėl. 154 00:07:15,910 --> 00:07:17,730 Ir dabar įeiti. 155 00:07:17,730 --> 00:07:20,000 >> Ir dabar aš esu gana įsitikinęs, tai yra negerai. 156 00:07:20,000 --> 00:07:23,030 Ir aš galėčiau padaryti trijų ir keturių, ir aš tikriausiai bus nuolat matau nuliai. 157 00:07:23,030 --> 00:07:24,880 Taigi, kur yra klaida? 158 00:07:24,880 --> 00:07:27,910 Vienas dalinant iš 10 turėtų būti 0.1. 159 00:07:27,910 --> 00:07:30,310 Kažkas nori imtis Pabandyti ką esminis klausimas yra? 160 00:07:30,310 --> 00:07:32,400 Taip? 161 00:07:32,400 --> 00:07:33,420 Jie abu sveikieji skaičiai. 162 00:07:33,420 --> 00:07:33,920 Na ir kas? 163 00:07:33,920 --> 00:07:37,820 Taigi su viena padalinta iš 10, kad yra ką man daryti aritmetika. 164 00:07:37,820 --> 00:07:41,185 Ir gaunu 0.1. 165 00:07:41,185 --> 00:07:41,660 >> Taip. 166 00:07:41,660 --> 00:07:43,240 Ir todėl, kad iš tikrųjų klausimas. 167 00:07:43,240 --> 00:07:46,700 Kai domėtis kompiuterio sveikasis skaičius ir jums padalinti jį nauju sveikojo skaičiaus, 168 00:07:46,700 --> 00:07:50,430 pagal nutylėjimą kompiuteris ketina manyti, kad jūs norite sveikasis skaičius. 169 00:07:50,430 --> 00:07:54,620 Problema, nors, žinoma, yra kad 0.1 nėra sveikasis skaičius. 170 00:07:54,620 --> 00:07:55,680 Tai realus skaičius. 171 00:07:55,680 --> 00:07:59,610 Ir taip, tai ką kompiuteris veikia pagal Numatytasis tai tiesiog išmeta 172 00:07:59,610 --> 00:08:01,070 viskas po kablelio. 173 00:08:01,070 --> 00:08:03,380 Tai nereiškia, suapvalinti arba iki per se. 174 00:08:03,380 --> 00:08:06,480 Jis tiesiog išmeta viską po kablelio. 175 00:08:06,480 --> 00:08:07,430 Ir dabar, kad prasminga. 176 00:08:07,430 --> 00:08:09,740 Kadangi dabar mes aiškiai liko nulio. 177 00:08:09,740 --> 00:08:10,250 >> Bet palauk. 178 00:08:10,250 --> 00:08:11,840 Nematau int nulį. 179 00:08:11,840 --> 00:08:14,910 Aš iš tikrųjų matyti 0.00. 180 00:08:14,910 --> 00:08:16,340 Taigi, kaip man suderinti tai dabar? 181 00:08:16,340 --> 00:08:22,850 Jei vienas, padalytas iš 10 yra lygus nuliui, bet aš tikiu, matau 0.00, kur jis vis 182 00:08:22,850 --> 00:08:24,250 konvertuoti atgal į realų skaičių? 183 00:08:24,250 --> 00:08:25,500 Taip. 184 00:08:25,500 --> 00:08:29,850 185 00:08:29,850 --> 00:08:30,630 Būtent. 186 00:08:30,630 --> 00:08:35,600 >> Taigi čia atitinka penkių, kai aš iš tikrųjų laikyti, kad 0,1, o tada 187 00:08:35,600 --> 00:08:39,549 sutrumpintas iki nulio, viduje plūdės, tai iš esmės atitinka 188 00:08:39,549 --> 00:08:42,100 saugoti jį ne kaip int, bet iš tiesų, kaip plūdės. 189 00:08:42,100 --> 00:08:46,540 Be to, aš tada naudojant printf į aiškiai, kad atsispausdinti šį skaičių iki dviejų 190 00:08:46,540 --> 00:08:49,740 tūkstantųjų tikslumu nors gali būti iš tiesų toks yra. 191 00:08:49,740 --> 00:08:51,020 >> Taigi tai sucks natūra, tiesa? 192 00:08:51,020 --> 00:08:53,640 Matyt, jūs negalite padaryti matematikos, bent jau šio lygio 193 00:08:53,640 --> 00:08:55,600 precizijos, į kompiuterį. 194 00:08:55,600 --> 00:08:56,930 Bet tikrai nėra išeitis. 195 00:08:56,930 --> 00:09:00,410 Kas paprasčiausias nustatyti galėtume gal padaryti, net tiesiog intuityviai čia 196 00:09:00,410 --> 00:09:01,130 išspręsti šią problemą? 197 00:09:01,130 --> 00:09:02,380 Taip? 198 00:09:02,380 --> 00:09:04,700 199 00:09:04,700 --> 00:09:06,574 Pasukite sveikieji skaičiai į - 200 00:09:06,574 --> 00:09:06,976 taip. 201 00:09:06,976 --> 00:09:10,420 Net jei aš nesu visiškai tikras, kas tikrai vyksta čia, jeigu ji 202 00:09:10,420 --> 00:09:13,440 esmės turi daryti su šiomis ir yra ints, gerai, kodėl gi ne aš 203 00:09:13,440 --> 00:09:18,230 padaryti, kad 10,0, todėl šis 1.0, išsaugokite failą. 204 00:09:18,230 --> 00:09:20,990 Leiskite man grįžti žemyn apačioje ir perkompiliuoti. 205 00:09:20,990 --> 00:09:23,030 Leiskite man dabar pakartotas. 206 00:09:23,030 --> 00:09:23,420 Ir ten - 207 00:09:23,420 --> 00:09:27,690 Dabar, aš turiu savo vieną dešimtąją atstovavo 0,10. 208 00:09:27,690 --> 00:09:28,420 >> Gerai. 209 00:09:28,420 --> 00:09:29,220 Taigi, tai nėra blogai. 210 00:09:29,220 --> 00:09:31,730 Ir leiskite man atkreipti dėmesį į vieną kitą pusę galėtume išspręsti šią. 211 00:09:31,730 --> 00:09:35,580 Leiskite man iš tikrųjų įvirsta metu kada mes turėjome tai kaip vienas 212 00:09:35,580 --> 00:09:36,680 dešimtoji metu senumo. 213 00:09:36,680 --> 00:09:40,800 Ir leiskite man eiti į priekį ir išsaugokite šį failą kaip kitą failo pavadinimą, tik 214 00:09:40,800 --> 00:09:41,750 šiek tiek posto. 215 00:09:41,750 --> 00:09:43,450 Taigi, tai buvo variantas vienas. 216 00:09:43,450 --> 00:09:45,520 O dabar leiskite man eiti į priekį ir padaryti dar vieną versiją. 217 00:09:45,520 --> 00:09:48,540 Mes vadiname šią versiją du nulis indeksuojami. 218 00:09:48,540 --> 00:09:51,280 >> Ir aš ruošiuosi vietoj padaryti tai - jūs žinote, ką? 219 00:09:51,280 --> 00:09:54,400 Įrašyta taškas nulis veikia šioje byloje. 220 00:09:54,400 --> 00:09:56,060 Bet tarkime, vienas buvo nevienoda. 221 00:09:56,060 --> 00:09:57,680 Manoma 10 buvo nevienoda. 222 00:09:57,680 --> 00:10:00,680 Kitaip tariant, tarkime, kad aš negalėjau tiesiog sunku kodo .0 pabaigoje 223 00:10:00,680 --> 00:10:02,340 Šio aritmetinis išraiška. 224 00:10:02,340 --> 00:10:05,820 Na, aš iš tikrųjų gali kažką daryti skliausteliuose vadinamas liejimas. 225 00:10:05,820 --> 00:10:11,920 Galiu atiduoti, kad sveikasis skaičius nuo 10 iki plūdės, ir aš galiu atiduoti, kad sveikasis vieno 226 00:10:11,920 --> 00:10:12,800 plūduriuoti, taip pat. 227 00:10:12,800 --> 00:10:17,190 Tada matematikos tai bus daroma veiksmingai 1,0 padalintas 10.0, 228 00:10:17,190 --> 00:10:19,250 rezultatas, kuris eina F-kaip ir anksčiau. 229 00:10:19,250 --> 00:10:26,130 Taigi, jei aš perkompiliuoti tai, kaip padaryti plūdės 2, o dabar plaukioja 2, man tas pats 230 00:10:26,130 --> 00:10:27,020 atsakyti, taip pat. 231 00:10:27,020 --> 00:10:29,640 >> Taigi, tai yra gana nenatūralu, pavyzdžiui, išspręsti šią problemą 232 00:10:29,640 --> 00:10:31,400 įvedant liejimas. 233 00:10:31,400 --> 00:10:34,410 Bet apskritai, liejimo manimi bus galingas dalykas, ypač 234 00:10:34,410 --> 00:10:38,180 problema nustatyti du per savaitę laiko, kai norite konvertuoti vieną duomenų tipą 235 00:10:38,180 --> 00:10:41,800 kitą, kad dienos pabaigoje būtų atstovaujama vienodai. 236 00:10:41,800 --> 00:10:44,970 Per dieną, kiekvieną pabaigos dalykas, mes kalbėjome apie iki šiol yra 237 00:10:44,970 --> 00:10:46,710 tik ints po gaubtu. 238 00:10:46,710 --> 00:10:48,950 Arba, jei tai labai žemo lygio ir jūs, jie tiesiog numeriai 239 00:10:48,950 --> 00:10:49,750 po gaubtu. 240 00:10:49,750 --> 00:10:52,850 Net simbolių vėl prisiminti nuo savaitės iki nulio, yra numeriai 241 00:10:52,850 --> 00:10:53,990 po gaubtu. 242 00:10:53,990 --> 00:10:57,240 >> Kuris yra pasakyti, mes galime konvertuoti tarp įvairių tipų numeriai Jeigu 243 00:10:57,240 --> 00:10:58,060 jie tiesiog bitai. 244 00:10:58,060 --> 00:11:01,020 Mes gali konvertuoti tarp skaičių ir raidės, jeigu jie tiesiog 245 00:11:01,020 --> 00:11:02,580 bitai, ir atvirkščiai. 246 00:11:02,580 --> 00:11:07,170 Ir liejimo tokiu būdu yra mechanizmas programavimo, kuri leidžia jums prievarta 247 00:11:07,170 --> 00:11:10,970 pakeisti vieną duomenų tipą į kitą. 248 00:11:10,970 --> 00:11:14,570 Deja, tai nėra taip paprasta, kaip aš galėjo patiko. 249 00:11:14,570 --> 00:11:19,220 >> Aš ruošiuosi eiti atgal į plūdės 1, kuris buvo paprastesnis, 250 00:11:19,220 --> 00:11:22,830 paprastas vienas su .0 Pridėta viena. 251 00:11:22,830 --> 00:11:25,260 Ir kaip greitai kvalifikacijos kėlimo, leiskite man eiti į priekį ir perkompiliuoti 252 00:11:25,260 --> 00:11:27,670 tai, kad plūdės 2 - 253 00:11:27,670 --> 00:11:30,300 atsiprašau, tai yra, kad plūdės 1. 254 00:11:30,300 --> 00:11:32,050 O dabar paleisti plūdes 1. 255 00:11:32,050 --> 00:11:34,810 Ir apačioje, pastebėti kad aš iš tikrųjų gauti 0.1. 256 00:11:34,810 --> 00:11:36,165 Taigi, problema išspręsta. 257 00:11:36,165 --> 00:11:37,280 >> Bet dar ne. 258 00:11:37,280 --> 00:11:40,000 Aš dabar ketina gauti šiek tiek įdomu, ir aš ruošiuosi grįžti į savo 259 00:11:40,000 --> 00:11:41,620 printf ir tarkim, jūs žinote, ką? 260 00:11:41,620 --> 00:11:44,090 Norėčiau patvirtinti, kad tai yra tikrai viena dešimtoji. 261 00:11:44,090 --> 00:11:47,890 Ir aš ruošiuosi norite matyti šį , tarkim, penkis skaičiai po kablelio. 262 00:11:47,890 --> 00:11:48,570 Tai ne problema. 263 00:11:48,570 --> 00:11:52,020 Pakeisti po du penkių, Aš perkompiliuoti su make. 264 00:11:52,020 --> 00:11:53,770 Aš pakartotas tai kaip plūdės 1. 265 00:11:53,770 --> 00:11:54,990 Domina gana gera. 266 00:11:54,990 --> 00:11:58,570 Mano normalumas patikrinimai gali baigtis ten, bet Gaunu šiek tiek daugiau nuotykių. 267 00:11:58,570 --> 00:12:00,330 Aš ruošiuosi pakeisti 0,5-0,10. 268 00:12:00,330 --> 00:12:03,440 Noriu pamatyti 10 skaitmenų po dešimtųjų tikslumu. 269 00:12:03,440 --> 00:12:09,060 >> Ir aš ruošiuosi eiti į priekį ir perkompiliuoti tai ir iš naujo plūdės 1. 270 00:12:09,060 --> 00:12:13,060 I rūšies gailisi išbandyti šį toliau, nes mano matematikos ne taip 271 00:12:13,060 --> 00:12:14,320 ištaisyti nebėra, atrodo. 272 00:12:14,320 --> 00:12:15,630 Bet palauk, gal tai tik atsitiktinumas. 273 00:12:15,630 --> 00:12:17,810 Gal kompiuteris veikia šiek tiek keista. 274 00:12:17,810 --> 00:12:21,810 Leiskite man eiti į priekį ir padaryti 20 dešimtųjų taškų ir nuraminti save, kad aš žinau, 275 00:12:21,810 --> 00:12:22,540 kaip tai padaryti matematiką. 276 00:12:22,540 --> 00:12:23,460 Aš žinau, kaip programuoti. 277 00:12:23,460 --> 00:12:26,960 Padaryti plūdės 1, perkompiliuoti ir damn it. 278 00:12:26,960 --> 00:12:31,110 Tai tikrai, tikrai gauti Netinka. 279 00:12:31,110 --> 00:12:32,490 >> Taigi, kas čia vyksta? 280 00:12:32,490 --> 00:12:36,050 Intuityviai, remiantis mūsų prielaidų anksčiau apie duomenų tipų dydžio, 281 00:12:36,050 --> 00:12:38,040 kas turi būti vyksta čia po kapotu? 282 00:12:38,040 --> 00:12:39,290 Taip? 283 00:12:39,290 --> 00:12:43,000 284 00:12:43,000 --> 00:12:43,590 Būtent. 285 00:12:43,590 --> 00:12:46,480 Jei norite, kad šis daug tikslumo ir tai iš tikslumo daug gi - 286 00:12:46,480 --> 00:12:48,770 20 skaičių po kablelio. 287 00:12:48,770 --> 00:12:51,990 Jūs negalite galbūt atstovauti kokiam nebent turite 288 00:12:51,990 --> 00:12:52,930 savavališkai bitų skaičius. 289 00:12:52,930 --> 00:12:54,190 Bet mes ne. 290 00:12:54,190 --> 00:12:57,200 Dėl plūdės, turime tik 32 bitus. 291 00:12:57,200 --> 00:13:02,260 >> Taigi, jei 32 bitai gali būti išgrynintas į būdas - tiesiog kaip mūsų žmogui nekelia, etapas 292 00:13:02,260 --> 00:13:05,780 rankas aukštyn arba žemyn - į baigtinio skaičiaus būdų, yra tik baigtinis skaičius 293 00:13:05,780 --> 00:13:08,640 realiųjų skaičių galite atstovauti su tais bitais. 294 00:13:08,640 --> 00:13:10,500 Ir todėl kompiuteris galiausiai teks į 295 00:13:10,500 --> 00:13:11,730 pradėti pjovimo kampas. 296 00:13:11,730 --> 00:13:15,500 Kompiuteris gali slėpti šiuos duomenis iš mums šiek tiek laiko. 297 00:13:15,500 --> 00:13:18,880 Bet jei mes pradėsime išnyra į skaičius ir ieško vis toliau ir toliau į 298 00:13:18,880 --> 00:13:23,220 gale skaičių sveikuoju skaičiumi, tada mes pradedame suprasti, kad tai 299 00:13:23,220 --> 00:13:26,480 iš tikrųjų suderinti idėja dešimtadaliu. 300 00:13:26,480 --> 00:13:29,860 >> Ir taip it turns out, tragiškai, ten begalinis skaičius skaičiais 301 00:13:29,860 --> 00:13:35,060 mes negalime atstovauti būtent kompiuteris, bent su ribinio 302 00:13:35,060 --> 00:13:38,030 bitų skaičius, ribinis suma RAM. 303 00:13:38,030 --> 00:13:41,210 Dabar, deja, kartais tai turi realių pasekmių. 304 00:13:41,210 --> 00:13:45,980 Jei žmonės neturi pakankamai vertiname tai arba tarsi savaime suprantamu dalyku tai, 305 00:13:45,980 --> 00:13:48,310 kad jų kompiuteris tiesiog daryti tai, ką jie pasakys tai padaryti, o ne 306 00:13:48,310 --> 00:13:51,430 suprasti šiuos pagrindinius atstovavimo informacija - 307 00:13:51,430 --> 00:13:55,290 kuris, tiesą sakant, kai kuriose kalbose yra paslėpta nuo vartotojo, skirtingai nei C - 308 00:13:55,290 --> 00:13:56,500 kai blogi dalykai gali atsitikti. 309 00:13:56,500 --> 00:13:58,650 >> Ir ką aš maniau, mes norime daryti yra žengti žingsnį atgal. 310 00:13:58,650 --> 00:14:00,420 Ir tai yra apie aštuonių minučių vaizdo. 311 00:14:00,420 --> 00:14:04,200 Ji eteryje prieš keletą metų, ir tai suteikia įžvalgos iš tikrųjų, kas gali eiti 312 00:14:04,200 --> 00:14:09,290 negerai, kai jūs nepakankamai vertina šių rūšių detales labai viskas pernelyg 313 00:14:09,290 --> 00:14:10,080 realus pasaulis. 314 00:14:10,080 --> 00:14:12,965 Jei galėtume artimosios šviesos per kelias minutes. 315 00:14:12,965 --> 00:14:14,360 >> GARSIAKALBIS 1: Mes dabar grįžti į inžinerijos 316 00:14:14,360 --> 00:14:17,160 nelaimių Šiuolaikinės stebuklai. 317 00:14:17,160 --> 00:14:18,680 >> Kompiuteriai - 318 00:14:18,680 --> 00:14:21,340 mes visi ateis priimti dažnai nelinksma problemų 319 00:14:21,340 --> 00:14:23,170 kad eiti su jais. 320 00:14:23,170 --> 00:14:27,570 Klaidas, virusai ir programinės įrangos trikdžių mažos kainos mokėti už 321 00:14:27,570 --> 00:14:28,960 patogumui. 322 00:14:28,960 --> 00:14:32,040 Tačiau aukštųjų technologijų ir didelės spartos karinių ir kosmoso programa 323 00:14:32,040 --> 00:14:38,650 programas, mažiausias problema gali būti padidintas į katastrofą. 324 00:14:38,650 --> 00:14:44,480 >> Birželio 4, 1996, mokslininkai pasirengę pradėti nepilotuojamą Ariane 5 raketų. 325 00:14:44,480 --> 00:14:48,700 Ji vykdė mokslinius palydovus sukurta tiksliai nustatyti, kaip 326 00:14:48,700 --> 00:14:53,250 Žemės magnetinis laukas sąveikauja su Saulės vėjai. 327 00:14:53,250 --> 00:14:57,540 Raketų buvo pastatytas Europos Kosmoso agentūros ir nuimti nuo jos 328 00:14:57,540 --> 00:14:59,906 įrenginys ant kranto Prancūzijos Gvianoje. 329 00:14:59,906 --> 00:15:03,660 >> JACK GANSSLE: Maždaug 37 sekundžių į skrydžio, jie pirmą kartą pastebėjo 330 00:15:03,660 --> 00:15:04,910 kad kažkas negerai. 331 00:15:04,910 --> 00:15:08,130 Purkštukai buvo pasukamas į Kaip jie tikrai neturėtų. 332 00:15:08,130 --> 00:15:12,380 Maždaug 40 sekundžių į skrydį aiškiai transporto priemonė buvo bėdų. 333 00:15:12,380 --> 00:15:14,400 Ir tai, kai jie padarė sprendimas jį sunaikinti. 334 00:15:14,400 --> 00:15:18,520 Diapazonas saugumo pareigūnas, su milžiniškas viduriai, paspaudėte mygtuką, 335 00:15:18,520 --> 00:15:23,900 susprogdino raketa, kol ji galėtų tapti pavojinga visuomenės saugumui. 336 00:15:23,900 --> 00:15:27,810 >> GARSIAKALBIS 1: Tai buvo mergautinė reiso 5 Ariane, ir apie jo sunaikinimo 337 00:15:27,810 --> 00:15:32,020 įvyko dėl to, kad škvalas įterptųjų Į Raketa programinės įrangos. 338 00:15:32,020 --> 00:15:33,980 >> JACK GANSSLE: nuo Ariane problema buvo tai, kad ten buvo skaičius 339 00:15:33,980 --> 00:15:36,390 reikalaujama 64 bitų išreikšti. 340 00:15:36,390 --> 00:15:39,420 Ir jie norėjo atsiversti į 16 bitų skaičių. 341 00:15:39,420 --> 00:15:43,130 Jie manė, kad skaičius niekada nebuvo bus labai didelis, kad dauguma 342 00:15:43,130 --> 00:15:46,810 tie 64 bitų skaitmenys skaičius buvo nuliai. 343 00:15:46,810 --> 00:15:48,270 Jie klydo. 344 00:15:48,270 --> 00:15:51,380 >> GARSIAKALBIS 1: vienos programinės įrangos nesugebėjimas programa priimti rūšies 345 00:15:51,380 --> 00:15:55,350 sukurtas numeris vienas buvo prie nesėkmės priežastis. 346 00:15:55,350 --> 00:15:59,970 Programinės įrangos kūrimas tapo labai brangus dalis naujos technologijos. 347 00:15:59,970 --> 00:16:03,980 Ariadnė 4 raketa buvo labai sėkmingas, tiek programinės įrangos 348 00:16:03,980 --> 00:16:07,480 sukurta taip pat buvo naudojamas 5 Ariane į. 349 00:16:07,480 --> 00:16:11,980 >> PHILIP Coyle: pagrindinė problema buvo kad Ariane 5 buvo greitesnis, 350 00:16:11,980 --> 00:16:13,720 paspartinti greičiau. 351 00:16:13,720 --> 00:16:17,250 Ir programinės įrangos neturėjo sudarė už tai. 352 00:16:17,250 --> 00:16:20,770 >> GARSIAKALBIS 1 iš raketos sunaikinimas buvo didžiulė finansinė katastrofa, 353 00:16:20,770 --> 00:16:24,200 visi dėl per minutę programinės įrangos klaidos. 354 00:16:24,200 --> 00:16:27,820 Bet tai buvo ne pirmas kartas, kai duomenys perskaičiavimo problemų buvo kentėjo modernus 355 00:16:27,820 --> 00:16:30,620 raketų technologiją. 356 00:16:30,620 --> 00:16:34,480 >> JACK GANSSLE: 1991 su pradžios pirmojo Persijos įlankos karo, Patriot 357 00:16:34,480 --> 00:16:38,610 raketų patyrė panašaus pobūdžio nesant numerių konvertavimo problemos. 358 00:16:38,610 --> 00:16:44,910 Kaip rezultatas, 28 amerikiečių kariai buvo žuvo ir apie 100 sužeistųjų 359 00:16:44,910 --> 00:16:48,600 kai Patriot ", kuris turėjo apsaugoti nuo gaunamus Scuds, 360 00:16:48,600 --> 00:16:51,630 nepavyko į ugnį raketa. 361 00:16:51,630 --> 00:16:55,110 >> GARSIAKALBIS 1: Kai Irakas įsiveržė Kuveitas ir Amerika pradėjo dykumos audra 362 00:16:55,110 --> 00:17:00,570 pradžioje 1991, Patriot raketų baterijos buvo dislokuoti apsaugoti Saudo Arabija 363 00:17:00,570 --> 00:17:04,760 ir Izraelis nuo Irako skriejimas raketų atakų. 364 00:17:04,760 --> 00:17:09,720 Patriotas yra JAV vidutinio nuotolio žemė-oras sistema gamina 365 00:17:09,720 --> 00:17:11,569 "Raytheon" kompanija. 366 00:17:11,569 --> 00:17:16,410 >> THEODORE postol: nuo Patriot dydis kolektoriaus pati yra maždaug 367 00:17:16,410 --> 00:17:17,710 20 pėdų ilgio. 368 00:17:17,710 --> 00:17:20,800 Ir jis sveria apie 2000 svarų. 369 00:17:20,800 --> 00:17:22,940 Ir ji vykdo daug apie užtaisą - 370 00:17:22,940 --> 00:17:24,905 Manau, kad tai apytiksliai 150 svarų. 371 00:17:24,905 --> 00:17:31,030 Ir užtaisą pati aukštos sprogmuo, kuriam yra 372 00:17:31,030 --> 00:17:33,270 fragmentai aplink jį. 373 00:17:33,270 --> 00:17:37,490 Iš galvutės korpusas yra skirtas veikti kaip Buckshot. 374 00:17:37,490 --> 00:17:40,720 >> GARSIAKALBIS 1: Raketos atliekami keturis už konteinerio ir vežami 375 00:17:40,720 --> 00:17:43,050 pagal puspriekabe. 376 00:17:43,050 --> 00:17:47,490 >> PHILIP Coyle: Patriot "priešraketinės sistema grįžta į 377 00:17:47,490 --> 00:17:50,710 mažiausiai 20 metų. 378 00:17:50,710 --> 00:17:54,350 Iš pradžių buvo sukurta kaip oro gynybos raketa 379 00:17:54,350 --> 00:17:56,190 numušti priešo lėktuvus. 380 00:17:56,190 --> 00:18:02,490 Per pirmąjį Persijos įlankos karą, kai kad karas atėjo kartu armija norėjo jį naudoti 381 00:18:02,490 --> 00:18:05,535 nušauti Scuds, o ne lėktuvais. 382 00:18:05,535 --> 00:18:09,310 Irako oro pajėgos nebuvo tiek daug problemų. 383 00:18:09,310 --> 00:18:12,450 Bet armija buvo susirūpinę Scuds. 384 00:18:12,450 --> 00:18:15,950 Ir taip jie bandė atnaujinti "Patriot". 385 00:18:15,950 --> 00:18:18,750 >> GARSIAKALBIS 1: perimti priešo raketų važiuojant mach penkių buvo 386 00:18:18,750 --> 00:18:20,890 bus pakankamai sudėtinga. 387 00:18:20,890 --> 00:18:25,590 Bet kai Patriot puolė į paslaugos, armija nežino 388 00:18:25,590 --> 00:18:31,710 Irako modifikuoti taip, kad padarė savo Scuds beveik neįmanoma pataikyti. 389 00:18:31,710 --> 00:18:35,240 >> THEODORE postol: Kas nutiko yra Scuds, kurie buvo 390 00:18:35,240 --> 00:18:36,570 deja, buvo nestabili. 391 00:18:36,570 --> 00:18:37,532 Jie buvo Įtaka. 392 00:18:37,532 --> 00:18:43,220 Dėl šios priežasties buvo irakiečiai, kad siekiant gauti 600 kilometrų iš 393 00:18:43,220 --> 00:18:47,530 300 kilometrų nuotolio raketų, buvo svoris nuo priekinės galvutės. 394 00:18:47,530 --> 00:18:49,290 Jie padarė užtaisą lengvesni. 395 00:18:49,290 --> 00:18:53,110 Taigi dabar "Patriot bando ateiti į skriejimas. 396 00:18:53,110 --> 00:18:56,470 Ir didžiąją laiko dalį, didžioji Dauguma laiko, tai būtų tik 397 00:18:56,470 --> 00:18:58,730 skristi į vėjo genami debesys. 398 00:18:58,730 --> 00:19:01,760 >> GARSIAKALBIS 1: Kai Patriot sistema operatoriai suprato Patriot "praleistus 399 00:19:01,760 --> 00:19:06,690 savo tikslą, jie susprogdino Patriots Kovinė kad būtų išvengta galimo 400 00:19:06,690 --> 00:19:10,300 aukų, jei ji buvo leidžiama patenka į žemę. 401 00:19:10,300 --> 00:19:14,540 >> THEODORE postol: Tai buvo tai, ką dauguma žmonės pamatė, kaip didelis ugnies danguje 402 00:19:14,540 --> 00:19:20,350 ir nesuprastas, nes sulaiko iš skriejimas galvučių. 403 00:19:20,350 --> 00:19:23,320 >> GARSIAKALBIS 1: Nors nakties dangus Patriotai pasirodė sėkmingai 404 00:19:23,320 --> 00:19:27,530 sunaikinti Scuds, bent Dhahran ten gali būti ne apie savo klaidą 405 00:19:27,530 --> 00:19:29,140 efektyvumą. 406 00:19:29,140 --> 00:19:34,180 Ten, Patriot radaras sistema prarado sekti priimamą skriejimas ir niekada 407 00:19:34,180 --> 00:19:36,380 pradėtas dėl programinės įrangos defektų. 408 00:19:36,380 --> 00:19:39,890 409 00:19:39,890 --> 00:19:42,700 >> Tai buvo Izraelio, kuris pirmasis atrado kad kuo ilgiau sistema 410 00:19:42,700 --> 00:19:48,020 buvo, didesnis laiko neatitikimas tapo dėl laikrodis 411 00:19:48,020 --> 00:19:50,470 įtraukti į sistemos kompiuteryje. 412 00:19:50,470 --> 00:19:54,640 >> JACK GANSSLE: Apie dvi savaites prieš tragedija Dhahran, Izraelis 413 00:19:54,640 --> 00:19:58,440 pranešė Gynybos departamento kad sistema buvo prarasti laiko. 414 00:19:58,440 --> 00:20:01,280 Po maždaug aštuonių valandų važiavimo, jie pastebėjo, kad sistema yra 415 00:20:01,280 --> 00:20:03,530 tampa pastebimai mažiau tikslūs. 416 00:20:03,530 --> 00:20:07,710 Gynybos departamentas atsakė sakau visi Patriot baterijų 417 00:20:07,710 --> 00:20:10,500 kad neliktų sistemas į ilgą laiką. 418 00:20:10,500 --> 00:20:12,430 Jie niekada nesakė, kas ilgą laiką buvo. 419 00:20:12,430 --> 00:20:13,330 Aštuonias valandas? 420 00:20:13,330 --> 00:20:13,810 10 valandas? 421 00:20:13,810 --> 00:20:14,990 1000 valandas? 422 00:20:14,990 --> 00:20:17,150 Niekas nežinojo. 423 00:20:17,150 --> 00:20:20,220 >> GARSIAKALBIS 1: Patriot "baterija dislokuota AT Dhahran kareivinės 424 00:20:20,220 --> 00:20:24,660 ir jos trūkumų vidinis laikrodis buvo nuo daugiau nei 100 valandas naktį 425 00:20:24,660 --> 00:20:27,470 Vasaris 25. 426 00:20:27,470 --> 00:20:31,770 >> JACK GANSSLE: Tai stebimi laiko tikslumas apie tokią antra dešimtadaliu. 427 00:20:31,770 --> 00:20:34,480 Dabar antrojo dešimtas yra įdomus skaičius, nes jis negali būti 428 00:20:34,480 --> 00:20:39,940 išreikštas dvejetainiu tiksliai, o tai reiškia, jis negali būti išreikšta tiksliai 429 00:20:39,940 --> 00:20:42,500 bet modernus skaitmeninis kompiuteris. 430 00:20:42,500 --> 00:20:46,920 Sunku patikėti, bet naudoti tai kaip pavyzdys. 431 00:20:46,920 --> 00:20:49,000 Paimkime numeris trečdalį. 432 00:20:49,000 --> 00:20:53,150 Trečdalis negali būti išreikšta dešimtainis lygiai. 433 00:20:53,150 --> 00:20:57,500 Trečdalis yra 0,333 vyksta ant begalybės. 434 00:20:57,500 --> 00:21:02,270 Nėra jokio būdo tai padaryti, kad su absoliutus tikslumas dešimtosios dalies. 435 00:21:02,270 --> 00:21:05,370 Būtent tokia pat problema tai įvyko Patriot. 436 00:21:05,370 --> 00:21:09,880 Ilgesnis sistema bėgo, blogiausias laikas klaida tapo. 437 00:21:09,880 --> 00:21:13,840 >> GARSIAKALBIS 1: Po 100 veikimo valandų, laiku paklaida buvo tik 438 00:21:13,840 --> 00:21:16,140 apie trečdalis sekundę. 439 00:21:16,140 --> 00:21:20,800 Tačiau, kalbant apie orientacija raketą važiuojant mach penkių, tai lėmė 440 00:21:20,800 --> 00:21:24,410 sekimo paklaida daugiau nei 600 metrų. 441 00:21:24,410 --> 00:21:27,670 Būtų lemtinga klaida ir dėl kurių Dhahran kariai. 442 00:21:27,670 --> 00:21:33,450 >> THEODORE postol: Kas atsitiko Skriejimas pradėti buvo aptikta anksti 443 00:21:33,450 --> 00:21:34,280 įspėjamieji palydovai. 444 00:21:34,280 --> 00:21:38,550 Ir jie žinojo, kad Skadi buvo dar jų bendrą kryptį. 445 00:21:38,550 --> 00:21:41,000 Jie nežinojo, kur jis atėjo. 446 00:21:41,000 --> 00:21:43,900 >> GARSIAKALBIS 1: Tai buvo dabar iki radaro komponentas "Patriot" sistemos 447 00:21:43,900 --> 00:21:48,910 ginti DHAHRAN rasti ir išlaikyti sekti gaunamų priešo raketų. 448 00:21:48,910 --> 00:21:50,580 >> JACK GANSSLE: radaras buvo labai protingas. 449 00:21:50,580 --> 00:21:53,770 Tai iš tikrųjų stebėti padėtį Skadi ir tada numatyti, kur jis 450 00:21:53,770 --> 00:21:57,160 tikriausiai būtų kitą kartą radaras pasiuntė impulsą iš. 451 00:21:57,160 --> 00:21:58,870 Tai buvo vadinama diapazonas vartai. 452 00:21:58,870 --> 00:22:04,020 >> THEODORE postol: Tada, kai "Patriot" nusprendžia pakankamai laiko praėjo eiti 453 00:22:04,020 --> 00:22:09,420 atgal ir patikrinti kitą vietą Nustatytas objektas, jis eina atgal. 454 00:22:09,420 --> 00:22:14,450 Taigi, kai jis grįžo į negerai vieta, tai tada nemato objektą. 455 00:22:14,450 --> 00:22:18,200 Ir ji nusprendžia, kad nebuvo objektas, ji buvo klaidinga aptikimo ir 456 00:22:18,200 --> 00:22:19,680 lašai takelį. 457 00:22:19,680 --> 00:22:22,970 >> GARSIAKALBIS 1: Priimamojo Skadi dingo iš radaro ekrano, o 458 00:22:22,970 --> 00:22:26,050 sekundžių, vėliau jis pateko į kareivines. 459 00:22:26,050 --> 00:22:31,950 Skadi žuvo 28 ir buvo naujausia atleistas per pirmąjį Persijos įlankos karą. 460 00:22:31,950 --> 00:22:37,700 Deja, atnaujinti programinę įrangą atvyko ne Dhahran kitą dieną. 461 00:22:37,700 --> 00:22:41,800 Programinės įrangos trūkumas buvo nustatytas, uždaryti vieną skyrių iš neramus 462 00:22:41,800 --> 00:22:43,690 istorija "Patriot" raketos. 463 00:22:43,690 --> 00:22:46,780 464 00:22:46,780 --> 00:22:50,710 >> Patriot "iš tiesų yra akronimas už etapais Array stebėjimo 465 00:22:50,710 --> 00:22:51,960 Ašyje TARGET. 466 00:22:51,960 --> 00:22:54,650 467 00:22:54,650 --> 00:23:00,840 >> DAVID J Malan: Gerai, kad Otrzeźwiający pavyzdį, būti tikri. 468 00:23:00,840 --> 00:23:03,430 Ir laimei, tai žemesnio lygio klaidų yra ne kažkas, kad mes atsiųsime 469 00:23:03,430 --> 00:23:06,220 paprastai turi įvertinti, tikrai ne kai kurie iš mūsų 470 00:23:06,220 --> 00:23:07,360 Seniausias programas. 471 00:23:07,360 --> 00:23:10,450 Priešingai, dauguma klaidų jums susitikimas bus logiška pobūdžio, 472 00:23:10,450 --> 00:23:12,900 sintaksinė pobūdžio, kuriuo kodas tiesiog neveikia teisingai. 473 00:23:12,900 --> 00:23:14,140 Ir jūs žinote, kad gana greitai. 474 00:23:14,140 --> 00:23:16,850 >> Bet ypač, kai mes gauti pabaigoje semestrą jis ketina 475 00:23:16,850 --> 00:23:20,620 vis daugiau ir daugiau apie galimybę tikrai sunku galvoti apie dizainą 476 00:23:20,620 --> 00:23:22,960 savo programas ir pagrindinių atstovavimas 477 00:23:22,960 --> 00:23:24,520 ten taip pat duomenų. 478 00:23:24,520 --> 00:23:28,010 Pavyzdžiui, mes jums pristatyti MySQL, kuris yra populiarus duomenų bazės variklis 479 00:23:28,010 --> 00:23:30,850 kad jūs galite naudoti su svetainių saugoti duomenis ant nugaros pabaigos. 480 00:23:30,850 --> 00:23:34,630 Ir jūs turite pradėti spręsti, semestro pabaigoje ne tik tai, ką 481 00:23:34,630 --> 00:23:38,790 rūšių duomenys kartu šių eilučių naudoti bet tiksliai kiek bitų naudoti, 482 00:23:38,790 --> 00:23:42,740 ar jūs norite saugoti datas kaip datos ir laiko, kaip visada, o taip pat 483 00:23:42,740 --> 00:23:46,890 dalykų, pavyzdžiui, kaip didelis norite unikalių identifikatorių būti, tarkim, vartotojai 484 00:23:46,890 --> 00:23:47,680 jūsų duomenų bazėje. 485 00:23:47,680 --> 00:23:51,210 >> Iš tiesų, jei kai kurie iš jūsų turėjo "Facebook" sudaro gana ilgą laiką, 486 00:23:51,210 --> 00:23:53,680 ir žinote, kaip gauti galimybę susipažinti su Jūsų Vartotojo ID - 487 00:23:53,680 --> 00:23:57,930 kurie kartais pasirodo jūsų Profilis URL nebent jūs pasirinkote 488 00:23:57,930 --> 00:24:02,070 slapyvardį URL, arba jei jūs Naudoti "Facebook" diagrama API 489 00:24:02,070 --> 00:24:05,510 viešai API, kuriuo galite paprašyti Facebook "neapdorotus duomenis - 490 00:24:05,510 --> 00:24:07,580 jūs galite pamatyti, ką jūsų skaitmeninis ID yra. 491 00:24:07,580 --> 00:24:10,880 Ir prieš keletą metų, "Facebook" iš esmės turėjo pakeisti naudoti 492 00:24:10,880 --> 00:24:15,980 iš Ints atitinka naudojant ilgai ilgai, nes laikui bėgant, nes vartotojai ateiti 493 00:24:15,980 --> 00:24:19,780 ir eiti ir sukurti daug sąskaitų ir netikras sąskaitas, net ir jie labai lengvai 494 00:24:19,780 --> 00:24:24,630 galėjo išnaudoti kažką panašaus 4 milijardų galimas vertės kaip int. 495 00:24:24,630 --> 00:24:28,340 >> Taigi, labiau į tas problemas rūšių nustatantis kelių, taip pat. 496 00:24:28,340 --> 00:24:30,750 Gerai, kad buvo liejimas. 497 00:24:30,750 --> 00:24:31,670 Tai buvo netikslumai. 498 00:24:31,670 --> 00:24:32,730 Kelių greitų pranešimai pora. 499 00:24:32,730 --> 00:24:35,710 Taigi skyriai oficialiai pradėti ateinančiais Sekmadienis, pirmadienis, antradienis. 500 00:24:35,710 --> 00:24:39,080 Jūs išgirsite elektroniniu paštu vėliau šią savaitę kaip savo skyriuje užduotį. 501 00:24:39,080 --> 00:24:42,570 Ir jūs taip pat čia tuo momentu kaip pakeisti savo skyrių, jei jūsų 502 00:24:42,570 --> 00:24:45,660 grafikas dabar pasikeitė ar jūsų komforto lygis dabar pasikeitė. 503 00:24:45,660 --> 00:24:49,380 Tuo tarpu P-rinkinys vienas ir hakeris vienas yra dėl šį ketvirtadienį su galimybe į 504 00:24:49,380 --> 00:24:52,450 pratęsti už terminą specifikacijos iki penktadienio 505 00:24:52,450 --> 00:24:53,830 į tipišką būdu. 506 00:24:53,830 --> 00:24:57,500 >> Suprantu, kad kartu su problemos standartinės specifikacijos instrukcijos 507 00:24:57,500 --> 00:25:02,770 kaip naudotis CS50 prietaisą, įsitikinkite, taip pat kai CS50 specialios priemonės 508 00:25:02,770 --> 00:25:06,540 kaip stiliaus 50, kuris gali suteikti jums grįžtamąjį ryšį dinamiškai 509 00:25:06,540 --> 00:25:10,230 kokybė Jūsų kodas stiliaus ir taip pat patikrinti 50, kuri gali suteikti Jums su 510 00:25:10,230 --> 00:25:13,160 dinamišką grįžtamąjį ryšį dėl jūsų Kodekso teisingumą. 511 00:25:13,160 --> 00:25:16,850 Atleisk, kad mes vis dar lyginimo iš kelių Kinks su atbuliniu 50. 512 00:25:16,850 --> 00:25:21,490 Savo klasiokų, kurie buvo pradėti keli apie 04:00 penktadienio vakarą, kai 513 00:25:21,490 --> 00:25:25,130 spec pakilo pastebėjau, nes tada keletas klaidų, kad mes darbo 514 00:25:25,130 --> 00:25:29,010 per, ir atsiprašyti tiems, kurie patyrė nereikalingų nusivylimų. 515 00:25:29,010 --> 00:25:30,340 Kaltė yra mano. 516 00:25:30,340 --> 00:25:34,080 Bet mes atsakysime į CS50 aptarti kai tai bus išspręsta. 517 00:25:34,080 --> 00:25:35,700 >> Taigi ant balai patys žodį. 518 00:25:35,700 --> 00:25:38,990 Taigi, tai bus savaitę ar dvi prieš jus pradėsite gauti grįžtamąjį ryšį apie problemines rinkiniai 519 00:25:38,990 --> 00:25:40,640 nes jūs dar neturite mokymo kolegos. 520 00:25:40,640 --> 00:25:44,510 Ir net tada, mes pradėsime vertinti C problema nustato, kol mes 521 00:25:44,510 --> 00:25:46,970 grįžti atgal ir įvertinti įbrėžimams taip kad jums labiau tinka 522 00:25:46,970 --> 00:25:48,150 Atsiliepimai greičiau. 523 00:25:48,150 --> 00:25:51,870 Bet apskritai už mokymo programą, CS50 problema rinkiniai vertinami kartu 524 00:25:51,870 --> 00:25:53,580 po keturias ašis - 525 00:25:53,580 --> 00:25:55,760 apimtis, tikslumas, dizaino ir stilių. 526 00:25:55,760 --> 00:25:59,210 >> Taikymo sritis bus skaičius paprastai nuo nulio iki penkių, kad 527 00:25:59,210 --> 00:26:01,830 fiksuoja, kiek gabalas, kad jūs nukando. 528 00:26:01,830 --> 00:26:03,750 Paprastai, jūs norite, kad tai būtų penki. 529 00:26:03,750 --> 00:26:05,300 Jūs bent bandė viską. 530 00:26:05,300 --> 00:26:09,330 Ir pastebėti tai dauginamasis koeficientas todėl, kad tai tik dalis 531 00:26:09,330 --> 00:26:12,520 problema rinkinys nėra geriausia strategija. 532 00:26:12,520 --> 00:26:15,610 >> Tuo tarpu labiau akivaizdu yra svarba teisingumą - 533 00:26:15,610 --> 00:26:18,620 tiesiog jūsų programa teisingai su gerbti specifikacijos? 534 00:26:18,620 --> 00:26:21,510 Tai balsai sąmoningai daugiau tarifu nei kitų dviejų krypčių pagal 535 00:26:21,510 --> 00:26:24,450 veiksnys iš trijų, nes mes pripažįstame, kad paprastai jūs ketinate praleisti 536 00:26:24,450 --> 00:26:28,600 daug daugiau laiko vejasi nustatantis kai kurių klaidų, gauti savo kodo į darbą, tada jūs 537 00:26:28,600 --> 00:26:31,540 wcięć jį ir pasirinkti atitinkamų kintamųjų vardai ir 538 00:26:31,540 --> 00:26:33,800 patinka, kuris yra kitame gale apie stilių spektrą. 539 00:26:33,800 --> 00:26:36,160 >> Tai nereiškia, kad stilius yra ne svarbus, ir mes skelbiame jį per 540 00:26:36,160 --> 00:26:37,920 laikas tiek paskaitų ir skyriuose. 541 00:26:37,920 --> 00:26:40,520 Stilius reiškia estetika Jūsų kodas. 542 00:26:40,520 --> 00:26:43,980 Jūs pasirinkote pat pavadinimu kintamieji kad yra trumpas, bet šiek tiek 543 00:26:43,980 --> 00:26:44,680 aprašomasis? 544 00:26:44,680 --> 00:26:47,840 Ar jūsų kodas įspaudžiami, kaip jūs mačiau paskaita ir taip, kad atitiktų 545 00:26:47,840 --> 00:26:49,070 su stiliumi 50? 546 00:26:49,070 --> 00:26:51,220 >> Galiausiai yra teisė į dizainą yra per vidurį. 547 00:26:51,220 --> 00:26:54,090 Dizainas yra sunkiau vienas įdėti pirštu, nes tai daug 548 00:26:54,090 --> 00:26:55,000 subjektyvus. 549 00:26:55,000 --> 00:26:58,610 Bet tai galbūt svarbiausia trys ašys pedagoginės 550 00:26:58,610 --> 00:27:02,050 vertė laikui bėgant ir kad tai bus Mokymą kolegų yra galimybė 551 00:27:02,050 --> 00:27:04,110 suteiks Jums kokybinės grįžtamosios informacijos. 552 00:27:04,110 --> 00:27:08,100 Iš tiesų, CS50, nors mes turime šias formules bei muzikos natos, pabaigoje 553 00:27:08,100 --> 00:27:11,350 dienos tai yra labai sąmoningai labai mažos kibirai - taško verčių 554 00:27:11,350 --> 00:27:13,460 nuo nulio iki trijų ir nulis ir penki. 555 00:27:13,460 --> 00:27:17,800 Mes nebandome padaryti labai stambias linijas tarp probleminių grupių arba tarp 556 00:27:17,800 --> 00:27:21,490 studentai, bet sutelkti kiek mes galime kokybinius, Paprastoji laišką 557 00:27:21,490 --> 00:27:25,490 grįžtamasis ryšys, arba spausdintas arba žodžiu iš Jūsų pirma mokymo kolegos, 558 00:27:25,490 --> 00:27:27,050 gausite žinoti, gana gerai. 559 00:27:27,050 --> 00:27:32,340 >> Bet apskritai, jie yra svoriai kad įvairios ašys turės. 560 00:27:32,340 --> 00:27:35,480 Tuo tarpu, taip pat verta turint omenyje, kad jums neturėtų manyti, kad 561 00:27:35,480 --> 00:27:38,870 trys iš penkių yra 60% ir Todėl maždaug netinkamai. 562 00:27:38,870 --> 00:27:41,410 Trys sąmoningai reiškia būti tarsi viduryje kelio gera. 563 00:27:41,410 --> 00:27:43,480 Jei gaunate trise ne pradžioje semestro, tai 564 00:27:43,480 --> 00:27:46,340 iš tiesų reiškia būti gera vieta pradėti. 565 00:27:46,340 --> 00:27:50,510 Jei gaunate tuojau, mugės, ten tikrai tam tikrą darbą mokėti šiek tiek 566 00:27:50,510 --> 00:27:53,250 daugiau dėmesio, pasinaudoti sekcijų ir darbo valandomis. 567 00:27:53,250 --> 00:27:54,590 >> Jei gaunate fours ir penketai, puiku. 568 00:27:54,590 --> 00:27:57,430 Bet iš tikrųjų, mes tikimės, kad trajektorijos tarp studentų - labai 569 00:27:57,430 --> 00:28:00,575 individualiai vienam studentui, bet pradedant semestrą čia tarsi 570 00:28:00,575 --> 00:28:04,100 du į tris srities, bet baigiasi iki čia, 4:56 asortimentą. 571 00:28:04,100 --> 00:28:05,440 Štai ką mes iš tikrųjų ieško. 572 00:28:05,440 --> 00:28:09,590 Ir mes nepamiršti delta, kad jūs eksponuoti tarp savaitės nulio ir savaitės 573 00:28:09,590 --> 00:28:12,170 12, kai aš darau rūšys. 574 00:28:12,170 --> 00:28:16,380 Nesvarbu, mums visiškai kaip jūs sąžiningai pradžioje, jei jūsų 575 00:28:16,380 --> 00:28:19,330 trajektorija yra iš tiesų aukštyn ir stiprus. 576 00:28:19,330 --> 00:28:24,000 >> Akademinis sąžiningumas - todėl leiskite man įdėti į mano rimtesnė balsas vos akimirką. 577 00:28:24,000 --> 00:28:28,510 Taigi, šis kursas turi skirtumų siųsti daugiau studentų nei bet kuri kita 578 00:28:28,510 --> 00:28:30,950 istorijoje skelbimo lentos, manau. 579 00:28:30,950 --> 00:28:34,220 Mes turime rūšiuoti pamečiau skaičių į tai taškas, kaip dažnai tai vyksta. 580 00:28:34,220 --> 00:28:37,090 Ir tai dar ne, nes studentai iš 50 yra, bet daugiau nesąžiningas nei jų 581 00:28:37,090 --> 00:28:38,690 klasiokai kitur. 582 00:28:38,690 --> 00:28:42,800 Bet suprasti ir tai, kad mes esame labai geras aptikti šis dalykas rūšiuoti. 583 00:28:42,800 --> 00:28:45,920 >> Ir tai yra privalumas, kad informatikos klasė turi tuo, kad mes 584 00:28:45,920 --> 00:28:49,110 gali ir mes lyginti visus studentus problema nustato porinių prieš kiekvieną 585 00:28:49,110 --> 00:28:51,470 kita vertus, ne tik šiais metais bet visi prieš metus. 586 00:28:51,470 --> 00:28:55,080 Mes turime galimybę, kaip studentai klasės, "Google" ir rasti kodą 587 00:28:55,080 --> 00:28:57,440 svetainėse kaip GitHub ir diskusijų forumuose. 588 00:28:57,440 --> 00:29:00,840 Yra absoliučiai sprendimai CS50-aisiais p nustato plūduriuojančius aplink ten. 589 00:29:00,840 --> 00:29:02,710 Bet jei jūs galite juos rasti, mes galime juos rasti. 590 00:29:02,710 --> 00:29:07,130 Ir visa tai yra labai automatizuotas ir paprastas, ir liūdna mus rasti. 591 00:29:07,130 --> 00:29:10,990 >> Bet aš noriu pabrėžti ir tai, kad Žinoma, akademinis sąžiningumas politika 592 00:29:10,990 --> 00:29:13,960 labai reiškė labai daug tos dvasios priešingybė. 593 00:29:13,960 --> 00:29:17,506 Iš tiesų, šiais metais mes perfrazuoti dalykus į mokymo programas, kad būtų tai, taškas 594 00:29:17,506 --> 00:29:19,790 dot dot, su išsamiau į mokymo programas. 595 00:29:19,790 --> 00:29:22,860 Bet svarbiausias tema kurso tikrai turi būti pagrįstas. 596 00:29:22,860 --> 00:29:26,160 Mes pripažįstame, kad yra reikšmingas suma pedagoginių 597 00:29:26,160 --> 00:29:30,550 vertė bendradarbiauja, tam tikru mastu, su klasės draugais, kai jūs 598 00:29:30,550 --> 00:29:33,700 du ar po tris ar jums labiau yra stovėjo balta lenta 599 00:29:33,700 --> 00:29:35,670 whiteboarding, taip kalbėti, savo idėjas - 600 00:29:35,670 --> 00:29:39,480 raštu iš pseudocode nuotraukose, diagramų, kas turėtų Mario, jei 601 00:29:39,480 --> 00:29:41,350 jums buvo rašyti pirmas į pseudocode. 602 00:29:41,350 --> 00:29:43,240 Ką reikėtų godus algoritmas - 603 00:29:43,240 --> 00:29:46,100 kaip jis turėtų elgtis už problema nustato vieną? 604 00:29:46,100 --> 00:29:50,440 >> Ir taip suprasti, kad elgesį kad mes skatiname yra labai 605 00:29:50,440 --> 00:29:51,470 daug palei tas linijas. 606 00:29:51,470 --> 00:29:53,890 Ir mokymo programą, pamatysite visa krūva kulkų pagal 607 00:29:53,890 --> 00:29:57,740 pagrįstas kategorija ir nėra pagrindo kategorija, kuri padeda mums padėti 608 00:29:57,740 --> 00:30:00,740 jums wrap savo mintis apie kur mes atkreipti ta linija. 609 00:30:00,740 --> 00:30:04,340 Ir apskritai, padorus nykščio taisykle yra tai, kad jei jūs sunkiai sekasi spręsti 610 00:30:04,340 --> 00:30:07,990 kai klaidų ir jūsų draugas ar klasiokas sėdi šalia tavęs, tai 611 00:30:07,990 --> 00:30:11,530 protinga jums parodyti jam ar jai Jūsų kodas ir sako, ei, jūs galite padėti 612 00:30:11,530 --> 00:30:13,700 man išsiaiškinti, kas vyksta blogai čia? 613 00:30:13,700 --> 00:30:17,110 >> Mes neturime paprastai apima priešingoje pusėje. 614 00:30:17,110 --> 00:30:20,730 Tai nėra teisingas atsakas į jūsų draugas ar klasiokas čia pasakyti, Oh, 615 00:30:20,730 --> 00:30:22,510 tiesiog pažvelgti į mano ir figūra jis iš to. 616 00:30:22,510 --> 00:30:24,400 Tai tarsi nepagrįstas. 617 00:30:24,400 --> 00:30:27,750 Tačiau atsižvelgdama kažkas, kitas smegenų, kita akis pora pažvelgti 618 00:30:27,750 --> 00:30:31,620 Jūsų ekrane ar pažvelgti kodą ir sako, jūs tikrai norite 619 00:30:31,620 --> 00:30:32,760 turėti kilpą čia? 620 00:30:32,760 --> 00:30:34,800 Ar tikrai norite kad kabliataškis čia? 621 00:30:34,800 --> 00:30:37,090 Arba O, kad klaidos pranešimas reiškia tai. 622 00:30:37,090 --> 00:30:39,580 Tai yra labai protinga ir skatinami elgesio. 623 00:30:39,580 --> 00:30:44,010 >> Tais atvejais, kuriuos buvau tipo nuorodomis anksčiau skliautais, kai studentai yra 624 00:30:44,010 --> 00:30:47,350 vėlai vakare, todėl prastas sprendimą sprendimai ir rašau savo kodą 625 00:30:47,350 --> 00:30:50,130 kažkas arba tiesiog pasakyti, čia jis yra Dropbox arba 626 00:30:50,130 --> 00:30:51,610 "Google" paiešką vėlai vakare. 627 00:30:51,610 --> 00:30:54,880 Ir todėl norėčiau paskatinti ir maldauti jus, jei jūs turite tuos neišvengiama 628 00:30:54,880 --> 00:30:58,450 akimirkos streso, jūs nelygumai iki prieš terminą, jūs neturite vėlai 629 00:30:58,450 --> 00:31:01,490 dieną, nes tai jau penktadienį, kad taškas, rašykite kurso galvų arba 630 00:31:01,490 --> 00:31:02,330 pats tiesiogiai. 631 00:31:02,330 --> 00:31:04,790 Pasakykite, klausytis, aš ne mano lūžio taško čia. 632 00:31:04,790 --> 00:31:06,660 Leiskite pokalbį ir suprasti jį. 633 00:31:06,660 --> 00:31:10,400 Kreipiantis į internetą ar kokios nors kitos ne protingas elgesys niekada 634 00:31:10,400 --> 00:31:13,070 sprendimas, ir per daug iš jūsų klasiokai nebegali čia 635 00:31:13,070 --> 00:31:15,150 Campus, nes tos blogos sprendimą. 636 00:31:15,150 --> 00:31:17,840 Bet tai labai lengva sijonas ta linija. 637 00:31:17,840 --> 00:31:22,950 >> Ir čia yra šiek tiek vaizdo nudžiuginti jus iš Reddit kad dabar 638 00:31:22,950 --> 00:31:25,720 viskas bus gerai. 639 00:31:25,720 --> 00:31:30,210 >> Taigi greitai Priminti tada, , kur mes nerašomas. 640 00:31:30,210 --> 00:31:33,690 Taigi, praeitą savaitę, priminti, kad mes pristatome sąlygos, o ne nulio 641 00:31:33,690 --> 00:31:34,880 o C šiuo metu. 642 00:31:34,880 --> 00:31:38,300 Ir ten buvo keletas naujų sintaksė, bet tikrai ne naujų idėjų per se. 643 00:31:38,300 --> 00:31:42,630 Mes turėjome Būlio išraiškos, kad galėtume arba kartu su dviejų vertikalių 644 00:31:42,630 --> 00:31:46,490 juostos arba ir kartu su dviem jungimo ženklus, sakydamas, kad tiek kairėje 645 00:31:46,490 --> 00:31:49,990 ir teisė turi būti tiesa tai vykdyti. 646 00:31:49,990 --> 00:31:53,150 Tada mes turėjome jungikliai, kurią mes pažvelgė bent trumpai, bet siūlau tikrai 647 00:31:53,150 --> 00:31:56,830 tiesiog skirtingi sintaksė pasiekti pačios rūšies tikslą, jei jūs žinote 648 00:31:56,830 --> 00:31:59,270 iš anksto, ką jūsų atvejai ketinate būti. 649 00:31:59,270 --> 00:32:00,160 >> Mes pažvelgė į kilpas. 650 00:32:00,160 --> 00:32:03,340 For ciklas yra gal labiausiai paplitusi, ar bent vienas, kad žmonės 651 00:32:03,340 --> 00:32:05,330 paprastai pasiekti už instinktyviai. 652 00:32:05,330 --> 00:32:08,240 Nors tai atrodo šiek tiek paslaptingas, pamatysite daug, daug pavyzdžių, tai 653 00:32:08,240 --> 00:32:11,590 prieš ilgas, kaip jūs turite jau per vėlu praėjusią savaitę. 654 00:32:11,590 --> 00:32:14,280 Nors kilpos gali panašiai pasiekti tą patį. 655 00:32:14,280 --> 00:32:17,550 Bet jei norite daryti, bet incrementation ar atnaujinimas 656 00:32:17,550 --> 00:32:20,230 Kintamojo reikšmės, turite padaryti daugiau nei rankiniu būdu 657 00:32:20,230 --> 00:32:22,440 už kilpa iki leidžia. 658 00:32:22,440 --> 00:32:25,310 Ir tada ten do-while cikle, kuri leidžia mums padaryti kažką 659 00:32:25,310 --> 00:32:28,460 bent vieną kartą, o kažkas kita yra tiesa. 660 00:32:28,460 --> 00:32:31,550 Ir tai ypač tinka programas arba žaidimus, jei norite 661 00:32:31,550 --> 00:32:33,810 kad tai paskatins už kažką vartotoją bent vieną kartą. 662 00:32:33,810 --> 00:32:37,110 Ir tada, jei jis ar ji nebendradarbiauja, galbūt norėsite tai padaryti 663 00:32:37,110 --> 00:32:38,420 vėl ir vėl. 664 00:32:38,420 --> 00:32:41,270 >> Su kintamųjų, tuo tarpu, mes turėjome linijas kodo, kaip šis, kuris galėtų 665 00:32:41,270 --> 00:32:41,950 būti dvi eilutes. 666 00:32:41,950 --> 00:32:44,830 Galite paskelbti int vadinamas skaitiklis, kabliataškis. 667 00:32:44,830 --> 00:32:47,660 Arba galite tiesiog paskelbti ir ją apibrėžti, taip sakant. 668 00:32:47,660 --> 00:32:49,950 Suteikite jam tuo pačiu metu reikšmė. 669 00:32:49,950 --> 00:32:51,890 >> Ir tada galiausiai, mes kalbėjome apie funkcijas. 670 00:32:51,890 --> 00:32:54,270 Ir tai buvo gražus pavyzdys ta prasme, kad ji iliustruoja 671 00:32:54,270 --> 00:32:55,840 dviejų rūšių funkcijas. 672 00:32:55,840 --> 00:32:59,030 Vienas iš jų yra GetString (), kuris, vėlgi, gauna eilutę iš vartotojo. 673 00:32:59,030 --> 00:33:02,040 Bet GetString () yra rūšies įdomus, tiek, kiek mes jį naudojo, 674 00:33:02,040 --> 00:33:05,620 nes mes visada naudojamas su kažkas kairėje pusėje 675 00:33:05,620 --> 00:33:06,600 lygybės ženklas. 676 00:33:06,600 --> 00:33:09,830 Tai reiškia, kad GetString () grąžina reikšmę. 677 00:33:09,830 --> 00:33:11,970 Jis grįžta, žinoma, eilutę. 678 00:33:11,970 --> 00:33:15,130 Ir tada kairėje pusėje, mes tiesiog įrašykite tą eilutę viduje 679 00:33:15,130 --> 00:33:16,580 kintamasis vadinamas pavadinimą. 680 00:33:16,580 --> 00:33:21,100 >> Tai skiriasi, tam tikra prasme, iš printf nes printf, bent jau mūsų 681 00:33:21,100 --> 00:33:23,540 naudojimas čia negrąžina nieko. 682 00:33:23,540 --> 00:33:24,960 Kaip žemę, ji grįžti kažką. 683 00:33:24,960 --> 00:33:26,380 Mes tiesiog nerūpi, kas tai yra. 684 00:33:26,380 --> 00:33:29,090 Bet ji turi kas vadinamas šalutinį poveikį. 685 00:33:29,090 --> 00:33:31,840 Ir kas tai yra šalutinis poveikis kiekvienas atveju mes matėme iki šiol? 686 00:33:31,840 --> 00:33:34,720 Ką printf daryti? 687 00:33:34,720 --> 00:33:37,780 Jis spausdina kažką ekrane, rodoma tekstas arba skaičiai ar kažkas 688 00:33:37,780 --> 00:33:38,380 ekrane. 689 00:33:38,380 --> 00:33:41,170 Ir tai tiesiog laikoma šalutinis poveikis nes ji tikrai nėra dalijamos 690 00:33:41,170 --> 00:33:41,900 jį atgal į mane. 691 00:33:41,900 --> 00:33:44,770 Tai ne viduje atsakymas juoda dėžutė, kad aš galiu tada 692 00:33:44,770 --> 00:33:46,130 pasiekti į ir patraukti. 693 00:33:46,130 --> 00:33:49,160 Tai tiesiog daro savo, daug kaip Colton buvo įkištas į tai 694 00:33:49,160 --> 00:33:52,560 black box ", praeitą savaitę, ir jis kažkaip stebuklingai buvo piešimo ant lentos 695 00:33:52,560 --> 00:33:54,500 be manęs iš tikrųjų dalyvauja. 696 00:33:54,500 --> 00:33:55,560 Tai būtų šalutinis poveikis. 697 00:33:55,560 --> 00:33:59,100 Bet jei aš iš tikrųjų turėjo pasiekti atgal čia ir pasakyti,, oi, čia yra eilutė 698 00:33:59,100 --> 00:34:02,040 nuo vartotojo, kad būtų būti grąžinta reikšmė. 699 00:34:02,040 --> 00:34:05,650 >> Ir iki šiol mes tik naudojamas funkcijas kad kiti žmonės parašė. 700 00:34:05,650 --> 00:34:09,219 Bet mes iš tikrųjų galite atlikti šiuos rūšių dalykų sau. 701 00:34:09,219 --> 00:34:12,730 Taigi, aš ruošiuosi eiti į CS50 prietaisą iš naujo. 702 00:34:12,730 --> 00:34:16,020 Leiskite uždaryti skirtuką, kad mes buvo atidaryti prieš akimirką. 703 00:34:16,020 --> 00:34:18,530 Ir leiskite man eiti į priekį ir sukurti naują failą. 704 00:34:18,530 --> 00:34:22,400 Ir aš ruošiuosi eiti į priekį ir vadiname positive.c. 705 00:34:22,400 --> 00:34:24,770 Taigi aš noriu kažką daryti su teigiami skaičiai čia. 706 00:34:24,770 --> 00:34:27,219 Taigi, aš ruošiuosi eiti į priekį ir daryti int - 707 00:34:27,219 --> 00:34:28,000 sorry - 708 00:34:28,000 --> 00:34:31,840 # Include. 709 00:34:31,840 --> 00:34:34,280 Tegul ne padaryti tą patį klaida, kaip ir anksčiau. 710 00:34:34,280 --> 00:34:40,020 Int main (void), atviras garbanotas petnešomis, uždaras garbanotais petnešomis. 711 00:34:40,020 --> 00:34:41,639 >> O dabar noriu daryti toliau. 712 00:34:41,639 --> 00:34:44,600 Noriu parašyti programą, kuri primygtinai reikalauja, kad vartotojas suteikia 713 00:34:44,600 --> 00:34:46,770 man teigiamas sveikasis skaičius. 714 00:34:46,770 --> 00:34:50,969 Taigi nėra GetPositiveInt funkcija į CS50 bibliotekoje. 715 00:34:50,969 --> 00:34:52,610 Yra tik GetInt (). 716 00:34:52,610 --> 00:34:55,790 Bet tai gerai, nes turiu konstruktai, su kuriais galiu neįvesti 717 00:34:55,790 --> 00:34:59,360 šiek tiek daugiau suvaržymų tos vertės. 718 00:34:59,360 --> 00:35:00,990 Aš galėtų padaryti kažką panašaus į tai. 719 00:35:00,990 --> 00:35:02,780 >> Taigi, int n - 720 00:35:02,780 --> 00:35:04,920 ir jei įvedate kartu, tiesiog suprasti, Aš ruošiuosi grįžti ir 721 00:35:04,920 --> 00:35:06,430 pakeisti kai akimirkai dalykų - 722 00:35:06,430 --> 00:35:09,960 taip int n lygus GetInt (). 723 00:35:09,960 --> 00:35:11,780 Ir tai ketina pateikti LC viduje n. 724 00:35:11,780 --> 00:35:13,830 Ir leiskite man būti labiau aprašomasis. 725 00:35:13,830 --> 00:35:23,270 Leiskite man pasakyti, kaip aš reikalauti, kad galite man duoti teigiamą sveikąjį skaičių. 726 00:35:23,270 --> 00:35:23,550 >> Gerai. 727 00:35:23,550 --> 00:35:25,250 Taigi tik šiek tiek nurodymus. 728 00:35:25,250 --> 00:35:26,270 O dabar ką aš galiu padaryti? 729 00:35:26,270 --> 00:35:29,840 Na, aš jau žinau, iš mano paprasta sąlygos arba filialai, kaip ir aš 730 00:35:29,840 --> 00:35:36,100 turėjo nulio, galėčiau ką nors pasakyti pavyzdžiui, jei n yra mažesnis arba lygus 731 00:35:36,100 --> 00:35:44,460 nulis, tada aš noriu kažką daryti patinka, kad nėra teigiamas. 732 00:35:44,460 --> 00:35:45,560 Ir tada aš galėčiau padaryti - 733 00:35:45,560 --> 00:35:47,310 Gerai, bet aš tikrai noriu gauti, kad int. 734 00:35:47,310 --> 00:35:52,020 Kad galėčiau eiti čia ir galėjau natūra Kitoje egzemplioriaus tai ir įtraukoje tai. 735 00:35:52,020 --> 00:35:52,570 Ir tada, Gerai. 736 00:35:52,570 --> 00:35:56,990 Taigi, jei n yra mažesnis arba lygi nuliui tai padaryti. 737 00:35:56,990 --> 00:35:58,900 >> Dabar ką daryti, jei vartotojas nebendradarbiauja? 738 00:35:58,900 --> 00:36:01,560 Na, tada aš ruošiuosi skolintis tai čia. 739 00:36:01,560 --> 00:36:03,130 Ir tada aš einu čia čia ir čia. 740 00:36:03,130 --> 00:36:06,420 Taigi, akivaizdu, kad tai ne sprendimas, tiesa? 741 00:36:06,420 --> 00:36:07,810 Nes ten nematyti pabaigos. 742 00:36:07,810 --> 00:36:13,100 Jei aš noriu reikalauti, kad vartotojas suteikia man teigiamas sveikasis skaičius, galiu 743 00:36:13,100 --> 00:36:14,150 faktiškai gauti int. 744 00:36:14,150 --> 00:36:15,620 Galiu tada patikrinkite tos int. 745 00:36:15,620 --> 00:36:18,570 Bet tada aš noriu patikrinti ją ir vėl patikrinti jį dar kartą ir patikrinkite dar kartą. 746 00:36:18,570 --> 00:36:21,680 Taigi akivaizdu, kas geriau statyti, kad naudojant čia? 747 00:36:21,680 --> 00:36:22,840 Viskas gerai, todėl kai kurie iš kilpos natūra. 748 00:36:22,840 --> 00:36:25,430 >> Taigi, aš ruošiuosi atsikratyti beveik visa tai. 749 00:36:25,430 --> 00:36:27,320 Ir aš noriu gauti šią int bent vieną kartą. 750 00:36:27,320 --> 00:36:28,890 Taigi, aš ketina pasakyti padaryti - 751 00:36:28,890 --> 00:36:32,110 ir aš grįžti į o tik akimirką - 752 00:36:32,110 --> 00:36:33,050 dabar ką daryti? 753 00:36:33,050 --> 00:36:35,860 Aš ruošiuosi padaryti int n gauna GetInt (). 754 00:36:35,860 --> 00:36:36,080 Gerai. 755 00:36:36,080 --> 00:36:37,250 Taigi tai gana geras. 756 00:36:37,250 --> 00:36:39,750 Ir dabar, kaip dažnai Noriu tai padaryti? 757 00:36:39,750 --> 00:36:45,770 >> Leiskite man printf viduje kilpa todėl galiu reikalauti dar ir dar, 758 00:36:45,770 --> 00:36:46,740 jeigu reikia,. 759 00:36:46,740 --> 00:36:49,720 Ir ką aš noriu tai o būklė daryti? 760 00:36:49,720 --> 00:36:53,870 Noriu išlaikyti tai daryti o kas yra? 761 00:36:53,870 --> 00:36:54,125 Taip. 762 00:36:54,125 --> 00:36:55,390 N yra mažesnė arba lygi nuliui. 763 00:36:55,390 --> 00:36:58,180 Taigi jau mes labai išvalyti šį kodą į viršų. 764 00:36:58,180 --> 00:37:00,700 Mes pasiskolino labai paprasta statyti - do-while cikle. 765 00:37:00,700 --> 00:37:04,690 Aš pavogtas tik svarbius linijas kodo, kad aš pradėjau kopijavimo ir 766 00:37:04,690 --> 00:37:05,960 įdėjimą, kuris buvo ne išmintingas. 767 00:37:05,960 --> 00:37:09,790 Ir todėl dabar aš iš tikrųjų įklijuokite tai čia ir tiesiog vieną kartą. 768 00:37:09,790 --> 00:37:12,990 >> O dabar ką noriu daryti ne labai pabaigoje šią programą? 769 00:37:12,990 --> 00:37:16,810 Aš tik pasakyti ką nors paprasto, patinka, ačiū už - ir 770 00:37:16,810 --> 00:37:18,980 Aš padarysiu% I int - 771 00:37:18,980 --> 00:37:23,270 Backslash n kablelis ir prijunkite n, kabliataškiu. 772 00:37:23,270 --> 00:37:23,910 >> Gerai. 773 00:37:23,910 --> 00:37:27,290 Taigi pažiūrėkime, kas vyksta dabar kai aš paleisti šią programą. 774 00:37:27,290 --> 00:37:30,600 Aš ruošiuosi eiti į priekį ir padarysiu teigiamas. 775 00:37:30,600 --> 00:37:30,880 Velnias. 776 00:37:30,880 --> 00:37:31,600 Keletas klaidų. 777 00:37:31,600 --> 00:37:32,960 Taigi leiskite man slinkti atgal iki pirmosios. 778 00:37:32,960 --> 00:37:34,020 Negalima dirbti per juos atgal. 779 00:37:34,020 --> 00:37:37,000 Darbas per juos iš viršaus į apačią kad ir jie kaskada ir tik 780 00:37:37,000 --> 00:37:38,630 vienas dalykas būti negerai. 781 00:37:38,630 --> 00:37:42,532 Numanomas deklaracija funkcija GetInt (). 782 00:37:42,532 --> 00:37:43,020 Taip. 783 00:37:43,020 --> 00:37:44,420 Taigi tai nebuvo pakankamai. 784 00:37:44,420 --> 00:37:46,760 I rūšies padarė tą pačią klaidą, bet šiek tiek skiriasi šiuo metu. 785 00:37:46,760 --> 00:37:51,940 Man reikia įtraukti ne tik stdio.h bet taip pat cs50.h, kuri apima 786 00:37:51,940 --> 00:37:56,770 vadinamieji deklaracijos gauti INT, kuri mokyti prietaisą, arba moko 787 00:37:56,770 --> 00:37:58,760 C kas GetInt () yra. 788 00:37:58,760 --> 00:37:59,550 >> Taigi leiskite man išsaugokite. 789 00:37:59,550 --> 00:38:02,040 Aš ruošiuosi ignoruoti kitų klaidų nes aš ruošiuosi tikimės, kad jie 790 00:38:02,040 --> 00:38:05,210 kažkaip susijęs su klaida Aš jau išspręsta. 791 00:38:05,210 --> 00:38:08,710 Taigi leiskite man eiti į priekį ir perkompiliuoti su make teigiamas, Enter. 792 00:38:08,710 --> 00:38:09,020 Velnias. 793 00:38:09,020 --> 00:38:09,985 Trys klaidos, vis dar. 794 00:38:09,985 --> 00:38:12,650 Leiskite man pereiti iki pirmosios. 795 00:38:12,650 --> 00:38:14,320 Nepanaudoti kintamojo n. 796 00:38:14,320 --> 00:38:15,850 Mes nematėme anksčiau. 797 00:38:15,850 --> 00:38:17,200 Ir tai taip pat yra šiek tiek paslaptingas. 798 00:38:17,200 --> 00:38:18,850 Tai yra kompiliatorius produkcija. 799 00:38:18,850 --> 00:38:23,610 O tai pabrėžė linija ten - positive.c :9:13 - 800 00:38:23,610 --> 00:38:28,960 sako, tai sako ant devynių linija positive.c, bent 13 simbolių, 801 00:38:28,960 --> 00:38:31,510 13 stulpelis, jūs padarėte šią klaidą. 802 00:38:31,510 --> 00:38:34,230 >> Ir visų pirma, tai sakau man nepanaudotų kintamasis n. 803 00:38:34,230 --> 00:38:35,790 Taigi pažiūrėkime, - 804 00:38:35,790 --> 00:38:37,150 linija devyni. 805 00:38:37,150 --> 00:38:40,430 Aš naudoju n ta prasme, kad Aš jai suteikiant vertę. 806 00:38:40,430 --> 00:38:44,200 Bet kas sudarytojas nepatinka yra kad aš ne pažiūros jį naudoti. 807 00:38:44,200 --> 00:38:45,560 Bet palauk, aš naudoju jį. 808 00:38:45,560 --> 00:38:48,170 Atsižvelgiant į 11, aš naudoju jį čia. 809 00:38:48,170 --> 00:38:52,430 Bet jei aš slinkti toliau ne positive.c :11 - 810 00:38:52,430 --> 00:38:56,230 taip ne linija 11, charakteris 12 sudarytojas man sako, naudoti 811 00:38:56,230 --> 00:38:58,670 neoficialus identifikatorius n. 812 00:38:58,670 --> 00:39:02,760 >> Taigi nedeklaruoti priemonė Turiu nenurodomas jį kaip 813 00:39:02,760 --> 00:39:04,970 kintamasis, duomenų tipo. 814 00:39:04,970 --> 00:39:05,500 Bet palauk. 815 00:39:05,500 --> 00:39:09,150 Aš tiksliai, kad pagal devynių. 816 00:39:09,150 --> 00:39:11,100 Taigi, kas yra tikrai supainioti čia. 817 00:39:11,100 --> 00:39:14,900 Tai arba man ar sudarytojas, nes pagal devynių, vėlgi, aš skelbiantis 818 00:39:14,900 --> 00:39:18,650 int n, ir aš paskiriant jį grįžti vertę GetInt (). 819 00:39:18,650 --> 00:39:22,930 Tada aš naudoju, kad kintamojo n atitinka 11 ir tikrinti, ar jos vertė yra mažesnė 820 00:39:22,930 --> 00:39:24,050 nei arba lygus nuliui. 821 00:39:24,050 --> 00:39:27,430 Bet tai, matyt, yra blogas ir skaldytų kodėl? 822 00:39:27,430 --> 00:39:30,630 823 00:39:30,630 --> 00:39:32,490 Pasakykite dar kartą? 824 00:39:32,490 --> 00:39:35,690 >> Ak, turiu pripažinti, n prieš patekti į kilpą. 825 00:39:35,690 --> 00:39:36,370 Bet kodėl? 826 00:39:36,370 --> 00:39:39,830 Aš turiu galvoje, mes tiesiog pasiūlė šiek tiek atgal, kad tai gerai deklaruoti kintamuosius 827 00:39:39,830 --> 00:39:43,600 visi į vieną eilutę ir tada priskirti jiems tam tikrą vertę. 828 00:39:43,600 --> 00:39:46,790 Pasaulinį kintamąjį - tegul ateina atgal į šį vos akimirką idėja. 829 00:39:46,790 --> 00:39:48,690 Kodėl tu nori, kad aš įdėti tai ne kilpą? 830 00:39:48,690 --> 00:40:03,170 831 00:40:03,170 --> 00:40:03,830 Tai. 832 00:40:03,830 --> 00:40:06,780 Būtent. 833 00:40:06,780 --> 00:40:09,610 >> Taigi, nors, šiek tiek counterintuitive, leiskite man apibendrinti. 834 00:40:09,610 --> 00:40:13,510 Kai paskelbti n viduje iš do bloko ten - 835 00:40:13,510 --> 00:40:16,320 specialiai viduje tas garbanotas petnešos - 836 00:40:16,320 --> 00:40:19,210 kad kintamasis n yra kas vadinamas apimtis - 837 00:40:19,210 --> 00:40:23,210 nesusijęs su mūsų balais sistemos kursas - bet turi taikymo sritį, kad yra 838 00:40:23,210 --> 00:40:25,190 tik tiems garbanotieji petnešų. 839 00:40:25,190 --> 00:40:28,460 Kitaip tariant, paprastai, jei deklaruoti viduje rinkinio kintamasis 840 00:40:28,460 --> 00:40:33,370 garbanotas petnešos, kad kintamasis egzistuoja tik viduje tuos garbanotieji petnešų. 841 00:40:33,370 --> 00:40:37,320 Taigi, šia logika vien, nors Aš paskelbtas n atitinka devynių, jis 842 00:40:37,320 --> 00:40:41,910 iš esmės dingsta iš taikymo srities, dingsta iš atminties, taip sakant, 843 00:40:41,910 --> 00:40:43,370 tuo metu, kai aš paspauskite linija 11. 844 00:40:43,370 --> 00:40:47,370 Kadangi linija 11, deja, yra ne tas garbanotas petnešomis. 845 00:40:47,370 --> 00:40:51,540 >> Taigi, aš, deja, negaliu išspręsti šią problemą, grįžta į ką aš padariau anksčiau. 846 00:40:51,540 --> 00:40:53,370 Galbūt iš pradžių tai padaryti. 847 00:40:53,370 --> 00:40:56,370 Bet ką jūs dabar ne daro cikliškai? 848 00:40:56,370 --> 00:40:58,260 Jūs akivaizdžiai negauna LC cikliškai. 849 00:40:58,260 --> 00:41:01,320 Taigi, mes galime palikti GetInt () ir mes turėtų palikti GetInt () viduje 850 00:41:01,320 --> 00:41:04,420 kilpa, nes tai, ką mes norime kvaršinti vėl ir vėl vartotojui. 851 00:41:04,420 --> 00:41:08,660 Bet tai pakanka eiti iki linijos, tarkim, šešių. 852 00:41:08,660 --> 00:41:10,150 Žiniasklaida n kabliataškis. 853 00:41:10,150 --> 00:41:12,990 Nepasiduokite jos vertė dar, nes Jums nereikia tik dar. 854 00:41:12,990 --> 00:41:16,220 >> Bet dabar žemyn čia, pranešimas - tai Būtų labai paprasta klaida. 855 00:41:16,220 --> 00:41:19,440 Nenoriu šešėlis mano ankstesnį deklaracija n. 856 00:41:19,440 --> 00:41:22,830 Noriu naudoti n, kad iš tikrųjų egzistuoja. 857 00:41:22,830 --> 00:41:25,780 Ir todėl dabar atitinka 10 Aš priskirti n reikšmę. 858 00:41:25,780 --> 00:41:28,580 Tačiau atsižvelgiant į šešių aš pareiškiu, n. 859 00:41:28,580 --> 00:41:32,940 Ir taip aš galiu ar negaliu naudoti jį suderinti 12 metu? 860 00:41:32,940 --> 00:41:37,120 Galiu, nes tarp kurių garbanotas petnešos yra n paskelbta dabar? 861 00:41:37,120 --> 00:41:38,770 Vienas čia on-line penkių. 862 00:41:38,770 --> 00:41:40,330 Vienam čia on-line 14. 863 00:41:40,330 --> 00:41:49,770 Taigi, jei aš dabar nutolinti, išsaugokite šį failą, eikite atgal į ir paleisti, kad teigiamas, jį 864 00:41:49,770 --> 00:41:50,820 parengė šį laiką. 865 00:41:50,820 --> 00:41:51,940 Štai jau pažanga. 866 00:41:51,940 --> 00:41:53,640 Slash. . / Teigiamas, Enter. 867 00:41:53,640 --> 00:41:56,060 >> Reikalauju, kad jūs suteikiate man teigiamas sveikasis skaičius. 868 00:41:56,060 --> 00:41:57,750 Neigiamas 1. 869 00:41:57,750 --> 00:41:59,020 Neigiamas 2. 870 00:41:59,020 --> 00:42:00,680 Neigiama 3. 871 00:42:00,680 --> 00:42:01,760 Nulis. 872 00:42:01,760 --> 00:42:03,000 Vienas. 873 00:42:03,000 --> 00:42:05,130 Ir ačiū už tas yra kas dabar spausdinti. 874 00:42:05,130 --> 00:42:07,400 >> Leiskite man pabandyti kažką kita, iš smalsumo. 875 00:42:07,400 --> 00:42:09,600 Aš buvo pasakyta įvesti sveikasis skaičius. 876 00:42:09,600 --> 00:42:12,870 Bet kas, jei aš vietoj įveskite ėrienos? 877 00:42:12,870 --> 00:42:14,460 Taigi jūs dabar matote skiriasi eilutę - 878 00:42:14,460 --> 00:42:15,350 bandykite dar kartą. 879 00:42:15,350 --> 00:42:17,670 Bet niekur mano kodas aš rašyti bandykite dar kartą. 880 00:42:17,670 --> 00:42:22,320 Taigi, kur, matyt, tai bandykite dar kartą greitai iš, pasakytumėte jūs? 881 00:42:22,320 --> 00:42:23,540 Taip, nuo GetInt () pati. 882 00:42:23,540 --> 00:42:26,650 Taigi, vienas iš dalykų, CS50 darbuotojai ką daro už jus, bent jau tai pirmas kelias 883 00:42:26,650 --> 00:42:30,400 savaites, yra mes parašėme tam tikrą sumą Klaidų tikrinimo užtikrinti, kad, jei 884 00:42:30,400 --> 00:42:34,260 skambinate GetInt (), galite bent jau bus grįžti žinutę iš vartotojo int. 885 00:42:34,260 --> 00:42:35,460 Jūs negausite eilutę. 886 00:42:35,460 --> 00:42:36,440 Jūs negausite Char. 887 00:42:36,440 --> 00:42:39,660 Jūs negausite kažką nors apskritai. 888 00:42:39,660 --> 00:42:40,510 Gausite int. 889 00:42:40,510 --> 00:42:41,890 >> Dabar jis gali būti teigiamas. 890 00:42:41,890 --> 00:42:42,770 Jis gali būti neigiamas. 891 00:42:42,770 --> 00:42:44,550 Mes jokių garantijų, kad aplink. 892 00:42:44,550 --> 00:42:48,960 Bet mes kvaršinti vartotojui pakartoti, retry, bandykite dar kartą, kol jis arba ji iš tikrųjų 893 00:42:48,960 --> 00:42:49,810 bendradarbiauja. 894 00:42:49,810 --> 00:42:53,085 Be to, jei aš 1,23, tai ne tarpt. 895 00:42:53,085 --> 00:42:58,400 Bet jei aš įvesti, tarkim, 50, tai suteikia man vertę, kad aš norėjau. 896 00:42:58,400 --> 00:42:59,050 >> Gerai. 897 00:42:59,050 --> 00:43:01,380 Taigi nėra blogai. 898 00:43:01,380 --> 00:43:04,780 Bet apie tai, ką mes ką tik padaryta klausimų? 899 00:43:04,780 --> 00:43:07,930 Pagrindinis išsinešimui yra, turi būti aišku, ne tiek daug kilpa, kurį mes matėme 900 00:43:07,930 --> 00:43:10,880 prieš nors mes ne tikrai jį naudojo, bet iš taikymo srities klausimas, kur 901 00:43:10,880 --> 00:43:17,045 kintamieji gali būti tik gali būti naudojami tik per tam tikrą sritį. 902 00:43:17,045 --> 00:43:19,830 >> Gerai, leiskite man atkreipti dėmesį į pasiūlymą jūs padarėte anksčiau, kad 903 00:43:19,830 --> 00:43:20,860 pasaulinį kintamąjį. 904 00:43:20,860 --> 00:43:24,880 Kaip žemę, it turns out, kad kita Išspręsti šią problemą, tačiau 905 00:43:24,880 --> 00:43:28,880 paprastai klaidingas sprendimas arba Prastai suprojektuota sprendimas, yra 906 00:43:28,880 --> 00:43:31,670 deklaruoti kintamuosius kaip kas vadinamas pasaulinį kintamąjį. 907 00:43:31,670 --> 00:43:34,610 Dabar aš rūšies pažeidė savo apibrėžimą taikymo sritį, nes yra 908 00:43:34,610 --> 00:43:37,680 nėra garbanotas petnešos pačiame viršuje ir labai apačioje failą. 909 00:43:37,680 --> 00:43:40,190 Bet, kad implikacija tai, kad dabar atitinka keturių, 910 00:43:40,190 --> 00:43:41,710 n pasaulinį kintamąjį. 911 00:43:41,710 --> 00:43:44,460 Ir kaip rodo pats pavadinimas, tai tiesiog prieinama visur. 912 00:43:44,460 --> 00:43:45,790 >> Momentinė iš tikrųjų turi tai. 913 00:43:45,790 --> 00:43:48,650 Jei naudojamas kintamasis, galite prisiminti jums teko pasirinkti, jei tai už 914 00:43:48,650 --> 00:43:50,780 Sprite arba visoms sprites. 915 00:43:50,780 --> 00:43:54,270 Na, visi animacinius tik aiškiau būdas pasakyti pasauliniu mastu. 916 00:43:54,270 --> 00:43:55,520 Taip? 917 00:43:55,520 --> 00:44:09,690 918 00:44:09,690 --> 00:44:10,990 Ak, tikrai geras klausimas. 919 00:44:10,990 --> 00:44:14,310 >> Taigi priminti, kad pirmųjų versiją mano kodą, kai aš neteisingai 920 00:44:14,310 --> 00:44:17,700 deklaruota ir nurodyta n linija devynių - 921 00:44:17,700 --> 00:44:19,980 Aš paskelbiau, kaip kintamasis ir aš davė jam vertę 922 00:44:19,980 --> 00:44:21,160 priskyrimo operatorius - 923 00:44:21,160 --> 00:44:22,520 tai davė man dvi klaidas. 924 00:44:22,520 --> 00:44:26,560 Vienas iš jų, tai, kad n nebuvo naudojamas, ir du, kad linija 11 925 00:44:26,560 --> 00:44:27,770 tai tiesiog nebuvo deklaruoti. 926 00:44:27,770 --> 00:44:31,120 Taigi pirmasis aš ne adresas tuo metu. 927 00:44:31,120 --> 00:44:35,130 Tai nėra griežtai klaida deklaruoti kintamasis, bet ne naudoti jį. 928 00:44:35,130 --> 00:44:38,540 Dalykų mes padarėme per vienas, bet CS50 prietaisas, sąmoningai, 929 00:44:38,540 --> 00:44:43,340 pedagogiškai, yra mes alkūninis lūkesčiai kompiliatorius padaryti 930 00:44:43,340 --> 00:44:46,970 įsitikinkite, kad jūs darote viską ne tik teisingai, bet tikrai teisingai. 931 00:44:46,970 --> 00:44:51,520 >> Nes jei jūs deklaruojant kintamąjį kaip n ir niekada naudojant, arba naudojant jį 932 00:44:51,520 --> 00:44:53,700 teisingai, kas tada jis čia veikia? 933 00:44:53,700 --> 00:44:55,650 Jis tikrai neturi prasmės. 934 00:44:55,650 --> 00:44:58,980 Ir tai labai lengva, laikui bėgant, jei nereikia konfigūruoti savo kompiuterį 935 00:44:58,980 --> 00:45:01,960 Tokiu būdu, tiesiog turi kodą, kuris turi mažai liekanų čia, likučiai ten. 936 00:45:01,960 --> 00:45:04,390 Ir tada mėnesių pažvelgti atgal ir jūs kaip, kodėl tai yra linija 937 00:45:04,390 --> 00:45:05,060 kodas ten? 938 00:45:05,060 --> 00:45:07,940 Ir jei nėra rimtos priežasties, tai nėra naudinga jums arba jūsų kolegoms 939 00:45:07,940 --> 00:45:10,650 keliu, kad turi suklupti per jį tada. 940 00:45:10,650 --> 00:45:12,540 >> Kaip žemę, kur kad ateina? 941 00:45:12,540 --> 00:45:16,410 Na, priminti, kad kiekvieną kartą, kai mes kompiliuoti programa, visos šios medžiagos yra 942 00:45:16,410 --> 00:45:17,380 būtų išspausdintas. 943 00:45:17,380 --> 00:45:18,350 Taigi, mes grįžti į tai. 944 00:45:18,350 --> 00:45:22,230 Bet vėl, kad yra programa, kuri automatizuoja sudarymo procesą 945 00:45:22,230 --> 00:45:24,830 veikia faktinį kompiliatorių vadinamas žvangėjimas. 946 00:45:24,830 --> 00:45:27,650 Šis dalykas, mes galų gale pamatyti, turi daryti su derinimo su ypatinga 947 00:45:27,650 --> 00:45:29,060 programa, vadinama Debugger. 948 00:45:29,060 --> 00:45:32,150 Tai turi daryti su optimizuoti kodas - daugiau apie tai ateityje. 949 00:45:32,150 --> 00:45:33,620 Std = C99 - 950 00:45:33,620 --> 00:45:37,870 tai tiesiog reiškia, naudoti 1999 versiją C. C buvo maždaug net ilgiau nei 951 00:45:37,870 --> 00:45:40,830 kad, bet jie padarė keletą gražus pokyčiai 10 plius metų. 952 00:45:40,830 --> 00:45:42,690 >> Ir štai atitinkamos tie. 953 00:45:42,690 --> 00:45:45,880 Mes sakome, kad nieko, kad anksčiau būtų buvę įspėjimas 954 00:45:45,880 --> 00:45:48,560 klaida neleidžia studentui rengtų. 955 00:45:48,560 --> 00:45:51,400 Ir sienų priemonė padaryti, kad visa krūva dalykų, o ne 956 00:45:51,400 --> 00:45:53,060 tiesiog susiję su kintamaisiais. 957 00:45:53,060 --> 00:45:54,700 Ir tada leiskite man pereiti prie Šios linijos pabaiga. 958 00:45:54,700 --> 00:45:56,430 Ir tai taip pat, mes galų gale grįžti į. 959 00:45:56,430 --> 00:45:59,040 Tai akivaizdžiai pavadinimas Failas aš sudarymo. 960 00:45:59,040 --> 00:46:02,160 Tai primena failo pavadinimą Aš išvedė kaip ir pavadinimas 961 00:46:02,160 --> 00:46:04,070 mano vykdomąja programa. 962 00:46:04,070 --> 00:46:08,970 Tai-lcs50 tiesiog reiškia, naudoti CS50 biblioteka, ir visi nuliai ir tie, kurie 963 00:46:08,970 --> 00:46:12,390 darbuotojai parašė ir parengė anksčiau šiais metais, integruoti 964 00:46:12,390 --> 00:46:13,490 juos į savo programą. 965 00:46:13,490 --> 00:46:16,130 >> Ir kas nors žino ką-lm yra? 966 00:46:16,130 --> 00:46:18,150 Tai matematikos biblioteka, kuri yra tik ten, net jei esate 967 00:46:18,150 --> 00:46:19,320 ne daryti bet matematikos. 968 00:46:19,320 --> 00:46:22,620 Tai tiesiog automatiškai pateikiami mums padaryti. 969 00:46:22,620 --> 00:46:26,540 >> Na, leiskite man padaryti vieną kitą pavyzdį čia atveriant naują failą. 970 00:46:26,540 --> 00:46:30,560 Ir leiskite man išsaugoti šį vieną, nes string.c. 971 00:46:30,560 --> 00:46:37,980 Pasirodo, kad kaip mes kalbame apie duomenų rūšių šiandien, ten net daugiau 972 00:46:37,980 --> 00:46:40,630 vyksta po gaubtu nei mes matėme iki šiol. 973 00:46:40,630 --> 00:46:42,290 Taigi leiskite man greitai padaryti greitai programą. 974 00:46:42,290 --> 00:46:44,510 Įtraukti stdio.h. 975 00:46:44,510 --> 00:46:45,730 Ir aš išsaugoti tai. 976 00:46:45,730 --> 00:46:48,110 Ir žinote, neleisk man padaryti pačią klaidą vėl ir vėl. 977 00:46:48,110 --> 00:46:50,540 Įtraukti cs50.h. 978 00:46:50,540 --> 00:46:54,870 Ir leiskite man eiti į priekį dabar ir padaryti int main (void). 979 00:46:54,870 --> 00:46:58,790 >> O dabar aš tiesiog noriu padaryti programą kad tai daro - Pripažinti eilutę 980 00:46:58,790 --> 00:47:03,610 vadinamas ai ir gauti eilutę nuo naudotojo. 981 00:47:03,610 --> 00:47:05,820 Ir leiskite man padaryti šiek tiek Čia instrukcijos - 982 00:47:05,820 --> 00:47:09,960 prašau suteikti man eilutę - taip vartotojas žino, ką daryti. 983 00:47:09,960 --> 00:47:13,190 Ir tada žemyn čia toliau tai, Noriu padaryti taip - 984 00:47:13,190 --> 00:47:16,060 už int i gauna nulis. 985 00:47:16,060 --> 00:47:18,580 Vėlgi, kompiuterių mokslininkai paprastai pradėti skaičiuoti nuo nulio, bet mes galime 986 00:47:18,580 --> 00:47:20,340 padaryti, kad vieną, jei mes tikrai norėjo. 987 00:47:20,340 --> 00:47:27,240 Dabar aš ruošiuosi daryti i mažiau nei eilutės ilgis s. 988 00:47:27,240 --> 00:47:28,430 Taigi strlen - 989 00:47:28,430 --> 00:47:29,510 S T A L-El-N - 990 00:47:29,510 --> 00:47:31,650 Vėlgi, tai trumpas, nes ji yra lengviau tipo, nors tai 991 00:47:31,650 --> 00:47:32,590 šiek tiek paslaptingas. 992 00:47:32,590 --> 00:47:35,290 >> Tai funkcija, mes ne naudoti anksčiau, bet tiesiog tai daro - 993 00:47:35,290 --> 00:47:37,810 grįžti į mane numerį, kuris atstovauja iš eilutės ilgis 994 00:47:37,810 --> 00:47:38,690 kad vartotojas turi įvesti. 995 00:47:38,690 --> 00:47:41,740 Jei jie įvedėte Sveiki, tai sugrįš penkių, nes ten yra penkių 996 00:47:41,740 --> 00:47:42,890 raidės Hello. 997 00:47:42,890 --> 00:47:45,390 Tada ant kiekvieno pakartojimo šis ciklas, aš plius plius. 998 00:47:45,390 --> 00:47:49,170 Taigi dar kartą, standartinis statyti net jei jūs ne visai pernelyg patogiai arba 999 00:47:49,170 --> 00:47:50,420 susipažinę su ja dar. 1000 00:47:50,420 --> 00:47:53,220 >> Bet dabar apie kiekvieną šio ciklo iteracija, pastebėsite, ką aš ruošiuosi daryti. 1001 00:47:53,220 --> 00:47:56,690 Noriu eiti į priekį ir spausdinti iš vieno pobūdžio - 1002 00:47:56,690 --> 00:47:59,940 taip% c Backslash n naujoje eilutėje. 1003 00:47:59,940 --> 00:48:00,990 Ir tada, jūs žinote, ką aš noriu daryti? 1004 00:48:00,990 --> 00:48:05,090 Koks žodis yra tai, kad vartotojas įveda į, pavyzdžiui, labas, noriu spausdinti 1005 00:48:05,090 --> 00:48:09,530 H-El-L-L-O vieną simbolį eilutėje. 1006 00:48:09,530 --> 00:48:13,080 Kitaip tariant, aš noriu gauti bent atskirų simbolių eilutę, 1007 00:48:13,080 --> 00:48:16,770 kurią iki šiol eilutė turi tik buvo ženklų seka. 1008 00:48:16,770 --> 00:48:21,690 >> Ir it turns out Galiu padaryti S, laikiklis, i skliaustai uždaromi, uždarykite 1009 00:48:21,690 --> 00:48:23,580 skliaustelis, kabliataškis. 1010 00:48:23,580 --> 00:48:25,640 Ir aš turiu padaryti dar vieną dalyką. 1011 00:48:25,640 --> 00:48:30,570 Tai faile vadinamas string.h kad strlen yra paskelbiami. 1012 00:48:30,570 --> 00:48:33,190 Taigi, jei aš noriu naudoti šią funkciją, Turiu pasakyti kompiliatorių, 1013 00:48:33,190 --> 00:48:34,450 tikisi jį naudoti. 1014 00:48:34,450 --> 00:48:37,040 Dabar leiskite man eiti į priekį ir padaryti programa, vadinama eilutė. 1015 00:48:37,040 --> 00:48:39,150 Taškų, velniop, eilutė. 1016 00:48:39,150 --> 00:48:40,130 >> Prašau duoti man eilutę. 1017 00:48:40,130 --> 00:48:40,900 Aš eisiu į priekį ir įveskite jį. 1018 00:48:40,900 --> 00:48:43,040 Sveiki, visais dangteliais, Enter. 1019 00:48:43,040 --> 00:48:47,390 Ir dabar pastebėsite, aš atspausdintas tai vieną simbolį po kito. 1020 00:48:47,390 --> 00:48:51,450 Taigi nauja detalė, kad čia yra eilutė, ne dienos pabaigoje, gali būti 1021 00:48:51,450 --> 00:48:54,810 atvertas būdu jo asmens simbolių įdiegiant aikštėje 1022 00:48:54,810 --> 00:48:55,840 laikiklis žymėjimas. 1023 00:48:55,840 --> 00:48:59,090 Ir tai todėl, kad seka po dangtis iš tiesų seka 1024 00:48:59,090 --> 00:48:59,810 simbolių. 1025 00:48:59,810 --> 00:49:02,010 Bet kas, tvarkingas, apie juos yra į kompiuterio RAM - 1026 00:49:02,010 --> 00:49:05,300 Mac kompiuteris, kokia ji yra, - jie pažodžiui atgal atgal atgal - 1027 00:49:05,300 --> 00:49:06,225 H-El-L-L-O - 1028 00:49:06,225 --> 00:49:09,920 individualiu, greta baitų atminties. 1029 00:49:09,920 --> 00:49:13,210 >> Taigi, jei norite gauti ne aštuntasis toks baitų, kuri šiuo kilpos būtų 1030 00:49:13,210 --> 00:49:16,900 laikiklis nulis, laikiklis vienas, laikiklis du, laikiklis trijų, keturių laikiklis - 1031 00:49:16,900 --> 00:49:18,890 tai nulis indeksuojami iki penkių - 1032 00:49:18,890 --> 00:49:23,330 kad bus išspausdinti H-El-L-L-O atskiroje eilutėje. 1033 00:49:23,330 --> 00:49:26,320 >> Dabar, kaip erzina, leiskite man parodyti jums rūšių dalykų jūs galų gale būti 1034 00:49:26,320 --> 00:49:31,950 suprasti, bent jau su kai arti atrodo. 1035 00:49:31,950 --> 00:49:35,610 Už vieną, ką įtraukti į šiandien pavyzdžių, jei norite, yra iš tikrųjų 1036 00:49:35,610 --> 00:49:38,300 vienas iš pirmųjų Jailbreaks "iPhone". 1037 00:49:38,300 --> 00:49:40,800 Patarimai ir gudrybės reiškia krekingo telefoną todėl jūs iš tikrųjų galite naudoti ją 1038 00:49:40,800 --> 00:49:43,380 skiriasi vežėjas arba įdiegti savo programinę įrangą. 1039 00:49:43,380 --> 00:49:45,660 Ir jūs pastebėsite tai atrodo visiškai paslaptingas, greičiausiai. 1040 00:49:45,660 --> 00:49:46,520 Bet pažiūrėkite į tai. 1041 00:49:46,520 --> 00:49:50,420 IPhone buvo, matyt, krekingo su už linijos, jei sąlyga, kitur 1042 00:49:50,420 --> 00:49:52,580 sąlyga, funkcijų krūva mes nemačiau. 1043 00:49:52,580 --> 00:49:54,230 >> Ir vėl jūs ne Iš pirmo žvilgsnio tikriausiai 1044 00:49:54,230 --> 00:49:55,620 suprasti, kaip tai veikia. 1045 00:49:55,620 --> 00:49:58,940 Tačiau viskas, kad mes tarsi imtis savaime suprantamu dalyku mūsų moderniame gyvenime 1046 00:49:58,940 --> 00:50:02,040 iš tikrųjų linkęs sumažinti net kai Šių pagrindus mes jau 1047 00:50:02,040 --> 00:50:02,820 žiūri. 1048 00:50:02,820 --> 00:50:06,680 Leiskite man eiti į priekį ir atidaryti vieną kita programa, holloway.c. 1049 00:50:06,680 --> 00:50:08,970 Taigi tai taip pat yra kažkas, ką tikrai neturėtų žinoti. 1050 00:50:08,970 --> 00:50:12,440 Net nė vienas iš darbuotojų, arba galėčiau tikriausiai suprasti tai, žiūrėdamas 1051 00:50:12,440 --> 00:50:15,450 todėl, kad tai buvo kažkieno kodas , kuris buvo pateiktas į tai, kas 1052 00:50:15,450 --> 00:50:19,630 istoriškai žinomas kaip klaidinančiu C konkursas, kur jums reikia parašyti programą 1053 00:50:19,630 --> 00:50:24,670 kad kaupia ir dirba, bet yra taip velniškai paslaptingas ne žmogus gali suprasti, kas 1054 00:50:24,670 --> 00:50:27,530 jis ketina padaryti, kol jie iš tikrųjų jį paleisti. 1055 00:50:27,530 --> 00:50:29,940 >> Taigi, iš tiesų, jei jums pažvelgti į tai, kodas, matau jungiklį. 1056 00:50:29,940 --> 00:50:30,870 Matau pagrindinis. 1057 00:50:30,870 --> 00:50:33,800 Matau šie laužtiniuose skliaustuose reiškia kai masyvo natūra. 1058 00:50:33,800 --> 00:50:35,970 Ar kas nors nori atspėti, ką ši programa iš tikrųjų 1059 00:50:35,970 --> 00:50:37,220 ar jei aš paleisti Holloway? 1060 00:50:37,220 --> 00:50:39,940 1061 00:50:39,940 --> 00:50:40,750 Taip. 1062 00:50:40,750 --> 00:50:43,050 Gerai. 1063 00:50:43,050 --> 00:50:44,690 Gerai padaryta. 1064 00:50:44,690 --> 00:50:48,090 Taigi tik darbuotojai ir aš negaliu suprasti ką šitie dalykai. 1065 00:50:48,090 --> 00:50:51,670 >> Ir dabar, galiausiai, leiskite man eiti į priekį ir atverti dar vieną programą. 1066 00:50:51,670 --> 00:50:53,440 Tai vienas - 1067 00:50:53,440 --> 00:50:55,550 vėl, mes pasirūpinsime kodą galima rasti internete - tai vienas tik 1068 00:50:55,550 --> 00:50:57,480 rūšies gana pažvelgti. 1069 00:50:57,480 --> 00:50:59,750 Visi jie padarė nukentėjo tarpo gana didelis. 1070 00:50:59,750 --> 00:51:01,320 Bet tai tikras kodas. 1071 00:51:01,320 --> 00:51:04,790 Taigi, jei jūs manote, kad gana, jei mes iš tikrųjų paleisti tai ne greitai, 1072 00:51:04,790 --> 00:51:08,970 galų gale pamatysite, kaip mes gali daryti dalykus, kaip šis. 1073 00:51:08,970 --> 00:51:14,008 >> Taigi mes palikti jus dėl šio rašto ir jus pamatyti trečiadienį. 1074 00:51:14,008 --> 00:51:18,440 >> [Muzikavimo] 1075 00:51:18,440 --> 00:51:23,380 >> SPEAKER 2: Kitame CS50, kad TFS etape sukilimo. 1076 00:51:23,380 --> 00:51:24,112 >> GARSIAKALBIS 3: Štai jis. 1077 00:51:24,112 --> 00:51:25,362 Gauk jį! 1078 00:51:25,362 --> 00:51:29,912 1079 00:51:29,912 --> 00:51:32,074 >> [Muzikavimo]