1 00:00:00,000 --> 00:00:10,920 >> [Halisi kucheza] 2 00:00:10,920 --> 00:00:14,680 >> DAVID J Malan: zote haki, kuwakaribisha nyuma CS50. 3 00:00:14,680 --> 00:00:16,500 Huu ni mwanzo wa wiki mbili. 4 00:00:16,500 --> 00:00:18,940 neno kutoka kwa mmoja wa wetu marafiki juu ya chuo - 5 00:00:18,940 --> 00:00:22,620 kama una nia, pengine, ama sasa au katika baadhi mfupi baadaye 6 00:00:22,620 --> 00:00:25,670 hata, kwa mara vizuri zaidi, mafundisho katikati ya shule wanafunzi kidogo 7 00:00:25,670 --> 00:00:27,680 kitu kuhusu sayansi ya kompyuta, kufanya kichwa URL hiyo. 8 00:00:27,680 --> 00:00:32,360 Wao ni katika haja hasa hivi sasa ya walimu, hasa kama una 9 00:00:32,360 --> 00:00:34,700 alikuwa na baadhi ya yatokanayo na sayansi ya kompyuta. 10 00:00:34,700 --> 00:00:38,060 >> Hivyo kukumbuka kuwa wakati wa mwisho, sisi ilianzisha chache data aina katika C, na 11 00:00:38,060 --> 00:00:40,590 unaweza kuanza kupata yako mikono chafu na haya hivi sasa 12 00:00:40,590 --> 00:00:41,940 katika tatizo kuweka moja. 13 00:00:41,940 --> 00:00:43,230 Na tulikuwa na Char. 14 00:00:43,230 --> 00:00:49,100 Hivyo katika suala fulani kiufundi, nini ni Char kama unajua ni leo? 15 00:00:49,100 --> 00:00:51,050 >> Hivyo ni tabia, lakini hebu kuwa sahihi zaidi sasa. 16 00:00:51,050 --> 00:00:53,735 Tufanye nini maana na tabia au mtu binafsi Char? 17 00:00:53,735 --> 00:00:56,700 18 00:00:56,700 --> 00:00:59,500 tabia ya mashirika yasiyo ya namba - 19 00:00:59,500 --> 00:01:00,670 hivyo si lazima. 20 00:01:00,670 --> 00:01:04,580 Ni zinageuka kuwa idadi hata, hata punctuation na barua ni 21 00:01:04,580 --> 00:01:06,980 kuwakilishwa na data hii aina inayojulikana kama Char. 22 00:01:06,980 --> 00:01:09,440 Hivyo si lazima herufi. 23 00:01:09,440 --> 00:01:11,100 Yeah? 24 00:01:11,100 --> 00:01:12,275 >> Hivyo ni tabia ASCII. 25 00:01:12,275 --> 00:01:15,510 Hivyo kama wewe kufikiri nyuma kwa wiki sifuri, wakati tulikuwa Byte yetu ya kujitolea 26 00:01:15,510 --> 00:01:19,150 kuja na ama kushikilia mikono yao juu au si wote, wao kuwakilishwa bits. 27 00:01:19,150 --> 00:01:22,450 Lakini kwa pamoja kama kundi la nane, wao kuwakilishwa Byte. 28 00:01:22,450 --> 00:01:26,030 Na sisi ilianzisha dhana ya ASCII katika hotuba hiyo, ambayo tu ni 29 00:01:26,030 --> 00:01:28,170 ramani kati ya idadi na barua. 30 00:01:28,170 --> 00:01:32,010 Na ASCII matumizi, kama wale binadamu an alisema, nane bits 31 00:01:32,010 --> 00:01:33,660 kuwakilisha tabia. 32 00:01:33,660 --> 00:01:36,890 >> Hivyo ipasavyo, ikiwa nane bits unaweza kila kuchukua kwenye moja ya maadili mbili - 33 00:01:36,890 --> 00:01:38,010 zero au moja - 34 00:01:38,010 --> 00:01:40,280 hiyo ina maana kulikuwa na uwezekano mbili kwa mtu huyu - 35 00:01:40,280 --> 00:01:41,230 zero au moja - 36 00:01:41,230 --> 00:01:44,070 mbili kwa ajili ya mtu huyu, mbili kwa ajili ya hii mtu, mbili kwa ajili ya hii moja. 37 00:01:44,070 --> 00:01:47,450 Hivyo jumla ya mara mbili mara mbili mara mbili mara mbili mbili - 38 00:01:47,450 --> 00:01:49,700 hivyo wawili wa nane katika jumla. 39 00:01:49,700 --> 00:01:54,320 Hivyo kuna jumla ya idadi ya wahusika 256 inawezekana kwamba unaweza 40 00:01:54,320 --> 00:01:55,750 kuwakilisha na bits nane. 41 00:01:55,750 --> 00:01:59,210 >> Sasa, wale ambao wanazungumza Asia lugha wapate kujua ya kuwa kuna zaidi 42 00:01:59,210 --> 00:02:02,620 wahusika katika dunia kuliko tu Kama na Bs na Cs na Ds. 43 00:02:02,620 --> 00:02:06,130 Na hakika, ASCII haina inatosha kwa mengi ya lugha ya dunia. 44 00:02:06,130 --> 00:02:07,760 Lakini zaidi juu ya kwamba wakati mwingine. 45 00:02:07,760 --> 00:02:11,240 Kwa sasa, kujua kwamba katika C kama unataka kuwakilisha mbili, kipande cha 46 00:02:11,240 --> 00:02:15,780 punctuation, au tu tabia ya kitu fulani katika asili, sisi kutumia Char. 47 00:02:15,780 --> 00:02:18,240 Na ni moja Byte au bits nane. 48 00:02:18,240 --> 00:02:19,690 >> Vipi kuhusu int? 49 00:02:19,690 --> 00:02:20,780 Naam, ni int integer. 50 00:02:20,780 --> 00:02:23,175 Jinsi wengi vipande, kama unakumbuka, mara integer kawaida? 51 00:02:23,175 --> 00:02:25,930 52 00:02:25,930 --> 00:02:27,512 Mtu yeyote kukumbuka? 53 00:02:27,512 --> 00:02:29,600 Hivyo ni kawaida 32. 54 00:02:29,600 --> 00:02:32,120 Ni kweli inategemea kompyuta kwamba unatumia. 55 00:02:32,120 --> 00:02:35,770 Lakini katika appliance, na katika mengi ya kompyuta, ni 32 bits au nne 56 00:02:35,770 --> 00:02:37,140 ka - nane mara nne. 57 00:02:37,140 --> 00:02:39,790 Na ints ni tu kutumika kwa ajili ya kuhifadhi namba, ama hasi, 58 00:02:39,790 --> 00:02:41,610 chanya, au sifuri. 59 00:02:41,610 --> 00:02:45,250 >> Na kama nimepata bits 32 na wewe tu huduma kuhusu idadi chanya, unaweza 60 00:02:45,250 --> 00:02:48,960 mtu yeyote ballpark jinsi wengi iwezekanavyo integers kompyuta wanaweza kuwakilisha kutoka 61 00:02:48,960 --> 00:02:51,820 sifuri juu juu? 62 00:02:51,820 --> 00:02:56,130 Hivyo itakuwa mbili hadi 32, ambayo ni takribani bilioni nne. 63 00:02:56,130 --> 00:02:59,720 Hivyo hawa mamlaka ya mbili ni kwenda kuwa mara kwa mara mandhari katika sayansi ya kompyuta. 64 00:02:59,720 --> 00:03:03,930 Kama tutaweza kuona, wao ni rahisi kabisa kufanya kazi na hata kama si kabisa 65 00:03:03,930 --> 00:03:05,790 rahisi kufanya math katika kichwa ya mtu. 66 00:03:05,790 --> 00:03:07,000 >> Hivyo tutaweza kusema takribani bilioni nne. 67 00:03:07,000 --> 00:03:08,620 Sasa, kwa muda mrefu kwa muda mrefu - 68 00:03:08,620 --> 00:03:09,770 unaweza aina ya nadhani. 69 00:03:09,770 --> 00:03:10,480 Ni muda mrefu zaidi ya int. 70 00:03:10,480 --> 00:03:12,440 Jinsi wengi vipande? 71 00:03:12,440 --> 00:03:14,250 Hivyo 64 bits au ka nane. 72 00:03:14,250 --> 00:03:17,480 Hii tu maana unaweza kuwakilisha hata kubwa ya idadi, kubwa chanya au 73 00:03:17,480 --> 00:03:19,160 kubwa hasi namba. 74 00:03:19,160 --> 00:03:20,060 >> Na vipi kuhusu kuelea? 75 00:03:20,060 --> 00:03:22,260 Hiyo ni hatua yaliyo thamani ya bits 32. 76 00:03:22,260 --> 00:03:25,180 Hii ni idadi tu halisi, kitu na uhakika decimal. 77 00:03:25,180 --> 00:03:30,100 Lakini kama wewe badala yake wanahitaji maeneo zaidi baada ya uhakika decimal au unataka 78 00:03:30,100 --> 00:03:33,720 kuwakilisha idadi kubwa na baadhi ya sehemu baada yake, unaweza kutumia 79 00:03:33,720 --> 00:03:36,260 mara mbili, ambayo ni 64 bits. 80 00:03:36,260 --> 00:03:38,240 >> Lakini kuna kuvutia takeaway hapa. 81 00:03:38,240 --> 00:03:42,890 Hivyo kama ints ni mdogo na bits 32 na hata hutamani muda ni mdogo na 64 82 00:03:42,890 --> 00:03:46,180 bits, kwamba aina ya anaomba swali, nini kama kweli wanataka kuhesabu 83 00:03:46,180 --> 00:03:48,790 juu kuliko bilioni 4 kwa int? 84 00:03:48,790 --> 00:03:50,330 Naam, wewe tu kutumia muda mrefu. 85 00:03:50,330 --> 00:03:54,200 Lakini nini kama unataka kuhesabu juu kuliko mbili kwa 64, kutoa au kuchukua? 86 00:03:54,200 --> 00:03:55,810 >> Sasa, hiyo ni idadi kubwa. 87 00:03:55,810 --> 00:03:59,250 Lakini hatimaye, waweza kweli huduma kuhusu aina hii ya maadili, 88 00:03:59,250 --> 00:04:03,070 hasa kama wewe ni kutumia database na kuanzia kukusanya kura na kura 89 00:04:03,070 --> 00:04:06,190 na kura ya data na kumshirikisha kipekee idadi ya kila kipande cha data hizo. 90 00:04:06,190 --> 00:04:07,430 Hivyo sisi aina ya kuwa na tatizo. 91 00:04:07,430 --> 00:04:10,700 Na vile vile, kwa uhakika na yaliyo maadili - ikifungwa au mara mbili - 92 00:04:10,700 --> 00:04:14,290 kama wameweza tu got idadi mahususi ya bits, jinsi wengi uanachama namba ungeli 93 00:04:14,290 --> 00:04:16,980 uwezekano wa kuwakilisha? 94 00:04:16,980 --> 00:04:19,540 >> Naam, ni chini ya wazi wakati kuhusisha uhakika decimal. 95 00:04:19,540 --> 00:04:20,899 Lakini ni hakika finite. 96 00:04:20,899 --> 00:04:24,390 Kama una idadi mahususi ya vipande, idadi mahususi ya binadamu, finite 97 00:04:24,390 --> 00:04:27,350 idadi ya balbu mwanga, hakika unaweza tu kuwakilisha idadi mahususi ya 98 00:04:27,350 --> 00:04:28,510 yaliyo kumweka maadili. 99 00:04:28,510 --> 00:04:33,170 Lakini jinsi wengi kweli idadi ni yao katika dunia? 100 00:04:33,170 --> 00:04:33,680 Kuna usio. 101 00:04:33,680 --> 00:04:37,280 Hivyo kwamba ni aina ya tatizo kwa sababu sisi hawana kiasi usio wa 102 00:04:37,280 --> 00:04:39,970 kumbukumbu au RAM ndani ya kompyuta yetu. 103 00:04:39,970 --> 00:04:41,780 Hivyo baadhi ya mambo changamoto yanaweza kutokea. 104 00:04:41,780 --> 00:04:43,900 >> Basi hebu kwenda mbele na kujaribu kueleza hii hapa. 105 00:04:43,900 --> 00:04:46,240 Hebu kwenda mbele na kufungua gedit. 106 00:04:46,240 --> 00:04:50,360 Mimi nina kwenda mbele na kuokoa faili inayoitwa "floats0.c" tu kuwa 107 00:04:50,360 --> 00:04:54,630 sambamba na mfano kwamba ni inapatikana online, kama ungependa. 108 00:04:54,630 --> 00:04:58,080 Na mimi nina kwenda mbele na kufafanua ni kama ifuatavyo - 109 00:04:58,080 --> 00:05:01,540 Mimi nina kwenda mbele na kusema, int kuu batili, kama sisi mara nyingi kufanya. 110 00:05:01,540 --> 00:05:07,190 >> Na kisha katika mpango huu, nina kwenda kwa kutangaza mwenyewe kuelea, hivyo 32-bit 111 00:05:07,190 --> 00:05:09,700 variable kuitwa f, kiholela. 112 00:05:09,700 --> 00:05:13,910 Na basi mimi nina kwenda kuhifadhi ndani yake Sijui, moja ya kumi, hivyo 0.1. 113 00:05:13,910 --> 00:05:16,590 Hivyo nina kwenda kueleza kwamba kama moja kugawanywa na 10, ambayo ni kikamilifu 114 00:05:16,590 --> 00:05:17,790 halali katika C. 115 00:05:17,790 --> 00:05:20,460 >> Na kisha juu ya mstari wa pili, mimi tu unataka magazeti nje kwamba thamani. 116 00:05:20,460 --> 00:05:22,950 Hivyo kukumbuka kwamba tunaweza kutumia ukoo printf. 117 00:05:22,950 --> 00:05:25,420 Hatutaki kutumia% i kwa int. 118 00:05:25,420 --> 00:05:28,360 Tunataka kutumia% f kwa kuelea. 119 00:05:28,360 --> 00:05:33,080 Na kisha mimi naenda kufanya backslash n, karibu quote, comma, f, semicolon. 120 00:05:33,080 --> 00:05:34,400 >> Hivyo hapa ni mpango wangu. 121 00:05:34,400 --> 00:05:35,820 Tayari kuna moja mdudu. 122 00:05:35,820 --> 00:05:38,640 Je, mtu ambaye hii clicked tayari wanataka kwa uhakika angalau 123 00:05:38,640 --> 00:05:40,220 moja mdudu Nimekuwa alifanya? 124 00:05:40,220 --> 00:05:42,470 Yeah? 125 00:05:42,470 --> 00:05:42,800 Yeah. 126 00:05:42,800 --> 00:05:47,860 Nimesahau "# pamoja" katika juu, wao dalili ya ambayo kama mimi kujaribu 127 00:05:47,860 --> 00:05:50,490 kukusanya hii ni kwenda kuwa kwamba mkusanyaji ni kwenda yell saa yangu, 128 00:05:50,490 --> 00:05:52,770 akisema ishara kisichojulikana au kitu na athari hiyo. 129 00:05:52,770 --> 00:05:55,360 Haina kuelewa kitu kama printf. 130 00:05:55,360 --> 00:05:59,380 >> Hivyo nina kwenda kufanya "ni pamoja na # ", Ila faili. 131 00:05:59,380 --> 00:06:00,400 Na sasa ni katika sura bora. 132 00:06:00,400 --> 00:06:02,690 Lakini nina uhakika pia kwenda nje ya mwezi mmoja undani leo. 133 00:06:02,690 --> 00:06:08,620 Mbali na kubainisha nafasi ya wamiliki kama% s f% i%, unaweza 134 00:06:08,620 --> 00:06:12,320 wakati mwingine kuathiri tabia placeholder ya kwamba. 135 00:06:12,320 --> 00:06:15,540 Kwa mfano, katika kesi ya floating hatua thamani, kama mimi nataka tu 136 00:06:15,540 --> 00:06:22,200 kuonyesha moja decimal mahali baada ya kipindi, siwezi kwa kweli kufanya 0.1f. 137 00:06:22,200 --> 00:06:26,830 Hivyo kwa maneno mengine, mimi kutenganisha f na ishara na asilimia 0.1, tu 138 00:06:26,830 --> 00:06:30,200 kuwaambia printf, unaweza kuwa mzima rundo la idadi baada ya decimal 139 00:06:30,200 --> 00:06:30,930 uhakika kwa ajili yangu. 140 00:06:30,930 --> 00:06:32,870 Lakini mimi tu wanataka kuona mmoja wao. 141 00:06:32,870 --> 00:06:36,280 >> Hivyo nina kwenda mbele sasa na kuokoa mpango huu, kwenda katika terminal yangu 142 00:06:36,280 --> 00:06:41,870 dirisha, na mimi nina kwenda mbele na aina ya kufanya kuelea 0, kuingia. 143 00:06:41,870 --> 00:06:44,930 Mimi naona kuwa mstari fulani fumbo kwamba wataanza kufanya maana zaidi kama sisi 144 00:06:44,930 --> 00:06:46,900 tease ni mbali wiki hii na ijayo. 145 00:06:46,900 --> 00:06:50,480 Sasa mimi nina kwenda mbele na kukimbia kuelea sifuri. 146 00:06:50,480 --> 00:06:52,020 Na, damn. 147 00:06:52,020 --> 00:06:54,880 >> Hivyo kuna mdudu mwingine hapa kwa sababu fulani. 148 00:06:54,880 --> 00:07:02,490 Mimi nina uhakika kwamba pretty moja ya kumi, au moja kugawanywa na 10, si 0.0. 149 00:07:02,490 --> 00:07:04,590 Labda mimi nina si tu kuangalia katika maadili ya kutosha. 150 00:07:04,590 --> 00:07:08,580 Hivyo kwa nini nasema mbili 0.2 kuona mbili decimal maeneo badala ya moja tu. 151 00:07:08,580 --> 00:07:11,810 Hebu nirejee nyuma kwa terminal dirisha yangu hapa na kugonga juu ya wanandoa wa mara kwa 152 00:07:11,810 --> 00:07:12,840 kuona historia yangu. 153 00:07:12,840 --> 00:07:15,910 Kufanya kufanya kuelea sifuri tena, na kisha tena. 154 00:07:15,910 --> 00:07:17,730 Na sasa kuingia. 155 00:07:17,730 --> 00:07:20,000 >> Na sasa mimi nina uhakika pretty hii ni sahihi. 156 00:07:20,000 --> 00:07:23,030 Na mimi naweza kufanya tatu na nne, na mimi nina pengine ataendelea kuona zeros. 157 00:07:23,030 --> 00:07:24,880 Hivyo ambapo ni mdudu? 158 00:07:24,880 --> 00:07:27,910 Moja kugawanywa na 10 lazima 0.1. 159 00:07:27,910 --> 00:07:30,310 Mtu unataka kuchukua kumchoma katika kile suala la msingi ni? 160 00:07:30,310 --> 00:07:32,400 Yeah? 161 00:07:32,400 --> 00:07:33,420 Wao ni wote integers. 162 00:07:33,420 --> 00:07:33,920 Basi ni nini? 163 00:07:33,920 --> 00:07:37,820 Hivyo kwa moja kugawanywa na 10, hiyo ni nini mimi katika hesabu. 164 00:07:37,820 --> 00:07:41,185 Na mimi kupata 0.1. 165 00:07:41,185 --> 00:07:41,660 >> Yeah. 166 00:07:41,660 --> 00:07:43,240 Na hivyo ni kweli kwamba suala hilo. 167 00:07:43,240 --> 00:07:46,700 Wakati kuchukua integer katika kompyuta na wewe kuigawanya na integer mwingine, 168 00:07:46,700 --> 00:07:50,430 kompyuta na default ni kwenda kudhani kwamba unataka integer. 169 00:07:50,430 --> 00:07:54,620 tatizo ingawa, bila shaka, ni kwamba 0.1 si integer. 170 00:07:54,620 --> 00:07:55,680 Ni idadi halisi. 171 00:07:55,680 --> 00:07:59,610 Na hivyo kile kompyuta gani na default ni kama tu imeutupa mbali 172 00:07:59,610 --> 00:08:01,070 kila kitu baada ya uhakika decimal. 173 00:08:01,070 --> 00:08:03,380 Haina pande zote chini au juu per se. 174 00:08:03,380 --> 00:08:06,480 Ni tu imeutupa mbali kila kitu baada ya uhakika decimal. 175 00:08:06,480 --> 00:08:07,430 Na sasa kwamba hufanya akili. 176 00:08:07,430 --> 00:08:09,740 Kwa sababu sasa sisi ni wazi kushoto na sifuri. 177 00:08:09,740 --> 00:08:10,250 >> Lakini kusubiri dakika. 178 00:08:10,250 --> 00:08:11,840 Nina kuona sifuri int. 179 00:08:11,840 --> 00:08:14,910 Mimi kwa kweli kuona 0.00. 180 00:08:14,910 --> 00:08:16,340 Hivyo ni jinsi gani mimi kupatanisha hii sasa? 181 00:08:16,340 --> 00:08:22,850 Kama moja kugawanywa na 10 ni sifuri, lakini nina kuona 0.00, ambapo ni hivyo kupata 182 00:08:22,850 --> 00:08:24,250 waongofu nyuma idadi halisi? 183 00:08:24,250 --> 00:08:25,500 Yeah. 184 00:08:25,500 --> 00:08:29,850 185 00:08:29,850 --> 00:08:30,630 Hasa. 186 00:08:30,630 --> 00:08:35,600 >> Hivyo hapa katika mstari tano, wakati mimi kwa kweli kuhifadhi kwamba 0.1, ambayo ni kisha 187 00:08:35,600 --> 00:08:39,549 truncated na sifuri, ndani ya kuelea, hiyo ni sawa na ufanisi 188 00:08:39,549 --> 00:08:42,100 hifadhi hiyo si kama int lakini, kweli kweli, kama kuelea. 189 00:08:42,100 --> 00:08:46,540 Aidha, mimi nina kisha kwa kutumia printf kwa waziwazi magazeti kwamba idadi ya mbili 190 00:08:46,540 --> 00:08:49,740 decimal maeneo hata kama kuna ili si kweli kuwa yoyote. 191 00:08:49,740 --> 00:08:51,020 >> Hivyo aina hii ya sucks, haki? 192 00:08:51,020 --> 00:08:53,640 Inavyoonekana huwezi kufanya math, angalau katika ngazi hii ya 193 00:08:53,640 --> 00:08:55,600 usahihi, katika kompyuta. 194 00:08:55,600 --> 00:08:56,930 Lakini hakika kuna ufumbuzi. 195 00:08:56,930 --> 00:09:00,410 Nini kurekebisha rahisi tunaweza labda kufanya, hata tu intuitively hapa 196 00:09:00,410 --> 00:09:01,130 kutatua hili? 197 00:09:01,130 --> 00:09:02,380 Yeah? 198 00:09:02,380 --> 00:09:04,700 199 00:09:04,700 --> 00:09:06,574 Kugeuka integers katika - 200 00:09:06,574 --> 00:09:06,976 yeah. 201 00:09:06,976 --> 00:09:10,420 Hata kama mimi nina uhakika kabisa nini kweli kinachoendelea hapa, ikiwa ni 202 00:09:10,420 --> 00:09:13,440 kimsingi ina nini na hizi zote mbili kuwa ints, vizuri, kwa nini si mimi 203 00:09:13,440 --> 00:09:18,230 kufanya 10.0, na kufanya hii 1.0, resave faili. 204 00:09:18,230 --> 00:09:20,990 Hebu kwenda nyuma chini ya chini na recompile. 205 00:09:20,990 --> 00:09:23,030 Hebu sasa rerun. 206 00:09:23,030 --> 00:09:23,420 Na huko - 207 00:09:23,420 --> 00:09:27,690 sasa, mimi nimepata yangu moja ya kumi kuwakilishwa kama 0.10. 208 00:09:27,690 --> 00:09:28,420 >> Wote haki. 209 00:09:28,420 --> 00:09:29,220 Hivyo hiyo si mbaya. 210 00:09:29,220 --> 00:09:31,730 Na napenda kumweka nje moja kwa njia nyingine tunaweza kuwa na kutatuliwa hii. 211 00:09:31,730 --> 00:09:35,580 Hebu kweli unaendelea nyuma katika wakati kwa wakati tulikuwa hii kama moja 212 00:09:35,580 --> 00:09:36,680 kumi wakati iliyopita. 213 00:09:36,680 --> 00:09:40,800 Na napenda kwenda mbele na resave faili hii kama tofauti faili jina, tu 214 00:09:40,800 --> 00:09:41,750 kuwa eneo la kukagua kidogo. 215 00:09:41,750 --> 00:09:43,450 Ili kwamba ilikuwa toleo moja. 216 00:09:43,450 --> 00:09:45,520 Na sasa napenda kwenda mbele na kufanya moja zaidi version. 217 00:09:45,520 --> 00:09:48,540 Tutamwita toleo hili mbili sifuri indexed. 218 00:09:48,540 --> 00:09:51,280 >> Na mimi nina kwenda badala kufanya hii - unajua nini? 219 00:09:51,280 --> 00:09:54,400 Kuongeza nukta sifuri kazi katika kesi hii. 220 00:09:54,400 --> 00:09:56,060 Lakini tuseme moja walikuwa kutofautiana. 221 00:09:56,060 --> 00:09:57,680 Zinatakiwa 10 walikuwa kutofautiana. 222 00:09:57,680 --> 00:10:00,680 Kwa maneno mengine, tuseme kwamba sikuweza tu ngumu-kanuni 0.0 mwishoni 223 00:10:00,680 --> 00:10:02,340 hii ya kujieleza hesabu. 224 00:10:02,340 --> 00:10:05,820 Naam, mimi kweli anaweza kufanya kitu katika mabano aitwaye akitoa. 225 00:10:05,820 --> 00:10:11,920 Siwezi kutupwa kwamba integer 10 hadi kuelea, na mimi unaweza kutupwa kwamba mmoja integer kwa 226 00:10:11,920 --> 00:10:12,800 kuelea, kama vile. 227 00:10:12,800 --> 00:10:17,190 Kisha math kwamba kinaendelea kufanyika ni ufanisi 1.0 kugawanywa na 10.0, 228 00:10:17,190 --> 00:10:19,250 matokeo ya ambayo inakwenda katika f kama kabla. 229 00:10:19,250 --> 00:10:26,130 Hivyo kama mimi recompile hii kama kufanya ikifungwa 2, na sasa ikifungwa 2, mimi kupata huo 230 00:10:26,130 --> 00:10:27,020 kujibu, kama vile. 231 00:10:27,020 --> 00:10:29,640 >> Hivyo hii ni mfano haki contrived, kutatua tatizo hili 232 00:10:29,640 --> 00:10:31,400 kwa kuanzisha akitoa. 233 00:10:31,400 --> 00:10:34,410 Lakini kwa ujumla, akitoa kinaendelea kuwa Jambo nguvu, hasa kwa 234 00:10:34,410 --> 00:10:38,180 tatizo kuweka mbili katika muda wa wiki, wakati unataka kubadilisha data aina moja kwa 235 00:10:38,180 --> 00:10:41,800 mwingine kwamba mwisho wa siku ni kuwakilishwa katika njia hiyo hiyo. 236 00:10:41,800 --> 00:10:44,970 Mwisho wa siku, kila moja Jambo tumekuwa kuongelea hivi sasa ni 237 00:10:44,970 --> 00:10:46,710 tu ints chini ya Hood. 238 00:10:46,710 --> 00:10:48,950 Au kama kwamba ni pia ngazi ya chini kwa wewe, wao ni idadi tu na 239 00:10:48,950 --> 00:10:49,750 chini ya Hood. 240 00:10:49,750 --> 00:10:52,850 Hata wahusika, tena, kukumbuka kutoka sifuri kwa wiki, ni idadi 241 00:10:52,850 --> 00:10:53,990 chini ya Hood. 242 00:10:53,990 --> 00:10:57,240 >> Ambayo ni kusema, tunaweza kubadilisha kati ya aina tofauti ya idadi kama 243 00:10:57,240 --> 00:10:58,060 wao ni tu bits. 244 00:10:58,060 --> 00:11:01,020 Tunaweza kuwabadili kati ya idadi na barua kama uko tu 245 00:11:01,020 --> 00:11:02,580 bits, na kinyume chake. 246 00:11:02,580 --> 00:11:07,170 Na akitoa katika njia hii ni utaratibu katika programu ambayo inakuwezesha waliolazimishwa 247 00:11:07,170 --> 00:11:10,970 mabadiliko ya data aina moja hadi nyingine. 248 00:11:10,970 --> 00:11:14,570 Kwa bahati mbaya, hii si kama moja kwa moja kama mimi ili walipenda. 249 00:11:14,570 --> 00:11:19,220 >> Mimi nina kwenda nyuma katika ikifungwa 1, ambayo ilikuwa rahisi, zaidi 250 00:11:19,220 --> 00:11:22,830 moja kwa moja moja na 0.0 aliongeza juu ya kila aina. 251 00:11:22,830 --> 00:11:25,260 Na tu kama rejea ya haraka, napenda kwenda mbele na recompile 252 00:11:25,260 --> 00:11:27,670 hii, kufanya ikifungwa 2 - 253 00:11:27,670 --> 00:11:30,300 sorry, hii ni kufanya ikifungwa 1. 254 00:11:30,300 --> 00:11:32,050 Na sasa hebu kukimbia ikifungwa 1. 255 00:11:32,050 --> 00:11:34,810 Na katika sehemu ya chini, taarifa kwamba mimi kwa kweli kupata 0.1. 256 00:11:34,810 --> 00:11:36,165 Hivyo, tatizo kutatuliwa. 257 00:11:36,165 --> 00:11:37,280 >> Lakini bado. 258 00:11:37,280 --> 00:11:40,000 Mimi sasa kwenda kupata kidogo curious, na mimi nina kwenda nyuma katika wangu 259 00:11:40,000 --> 00:11:41,620 printf taarifa na kusema, unajua nini? 260 00:11:41,620 --> 00:11:44,090 Ningependa kuthibitisha kwamba hii ni kweli moja ya kumi. 261 00:11:44,090 --> 00:11:47,890 Na mimi nina kwenda wanataka kuona hii , kusema, tano maeneo decimal. 262 00:11:47,890 --> 00:11:48,570 Siyo tatizo. 263 00:11:48,570 --> 00:11:52,020 Mimi kubadili 04:58, Mimi recompile na kufanya. 264 00:11:52,020 --> 00:11:53,770 Mimi rerun kama ikifungwa 1. 265 00:11:53,770 --> 00:11:54,990 Kuangalia nzuri. 266 00:11:54,990 --> 00:11:58,570 Sanity yangu hundi ili mwisho huko, lakini Nina kupata zaidi kidogo adventurous. 267 00:11:58,570 --> 00:12:00,330 Mimi nina kwenda na mabadiliko .5-0.10. 268 00:12:00,330 --> 00:12:03,440 Nataka kuona maadili 10 baada ya nafasi decimal. 269 00:12:03,440 --> 00:12:09,060 >> Na mimi nina kwenda mbele na recompile hii na rerun ikifungwa 1. 270 00:12:09,060 --> 00:12:13,060 Mimi aina ya majuto baada ya kupima hii zaidi kwa sababu math yangu si hivyo 271 00:12:13,060 --> 00:12:14,320 kusahihisha tena, inaonekana. 272 00:12:14,320 --> 00:12:15,630 Lakini kusubiri dakika, labda kwamba tu fluke. 273 00:12:15,630 --> 00:12:17,810 Labda kompyuta ni kaimu kidogo ya ajabu. 274 00:12:17,810 --> 00:12:21,810 Napenda kwenda mbele na kufanya pointi 20 decimal na kuwahakikishia kwamba mimi mwenyewe kujua 275 00:12:21,810 --> 00:12:22,540 jinsi ya kufanya hesabu. 276 00:12:22,540 --> 00:12:23,460 Mimi najua jinsi ya mpango. 277 00:12:23,460 --> 00:12:26,960 Kufanya ikifungwa 1, recompile, na damn it. 278 00:12:26,960 --> 00:12:31,110 Kwamba ni kweli, kweli kupata mbali na alama. 279 00:12:31,110 --> 00:12:32,490 >> Basi nini kinaendelea hapa? 280 00:12:32,490 --> 00:12:36,050 Intuitively, misingi ya mawazo yetu mapema juu ya ukubwa wa aina ya data, 281 00:12:36,050 --> 00:12:38,040 kile ambacho ni lazima kinachotokea hapa chini ya Hood? 282 00:12:38,040 --> 00:12:39,290 Yeah? 283 00:12:39,290 --> 00:12:43,000 284 00:12:43,000 --> 00:12:43,590 Hasa. 285 00:12:43,590 --> 00:12:46,480 Kama unataka hii usahihi sana, na hiyo ni heck ya mengi ya usahihi - 286 00:12:46,480 --> 00:12:48,770 20 idadi baada ya uhakika decimal. 287 00:12:48,770 --> 00:12:51,990 Huwezi uwezekano kuwakilisha holela ya simu isipokuwa kama una 288 00:12:51,990 --> 00:12:52,930 holela ya simu ya bits. 289 00:12:52,930 --> 00:12:54,190 Lakini sisi kufanya hivyo. 290 00:12:54,190 --> 00:12:57,200 Kwa kuelea, sisi tu bits 32. 291 00:12:57,200 --> 00:13:02,260 >> Hivyo kama bits 32 inaweza tu permuted katika njia - tu kama binadamu wetu juu, hatua 292 00:13:02,260 --> 00:13:05,780 mikono juu au chini - katika idadi mahususi ya njia, kuna tu idadi finite 293 00:13:05,780 --> 00:13:08,640 ya idadi halisi unaweza kuwakilisha na wale bits. 294 00:13:08,640 --> 00:13:10,500 Na hivyo kompyuta hatimaye ni kwenda na 295 00:13:10,500 --> 00:13:11,730 kuanza kukata pembe. 296 00:13:11,730 --> 00:13:15,500 kompyuta inaweza kuficha maelezo wale kutoka kwetu kwa muda kidogo. 297 00:13:15,500 --> 00:13:18,880 Lakini kama sisi kuanza poking katika idadi na kuangalia mbali na mbali zaidi katika 298 00:13:18,880 --> 00:13:23,220 trailing idadi katika idadi nzima, basi sisi kuanza kuona kwamba ni 299 00:13:23,220 --> 00:13:26,480 kweli approximating wazo la kumi moja. 300 00:13:26,480 --> 00:13:29,860 >> Na hivyo ni zamu nje, kusikitisha, kuna idadi ya usio wa idadi 301 00:13:29,860 --> 00:13:35,060 hatuwezi kuwakilisha kwa usahihi katika kompyuta, angalau kwa finite 302 00:13:35,060 --> 00:13:38,030 idadi ya vipande, finite kiasi cha RAM. 303 00:13:38,030 --> 00:13:41,210 Sasa kwa bahati mbaya, hii wakati mwingine ina madhara halisi ya dunia. 304 00:13:41,210 --> 00:13:45,980 Kama watu hawana kabisa kufahamu hii au aina ya kuchukua kwa nafasi ya ukweli 305 00:13:45,980 --> 00:13:48,310 kwamba kompyuta zao tu kufanya kile wao kuwaambia yake ya kufanya na wala 306 00:13:48,310 --> 00:13:51,430 kuelewa haya ya ndani uwakilishi wa maelezo - 307 00:13:51,430 --> 00:13:55,290 ambayo, kusema ukweli, katika baadhi ya lugha ni siri kutoka kwa mtumiaji, tofauti katika C - 308 00:13:55,290 --> 00:13:56,500 baadhi ya mambo mabaya yanaweza kutokea. 309 00:13:56,500 --> 00:13:58,650 >> Na nini Nilidhani tunatarajia kufanya ni kuchukua hatua nyuma. 310 00:13:58,650 --> 00:14:00,420 Na hii ni kuhusu nane dakika ya video. 311 00:14:00,420 --> 00:14:04,200 Ni kurushwa hewani miaka michache iliyopita, na inatoa utambuzi katika kweli nini unaweza kwenda 312 00:14:04,200 --> 00:14:09,290 vibaya wakati wewe chini ya kufahamu haya aina ya maelezo katika sana wote-pia 313 00:14:09,290 --> 00:14:10,080 ulimwengu halisi. 314 00:14:10,080 --> 00:14:12,965 Kama tunaweza dim taa kwa dakika chache. 315 00:14:12,965 --> 00:14:14,360 >> SPIKA 1: Sisi sasa kurudi uhandisi 316 00:14:14,360 --> 00:14:17,160 majanga ya Marvels kisasa. 317 00:14:17,160 --> 00:14:18,680 >> Kompyuta - 318 00:14:18,680 --> 00:14:21,340 tumekuwa wote wamekuja kukubali mara nyingi frustrating matatizo 319 00:14:21,340 --> 00:14:23,170 kwamba kwenda pamoja nao. 320 00:14:23,170 --> 00:14:27,570 Mende, virusi, na glitches programu ni ndogo bei kulipa kwa ajili ya 321 00:14:27,570 --> 00:14:28,960 urahisi. 322 00:14:28,960 --> 00:14:32,040 Lakini katika high-tech na high-speed kijeshi na mpango wa nafasi 323 00:14:32,040 --> 00:14:38,650 maombi, tatizo ndogo yanaweza kujitukuza katika janga. 324 00:14:38,650 --> 00:14:44,480 >> Tarehe 4 Juni, 1996, wanasayansi tayari kuzindua unmanned Ariane 5 roketi. 325 00:14:44,480 --> 00:14:48,700 Ilikuwa ni kufanya satelaiti kisayansi iliyoundwa na kuanzisha usahihi jinsi 326 00:14:48,700 --> 00:14:53,250 Dunia shamba magnetic inaingiliana na upepo wa jua. 327 00:14:53,250 --> 00:14:57,540 roketi iliyojengwa kwa ajili ya Ulaya Nafasi ya Shirika na lile mbali kutoka yake 328 00:14:57,540 --> 00:14:59,906 kituo katika pwani ya ya Kifaransa. 329 00:14:59,906 --> 00:15:03,660 >> JACK GANSSLE: Wakati kuhusu 37 sekunde katika ndege, kwanza niliona 330 00:15:03,660 --> 00:15:04,910 kuna kitu kwenda vibaya. 331 00:15:04,910 --> 00:15:08,130 nozzles walikuwa swiveling katika njia ya wao kweli lazima si. 332 00:15:08,130 --> 00:15:12,380 Karibu sekunde 40 ndani ya ndege, wazi gari ilikuwa kwenye matatizo. 333 00:15:12,380 --> 00:15:14,400 Na kwamba wakati wao alifanya uamuzi kuiharibu. 334 00:15:14,400 --> 00:15:18,520 usalama mbalimbali afisa, na guts kubwa, taabu ya kifungo, 335 00:15:18,520 --> 00:15:23,900 akapiga juu roketi kabla hawakuweza kuwa hatari kwa usalama wa umma. 336 00:15:23,900 --> 00:15:27,810 >> SPIKA 1: Hii ilikuwa safari msichana Ariane ya 5, na uharibifu wake 337 00:15:27,810 --> 00:15:32,020 ulifanyika kwa sababu ya kasoro iliyoingia katika programu ya roketi. 338 00:15:32,020 --> 00:15:33,980 >> JACK GANSSLE: tatizo juu ya Ariane ni kwamba kulikuwa na idadi 339 00:15:33,980 --> 00:15:36,390 kwamba required 64 bits kueleza. 340 00:15:36,390 --> 00:15:39,420 Na walitaka kubadilisha na idadi ya 16-bit. 341 00:15:39,420 --> 00:15:43,130 Wao kudhani kuwa idadi ilikuwa kamwe kwenda kuwa kubwa sana, ya kwamba zaidi ya 342 00:15:43,130 --> 00:15:46,810 wale maadili katika kidogo 64- idadi walikuwa zeros. 343 00:15:46,810 --> 00:15:48,270 Walikuwa na makosa. 344 00:15:48,270 --> 00:15:51,380 >> SPIKA 1: kutokuwa na uwezo wa programu moja mpango kukubali aina ya 345 00:15:51,380 --> 00:15:55,350 idadi yanayotokana na mwingine alikuwa kwenye mizizi ya kushindwa. 346 00:15:55,350 --> 00:15:59,970 Programu ya maendeleo imekuwa sana gharama kubwa sehemu ya teknolojia mpya. 347 00:15:59,970 --> 00:16:03,980 Ariane 4 roketi alikuwa sana mafanikio, hivyo mengi ya programu 348 00:16:03,980 --> 00:16:07,480 kuundwa kwa ajili pia ilikuwa kutumika katika Ariane 5. 349 00:16:07,480 --> 00:16:11,980 >> PHILIP COYLE: tatizo msingi ilikuwa kwamba Ariane 5 mara kwa kasi, 350 00:16:11,980 --> 00:16:13,720 kuharakisha kasi zaidi. 351 00:16:13,720 --> 00:16:17,250 Na programu alikuwa na si waliendelea kwa ajili hiyo. 352 00:16:17,250 --> 00:16:20,770 >> SPIKA 1: uharibifu wa roketi ilikuwa kubwa kifedha maafa, 353 00:16:20,770 --> 00:16:24,200 wote kutokana na kosa dakika programu. 354 00:16:24,200 --> 00:16:27,820 Lakini hii haikuwa mara ya kwanza data uongofu matatizo alikuwa wanakumbana kisasa 355 00:16:27,820 --> 00:16:30,620 roketi teknolojia. 356 00:16:30,620 --> 00:16:34,480 >> JACK GANSSLE: Katika mwaka 1991, na kuanza ya kwanza vita vya Ghuba, Patriot 357 00:16:34,480 --> 00:16:38,610 kombora uzoefu aina sawa ya tatizo simu uongofu. 358 00:16:38,610 --> 00:16:44,910 Kama matokeo, 28 askari wa Marekani walikuwa waliuawa na wengine wapatao 100 kujeruhiwa 359 00:16:44,910 --> 00:16:48,600 wakati Patriot, ambayo ilitakiwa kulinda dhidi ya Scuds zinazoingia, 360 00:16:48,600 --> 00:16:51,630 alishindwa kwa moto kombora. 361 00:16:51,630 --> 00:16:55,110 >> SPIKA 1: Wakati Iraq walivamia Kuwait na Amerika ilizindua Desert Storm katika 362 00:16:55,110 --> 00:17:00,570 mapema 1991, Patriot kombora betri walikuwa uliotumika kulinda Saudi Arabia 363 00:17:00,570 --> 00:17:04,760 na Israeli kutoka Scud Iraq kombora mashambulizi. 364 00:17:04,760 --> 00:17:09,720 Patriot ni Marekani kati-mbalimbali uso-kwa-hewa mfumo wa viwandani na 365 00:17:09,720 --> 00:17:11,569 Raytheon kampuni. 366 00:17:11,569 --> 00:17:16,410 >> THEODORE POSTOL: ukubwa wa Patriot interceptor yenyewe ni takribani 367 00:17:16,410 --> 00:17:17,710 20-miguu kwa muda mrefu. 368 00:17:17,710 --> 00:17:20,800 Na ni kizito paundi 2000. 369 00:17:20,800 --> 00:17:22,940 Na hubeba warhead ya juu - 370 00:17:22,940 --> 00:17:24,905 Nadhani ni takribani £ 150. 371 00:17:24,905 --> 00:17:31,030 Na warhead yenyewe ni high kulipuka ambayo ina 372 00:17:31,030 --> 00:17:33,270 vipande kuzunguka. 373 00:17:33,270 --> 00:17:37,490 casing ya warhead imeundwa kutenda kama buckshot. 374 00:17:37,490 --> 00:17:40,720 >> SPIKA 1: makombora ni kufanyika wanne kwa kila kontena na ni kusafirishwa 375 00:17:40,720 --> 00:17:43,050 na Trailer nusu. 376 00:17:43,050 --> 00:17:47,490 >> PHILIP COYLE: Patriot kupambana na kombora mfumo inakwenda nyuma katika 377 00:17:47,490 --> 00:17:50,710 angalau miaka 20 sasa. 378 00:17:50,710 --> 00:17:54,350 Ni awali ilikuwa imeundwa kama ulinzi hewa kombora kwa 379 00:17:54,350 --> 00:17:56,190 risasi chini ndege ya adui. 380 00:17:56,190 --> 00:18:02,490 Katika Vita ya Ghuba ya kwanza, wakati kwamba vita alikuja pamoja, Jeshi alitaka kutumia 381 00:18:02,490 --> 00:18:05,535 kwa risasi chini Scuds, ndege si. 382 00:18:05,535 --> 00:18:09,310 Iraq hewa nguvu haikuwa sana ya tatizo. 383 00:18:09,310 --> 00:18:12,450 Lakini Jeshi alikuwa na wasiwasi kuhusu Scuds. 384 00:18:12,450 --> 00:18:15,950 Na hivyo walijaribu kuboresha Patriot. 385 00:18:15,950 --> 00:18:18,750 >> SPIKA 1: Intercepting kombora adui kusafiri saa mach tano alikuwa 386 00:18:18,750 --> 00:18:20,890 kwenda kuwa changamoto ya kutosha. 387 00:18:20,890 --> 00:18:25,590 Lakini wakati Patriot alikimbizwa katika huduma, Jeshi hakuwa na ufahamu wa 388 00:18:25,590 --> 00:18:31,710 Iraq muundo kwamba alifanya yao Scuds karibu vigumu hit. 389 00:18:31,710 --> 00:18:35,240 >> THEODORE POSTOL: Ni nini kilichotokea Scuds ni kwamba walikuwa 390 00:18:35,240 --> 00:18:36,570 akija katika walikuwa imara. 391 00:18:36,570 --> 00:18:37,532 Walikuwa tikisika. 392 00:18:37,532 --> 00:18:43,220 Sababu ya hayo ni raia wa Iraq, katika Ili kupata kilomita 600 nje ya 393 00:18:43,220 --> 00:18:47,530 300 wa kilomita-mbalimbali kombora, alichukua uzito nje ya warhead mbele. 394 00:18:47,530 --> 00:18:49,290 Walitoa warhead nyepesi. 395 00:18:49,290 --> 00:18:53,110 Hivyo sasa Patriot ni kujaribu kuja kwa Scud. 396 00:18:53,110 --> 00:18:56,470 Na zaidi ya muda, balaa Wengi wa muda, ingekuwa tu 397 00:18:56,470 --> 00:18:58,730 kuruka na Scud. 398 00:18:58,730 --> 00:19:01,760 >> SPIKA 1: Mara tu mfumo wa Patriot waendeshaji barabara Patriot amekosa 399 00:19:01,760 --> 00:19:06,690 lengo lake, wao detonated Patriots warhead ili kuepuka uwezekano 400 00:19:06,690 --> 00:19:10,300 majeruhi kama aliruhusiwa kuanguka chini. 401 00:19:10,300 --> 00:19:14,540 >> THEODORE POSTOL: Hiyo ilikuwa nini zaidi watu waliona kama fireballs kubwa angani 402 00:19:14,540 --> 00:19:20,350 na kutoeleweka kama intercepts Scud ya warheads. 403 00:19:20,350 --> 00:19:23,320 >> SPIKA 1: Ingawa katika anga usiku Wazalendo alionekana kuwa mafanikio 404 00:19:23,320 --> 00:19:27,530 kuharibu Scuds, saa Dhahran kuna inaweza kuwa hakuna kosa kuhusu wake 405 00:19:27,530 --> 00:19:29,140 utendaji. 406 00:19:29,140 --> 00:19:34,180 Huko, rada Patriot mfumo wa waliopotea wimbo wa Scud zinazoingia na kamwe 407 00:19:34,180 --> 00:19:36,380 ilizinduliwa kutokana na kasoro programu. 408 00:19:36,380 --> 00:19:39,890 409 00:19:39,890 --> 00:19:42,700 >> Ni mara ya kwanza aligundua Israel ambao kwamba tena mfumo 410 00:19:42,700 --> 00:19:48,020 ilikuwa juu, tofauti kubwa wakati akawa kutokana na saa 411 00:19:48,020 --> 00:19:50,470 iliyoingia katika mfumo wa kompyuta ya. 412 00:19:50,470 --> 00:19:54,640 >> JACK GANSSLE: Kuhusu wiki mbili kabla ya janga katika Dhahran, Israel 413 00:19:54,640 --> 00:19:58,440 taarifa ya Wizara ya Ulinzi kwamba mfumo alikuwa kupoteza muda. 414 00:19:58,440 --> 00:20:01,280 Baada ya masaa nane ya kukimbia, waligundua kwamba mfumo ni 415 00:20:01,280 --> 00:20:03,530 kuwa unaonekana chini sahihi. 416 00:20:03,530 --> 00:20:07,710 Wizara ya Ulinzi alijibu kwa kuwaambia yote ya betri Patriot 417 00:20:07,710 --> 00:20:10,500 na si kuondoka mifumo juu kwa muda mrefu. 418 00:20:10,500 --> 00:20:12,430 Wao kamwe alisema nini kwa muda mrefu ilikuwa. 419 00:20:12,430 --> 00:20:13,330 Masaa nane? 420 00:20:13,330 --> 00:20:13,810 Masaa 10? 421 00:20:13,810 --> 00:20:14,990 1000 masaa? 422 00:20:14,990 --> 00:20:17,150 Hakuna aliyejua. 423 00:20:17,150 --> 00:20:20,220 >> SPIKA 1: betri Patriot stationed katika kambi ya saa Dhahran 424 00:20:20,220 --> 00:20:24,660 na ndani yake saa kiujanja alikuwa juu zaidi ya 100 masaa ya usiku wa 425 00:20:24,660 --> 00:20:27,470 Februari 25. 426 00:20:27,470 --> 00:20:31,770 >> JACK GANSSLE: Ni msisimko wakati wa usahihi wa juu ya kumi ya pili. 427 00:20:31,770 --> 00:20:34,480 Sasa, sehemu ya kumi ya pili ni kuvutia idadi sababu haiwezi kuwa 428 00:20:34,480 --> 00:20:39,940 walionyesha katika binary hasa, ambayo ina maana haiwezi kuwa walionyesha hasa katika 429 00:20:39,940 --> 00:20:42,500 yoyote ya kisasa ya digital kompyuta. 430 00:20:42,500 --> 00:20:46,920 Ni vigumu kuamini, lakini kutumia hii kama mfano. 431 00:20:46,920 --> 00:20:49,000 Hebu kuchukua namba moja ya tatu. 432 00:20:49,000 --> 00:20:53,150 Theluthi moja hawezi kuwa walionyesha katika decimal hasa. 433 00:20:53,150 --> 00:20:57,500 Moja ya tatu ni 0.333 kwenda juu kwa infinity. 434 00:20:57,500 --> 00:21:02,270 Hakuna njia ya kufanya hivyo na kabisa usahihi katika decimal. 435 00:21:02,270 --> 00:21:05,370 Hiyo hasa aina moja ya tatizo yaliyotokea katika Patriot. 436 00:21:05,370 --> 00:21:09,880 tena mfumo wa mbio, mbaya kosa wakati akawa. 437 00:21:09,880 --> 00:21:13,840 >> SPIKA 1: Baada ya 100 masaa ya kazi, makosa katika wakati ilikuwa tu 438 00:21:13,840 --> 00:21:16,140 theluthi moja ya pili. 439 00:21:16,140 --> 00:21:20,800 Lakini katika suala la kulenga kombora kusafiri saa mach tano, ni matokeo ya 440 00:21:20,800 --> 00:21:24,410 makosa ya kufuatilia ya zaidi ya mita 600. 441 00:21:24,410 --> 00:21:27,670 Itakuwa kosa mbaya kwa askari katika Dhahran. 442 00:21:27,670 --> 00:21:33,450 >> THEODORE POSTOL: Kilichotokea ni Uzinduzi Scud ilikuwa wanaona na mapema 443 00:21:33,450 --> 00:21:34,280 onyo satelaiti. 444 00:21:34,280 --> 00:21:38,550 Na walijua kuwa Scud alikuwa anakuja katika mwelekeo wao kwa ujumla. 445 00:21:38,550 --> 00:21:41,000 Hawakujua ambapo ilikuwa ijayo. 446 00:21:41,000 --> 00:21:43,900 >> SPIKA 1: Ilikuwa sasa hadi rada sehemu ya mfumo Patriot 447 00:21:43,900 --> 00:21:48,910 kutetea Dhahran na Machapisho na kuweka wimbo wa kombora zinazoingia adui. 448 00:21:48,910 --> 00:21:50,580 >> JACK GANSSLE: rada alikuwa smart sana. 449 00:21:50,580 --> 00:21:53,770 Ingekuwa kweli kufuatilia nafasi ya Scud na kisha kutabiri ambapo ni 450 00:21:53,770 --> 00:21:57,160 pengine itakuwa wakati ujao rada alimtuma mapigo nje. 451 00:21:57,160 --> 00:21:58,870 Kwamba aliitwa lango mbalimbali. 452 00:21:58,870 --> 00:22:04,020 >> THEODORE POSTOL: Kisha mara moja Patriot anaamua muda wa kutosha kupita kwenda 453 00:22:04,020 --> 00:22:09,420 nyuma na kuangalia eneo ijayo kwa ajili ya hii kitu wanaona, unaendelea nyuma. 454 00:22:09,420 --> 00:22:14,450 Hivyo wakati akarudi vibaya mahali, basi anaona hakuna kitu. 455 00:22:14,450 --> 00:22:18,200 Na anaamua kwamba kulikuwa hakuna kitu chochote, ilikuwa kugundua uongo, na 456 00:22:18,200 --> 00:22:19,680 matone ya kufuatilia. 457 00:22:19,680 --> 00:22:22,970 >> SPIKA 1: Scud zinazoingia kutoweka kutoka screen rada, na 458 00:22:22,970 --> 00:22:26,050 sekunde baadaye slammed Paulo ndani ya ngome. 459 00:22:26,050 --> 00:22:31,950 Scud kuuawa 28 na mara moja ya mwisho fired wakati wa Vita ya Ghuba ya kwanza. 460 00:22:31,950 --> 00:22:37,700 Kusikitisha, programu updated aliwasili saa Dhahran siku iliyofuata. 461 00:22:37,700 --> 00:22:41,800 flaw programu amekuwa fasta, kufunga sura moja katika wasiwasi 462 00:22:41,800 --> 00:22:43,690 historia ya kombora Patriot. 463 00:22:43,690 --> 00:22:46,780 464 00:22:46,780 --> 00:22:50,710 >> Mzalendo ni kweli kifupi kwa ajili ya kufuatilia Phased Array 465 00:22:50,710 --> 00:22:51,960 Kukatiza ya Lugha. 466 00:22:51,960 --> 00:22:54,650 467 00:22:54,650 --> 00:23:00,840 >> DAVID J Malan: zote haki, hivyo yanayotisha mfano, kuwa na uhakika. 468 00:23:00,840 --> 00:23:03,430 Na kwa bahati nzuri, hizi ngazi ya chini mende ni si kitu ambacho tutaweza 469 00:23:03,430 --> 00:23:06,220 kawaida kuwa na kufahamu, hakika si kwa baadhi ya yetu ya 470 00:23:06,220 --> 00:23:07,360 mwanzo wa mipango. 471 00:23:07,360 --> 00:23:10,450 Badala yake, zaidi ya mende utasikia kukutana itakuwa mantiki katika asili, 472 00:23:10,450 --> 00:23:12,900 kisintaksia katika asili ambapo kanuni tu haina kazi ya haki. 473 00:23:12,900 --> 00:23:14,140 Na unajua ni pretty kufunga. 474 00:23:14,140 --> 00:23:16,850 >> Lakini hasa wakati sisi kupata mwisho wa muhula, ni kwenda 475 00:23:16,850 --> 00:23:20,620 kuwa zaidi na zaidi ya uwezekano wa kweli kufikiri kwa bidii juu ya kubuni 476 00:23:20,620 --> 00:23:22,960 ya mipango yako na msingi uwakilishi 477 00:23:22,960 --> 00:23:24,520 huko, pia, ya data. 478 00:23:24,520 --> 00:23:28,010 Kwa mfano, tutaweza kuanzisha MySQL, ambayo ni maarufu injini database 479 00:23:28,010 --> 00:23:30,850 kwamba unaweza kutumia na tovuti ya kuhifadhi data juu ya mwisho ya nyuma. 480 00:23:30,850 --> 00:23:34,630 Na itabidi kuanza kuamua katika mwisho wa muhula sio tu kile 481 00:23:34,630 --> 00:23:38,790 aina ya data pamoja na mistari haya ya kutumia lakini hasa jinsi wengi bits kutumia, 482 00:23:38,790 --> 00:23:42,740 kama au unataka kuhifadhi tarehe kama tarehe na nyakati kama nyakati, na pia 483 00:23:42,740 --> 00:23:46,890 mambo kama jinsi kubwa unataka Vitambulisho vya kipekee kwa kuwa, kusema, watumiaji 484 00:23:46,890 --> 00:23:47,680 katika orodha yako. 485 00:23:47,680 --> 00:23:51,210 >> Kwa kweli, kama baadhi yenu alikuwa na Picha za hesabu kwa muda kabisa, 486 00:23:51,210 --> 00:23:53,680 na wewe kujua jinsi ya kupata na Mtumiaji ID yako - 487 00:23:53,680 --> 00:23:57,930 ambayo wakati mwingine inaonyesha juu katika yako maelezo mafupi ya URL ya isipokuwa umechagua 488 00:23:57,930 --> 00:24:02,070 utani kwa ajili ya URL, au kama wewe wameweza kutumika Facebook Grafu API, 489 00:24:02,070 --> 00:24:05,510 hadharani API na ambayo unaweza kuuliza Facebook kwa takwimu ghafi - 490 00:24:05,510 --> 00:24:07,580 unaweza kuona nini ID yako numeric ni. 491 00:24:07,580 --> 00:24:10,880 Na baadhi ya miaka iliyopita, Facebook kimsingi alikuwa na mabadiliko ya kutoka kutumia 492 00:24:10,880 --> 00:24:15,980 sawa ya ints kwa kutumia muda mrefu muda mrefu kwa sababu baada ya muda kama watumiaji kuja 493 00:24:15,980 --> 00:24:19,780 na kwenda na na kujenga kura ya akaunti bandia akaunti, hata wao kwa urahisi sana 494 00:24:19,780 --> 00:24:24,630 walikuwa na uwezo wa kutolea nje kitu kama 4 bilioni iwezekanavyo thamani kama int. 495 00:24:24,630 --> 00:24:28,340 >> Hivyo zaidi juu ya aina wale wa masuala ya chini ya barabara, kama vile. 496 00:24:28,340 --> 00:24:30,750 Haki ya wote, hivyo kwamba alikuwa akitoa. 497 00:24:30,750 --> 00:24:31,670 Hiyo ilikuwa ni kutokuwa sahihi. 498 00:24:31,670 --> 00:24:32,730 michache ya matangazo ya haraka. 499 00:24:32,730 --> 00:24:35,710 Hivyo sehemu rasmi kuanza hii kuja Jumapili, Jumatatu, Jumanne. 500 00:24:35,710 --> 00:24:39,080 Utasikia kupitia barua pepe baadaye wiki hii kama sehemu ya kazi yako. 501 00:24:39,080 --> 00:24:42,570 Na itabidi hapa pia katika hatua hiyo jinsi na mabadiliko ya sehemu yako kama yako 502 00:24:42,570 --> 00:24:45,660 ratiba ya sasa imebadilika au yako faraja ngazi sasa imebadilika. 503 00:24:45,660 --> 00:24:49,380 Wakati huo huo P-seti moja na moja ni hacker kutokana hii Alhamisi na chaguo 504 00:24:49,380 --> 00:24:52,450 kupanua kwamba tarehe ya mwisho kwa specifikationer hadi Ijumaa 505 00:24:52,450 --> 00:24:53,830 katika njia ya kawaida. 506 00:24:53,830 --> 00:24:57,500 >> Kutambua kwamba pamoja na tatizo kuweka specifikationer ni maelekezo ya 507 00:24:57,500 --> 00:25:02,770 jinsi ya kutumia appliance CS50, kufanya, kama vile baadhi CS50 maalum zana 508 00:25:02,770 --> 00:25:06,540 kama style 50, ambayo inaweza kutoa na maoni juu ya dynamically 509 00:25:06,540 --> 00:25:10,230 ubora wa kanuni style yako na pia kuangalia 50, ambayo inaweza kutoa kwa 510 00:25:10,230 --> 00:25:13,160 nguvu maoni kama yako kanuni ya usahihi. 511 00:25:13,160 --> 00:25:16,850 Kusamehe kwamba bado tuko Board nje kinks wachache na hundi 50. 512 00:25:16,850 --> 00:25:21,490 machache ya wanafunzi wenzako ambao hawakuwa kuanza kuzunguka 4:00 usiku wa Ijumaa wakati 513 00:25:21,490 --> 00:25:25,130 spec akapanda niliona tangu hapo mende chache kwamba sisi ni kazi 514 00:25:25,130 --> 00:25:29,010 kupitia, na msamaha kwa mtu yeyote ambaye ina uzoefu frustrations visivyofaa. 515 00:25:29,010 --> 00:25:30,340 kosa ni yangu. 516 00:25:30,340 --> 00:25:34,080 Lakini tutaweza kufuatilia CS50 kujadili wakati kwamba ni kutatuliwa. 517 00:25:34,080 --> 00:25:35,700 >> Hivyo neno juu ya alama wenyewe. 518 00:25:35,700 --> 00:25:38,990 Hivyo utakuwa wiki moja au mbili kabla ya kuanza kupata maoni juu ya seti tatizo 519 00:25:38,990 --> 00:25:40,640 kwa sababu wewe bado hatuna wenzake kufundisha. 520 00:25:40,640 --> 00:25:44,510 Na hata basi, sisi kuanza kutathmini Tatizo C seti kabla ya sisi 521 00:25:44,510 --> 00:25:46,970 kurudi nyuma na kutathmini mwanzo hivyo kwamba kupata zaidi husika 522 00:25:46,970 --> 00:25:48,150 maoni kwa haraka zaidi. 523 00:25:48,150 --> 00:25:51,870 Lakini kwa ujumla kwa mtaala, CS50 seti tatizo ni tathmini pamoja 524 00:25:51,870 --> 00:25:53,580 kufuatia shoka nne - 525 00:25:53,580 --> 00:25:55,760 upeo, usahihi, kubuni, na style. 526 00:25:55,760 --> 00:25:59,210 >> Wigo ni kwenda kuwa idadi kawaida kati ya sifuri na tano kwamba 527 00:25:59,210 --> 00:26:01,830 Ukamataji wa kiasi gani cha kipande kwamba wewe wakawauma mbali. 528 00:26:01,830 --> 00:26:03,750 Kwa kawaida, unataka hii kuwa tano. 529 00:26:03,750 --> 00:26:05,300 Wewe angalau alijaribu kila kitu. 530 00:26:05,300 --> 00:26:09,330 Na taarifa ni sababu multiplicative ili kufanya sehemu tu ya 531 00:26:09,330 --> 00:26:12,520 tatizo kuweka si mkakati bora. 532 00:26:12,520 --> 00:26:15,610 >> Wakati huo huo, wazi zaidi ni umuhimu wa usahihi - 533 00:26:15,610 --> 00:26:18,620 tu ni mpango wako sahihi na kuheshimu na vipimo? 534 00:26:18,620 --> 00:26:21,510 Hii ni mizigo kwa makusudi zaidi sana kuliko wengine wawili na shoka 535 00:26:21,510 --> 00:26:24,450 Sababu ya tatu kwa sababu tunatambua kwamba kwa kawaida wewe ni kwenda kutumia 536 00:26:24,450 --> 00:26:28,600 mengi zaidi wakati Chasing chini baadhi ya mende, kupata kanuni yako ya kufanya kazi, basi 537 00:26:28,600 --> 00:26:31,540 ni indenting yake na kuchagua sahihi kutofautiana majina na 538 00:26:31,540 --> 00:26:33,800 kama, ambayo ni ya mwisho mwingine ya wigo wa style. 539 00:26:33,800 --> 00:26:36,160 >> Hiyo si kusema style si muhimu, na tutaweza kuhubiri juu ya 540 00:26:36,160 --> 00:26:37,920 wakati wote katika mihadhara na katika sehemu. 541 00:26:37,920 --> 00:26:40,520 Sinema inahusu aesthetics ya maadili yako. 542 00:26:40,520 --> 00:26:43,980 Je waliochaguliwa vizuri aitwaye vigezo kwamba ni mfupi lakini kwa kiasi fulani 543 00:26:43,980 --> 00:26:44,680 maelezo? 544 00:26:44,680 --> 00:26:47,840 Ni kanuni yako indented kama ve kuonekana katika hotuba na kwa njia thabiti 545 00:26:47,840 --> 00:26:49,070 kwa mtindo wa 50? 546 00:26:49,070 --> 00:26:51,220 >> Mwisho ni haki ya kubuni pale katikati. 547 00:26:51,220 --> 00:26:54,090 Kubuni ni moja vigumu kuweka kidole juu kwa sababu ni mengi zaidi 548 00:26:54,090 --> 00:26:55,000 subjective. 549 00:26:55,000 --> 00:26:58,610 Lakini ni labda muhimu zaidi ya shoka tatu katika suala la ufundishaji 550 00:26:58,610 --> 00:27:02,050 thamani ya zaidi ya muda na kwamba hii itakuwa fursa ya kufundisha wenzake kwa 551 00:27:02,050 --> 00:27:04,110 kutoa kwa maoni ya ubora. 552 00:27:04,110 --> 00:27:08,100 Hakika, katika CS50 ingawa sisi kufanya haya formula na alama, mwishoni 553 00:27:08,100 --> 00:27:11,350 ya siku hizi ni kwa makusudi ndogo sana ndoo - kumweka maadili 554 00:27:11,350 --> 00:27:13,460 kati ya sifuri na tatu na sifuri na tano. 555 00:27:13,460 --> 00:27:17,800 Sisi si kujaribu kuteka mistari magumu kati ya tatizo seti au kati ya 556 00:27:17,800 --> 00:27:21,490 wanafunzi lakini badala ya kuzingatia kama vile tunaweza juu ya ubora, longhand 557 00:27:21,490 --> 00:27:25,490 maoni, ama typed au matusi kutoka ufundishaji wako hasa wenzetu, 558 00:27:25,490 --> 00:27:27,050 utasikia kupata kujua vizuri kabisa. 559 00:27:27,050 --> 00:27:32,340 >> Lakini kwa ujumla, wale ni uzito kwamba shoka mbalimbali watapata. 560 00:27:32,340 --> 00:27:35,480 Wakati huo huo, pia, ni thamani ya kushika katika akilini kwamba ni lazima si kudhani kwamba 561 00:27:35,480 --> 00:27:38,870 tatu kati ya tano ni 60% na Basi takribani kushindwa. 562 00:27:38,870 --> 00:27:41,410 Tatu ni makusudi maana ya kuwa aina ya katikati ya barabara nzuri. 563 00:27:41,410 --> 00:27:43,480 Kama wewe ni kupata threes katika mwanzo wa muhula, hiyo ni 564 00:27:43,480 --> 00:27:46,340 kweli maana ya kuwa nzuri mahali ya kuanza. 565 00:27:46,340 --> 00:27:50,510 Kama wewe ni kupata wawili-wawili maonyesho,, kuna dhahiri baadhi ya kazi kwa kulipa kidogo 566 00:27:50,510 --> 00:27:53,250 kipaumbele zaidi, kuchukua faida ya sehemu na masaa ya ofisi. 567 00:27:53,250 --> 00:27:54,590 >> Kama wewe ni kupata fours na umri wa miaka mitano, kubwa. 568 00:27:54,590 --> 00:27:57,430 Lakini kwa kweli, tunatarajia kuona trajectories kati ya wanafunzi - sana 569 00:27:57,430 --> 00:28:00,575 mtu mmoja mmoja kwa kila mwanafunzi, lakini kuanzia muhula hapa katika aina ya 570 00:28:00,575 --> 00:28:04,100 wawili mbalimbali tatu lakini kuishia hapa juu katika mbalimbali 4-5. 571 00:28:04,100 --> 00:28:05,440 Hiyo ni nini sisi ni kweli kutafuta. 572 00:28:05,440 --> 00:28:09,590 Na hatuna kukumbuka kwamba delta wewe maonyesho kati ya wiki sifuri na wiki 573 00:28:09,590 --> 00:28:12,170 12 wakati mimi nina kufanya darasa. 574 00:28:12,170 --> 00:28:16,380 Haijalishi kwetu kabisa jinsi wewe haki mwanzoni kama yako 575 00:28:16,380 --> 00:28:19,330 trajectory ni kweli zaidi na nguvu. 576 00:28:19,330 --> 00:28:24,000 >> Uaminifu kitaaluma - hivyo basi mimi kuweka juu yangu mbaya zaidi sauti kwa muda tu. 577 00:28:24,000 --> 00:28:28,510 Hivyo bila shaka hii ina tofauti ya kupeleka wanafunzi zaidi kuliko nyingine yoyote 578 00:28:28,510 --> 00:28:30,950 katika historia ya bodi ad, naamini. 579 00:28:30,950 --> 00:28:34,220 Tuna aina ya kuhesabu waliopotea katika hii uhakika wa jinsi mara nyingi hii hutokea. 580 00:28:34,220 --> 00:28:37,090 Na si kwamba kwa sababu ya wanafunzi katika 50 ni yoyote zaidi kuliko wao mwaminifu 581 00:28:37,090 --> 00:28:38,690 classmates mahali pengine. 582 00:28:38,690 --> 00:28:42,800 Lakini kutambua, pia kwamba, sisi ni nzuri sana katika kuchunguza jambo la aina hii. 583 00:28:42,800 --> 00:28:45,920 >> Na kwamba ni faida ya kuwa sayansi ya kompyuta ya darasa ana kwa kuwa sisi 584 00:28:45,920 --> 00:28:49,110 unaweza na hatuwezi kulinganisha wanafunzi wote tatizo seti jozi-busara dhidi ya kila 585 00:28:49,110 --> 00:28:51,470 mengine, si tu mwaka huu lakini wote kabla ya miaka. 586 00:28:51,470 --> 00:28:55,080 Tuna uwezo, kama wanafunzi katika darasani, kwa Google na kutafuta kanuni ya 587 00:28:55,080 --> 00:28:57,440 katika maeneo kama github na majadiliano ya vikao. 588 00:28:57,440 --> 00:29:00,840 Kuna kabisa ufumbuzi wa CS50 ya p-seti yaliyo karibu huko. 589 00:29:00,840 --> 00:29:02,710 Lakini kama unaweza kupata yao, tunaweza kupata yao. 590 00:29:02,710 --> 00:29:07,130 Na yote haya ni mengi sana automatiska na rahisi na kusikitisha kwa sisi kupata. 591 00:29:07,130 --> 00:29:10,990 >> Lakini nataka kusisitiza, pia kwamba kozi ya kitaaluma uaminifu sera ni 592 00:29:10,990 --> 00:29:13,960 sana maana ya kuwa mengi sana kinyume cha roho hiyo. 593 00:29:13,960 --> 00:29:17,506 Hakika, mwaka huu tumekuwa rephrased mambo katika mtaala kuwa hii, dot 594 00:29:17,506 --> 00:29:19,790 dot dot, kwa undani zaidi katika mtaala. 595 00:29:19,790 --> 00:29:22,860 Lakini mada kuu katika kozi kweli ni kuwa na busara. 596 00:29:22,860 --> 00:29:26,160 Tunatambua kwamba huko ni muhimu kiasi cha ufundishaji 597 00:29:26,160 --> 00:29:30,550 thamani ya kushirikiana, kwa kiasi fulani, na wanafunzi, ambapo wewe 598 00:29:30,550 --> 00:29:33,700 mbili au tatu au wewe zaidi ni wamesimama katika bodi nyeupe 599 00:29:33,700 --> 00:29:35,670 whiteboarding, hivyo kusema, mawazo yako - 600 00:29:35,670 --> 00:29:39,480 kuandika nje pseudocode katika picha, diagramming kile lazima Mario kuwa kama 601 00:29:39,480 --> 00:29:41,350 ungekuwa na kuandika ni ya kwanza katika pseudocode. 602 00:29:41,350 --> 00:29:43,240 Kile lazima algorithm tamaa - 603 00:29:43,240 --> 00:29:46,100 jinsi lazima ni kuishi kwa tatizo seti moja? 604 00:29:46,100 --> 00:29:50,440 >> Na hivyo kutambua kwamba tabia kwamba sisi moyo sana 605 00:29:50,440 --> 00:29:51,470 sana pamoja na mistari hayo. 606 00:29:51,470 --> 00:29:53,890 Na katika mtaala, utaona nzima rundo la risasi chini ya 607 00:29:53,890 --> 00:29:57,740 kuridhisha jamii na si ya kuridhisha jamii ambayo inatusaidia kusaidia 608 00:29:57,740 --> 00:30:00,740 wewe wrap akili yako karibu ambapo hatuwezi kuteka kuwa mstari. 609 00:30:00,740 --> 00:30:04,340 Na kwa ujumla, utawala bora wa thumb ni kwamba kama wewe wanajitahidi kutatua 610 00:30:04,340 --> 00:30:07,990 baadhi ya mdudu na rafiki yako au classmate ni kukaa karibu na wewe, ni 611 00:30:07,990 --> 00:30:11,530 busara kwa wewe kuonyesha kwake kanuni yako na kusema, hey, unaweza kusaidia 612 00:30:11,530 --> 00:30:13,700 mimi kufikiri nini kinaendelea vibaya hapa? 613 00:30:13,700 --> 00:30:17,110 >> Sisi si kawaida kukumbatia upande wa pili. 614 00:30:17,110 --> 00:30:20,730 Ni si jibu sahihi kwa ajili yako rafiki au classmate hapa kusema, oh, 615 00:30:20,730 --> 00:30:22,510 kuangalia tu katika mgodi na takwimu ni nje na kwamba. 616 00:30:22,510 --> 00:30:24,400 Hiyo ni aina ya maana. 617 00:30:24,400 --> 00:30:27,750 Lakini kuwa na mtu mwingine, mwingine ubongo, mwingine jozi ya macho kuangalia 618 00:30:27,750 --> 00:30:31,620 screen yako au kuangalia code yako na kusema, ni wewe uhakika unataka 619 00:30:31,620 --> 00:30:32,760 kuwa kitanzi hapa? 620 00:30:32,760 --> 00:30:34,800 Au wewe ni uhakika unataka kwamba semicolon hapa? 621 00:30:34,800 --> 00:30:37,090 Au oh, kwamba ujumbe wa kosa maana hii. 622 00:30:37,090 --> 00:30:39,580 Wale ni nzuri sana na moyo tabia. 623 00:30:39,580 --> 00:30:44,010 >> kesi ambayo nilikuwa akidokeza mapema jipu chini wakati wanafunzi ni 624 00:30:44,010 --> 00:30:47,350 usiku na kufanya hukumu maskini maamuzi na emailing kanuni zao kwa 625 00:30:47,350 --> 00:30:50,130 mtu mwingine au kusema tu, hapa, ni katika Dropbox au 626 00:30:50,130 --> 00:30:51,610 Googling marehemu wakati wa usiku. 627 00:30:51,610 --> 00:30:54,880 Na hivyo napenda kuwatia moyo na kuombaomba ya wewe, Ukiwa na wale kuepukika 628 00:30:54,880 --> 00:30:58,450 wakati wa dhiki, wewe ni bumping up dhidi ya tarehe ya mwisho, wewe huna marehemu 629 00:30:58,450 --> 00:31:01,490 siku tangu ni tayari Ijumaa saa kwamba uhakika, email vichwa shaka au 630 00:31:01,490 --> 00:31:02,330 mwenyewe moja kwa moja. 631 00:31:02,330 --> 00:31:04,790 Kusema, kusikiliza, mimi nina katika wangu kuvunja uhakika hapa. 632 00:31:04,790 --> 00:31:06,660 Hebu kuwa na mazungumzo na takwimu ni nje. 633 00:31:06,660 --> 00:31:10,400 Kutegemea mtandao au nyingine si tabia nzuri ni kamwe 634 00:31:10,400 --> 00:31:13,070 ufumbuzi, na pia wengi wako classmates tena hapa 635 00:31:13,070 --> 00:31:15,150 chuo kwa sababu ya hukumu kuwa maskini. 636 00:31:15,150 --> 00:31:17,840 Lakini ni rahisi sana skirt kuwa mstari. 637 00:31:17,840 --> 00:31:22,950 >> Na hapa ni picha kidogo na moyo ninyi kutoka Reddit ili sasa 638 00:31:22,950 --> 00:31:25,720 kila kitu kitakuwa sawa. 639 00:31:25,720 --> 00:31:30,210 >> Hivyo kurejea haraka, basi, ya ambapo sisi kushoto mbali. 640 00:31:30,210 --> 00:31:33,690 Hivyo wiki iliyopita, kukumbuka kuwa sisi kuanzisha masharti, si katika Scratch 641 00:31:33,690 --> 00:31:34,880 lakini katika C wakati huu. 642 00:31:34,880 --> 00:31:38,300 Na kulikuwa na baadhi syntax mpya lakini kweli hakuna mawazo mapya per se. 643 00:31:38,300 --> 00:31:42,630 Tulikuwa na maneno Boolean kwamba tunaweza au pamoja na wima mbili 644 00:31:42,630 --> 00:31:46,490 baa au na pamoja na mbili ampersands, akisema kwamba wote wa kushoto 645 00:31:46,490 --> 00:31:49,990 na kulia lazima kuwa kweli kwa hili nitafanya. 646 00:31:49,990 --> 00:31:53,150 Kisha sisi alikuwa swichi, ambayo sisi inaonekana saa ufupi, lakini mimi kupendekeza ni kweli 647 00:31:53,150 --> 00:31:56,830 tu tofauti syntax kwa ajili ya kufikia huo aina ya lengo kama unajua katika 648 00:31:56,830 --> 00:31:59,270 kuendeleza kile kesi yako ni kwenda kuwa. 649 00:31:59,270 --> 00:32:00,160 >> Tuliangalia matanzi. 650 00:32:00,160 --> 00:32:03,340 kwa kitanzi ni labda ya kawaida, au angalau mmoja kwamba watu 651 00:32:03,340 --> 00:32:05,330 kawaida kufikia kwa ajili ya kisilika. 652 00:32:05,330 --> 00:32:08,240 Hata ingawa inaonekana kidogo fumbo, utaona wengi, mifano mingi ya hii 653 00:32:08,240 --> 00:32:11,590 kabla ya muda mrefu, kama una tayari mwishoni mwa wiki iliyopita. 654 00:32:11,590 --> 00:32:14,280 Wakati tanzi unaweza vile vile kufanikisha jambo hilo. 655 00:32:14,280 --> 00:32:17,550 Lakini kama unataka kufanya lolote incrementation au kuongezea ya 656 00:32:17,550 --> 00:32:20,230 kutofautiana wa maadili, una kufanya hivyo zaidi kuliko manually 657 00:32:20,230 --> 00:32:22,440 kwa kitanzi kabla inaruhusu. 658 00:32:22,440 --> 00:32:25,310 Na kisha kuna kitanzi do-wakati, ambayo inaruhusu yetu kufanya kitu fulani katika 659 00:32:25,310 --> 00:32:28,460 angalau mara moja kwa wakati kitu mwingine ni kweli. 660 00:32:28,460 --> 00:32:31,550 Na hii ni nzuri hasa kwa mipango au kwa ajili ya michezo ambapo unataka 661 00:32:31,550 --> 00:32:33,810 kuchochea mtumiaji kwa ajili ya kitu angalau mara moja. 662 00:32:33,810 --> 00:32:37,110 Na kisha kama yeye au yeye hana kushirikiana, unaweza kutaka kufanya hivyo 663 00:32:37,110 --> 00:32:38,420 tena na tena. 664 00:32:38,420 --> 00:32:41,270 >> Na vigezo, wakati huo huo, tulikuwa na mistari ya maadili kama hii, ambayo inaweza 665 00:32:41,270 --> 00:32:41,950 kuwa ya mistari miwili. 666 00:32:41,950 --> 00:32:44,830 Unaweza kutangaza int kuitwa counter, semicolon. 667 00:32:44,830 --> 00:32:47,660 Au unaweza tu kutangaza na kufafanua, hivyo kusema. 668 00:32:47,660 --> 00:32:49,950 Kuwapa thamani kwa wakati mmoja. 669 00:32:49,950 --> 00:32:51,890 >> Na kisha mwisho, sisi aliyesema juu ya kazi. 670 00:32:51,890 --> 00:32:54,270 Na hii ilikuwa mfano mzuri katika maana kwamba unaeleza 671 00:32:54,270 --> 00:32:55,840 aina mbili ya kazi. 672 00:32:55,840 --> 00:32:59,030 Moja ni GetString (), ambayo, tena, anapata kamba kutoka mtumiaji. 673 00:32:59,030 --> 00:33:02,040 Lakini GetString () ni aina ya kuvutia, hivyo mbali kama tumekuwa kutumika, 674 00:33:02,040 --> 00:33:05,620 kwa sababu tumekuwa daima kutumika kwa kitu upande wa mkono wa kushoto wa 675 00:33:05,620 --> 00:33:06,600 sawa ishara. 676 00:33:06,600 --> 00:33:09,830 Hiyo ni kusema kwamba GetString () anarudi thamani. 677 00:33:09,830 --> 00:33:11,970 Kuirudisha, bila shaka, kamba. 678 00:33:11,970 --> 00:33:15,130 Halafu kwa upande wa mkono wa kushoto, tuko tu kuokoa kwamba kamba ndani ya 679 00:33:15,130 --> 00:33:16,580 variable kuitwa jina. 680 00:33:16,580 --> 00:33:21,100 >> Hii ni tofauti, katika hisia, kutoka printf sababu printf, angalau katika yetu 681 00:33:21,100 --> 00:33:23,540 matumizi ya hapa, haina kurudi kitu. 682 00:33:23,540 --> 00:33:24,960 Kama kando, haina kurudi kitu. 683 00:33:24,960 --> 00:33:26,380 Sisi tu hawajali ni nini. 684 00:33:26,380 --> 00:33:29,090 Lakini haina na nini aitwaye athari upande. 685 00:33:29,090 --> 00:33:31,840 Na nini ni kwamba athari upande katika kila kesi tumeona hivi sasa? 686 00:33:31,840 --> 00:33:34,720 Je printf kufanya? 687 00:33:34,720 --> 00:33:37,780 Ni kitu prints kwa screen, maonyesho ya maandishi au namba au kitu 688 00:33:37,780 --> 00:33:38,380 kwenye screen. 689 00:33:38,380 --> 00:33:41,170 Na kwamba tu kuchukuliwa athari upande kwa sababu si kweli kuwapatia 690 00:33:41,170 --> 00:33:41,900 ni kuunga kwangu. 691 00:33:41,900 --> 00:33:44,770 Siyo jibu ndani ya sanduku nyeusi kwamba naweza basi 692 00:33:44,770 --> 00:33:46,130 kufikia katika na kunyakua. 693 00:33:46,130 --> 00:33:49,160 Ni tu kufanya hivyo juu yake mwenyewe, kiasi kama Colton ilikuwa imeingia kwenye hii 694 00:33:49,160 --> 00:33:52,560 nyeusi sanduku wiki iliyopita, na yeye kwa namna fulani magically ilikuwa kuchora kwenye bodi 695 00:33:52,560 --> 00:33:54,500 bila mimi kweli kushiriki. 696 00:33:54,500 --> 00:33:55,560 Hiyo itakuwa na athari upande. 697 00:33:55,560 --> 00:33:59,100 Lakini kama mimi kwa kweli alikuwa na kufikia nyuma katika hapa na kusema, oh, hapa ni kamba 698 00:33:59,100 --> 00:34:02,040 kutoka kwa mtumiaji, kwamba ingekuwa kuwa na thamani ya kurudi. 699 00:34:02,040 --> 00:34:05,650 >> Na hivi sasa tumekuwa tu kutumika kazi kwamba watu wengine wameandika. 700 00:34:05,650 --> 00:34:09,219 Lakini tunaweza kweli kufanya haya aina ya mambo sisi wenyewe. 701 00:34:09,219 --> 00:34:12,730 Hivyo mimi nina kwenda katika CS50 appliance tena. 702 00:34:12,730 --> 00:34:16,020 Hebu karibu tab kwamba sisi alikuwa wazi wakati iliyopita. 703 00:34:16,020 --> 00:34:18,530 Na napenda kwenda mbele na kuunda faili mpya. 704 00:34:18,530 --> 00:34:22,400 Na mimi nina kwenda mbele na wito huu positive.c moja. 705 00:34:22,400 --> 00:34:24,770 Hivyo nataka kufanya kitu kwa chanya namba hapa. 706 00:34:24,770 --> 00:34:27,219 Hivyo mimi nina kwenda mbele na kufanya int - 707 00:34:27,219 --> 00:34:28,000 pole - 708 00:34:28,000 --> 00:34:31,840 # Pamoja. 709 00:34:31,840 --> 00:34:34,280 Hebu si kufanya huo kosa kama kabla. 710 00:34:34,280 --> 00:34:40,020 Int kuu (utupu), wazi curly brace, imefungwa curly brace. 711 00:34:40,020 --> 00:34:41,639 >> Na sasa nataka kufanya yafuatayo. 712 00:34:41,639 --> 00:34:44,600 Nataka kuandika mpango kwamba anasisitiza kwamba mtumiaji anatoa 713 00:34:44,600 --> 00:34:46,770 mimi sifuri. 714 00:34:46,770 --> 00:34:50,969 Hivyo hakuna kazi GetPositiveInt katika maktaba CS50. 715 00:34:50,969 --> 00:34:52,610 Kuna tu GetInt (). 716 00:34:52,610 --> 00:34:55,790 Lakini hiyo ni sawa kwa sababu nina constructs na ambayo siwezi kulazimisha 717 00:34:55,790 --> 00:34:59,360 zaidi kidogo kikwazo juu ya thamani hiyo. 718 00:34:59,360 --> 00:35:00,990 Mimi naweza kufanya kitu kama hiki. 719 00:35:00,990 --> 00:35:02,780 >> Hivyo int n - 720 00:35:02,780 --> 00:35:04,920 na kama wewe ni kuandika pamoja, tu kutambua Mimi nina kwenda nyuma na 721 00:35:04,920 --> 00:35:06,430 kubadilisha baadhi ya mambo katika wakati - 722 00:35:06,430 --> 00:35:09,960 hivyo n int sawa GetInt (). 723 00:35:09,960 --> 00:35:11,780 Na kwamba ni kwenda kuweka ndani ya int ya n. 724 00:35:11,780 --> 00:35:13,830 Na napenda kuwa na maelezo zaidi. 725 00:35:13,830 --> 00:35:23,270 Basi mimi kusema kitu kama mimi kudai kwamba wewe nipe sifuri. 726 00:35:23,270 --> 00:35:23,550 >> Wote haki. 727 00:35:23,550 --> 00:35:25,250 Hivyo kidogo tu ya maelekezo. 728 00:35:25,250 --> 00:35:26,270 Na sasa nini naweza kufanya nini? 729 00:35:26,270 --> 00:35:29,840 Naam, mimi tayari kujua kutoka rahisi yangu hali au matawi, kama mimi 730 00:35:29,840 --> 00:35:36,100 alikuwa katika Scratch, mimi naweza kusema kitu kama kama n ni kidogo kuliko au sawa na 731 00:35:36,100 --> 00:35:44,460 sifuri, basi nataka kufanya kitu kama, ambayo si mazuri. 732 00:35:44,460 --> 00:35:45,560 Na kisha mimi naweza kufanya - 733 00:35:45,560 --> 00:35:47,310 OK, lakini mimi kwa kweli wanataka kupata kwamba int. 734 00:35:47,310 --> 00:35:52,020 Ili niweze kwenda juu hapa na mimi naweza aina wa nakala hii na Indent hii. 735 00:35:52,020 --> 00:35:52,570 Na kisha, OK. 736 00:35:52,570 --> 00:35:56,990 Hivyo kama n ni chini ya au sawa na sifuri kufanya hili. 737 00:35:56,990 --> 00:35:58,900 >> Sasa, nini kama mtumiaji haina kushirikiana? 738 00:35:58,900 --> 00:36:01,560 Vizuri, basi mimi naenda kukopa hii hapa. 739 00:36:01,560 --> 00:36:03,130 Na kisha kwenda katika mimi hapa na hapa na hapa. 740 00:36:03,130 --> 00:36:06,420 Hivyo hii ni wazi si ya ufumbuzi, haki? 741 00:36:06,420 --> 00:36:07,810 Kwa sababu hakuna mwisho mbele. 742 00:36:07,810 --> 00:36:13,100 Kama nataka kudai kwamba mtumiaji anatoa mimi integer chanya, siwezi 743 00:36:13,100 --> 00:36:14,150 kweli kupata int. 744 00:36:14,150 --> 00:36:15,620 Siwezi kisha kuangalia kwa int kwamba. 745 00:36:15,620 --> 00:36:18,570 Lakini basi mimi unataka kuangalia tena na kuangalia ni tena na kuangalia tena. 746 00:36:18,570 --> 00:36:21,680 Hivyo ni wazi, nini ni bora kujenga kwa kutumia hapa? 747 00:36:21,680 --> 00:36:22,840 Haki ya wote, hivyo baadhi ya aina ya kitanzi. 748 00:36:22,840 --> 00:36:25,430 >> Hivyo nina kwenda kujikwamua wa karibu yote ya hii. 749 00:36:25,430 --> 00:36:27,320 Na mimi nataka kupata hii int angalau mara moja. 750 00:36:27,320 --> 00:36:28,890 Hivyo nina kwenda kusema kufanya - 751 00:36:28,890 --> 00:36:32,110 na mimi itabidi kurudi wakati katika muda tu - 752 00:36:32,110 --> 00:36:33,050 sasa, kufanya nini? 753 00:36:33,050 --> 00:36:35,860 Mimi naenda kufanya int n anapata GetInt (). 754 00:36:35,860 --> 00:36:36,080 OK. 755 00:36:36,080 --> 00:36:37,250 Hivyo kwamba ni nzuri. 756 00:36:37,250 --> 00:36:39,750 Na sasa jinsi mara nyingi kufanya Nataka kufanya hili? 757 00:36:39,750 --> 00:36:45,770 >> Napenda kuweka ndani printf ya kitanzi hivyo siwezi kudai tena na tena, 758 00:36:45,770 --> 00:36:46,740 kama haja kuwa. 759 00:36:46,740 --> 00:36:49,720 Na nini Nataka hii wakati hali ya kufanya? 760 00:36:49,720 --> 00:36:53,870 Nataka kuendelea kufanya hii wakati ni nini kesi? 761 00:36:53,870 --> 00:36:54,125 Yeah. 762 00:36:54,125 --> 00:36:55,390 N ni chini ya au sawa na sifuri. 763 00:36:55,390 --> 00:36:58,180 Hivyo tayari, tumekuwa kwa kiasi kikubwa kusafishwa kanuni hii up. 764 00:36:58,180 --> 00:37:00,700 Tumekuwa alikopa rahisi sana kujenga - kitanzi do-wakati. 765 00:37:00,700 --> 00:37:04,690 Nimekuwa kuibiwa tu mistari muhimu ya maadili ya kwamba mimi kuanza kuiga na 766 00:37:04,690 --> 00:37:05,960 pasting, ambayo ilikuwa si busara. 767 00:37:05,960 --> 00:37:09,790 Na hivyo sasa mimi naenda kwa kweli kuweka katika hapa na tu kufanya hivyo mara moja. 768 00:37:09,790 --> 00:37:12,990 >> Na sasa nini nataka kufanya katika mwisho wa mpango huu? 769 00:37:12,990 --> 00:37:16,810 Mimi itabidi tu kusema kitu rahisi kama, shukrani kwa ajili ya - na 770 00:37:16,810 --> 00:37:18,980 Mimi itabidi kufanya% i kwa int - 771 00:37:18,980 --> 00:37:23,270 backslash n, comma, na kisha kuziba katika n, semicolon. 772 00:37:23,270 --> 00:37:23,910 >> Wote haki. 773 00:37:23,910 --> 00:37:27,290 Basi hebu angalia nini kinatokea sasa wakati mimi kuendesha mpango huu. 774 00:37:27,290 --> 00:37:30,600 Mimi nina kwenda mbele na kufanya kufanya chanya. 775 00:37:30,600 --> 00:37:30,880 Damn. 776 00:37:30,880 --> 00:37:31,600 makosa wachache. 777 00:37:31,600 --> 00:37:32,960 Hivyo basi mimi kitabu nyuma hadi kwanza. 778 00:37:32,960 --> 00:37:34,020 Kufanya kazi kwa njia yao nyuma. 779 00:37:34,020 --> 00:37:37,000 Kazi kwa njia yao kutoka juu kwenda chini wasije kuteleza na tu 780 00:37:37,000 --> 00:37:38,630 jambo moja kuwa na makosa. 781 00:37:38,630 --> 00:37:42,532 Kinachojitokeza tamko la kazi GetInt (). 782 00:37:42,532 --> 00:37:43,020 Yeah. 783 00:37:43,020 --> 00:37:44,420 Hivyo ilikuwa si ya kutosha. 784 00:37:44,420 --> 00:37:46,760 Mimi aina ya alifanya kosa sawa lakini tofauti kidogo wakati huu. 785 00:37:46,760 --> 00:37:51,940 Nahitaji si tu ni pamoja na stdio.h lakini pia cs50.h, ambayo ni pamoja 786 00:37:51,940 --> 00:37:56,770 kinachojulikana maazimio ya kupata int, ambayo kufundisha appliance, au kufundisha 787 00:37:56,770 --> 00:37:58,760 C nini GetInt () ni. 788 00:37:58,760 --> 00:37:59,550 >> Hivyo basi mimi resave. 789 00:37:59,550 --> 00:38:02,040 Mimi nina kwenda kupuuza makosa mengine kwa sababu mimi naenda matumaini kwamba wao ni 790 00:38:02,040 --> 00:38:05,210 namna fulani kuhusiana na makosa Mimi tayari fasta. 791 00:38:05,210 --> 00:38:08,710 Hivyo basi mimi kwenda mbele na recompile na kufanya chanya, kuingia. 792 00:38:08,710 --> 00:38:09,020 Damn. 793 00:38:09,020 --> 00:38:09,985 Tatu makosa, bado. 794 00:38:09,985 --> 00:38:12,650 Hebu kitabu juu na ya kwanza. 795 00:38:12,650 --> 00:38:14,320 Isiyotumika kutofautiana n. 796 00:38:14,320 --> 00:38:15,850 Tumekuwa si kuonekana hii kabla. 797 00:38:15,850 --> 00:38:17,200 Na hii pia, ni kidogo fumbo. 798 00:38:17,200 --> 00:38:18,850 Hii ni pato la mkusanyaji. 799 00:38:18,850 --> 00:38:23,610 Na nini kuwa mstari yalionyesha huko - positive.c :9:13 - 800 00:38:23,610 --> 00:38:28,960 ni kusema, ni kusema juu ya mstari wa tisa ya positive.c, katika tabia ya 13, 801 00:38:28,960 --> 00:38:31,510 Safu ya 13, alifanya kosa hilo. 802 00:38:31,510 --> 00:38:34,230 >> Na hasa, ni kuwaambia mimi isiyotumika kutofautiana n. 803 00:38:34,230 --> 00:38:35,790 Basi hebu angalia - 804 00:38:35,790 --> 00:38:37,150 line tisa. 805 00:38:37,150 --> 00:38:40,430 Mimi nina kutumia n kwa maana ya kwamba Mimi kutoa ni thamani. 806 00:38:40,430 --> 00:38:44,200 Lakini nini mkusanyaji hapendi ni kwamba mimi si inaonekana kutumia. 807 00:38:44,200 --> 00:38:45,560 Lakini kusubiri dakika, mimi ni kwa kutumia hiyo. 808 00:38:45,560 --> 00:38:48,170 Katika mstari wa 11, mimi nina kutumia hapa. 809 00:38:48,170 --> 00:38:52,430 Lakini kama mimi kitabu chini zaidi saa positive.c :11 - 810 00:38:52,430 --> 00:38:56,230 hivyo katika mstari wa 11, tabia ya 12, mkusanyaji ni akiniambia, matumizi ya 811 00:38:56,230 --> 00:38:58,670 Undeclared kitambulisho n. 812 00:38:58,670 --> 00:39:02,760 >> Hivyo Undeclared njia nina si maalum kama 813 00:39:02,760 --> 00:39:04,970 kutofautiana na aina ya data. 814 00:39:04,970 --> 00:39:05,500 Lakini kusubiri dakika. 815 00:39:05,500 --> 00:39:09,150 Mimi hasa kwamba katika mstari tisa. 816 00:39:09,150 --> 00:39:11,100 Hivyo mtu ni kweli kuchanganyikiwa hapa. 817 00:39:11,100 --> 00:39:14,900 Ni ama mimi au mkusanyaji kwa sababu katika mstari wa tisa, tena, mimi nina kutangaza 818 00:39:14,900 --> 00:39:18,650 int n, na mimi nina kumshirikisha ni kurudi thamani ya GetInt (). 819 00:39:18,650 --> 00:39:22,930 Basi mimi nina kutumia kwamba n kutofautiana katika mstari 11 na kuangalia kama thamani yake ni chini 820 00:39:22,930 --> 00:39:24,050 zaidi au sawa na sifuri. 821 00:39:24,050 --> 00:39:27,430 Lakini hii inaonekana ni mbaya na kuvunjwa kwa nini? 822 00:39:27,430 --> 00:39:30,630 823 00:39:30,630 --> 00:39:32,490 Kusema tena? 824 00:39:32,490 --> 00:39:35,690 >> Ah, mimi na kutangaza n kabla ya kuingia kitanzi. 825 00:39:35,690 --> 00:39:36,370 Lakini kwa nini? 826 00:39:36,370 --> 00:39:39,830 I mean, sisi tu mapendekezo kidogo iliyopita kwamba ni faini ya kutangaza vigezo 827 00:39:39,830 --> 00:39:43,600 wote kwenye mstari mmoja na kisha wao hawawajui baadhi ya thamani. 828 00:39:43,600 --> 00:39:46,790 variable kimataifa - hebu kuja nyuma na kwamba wazo katika muda tu. 829 00:39:46,790 --> 00:39:48,690 Kwa nini unataka mimi kuweka ni nje ya kitanzi? 830 00:39:48,690 --> 00:40:03,170 831 00:40:03,170 --> 00:40:03,830 Ni. 832 00:40:03,830 --> 00:40:06,780 Hasa. 833 00:40:06,780 --> 00:40:09,610 >> Hivyo, angalau, kwa kiasi fulani counterintuitive, basi mimi muhtasari. 834 00:40:09,610 --> 00:40:13,510 Wakati wewe kutangaza n ndani ya kuzuia do pale - 835 00:40:13,510 --> 00:40:16,320 hasa ndani ya wale braces curly - 836 00:40:16,320 --> 00:40:19,210 kwamba n kutofautiana ana nini kuitwa wigo - 837 00:40:19,210 --> 00:40:23,210 lisilohusiana na mfumo wa bao yetu katika shaka - lakini ina wigo kwamba 838 00:40:23,210 --> 00:40:25,190 mdogo kwa braces wale curly. 839 00:40:25,190 --> 00:40:28,460 Kwa maneno mengine, kwa kawaida kama wewe kutangaza kutofautiana ndani ya seti ya 840 00:40:28,460 --> 00:40:33,370 curly braces, kutofautiana unaendelea tu ndani ya wale braces curly. 841 00:40:33,370 --> 00:40:37,320 Hivyo kwa kuwa mantiki peke yake, hata kama Nimekuwa alitangaza n katika mstari tisa, ni 842 00:40:37,320 --> 00:40:41,910 kimsingi kutoweka kutoka upeo, kutoweka kutoka kumbukumbu, ili kuzungumza, 843 00:40:41,910 --> 00:40:43,370 kwa wakati mimi hit line 11. 844 00:40:43,370 --> 00:40:47,370 Sababu line 11, kwa bahati mbaya, ni nje ya wale braces curly. 845 00:40:47,370 --> 00:40:51,540 >> Hivyo mimi kwa bahati mbaya hawezi kurekebisha hili kwa kwenda nyuma kwa nini mimi alifanya hivyo kabla. 846 00:40:51,540 --> 00:40:53,370 Unaweza kwa mara ya kwanza kufanya hivyo. 847 00:40:53,370 --> 00:40:56,370 Lakini ni nini sasa si kufanya cyclically? 848 00:40:56,370 --> 00:40:58,260 Wewe ni wazi si kupata int cyclically. 849 00:40:58,260 --> 00:41:01,320 Ili tuweze kuondoka GetInt (), na sisi tuache GetInt () ndani ya 850 00:41:01,320 --> 00:41:04,420 kitanzi kwa sababu hiyo ni nini tunataka bemba mtumiaji kwa ajili ya tena na tena. 851 00:41:04,420 --> 00:41:08,660 Lakini haina inatosha kwenda hadi mstari, kusema, sita. 852 00:41:08,660 --> 00:41:10,150 Int n, semicolon. 853 00:41:10,150 --> 00:41:12,990 Je, si kuwapa thamani lakini, kwa sababu huna haja tu bado. 854 00:41:12,990 --> 00:41:16,220 >> Lakini sasa hapa chini, ilani - hii itakuwa kosa rahisi sana. 855 00:41:16,220 --> 00:41:19,440 Sitaki kwa kivuli uliopita yangu tamko la n. 856 00:41:19,440 --> 00:41:22,830 Nataka kutumia n kwamba kweli lipo. 857 00:41:22,830 --> 00:41:25,780 Na hivyo sasa katika mstari wa 10, Mimi hawawajui n thamani. 858 00:41:25,780 --> 00:41:28,580 Lakini katika mstari sita, mimi kutangaza n. 859 00:41:28,580 --> 00:41:32,940 Na hivyo wanaweza au mimi naweza si kutumia katika mstari wa 12 sasa? 860 00:41:32,940 --> 00:41:37,120 Siwezi kwa sababu kati ya ambayo curly braces ni n alitangaza sasa? 861 00:41:37,120 --> 00:41:38,770 moja hadi hapa kwenye mstari tano. 862 00:41:38,770 --> 00:41:40,330 Mmoja hapa kwenye mstari 14. 863 00:41:40,330 --> 00:41:49,770 Hivyo kama mimi sasa zoom nje, ila faili hii, kwenda nyuma katika na kukimbia kufanya chanya, 864 00:41:49,770 --> 00:41:50,820 ulioandaliwa wakati huu. 865 00:41:50,820 --> 00:41:51,940 Hivyo kwamba ni tayari maendeleo. 866 00:41:51,940 --> 00:41:53,640 Kufyeka. . / Chanya, kuingia. 867 00:41:53,640 --> 00:41:56,060 >> Mimi kudai kwamba wewe nipe sifuri. 868 00:41:56,060 --> 00:41:57,750 Hasi 1. 869 00:41:57,750 --> 00:41:59,020 Hasi 2. 870 00:41:59,020 --> 00:42:00,680 Hasi 3. 871 00:42:00,680 --> 00:42:01,760 Sifuri. 872 00:42:01,760 --> 00:42:03,000 Moja. 873 00:42:03,000 --> 00:42:05,130 Na shukrani kwa ajili ya mtu ni nini sasa kuchapishwa. 874 00:42:05,130 --> 00:42:07,400 >> Hebu jaribu kitu kingine, nje ya udadisi. 875 00:42:07,400 --> 00:42:09,600 Mimi kuambiwa pembejeo integer. 876 00:42:09,600 --> 00:42:12,870 Lakini nini kama mimi badala aina katika kondoo? 877 00:42:12,870 --> 00:42:14,460 Hivyo sasa kuona haraka tofauti - 878 00:42:14,460 --> 00:42:15,350 tena. 879 00:42:15,350 --> 00:42:17,670 Lakini hakuna mahali popote katika kanuni yangu Je, mimi kuandika tena. 880 00:42:17,670 --> 00:42:22,320 Hivyo ambapo, labda, ni hii jaribu tena haraka kuja kutoka, unaweza kusema? 881 00:42:22,320 --> 00:42:23,540 Yeah, kutoka GetInt () yenyewe. 882 00:42:23,540 --> 00:42:26,650 Hivyo moja ya mambo wafanyakazi CS50 gani kwa ajili yenu, angalau katika hizi chache kwanza 883 00:42:26,650 --> 00:42:30,400 wiki, ni sisi wameandika baadhi ya kiasi ya makosa ya kuangalia kuhakikisha kwamba kama 884 00:42:30,400 --> 00:42:34,260 wewe piga GetInt (), wewe angalau kupata nyuma int kutoka kwa mtumiaji. 885 00:42:34,260 --> 00:42:35,460 Huwezi kupata kamba. 886 00:42:35,460 --> 00:42:36,440 Huwezi kupata Char. 887 00:42:36,440 --> 00:42:39,660 Huwezi kupata kitu mwingine kabisa. 888 00:42:39,660 --> 00:42:40,510 Utapata int. 889 00:42:40,510 --> 00:42:41,890 >> Sasa, wanaweza kuwa chanya. 890 00:42:41,890 --> 00:42:42,770 Wanaweza kuwa hasi. 891 00:42:42,770 --> 00:42:44,550 Sisi kufanya dhamana hakuna kuzunguka kwamba. 892 00:42:44,550 --> 00:42:48,960 Lakini sisi bemba mtumiaji kujaribu tena, Jaribu tena, jaribu tena mpaka yeye au yeye kweli 893 00:42:48,960 --> 00:42:49,810 inashirikiana. 894 00:42:49,810 --> 00:42:53,085 Vile vile, kama mimi kufanya 1.23, kwamba si int. 895 00:42:53,085 --> 00:42:58,400 Lakini kama mimi aina katika, kusema, 50, kwamba anitiaye thamani ya kwamba nilitaka. 896 00:42:58,400 --> 00:42:59,050 >> Wote haki. 897 00:42:59,050 --> 00:43:01,380 Hivyo si mbaya. 898 00:43:01,380 --> 00:43:04,780 Maswali yoyote juu ya nini tumekuwa tu kufanyika? 899 00:43:04,780 --> 00:43:07,930 takeaway muhimu, kwa kuwa wazi, si sana kitanzi, ambayo tumeona 900 00:43:07,930 --> 00:43:10,880 kabla hata kama sisi si kweli kutumika, lakini suala la wigo, ambapo 901 00:43:10,880 --> 00:43:17,045 vigezo inaweza tu inaweza tu kutumika ndani ya baadhi ya wigo maalum. 902 00:43:17,045 --> 00:43:19,830 >> Haki ya yote, napenda kushughulikia maoni uliyofanya awali, kwamba wa 903 00:43:19,830 --> 00:43:20,860 kimataifa kutofautiana. 904 00:43:20,860 --> 00:43:24,880 Kama kando, zinageuka kuwa mwingine ufumbuzi wa tatizo hili, lakini 905 00:43:24,880 --> 00:43:28,880 kawaida ufumbuzi sahihi au ufumbuzi hafifu iliyoundwa, ni 906 00:43:28,880 --> 00:43:31,670 kutangaza kutofautiana yako kama nini kuitwa variable kimataifa. 907 00:43:31,670 --> 00:43:34,610 Sasa mimi nina aina ya kukiuka tafsiri yangu ya wigo kwa sababu kuna 908 00:43:34,610 --> 00:43:37,680 hakuna braces curly saa ya juu sana na chini sana ya faili. 909 00:43:37,680 --> 00:43:40,190 Lakini maana ya kwamba ni kwamba sasa katika mstari nne, 910 00:43:40,190 --> 00:43:41,710 n ni variable kimataifa. 911 00:43:41,710 --> 00:43:44,460 Na kama jina ina maana, ni tu kupatikana kila mahali. 912 00:43:44,460 --> 00:43:45,790 >> Mwanzo kwa kweli ina hizi. 913 00:43:45,790 --> 00:43:48,650 Kama kutumika kutofautiana, unaweza kukumbuka wewe alikuwa na kuchagua kama ni kwa ajili ya 914 00:43:48,650 --> 00:43:50,780 hii sprite au kwa ajili ya wote sprites. 915 00:43:50,780 --> 00:43:54,270 Naam, kila sprites ni wazi njia ya kusema kimataifa. 916 00:43:54,270 --> 00:43:55,520 Yeah? 917 00:43:55,520 --> 00:44:09,690 918 00:44:09,690 --> 00:44:10,990 Ah, mzuri swali. 919 00:44:10,990 --> 00:44:14,310 >> Hivyo kukumbuka kwamba katika toleo sana kwanza ya maadili wangu, wakati mimi kimakosa 920 00:44:14,310 --> 00:44:17,700 alitangaza na inavyoelezwa n katika mstari tisa - 921 00:44:17,700 --> 00:44:19,980 Mimi amekiri ni kama variable na mimi akampa thamani na 922 00:44:19,980 --> 00:44:21,160 operator zoezi - 923 00:44:21,160 --> 00:44:22,520 hii alinipa makosa mawili. 924 00:44:22,520 --> 00:44:26,560 Moja, ukweli kwamba n ilikuwa si kutumika, na wawili, kuwa katika mstari wa 11 925 00:44:26,560 --> 00:44:27,770 ni tu si alitangaza. 926 00:44:27,770 --> 00:44:31,120 Hivyo moja ya kwanza mimi si anuani ya wakati huo. 927 00:44:31,120 --> 00:44:35,130 Ni kosa si madhubuti ya kutangaza kutofautiana lakini si matumizi yake. 928 00:44:35,130 --> 00:44:38,540 Lakini moja ya mambo tumefanya katika Appliance CS50, kwa makusudi, 929 00:44:38,540 --> 00:44:43,340 pedagogically, ni tumekuwa cranked up matarajio ya mkusanyaji kufanya 930 00:44:43,340 --> 00:44:46,970 uhakika kwamba wewe ni kufanya mambo si tu usahihi lakini kwa kweli kwa usahihi. 931 00:44:46,970 --> 00:44:51,520 >> Kwa sababu kama wewe ni kutangaza variable kama n na kamwe kutumia, au kutumia 932 00:44:51,520 --> 00:44:53,700 usahihi, basi kile ni kufanya ni huko? 933 00:44:53,700 --> 00:44:55,650 Ni kweli mtumishi hakuna kusudi. 934 00:44:55,650 --> 00:44:58,980 Na ni rahisi sana baada ya muda, kama wewe wala configure kompyuta yako mwenyewe katika 935 00:44:58,980 --> 00:45:01,960 njia hii, ili tu kuwa na kanuni ambayo ina kidogo mabaki hapa, mabaki huko. 936 00:45:01,960 --> 00:45:04,390 Na kisha baada ya miezi wewe kuangalia nyuma na wewe ni kama, kwa nini ni line hii ya 937 00:45:04,390 --> 00:45:05,060 kanuni ya huko? 938 00:45:05,060 --> 00:45:07,940 Na kama hakuna sababu nzuri, ni haina faida wewe au wenzako 939 00:45:07,940 --> 00:45:10,650 chini ya barabara kuwa na mashaka juu ya basi. 940 00:45:10,650 --> 00:45:12,540 >> Kama kando, ambapo ni kwamba kuja kutoka? 941 00:45:12,540 --> 00:45:16,410 Naam, kukumbuka kwamba kila wakati sisi kukusanya mpango, kila ya mambo haya ni 942 00:45:16,410 --> 00:45:17,380 yanachapishwa. 943 00:45:17,380 --> 00:45:18,350 Hivyo tutaweza kuja nyuma hii. 944 00:45:18,350 --> 00:45:22,230 Lakini tena, kufanya ni shirika kwamba automates mchakato wa kuandaa na 945 00:45:22,230 --> 00:45:24,830 mbio mkusanyaji halisi kuitwa Clang. 946 00:45:24,830 --> 00:45:27,650 Jambo hili, tutaweza hatimaye kuona, ana kufanya na debugging na maalum 947 00:45:27,650 --> 00:45:29,060 programu inayoitwa debugger. 948 00:45:29,060 --> 00:45:32,150 Hii ina nini na optimizing kanuni - zaidi juu ya kwamba katika siku zijazo. 949 00:45:32,150 --> 00:45:33,620 Std = C99 - 950 00:45:33,620 --> 00:45:37,870 hii ina maana kutumia toleo la 1999 ya C C. imekuwa karibu hata zaidi ya 951 00:45:37,870 --> 00:45:40,830 kwamba, lakini alifanya baadhi nice mabadiliko 10 pamoja na miaka iliyopita. 952 00:45:40,830 --> 00:45:42,690 >> Na hapa ndio husika. 953 00:45:42,690 --> 00:45:45,880 Tunasema kufanya chochote ambacho awali ingekuwa onyo 954 00:45:45,880 --> 00:45:48,560 kosa kuzuia mwanafunzi kutoka kuandaa. 955 00:45:48,560 --> 00:45:51,400 Na ukuta njia kufanya hivyo kwa nzima rundo la vitu, si 956 00:45:51,400 --> 00:45:53,060 tu kuhusiana na vigezo. 957 00:45:53,060 --> 00:45:54,700 Na kisha basi mimi kitabu kwa mwisho wa mstari huu. 958 00:45:54,700 --> 00:45:56,430 Na hii, pia, tutaweza hatimaye kuja nyuma. 959 00:45:56,430 --> 00:45:59,040 Hii ni wazi jina la faili Mimi naandika. 960 00:45:59,040 --> 00:46:02,160 Hii anakumbuka jina la faili Mimi outputting kama jina 961 00:46:02,160 --> 00:46:04,070 ya mpango wangu runnable. 962 00:46:04,070 --> 00:46:08,970 Hii lcs50-tu ina maana kutumia CS50 maktaba, na zeros yoyote na wale ambao 963 00:46:08,970 --> 00:46:12,390 wafanyakazi aliandika na ulioandaliwa mapema mwaka huu, kuunganisha 964 00:46:12,390 --> 00:46:13,490 yao katika mpango wangu. 965 00:46:13,490 --> 00:46:16,130 >> Na mtu yeyote kujua nini-LM ni? 966 00:46:16,130 --> 00:46:18,150 Ni maktaba math, ambayo ni pale tu hata kama wewe ni 967 00:46:18,150 --> 00:46:19,320 si kufanya lolote math. 968 00:46:19,320 --> 00:46:22,620 Ni tu moja kwa moja zinazotolewa kwetu na kufanya. 969 00:46:22,620 --> 00:46:26,540 >> Vizuri, basi mimi kufanya moja nyingine mfano hapa kwa kufungua faili mpya. 970 00:46:26,540 --> 00:46:30,560 Na napenda kuokoa hii moja kama string.c. 971 00:46:30,560 --> 00:46:37,980 Ni zinageuka kuwa kama sisi majadiliano juu ya data aina ya leo, kuna hata zaidi 972 00:46:37,980 --> 00:46:40,630 kinachoendelea chini ya Hood kuliko tumeona hivi sasa. 973 00:46:40,630 --> 00:46:42,290 Hivyo basi mimi haraka kufanya mpango wa haraka. 974 00:46:42,290 --> 00:46:44,510 Pamoja stdio.h. 975 00:46:44,510 --> 00:46:45,730 Na mimi itabidi kuokoa. 976 00:46:45,730 --> 00:46:48,110 Na unajua, basi mimi si kufanya huo makosa tena na tena. 977 00:46:48,110 --> 00:46:50,540 Pamoja cs50.h. 978 00:46:50,540 --> 00:46:54,870 Na napenda kwenda mbele sasa na kufanya kuu int (batili). 979 00:46:54,870 --> 00:46:58,790 >> Na sasa mimi tu wanataka kufanya mpango kwamba anafanya hii - kutangaza kamba 980 00:46:58,790 --> 00:47:03,610 kuitwa s na kupata kamba kutoka kwa mtumiaji. 981 00:47:03,610 --> 00:47:05,820 Na napenda kufanya kidogo maelekezo hapa - 982 00:47:05,820 --> 00:47:09,960 tafadhali nipe kamba - hivyo mtumiaji anajua nini cha kufanya. 983 00:47:09,960 --> 00:47:13,190 Na kisha chini hapa chini hii, Nataka kufanya yafuatayo - 984 00:47:13,190 --> 00:47:16,060 kwa int i anapata sifuri. 985 00:47:16,060 --> 00:47:18,580 Tena, kompyuta wanasayansi kawaida kuanza kuhesabu saa sifuri, lakini tunaweza 986 00:47:18,580 --> 00:47:20,340 kufanya kuwa moja kama kweli sisi alitaka. 987 00:47:20,340 --> 00:47:27,240 Sasa mimi nina kwenda kufanya i ni chini kuliko urefu wa kamba ya s. 988 00:47:27,240 --> 00:47:28,430 Hivyo strlen - 989 00:47:28,430 --> 00:47:29,510 S-T-A-L-E-N - 990 00:47:29,510 --> 00:47:31,650 tena, ni mafupi kwa sababu ni rahisi na aina, hata kama ni 991 00:47:31,650 --> 00:47:32,590 kidogo fumbo. 992 00:47:32,590 --> 00:47:35,290 >> Hii ni kazi tumekuwa si kutumika kabla lakini literally gani kwamba - 993 00:47:35,290 --> 00:47:37,810 kurudi kwangu idadi hiyo inawakilisha urefu wa kamba 994 00:47:37,810 --> 00:47:38,690 kwamba mtumiaji typed. 995 00:47:38,690 --> 00:47:41,740 Kama wao typed katika hello, ingekuwa kurudi tano kwa sababu kuna tano 996 00:47:41,740 --> 00:47:42,890 barua katika hello. 997 00:47:42,890 --> 00:47:45,390 Basi, juu ya kila iteration ya hii kitanzi, i pamoja plus. 998 00:47:45,390 --> 00:47:49,170 Hivyo tena, kiwango kujenga hata kama wewe si kabisa pia starehe au 999 00:47:49,170 --> 00:47:50,420 ukoo na ni bado. 1000 00:47:50,420 --> 00:47:53,220 >> Lakini sasa juu ya kila iteration ya kitanzi hii, taarifa ya nini mimi nina kwenda kufanya. 1001 00:47:53,220 --> 00:47:56,690 Nataka kwenda mbele na magazeti nje tabia moja - 1002 00:47:56,690 --> 00:47:59,940 hivyo% c backslash n juu ya mstari mpya. 1003 00:47:59,940 --> 00:48:00,990 Na kisha, unajua nini nataka kufanya? 1004 00:48:00,990 --> 00:48:05,090 Chochote neno ni kwamba mtumiaji aina katika, kama hello, nataka magazeti 1005 00:48:05,090 --> 00:48:09,530 H-E-L-L-O, tabia moja kwa kila mstari. 1006 00:48:09,530 --> 00:48:13,080 Kwa maneno mengine, nataka kupata saa mtu binafsi wahusika katika kamba, 1007 00:48:13,080 --> 00:48:16,770 ambapo hadi sasa ina kamba tu imekuwa mlolongo wa wahusika. 1008 00:48:16,770 --> 00:48:21,690 >> Na zinageuka siwezi kufanya s, bracket, i, karibu bracket, karibu 1009 00:48:21,690 --> 00:48:23,580 mabano, semicolon. 1010 00:48:23,580 --> 00:48:25,640 Na mimi kufanya jambo moja zaidi. 1011 00:48:25,640 --> 00:48:30,570 Ni katika faili iitwayo string.h strlen kwamba ni kutangazwa. 1012 00:48:30,570 --> 00:48:33,190 Hivyo kama nataka kutumia kwamba kazi, Mimi haja ya kuwaambia mkusanyaji, 1013 00:48:33,190 --> 00:48:34,450 wanatarajia kuitumia. 1014 00:48:34,450 --> 00:48:37,040 Sasa napenda kwenda mbele na kufanya programu inayoitwa kamba. 1015 00:48:37,040 --> 00:48:39,150 Dot, kufyeka, kamba. 1016 00:48:39,150 --> 00:48:40,130 >> Tafadhali nipe kamba. 1017 00:48:40,130 --> 00:48:40,900 Mimi itabidi kwenda mbele na aina yake. 1018 00:48:40,900 --> 00:48:43,040 Hello, katika mechi zote, kuingia. 1019 00:48:43,040 --> 00:48:47,390 Na sasa nimepata taarifa zilizochapishwa hii tabia moja baada ya nyingine. 1020 00:48:47,390 --> 00:48:51,450 Hivyo undani mpya hapa ni kwamba kamba, mwisho wa siku, unaweza kuwa 1021 00:48:51,450 --> 00:48:54,810 kupatikana kwa njia ya mtu binafsi yake wahusika kwa kuanzisha mraba 1022 00:48:54,810 --> 00:48:55,840 bracket nukuu. 1023 00:48:55,840 --> 00:48:59,090 Na kwamba kwa sababu kamba chini ya Hood ni kweli mlolongo wa 1024 00:48:59,090 --> 00:48:59,810 wahusika. 1025 00:48:59,810 --> 00:49:02,010 Lakini nini kuhusu wao ni nadhifu katika RAM ya kompyuta yako - 1026 00:49:02,010 --> 00:49:05,300 Mac, PC, chochote ni - wao ni halisi nyuma kwa nyuma kwa nyuma - 1027 00:49:05,300 --> 00:49:06,225 H-E-L-L-O - 1028 00:49:06,225 --> 00:49:09,920 saa binafsi, karibu ka katika kumbukumbu. 1029 00:49:09,920 --> 00:49:13,210 >> Hivyo kama unataka kupata saa vile nane Byte, ambayo katika kitanzi hii itakuwa 1030 00:49:13,210 --> 00:49:16,900 bracket sifuri, bracket moja, bracket mbili, bracket tatu, bracket nne - 1031 00:49:16,900 --> 00:49:18,890 hiyo ni sifuri indexed hadi tano - 1032 00:49:18,890 --> 00:49:23,330 kwamba magazeti nje ya H-E-L-L-O kwenye mstari wake mwenyewe. 1033 00:49:23,330 --> 00:49:26,320 >> Sasa, kama kichocheo, napenda kuonyesha aina ya mambo itabidi hatimaye kuwa 1034 00:49:26,320 --> 00:49:31,950 uwezo wa kuelewa, angalau kwa karibu baadhi ya kuangalia. 1035 00:49:31,950 --> 00:49:35,610 Kwa moja, nini sisi ni pamoja na katika leo mifano, kama Ningependa, ni kweli 1036 00:49:35,610 --> 00:49:38,300 moja ya jailbreaks sana kwanza kwa iPhone. 1037 00:49:38,300 --> 00:49:40,800 Jailbreaking ina maana ngozi simu hivyo unaweza kweli kutumia kwenye 1038 00:49:40,800 --> 00:49:43,380 mbalimbali carrier au kufunga programu yako mwenyewe. 1039 00:49:43,380 --> 00:49:45,660 Na wewe utakuwa taarifa hii inaonekana kabisa fumbo, uwezekano mkubwa. 1040 00:49:45,660 --> 00:49:46,520 Lakini tuangalie hii. 1041 00:49:46,520 --> 00:49:50,420 iPhone ilikuwa inaonekana kupasuka na kwa kitanzi, hali kama, mwingine 1042 00:49:50,420 --> 00:49:52,580 hali, rundo la kazi tumekuwa si kuonekana. 1043 00:49:52,580 --> 00:49:54,230 >> Na tena, utakuwa si wakati mtazamo wa kwanza pengine 1044 00:49:54,230 --> 00:49:55,620 kuelewa jinsi hii ni kazi. 1045 00:49:55,620 --> 00:49:58,940 Lakini kila kitu kwamba sisi aina ya kuchukua kwa nafasi katika maisha yetu ya kisasa 1046 00:49:58,940 --> 00:50:02,040 kweli huelekea kupunguza hata kwa baadhi ya misingi hizi tumekuwa 1047 00:50:02,040 --> 00:50:02,820 kuangalia. 1048 00:50:02,820 --> 00:50:06,680 Hebu kwenda mbele na kufungua moja nyingine ya mpango, holloway.c. 1049 00:50:06,680 --> 00:50:08,970 Hivyo hii, pia, ni jambo lazima si kweli kujua. 1050 00:50:08,970 --> 00:50:12,440 Hata hakuna hata mmoja wa wafanyakazi au ningeweza pengine takwimu hii nje kwa kuangalia 1051 00:50:12,440 --> 00:50:15,450 ni kwa sababu hii ilikuwa kanuni ya mtu kwamba iliwasilishwa kwa nini 1052 00:50:15,450 --> 00:50:19,630 kihistoria inayojulikana kama C obfuscated mashindano, ambapo wewe kuandika mpango 1053 00:50:19,630 --> 00:50:24,670 kwamba inaandaa na anaendesha lakini ni hivyo damn cryptic hakuna binadamu wanaweza kuelewa kile 1054 00:50:24,670 --> 00:50:27,530 ni kwenda kufanya mpaka wao kweli kukimbia. 1055 00:50:27,530 --> 00:50:29,940 >> Hivyo kweli, kama ukiangalia katika hii kanuni, naona kubadili. 1056 00:50:29,940 --> 00:50:30,870 Mimi naona kuu. 1057 00:50:30,870 --> 00:50:33,800 Mimi naona haya mabano mraba ikimaanisha baadhi ya aina ya safu. 1058 00:50:33,800 --> 00:50:35,970 Je, mtu yeyote unataka nadhani nini mpango huu kwa kweli 1059 00:50:35,970 --> 00:50:37,220 gani kama mimi kukimbia Holloway? 1060 00:50:37,220 --> 00:50:39,940 1061 00:50:39,940 --> 00:50:40,750 Ndiyo. 1062 00:50:40,750 --> 00:50:43,050 OK. 1063 00:50:43,050 --> 00:50:44,690 Vizuri. 1064 00:50:44,690 --> 00:50:48,090 Hivyo tu wafanyakazi na siwezi kufikiri nje ya mambo haya kufanya. 1065 00:50:48,090 --> 00:50:51,670 >> Na sasa Mwisho, napenda kwenda mbele na kufungua nyingine moja mpango. 1066 00:50:51,670 --> 00:50:53,440 Hii moja - 1067 00:50:53,440 --> 00:50:55,550 tena, tutaweza kufanya kanuni chanzo inapatikana online - hii moja tu 1068 00:50:55,550 --> 00:50:57,480 aina ya pretty kuangalia. 1069 00:50:57,480 --> 00:50:59,750 Wote walifanya ni hit nafasi bar kidogo kabisa. 1070 00:50:59,750 --> 00:51:01,320 Lakini hii ni halisi ya kanuni. 1071 00:51:01,320 --> 00:51:04,790 Hivyo kama unadhani kwamba pretty, kama sisi kweli kuendesha hii ifikapo haraka, 1072 00:51:04,790 --> 00:51:08,970 hatimaye utaona jinsi sisi ili kufanya mambo kama haya. 1073 00:51:08,970 --> 00:51:14,008 >> Hivyo tutaweza kuondoka wewe kumbuka kwamba na kuona juu ya Jumatano. 1074 00:51:14,008 --> 00:51:18,440 >> [Halisi kucheza] 1075 00:51:18,440 --> 00:51:23,380 >> SPIKA 2: Katika CS50 ijayo, TFS hatua ya uasi. 1076 00:51:23,380 --> 00:51:24,112 >> SPIKA 3: Kuna yeye ni. 1077 00:51:24,112 --> 00:51:25,362 Kupata naye! 1078 00:51:25,362 --> 00:51:29,912 1079 00:51:29,912 --> 00:51:32,074 >> [Halisi kucheza]