1 00:00:00,000 --> 00:00:11,960 2 00:00:11,960 --> 00:00:13,750 >> Rob BOWDEN: Hi, mimi nina Rob. 3 00:00:13,750 --> 00:00:17,360 Na wakati katika Rome, basi mpango wa kama Waroma wanavyofanya. 4 00:00:17,360 --> 00:00:22,280 Kwa hiyo, jambo la kwanza tunahitaji kufanya ni kuangalia kuhakikisha kweli user aliingia 5 00:00:22,280 --> 00:00:26,670 idadi hiyo tunataka mzunguko wa kila tabia kwa katika mstari amri. 6 00:00:26,670 --> 00:00:27,740 >> Hivyo, sisi kuangalia. 7 00:00:27,740 --> 00:00:30,180 Ni argc sawa na 2? 8 00:00:30,180 --> 00:00:34,190 Kama siyo, hiyo ina maana user ama hakuingia idadi katika 9 00:00:34,190 --> 00:00:37,770 mstari amri au waliingia wengi mno mambo katika mstari amri, ambayo 10 00:00:37,770 --> 00:00:40,560 kesi hatujui nini cha kufanya na wengine wa mambo. 11 00:00:40,560 --> 00:00:45,750 Hivyo, kwa muda mrefu kama argc mara mbili, tunaweza kuendelea na wengine wa mpango. 12 00:00:45,750 --> 00:00:49,610 >> Sasa, kumbuka kwamba argv 1 ni daima kamba. 13 00:00:49,610 --> 00:00:52,490 Lakini tunataka kutibu kama integer. 14 00:00:52,490 --> 00:00:57,550 Kwa hiyo, sisi kutumia atoi kazi hiyo ni zilizotajwa p kuweka spec kubadili 15 00:00:57,550 --> 00:01:02,330 kamba argv 1 kwa integer, na sisi kuhifadhi kwamba katika muhimu. 16 00:01:02,330 --> 00:01:06,050 Tunataka kuhakikisha kuwa integer kwamba alikuwa aliingia ni si mbaya. 17 00:01:06,050 --> 00:01:09,490 Na kama ilikuwa, tunataka magazeti kwamba kwa user kwamba wao ni hawaruhusiwi 18 00:01:09,490 --> 00:01:11,980 kufanya hivyo, na kurudi. 19 00:01:11,980 --> 00:01:15,100 >> Kwa hiyo, sasa tuna halali idadi kutoka kwa mtumiaji. 20 00:01:15,100 --> 00:01:19,780 Lakini tunahitaji kupata kamba kutoka user kwamba tunataka fumbo. 21 00:01:19,780 --> 00:01:25,340 Hivyo sisi kutumika kufanya-wakati kitanzi na kutumia kupata kamba kupata kamba hii kutoka 22 00:01:25,340 --> 00:01:29,190 user, na kuendelea kupata string mpaka kwa kweli 23 00:01:29,190 --> 00:01:31,270 kuingia kamba halali. 24 00:01:31,270 --> 00:01:34,400 >> Mara baada ya sisi na kamba kwamba, sisi unaweza kwenda kwenye encrypt yake. 25 00:01:34,400 --> 00:01:38,120 Kwa hiyo, hili kwa kitanzi ni kufanya kwamba encryption. 26 00:01:38,120 --> 00:01:43,250 Taarifa kwamba sisi ni iterating kutoka i sawa na 0 t njia yote hadi i usawa 27 00:01:43,250 --> 00:01:47,790 n, ambapo n inaelezwa kama urefu wa ujumbe wetu, ambapo ujumbe ni 28 00:01:47,790 --> 00:01:50,260 kamba kwamba mtumiaji aliingia. 29 00:01:50,260 --> 00:01:54,330 >> Hivyo sisi ni iterating juu ya yote wahusika katika kamba. 30 00:01:54,330 --> 00:01:59,740 Na kama tabia ni uppercase, basi tunakwenda kuhama ni kutumia hii 31 00:01:59,740 --> 00:02:01,860 formula, ambayo tutaweza kupata katika pili. 32 00:02:01,860 --> 00:02:05,260 Na kama ilikuwa Herufi za chini, kisha tutaweza kuhama ni kutumia hii ni 33 00:02:05,260 --> 00:02:07,290 sawa sana formula. 34 00:02:07,290 --> 00:02:10,850 Na kama ilikuwa wala uppercase wala lowercase barua - kwa mfano, 35 00:02:10,850 --> 00:02:15,370 inaweza kuwa idadi au alama - kisha sisi si kwenda kufanya kitu chochote yake. 36 00:02:15,370 --> 00:02:18,220 >> Hivyo, nini ni kanuni hizi? 37 00:02:18,220 --> 00:02:22,090 Naam, ni jinsi gani sisi kuhama tabia ya A? 38 00:02:22,090 --> 00:02:27,250 Tunataka kutibu tabia ya kama idadi 0. 39 00:02:27,250 --> 00:02:30,710 Na tunataka kutibu tabia ya B kama namba 1, na kadhalika. 40 00:02:30,710 --> 00:02:35,170 Ni wahusika 0 na kwanza wa alfabeti na kadhalika. 41 00:02:35,170 --> 00:02:42,900 >> Hivyo hapa, ujumbe i minus A zinatakiwa kutupatia mahali numeric ya 42 00:02:42,900 --> 00:02:44,400 barua katika alfabeti. 43 00:02:44,400 --> 00:02:48,080 Hivyo kama ujumbe i ni, hii ni kwenda kutupa 0. 44 00:02:48,080 --> 00:02:52,880 Sasa, tunataka kuongeza kuwa the idadi hiyo user anataka 45 00:02:52,880 --> 00:02:54,840 mzunguko wa barua ya. 46 00:02:54,840 --> 00:03:03,280 Hivyo, kama waliingia 3, kisha kama ujumbe i mara, hii itatupa 0 na pamoja na 47 00:03:03,280 --> 00:03:05,400 muhimu kutupa 3. 48 00:03:05,400 --> 00:03:09,450 >> Basi sasa, sisi ni kuzingatia nafasi ya tatu katika alfabeti. 49 00:03:09,450 --> 00:03:12,810 Tutaweza kuona kwa nini tunahitaji Mod na num barua ya pili. 50 00:03:12,810 --> 00:03:18,700 Lakini hatimaye, tunataka kuongeza juu ya mwisho tena kuhama sisi nyuma katika 51 00:03:18,700 --> 00:03:22,020 Maadili ASCII kwa wahusika hawa badala ya maeneo namba katika 52 00:03:22,020 --> 00:03:24,260 alfabeti ya wahusika hawa. 53 00:03:24,260 --> 00:03:26,580 >> Hivyo, kwa nini sisi Mod kwa barua num? 54 00:03:26,580 --> 00:03:29,960 Kumbuka kwamba tunataka kufungia kutoka mwisho wa alfabeti ya 55 00:03:29,960 --> 00:03:31,470 mwanzo wa alfabeti. 56 00:03:31,470 --> 00:03:38,530 Hivyo kama user iliingia Z, kisha subtracting A na kwamba ni kwenda 57 00:03:38,530 --> 00:03:40,520 kutupatia 25. 58 00:03:40,520 --> 00:03:44,800 Na kama muhimu walikuwa 3, kisha tunakwenda na 28. 59 00:03:44,800 --> 00:03:53,000 Lakini Z lazima wrap karibu na ABC, hivyo 28 mod num barua, ambayo ni hash inavyoelezwa 60 00:03:53,000 --> 00:04:01,890 kama 26 kutarajiwa, ni kwenda kutoa sisi 2, ambapo C ni barua ya pili ya 61 00:04:01,890 --> 00:04:05,880 alfabeti, kama unakumbuka kwamba A ni 0 barua ya alfabeti. 62 00:04:05,880 --> 00:04:09,210 >> Hivyo ndiyo sababu tunahitaji mod kwa barua num. 63 00:04:09,210 --> 00:04:13,540 Sasa, sisi haja ya kufanya kitu kimoja halisi kwa barua lowercase, ila 64 00:04:13,540 --> 00:04:17,240 kumbuka kwamba wakati sisi ni kushughulika na barua lowercase, wana tofauti 65 00:04:17,240 --> 00:04:18,579 Maadili ASCII. 66 00:04:18,579 --> 00:04:24,550 Na hivyo tunahitaji Ondoa na kuongeza juu ya kuhama chini kutoka lowercase 67 00:04:24,550 --> 00:04:30,020 Maadili ASCII na kisha kurejea awali lowercase maadili ASCII. 68 00:04:30,020 --> 00:04:33,140 >> Na hatimaye, kwamba utakuwa kutupa ujumbe wetu uliosimbwa. 69 00:04:33,140 --> 00:04:37,780 Na mwisho, sisi tu magazeti nje kwamba ujumbe, na hiyo ni yake. 70 00:04:37,780 --> 00:04:39,875 Jina langu ni Rob, na mara Caesar. 71 00:04:39,875 --> 00:04:49,856