1 00:00:00,000 --> 00:00:10,103 2 00:00:10,103 --> 00:00:11,270 >> ZAMYLA Chan: Comhghairdeas ar chríochnú do 3 00:00:11,270 --> 00:00:13,200 chéad cúpla clár C. 4 00:00:13,200 --> 00:00:16,379 Tá a fhios agam go bhfuil do chéad foray isteach Is féidir le C error a daunting. 5 00:00:16,379 --> 00:00:20,060 Ach geallaim duit, ag deireadh na ndóigh, beidh tú in ann féachaint ar an 6 00:00:20,060 --> 00:00:23,870 chéad cúpla tascanna agus iad a chomhlánú i nóiméid. 7 00:00:23,870 --> 00:00:27,830 >> Anois go bhfuil tú ag fáil níos mó eolas leis error, a ligean ar a fháil ar Caesar. 8 00:00:27,830 --> 00:00:31,720 I Caesar, beidh an t-úsáideoir chur isteach eochair slánuimhir mar líne a ordú 9 00:00:31,720 --> 00:00:35,300 argóint, ansin dul isteach i plain teachtaireacht téacs ag an pras. 10 00:00:35,300 --> 00:00:38,050 Beidh an clár encipher ansin an téacs agus a phriontáil 11 00:00:38,050 --> 00:00:40,020 n-teachtaireacht ciphertext. 12 00:00:40,020 --> 00:00:42,980 >> An enciphering do Caesar Tá simplí go leor. 13 00:00:42,980 --> 00:00:46,455 Shift gach litir, ina n- plain text, ag an eochair. 14 00:00:46,455 --> 00:00:49,220 Mar thoradh air sin, tá sé chomh maith go leor neamhchinnte. 15 00:00:49,220 --> 00:00:53,850 Ach beidh Caesar lena gcuirtear isteach linn chun sonraí a ASCIIMath agus eagar 16 00:00:53,850 --> 00:00:54,460 struchtúir. 17 00:00:54,460 --> 00:00:57,510 Beidh muid a fháil chun níos casta sifir níos déanaí. 18 00:00:57,510 --> 00:01:01,680 Le eochair Caesar de 2, an litir A in Bheadh ​​gnáth-théacs ionadaíocht a dhéanamh 19 00:01:01,680 --> 00:01:07,580 an litir C i ciphertext toisc C Is é a bheadh ​​i ndiaidh dhá litir A. B a bheith 20 00:01:07,580 --> 00:01:12,450 ionadaíocht ag D agus C le E. I dTreo an deireadh an aibítir, is W 21 00:01:12,450 --> 00:01:18,550 ionadaíocht ag Y, agus X de Z. Ach Y nach bhfuil dhá litir tar éis dó, mar sin 22 00:01:18,550 --> 00:01:21,070 na sifir wraps ar fud an aibítir. 23 00:01:21,070 --> 00:01:27,190 Tá Y i ngnáth-théacs ionadaíocht mar sin ag A i ciphertext, agus Z ag B. féadfaidh sé 24 00:01:27,190 --> 00:01:32,080 cabhrú chun féachaint ar an Cypher Caesar mhaith roth aibítir leanúnach. 25 00:01:32,080 --> 00:01:35,760 >> Chun encipher gcuid téacs, an t-úsáideoir go dtiocfaidh sé dhá argóint 26 00:01:35,760 --> 00:01:37,090 isteach na n-orduithe - 27 00:01:37,090 --> 00:01:40,010 . / Chaesar dhiaidh eochair. 28 00:01:40,010 --> 00:01:44,710 Mar i gcónaí, ní féidir linn muinín an t-úsáideoir go hiomlán chun dul isteach ionchur a dhéanamh 29 00:01:44,710 --> 00:01:45,800 ciall le haghaidh ár gclár. 30 00:01:45,800 --> 00:01:50,670 Mar sin, beidh orainn a bhailíochtú a gcuid ionchur-orduithe. 31 00:01:50,670 --> 00:01:57,285 >> In áit ag baint úsáide as príomh-neamhní slánuimhir, tá muid ag baint úsáide as príomh-, argc slánuimhir slánuimhir, téad argv. 32 00:01:57,285 --> 00:02:01,730 Is ionann an argc athróg slánuimhir líon na n-argóintí a ritheadh ​​i 33 00:02:01,730 --> 00:02:02,880 na n-orduithe. 34 00:02:02,880 --> 00:02:09,070 Agus is é argv eagar, nó smaoineamh ar é mar liosta, de na hargóintí a ritheadh ​​isteach 35 00:02:09,070 --> 00:02:12,000 >> Mar sin, le haghaidh Caesar, conas is féidir linn a bhailíochtú an úsáideora ionchur? 36 00:02:12,000 --> 00:02:15,870 Bhuel, ba chóir iad a bheith ag dul isteach ach amháin dhá argóintí - 37 00:02:15,870 --> 00:02:18,150 . / Chaesar agus eochair. 38 00:02:18,150 --> 00:02:22,340 Mar sin, más rud é nach bhfuil argc 2, Ciallaíonn sé sin go siad dearmad ceachtar eochair agus díreach 39 00:02:22,340 --> 00:02:27,230 isteach / chaesar., nó iad isteach eochracha il. 40 00:02:27,230 --> 00:02:29,770 >> Más é seo an cás, ansin beidh tú ag iarraidh a phriontáil treoracha 41 00:02:29,770 --> 00:02:30,910 agus scor an gclár. 42 00:02:30,910 --> 00:02:34,320 Mbainfidh siad is gá chun iarracht a dhéanamh arís na n-orduithe. 43 00:02:34,320 --> 00:02:37,430 Ach fiú má tá argc 2, beidh tú Ní mór a sheiceáil an bhfuil siad 44 00:02:37,430 --> 00:02:39,100 a thabhairt duit eochair bailí. 45 00:02:39,100 --> 00:02:40,730 Chun Caesar, is gá duit slánuimhir. 46 00:02:40,730 --> 00:02:43,260 Ach tá argv le sraith de teaghráin. 47 00:02:43,260 --> 00:02:46,490 Conas a dhéanann tú rochtain a fháil ar eochair? 48 00:02:46,490 --> 00:02:47,850 >> A súil thapa ar arrays - 49 00:02:47,850 --> 00:02:51,410 struchtúir sonraí a shealbhú il Luachanna den chineál sonraí céanna. 50 00:02:51,410 --> 00:02:55,350 Tá Iontrálacha náid-innéacsaithe, rud a chiallaíonn go Is é an chéad ghné an náid-innéacs 51 00:02:55,350 --> 00:03:00,260 agus is é an ghné dheireanach ag méid innéacs lúide 1, i gcás ina bhfuil méid an líon 52 00:03:00,260 --> 00:03:02,850 eilimintí sa eagar. 53 00:03:02,850 --> 00:03:07,380 >> Má dhearbhaítear mé bosca poist nua eagar teaghrán ar fad 3, amhairc, sé 54 00:03:07,380 --> 00:03:08,570 Breathnaíonn mar seo. 55 00:03:08,570 --> 00:03:11,520 Trí coimeádáin do theaghráin , Taobh le taobh. 56 00:03:11,520 --> 00:03:15,445 Chun rochtain a fháil ar aon eilimint, a scríobhann tú an t-ainm de na eagar agus ansin in iúl 57 00:03:15,445 --> 00:03:18,080 an t-innéacs idir lúibíní cearnacha. 58 00:03:18,080 --> 00:03:21,610 Anseo, tá mé ag shannadh luach le gach eilimint, díreach mar ba mhaith liom a dhéanamh le haon 59 00:03:21,610 --> 00:03:24,310 athróg teaghrán eile. 60 00:03:24,310 --> 00:03:29,020 >> Mar sin, chun rochtain a fháil ar ár n-argóintí, gach ní mór dúinn a dhéanamh ná teacht ar 61 00:03:29,020 --> 00:03:31,690 an ghné ceart de na eagar argv. 62 00:03:31,690 --> 00:03:37,360 Má rinne an t-úsáideoir Team. / Blastoff Rocket isteach an teirminéal, bheadh ​​argv 0 63 00:03:37,360 --> 00:03:38,950 bheith. / blastoff. 64 00:03:38,950 --> 00:03:45,010 Bheadh ​​argv bheith Fhoireann, agus Bheadh ​​ARG2 bheith roicéad. 65 00:03:45,010 --> 00:03:47,670 >> Anois gur féidir linn rochtain a fháil ar ár n-eochair, is gá dúinn fós a dhéanamh 66 00:03:47,670 --> 00:03:49,040 cinnte go bhfuil sé ceart. 67 00:03:49,040 --> 00:03:51,060 Ní mór dúinn chun é a athrú ina slánuimhir. 68 00:03:51,060 --> 00:03:54,680 Ach ní féidir linn a chaitheamh díreach cosúil atá déanta againn roimhe sin. 69 00:03:54,680 --> 00:03:58,800 Luckily, glacann an fheidhm chun Y Tá cúram seo dúinn agus fiú tuairisceáin 0 70 00:03:58,800 --> 00:04:02,110 más rud é nach féidir leis an teaghrán a thiontú isteach ina slánuimhir. 71 00:04:02,110 --> 00:04:04,450 Tá sé suas chun tú, áfach, a insint an t-úsáideoir cén fáth nach mbeidh tú 72 00:04:04,450 --> 00:04:06,220 lig an clár ar aghaidh. 73 00:04:06,220 --> 00:04:10,710 Mar thoradh ar A Store do Y i slánuimhir, agus ansin go bhfuil tú do eochair. 74 00:04:10,710 --> 00:04:12,070 Is é an chéad chuid eile simplí. 75 00:04:12,070 --> 00:04:15,940 Pras an t-úsáideoir le haghaidh a n gnáth-théacs, a bheidh ar teaghrán cineál sonraí. 76 00:04:15,940 --> 00:04:18,339 Luckily dúinn, ionchur gach úsáideoir Tá teaghráin bailí. 77 00:04:18,339 --> 00:04:21,170 78 00:04:21,170 --> 00:04:24,760 >> Anois go bhfuil againn ar fad ionchur riachtanach ón úsáideoir, tá sé in am dúinn chun 79 00:04:24,760 --> 00:04:26,520 encipher a gcuid teachtaireacht. 80 00:04:26,520 --> 00:04:29,200 Is é an coincheap de Caesar simplí go leor a thuiscint. 81 00:04:29,200 --> 00:04:33,750 Ach conas a dhéanann do ríomhaire a fhios a Tagann litreacha i ndiaidh a chéile? 82 00:04:33,750 --> 00:04:36,100 >> Seo nuair a thagann an tábla ASCII isteach 83 00:04:36,100 --> 00:04:39,420 Tá ag gach carachtar slánuimhir líon bhaineann leis. 84 00:04:39,420 --> 00:04:41,380 Tá Caipitil A 65. 85 00:04:41,380 --> 00:04:43,310 Is Caipitil B 66. 86 00:04:43,310 --> 00:04:45,260 Cás íochtair a bhfuil 97. 87 00:04:45,260 --> 00:04:47,590 Tá litreacha beaga b 98. 88 00:04:47,590 --> 00:04:50,770 Ach nach bhfuil carachtair teoranta le huimhreacha ach aibítreach. 89 00:04:50,770 --> 00:04:56,020 Mar shampla, an tsiombail @ Tá líon ASCII 64. 90 00:04:56,020 --> 00:04:59,690 >> Roimh déileáil leis an teaghrán ar fad, a ligean ar ligean ní mór dúinn ach a athrú 91 00:04:59,690 --> 00:05:01,220 charachtar amháin. 92 00:05:01,220 --> 00:05:04,640 Bhuel, ba mhaith linn ach a athrú iarbhír litreacha sa téacs plain, ní 93 00:05:04,640 --> 00:05:06,020 carachtair nó uimhreacha. 94 00:05:06,020 --> 00:05:09,100 Mar sin, an chéad rud go mbainfidh muid ag iarraidh a seiceáil cibé an bhfuil an carachtar i 95 00:05:09,100 --> 00:05:10,430 an aibítir. 96 00:05:10,430 --> 00:05:14,460 >> Dhéanann an isalpha fheidhm seo le haghaidh dúinn agus tuairisceáin a Boole - 97 00:05:14,460 --> 00:05:18,570 fíor má na carachtair Tá litir, bréagach más rud é ar shlí eile. 98 00:05:18,570 --> 00:05:22,270 Tá dhá feidhmeanna úsáideacha eile isupper agus islower, le 99 00:05:22,270 --> 00:05:23,860 ainmneacha féin-míniúcháin. 100 00:05:23,860 --> 00:05:27,370 Filleann siad fíor má tá an carachtar a thugtar Is chás uachtair nó litreacha beaga, 101 00:05:27,370 --> 00:05:28,740 faoi ​​seach. 102 00:05:28,740 --> 00:05:33,770 Ó tharla go bhfuil siad Booleans, tá siad úsáideach a úsáid mar coinníollacha. 103 00:05:33,770 --> 00:05:38,310 >> Má tá an tuairisceáin isalpha fíor, beidh ort a aistriú go carachtar an eochair. 104 00:05:38,310 --> 00:05:43,750 Mar sin, a ligean ar oscailt do ASCIIMath agus a dhéanamh ar roinnt math ASCII. 105 00:05:43,750 --> 00:05:48,700 Tá an úsáid an-chosúil leis an úsáid do Caesar agus tógann sé i eochair ag an 106 00:05:48,700 --> 00:05:50,870 n-orduithe. 107 00:05:50,870 --> 00:05:59,590 >> Má ritheann liom ASCIIMath 5, dealraíonn sé a chur leis 5 go dtí, a thabhairt dom an litir f, agus 108 00:05:59,590 --> 00:06:01,260 thaispeánann an luach ASCII. 109 00:06:01,260 --> 00:06:04,090 Mar sin, a ligean ar ghlacadh le breathnú ar an gclár. 110 00:06:04,090 --> 00:06:11,820 >> D'fhéadfá Wonder, ar dheis anseo, cén fáth Tá litir slánuimhir, nuair atá sé 111 00:06:11,820 --> 00:06:14,330 soiléir, go maith, le litir. 112 00:06:14,330 --> 00:06:17,690 Casadh sé amach go bhfuil na carachtair agus Tá slánuimhreacha interchangeable. 113 00:06:17,690 --> 00:06:21,730 Trí chur leis an litir A in singil comharthaí athfhriotail, is féidir leis an tslánuimhir is stóráil 114 00:06:21,730 --> 00:06:25,390 an luach ASCII ar chaipiteal A. Bí cúramach, cé. 115 00:06:25,390 --> 00:06:27,150 Ní mór duit na héadaí aonair. 116 00:06:27,150 --> 00:06:31,260 Gan na marcanna ceanglófar aonair, an Bheadh ​​tiomsaitheoir lorg athróg 117 00:06:31,260 --> 00:06:35,510 ainmnithe A, agus ní an carachtar. 118 00:06:35,510 --> 00:06:42,140 >> Ansin mé ag cuir litir agus eochair, a stóráil an suim i athróg thoradh slánuimhir. 119 00:06:42,140 --> 00:06:47,740 Cé go bhfuil thoradh ar an gcineál sonraí a slánuimhir úsáidí, mo ráiteas printf an 120 00:06:47,740 --> 00:06:50,370 % C placeholder do charachtair. 121 00:06:50,370 --> 00:06:54,530 Mar sin, priontaí an clár an carachtar bhaineann leis an toradh slánuimhir. 122 00:06:54,530 --> 00:07:00,400 Agus ós rud é clóite againn an tslánuimhir bhfoirm chomh maith ag baint úsáide as% d, a fheicimid 123 00:07:00,400 --> 00:07:02,110 an líon chomh maith. 124 00:07:02,110 --> 00:07:04,450 Mar sin, anois is féidir leat a fheiceáil go bhfuil muid ag carachtair chóireáil agus a 125 00:07:04,450 --> 00:07:06,980 slánuimhreacha, agus vice versa. 126 00:07:06,980 --> 00:07:12,205 >> A ligean ar scrúdú amach ASCIIMath cúpla níos mó ná uair ag baint úsáide as 25 mar eochair. 127 00:07:12,205 --> 00:07:15,510 128 00:07:15,510 --> 00:07:17,090 Faighimid an litir z. 129 00:07:17,090 --> 00:07:19,750 Anois, déanaimid ár ndícheall 26. 130 00:07:19,750 --> 00:07:25,600 Ba mhaith linn a fháil ar an litir a, ach ina ionad sin linn a fháil ar chlé lúibín. 131 00:07:25,600 --> 00:07:29,490 Mar sin, ar ndóigh, ach ag cur an eochair chun an litir ní a dhéanamh. 132 00:07:29,490 --> 00:07:32,780 Ní mór dúinn a figiúr amach foirmle a wrap ar fud an aibítir, cosúil ár 133 00:07:32,780 --> 00:07:34,570 mar shampla i dtosach raibh. 134 00:07:34,570 --> 00:07:38,520 >> A fhoirmle do Caesar Tá athrú mar seo a leanas. 135 00:07:38,520 --> 00:07:42,750 c ionann p móide k modulo 26. 136 00:07:42,750 --> 00:07:46,040 Cuimhnigh go bhfuil modulo úsáideach oibríocht a thugann dúinn an chuid eile 137 00:07:46,040 --> 00:07:49,880 a roinnt uimhir amháin ag an duine eile. 138 00:07:49,880 --> 00:07:54,870 A ligean ar an fhoirmle maidir leis an plain litir téacs le A eochair de 2. 139 00:07:54,870 --> 00:08:01,810 Is é an luach ASCII de y 89, a Tugann sé seo dúinn 91 modulo 26, 140 00:08:01,810 --> 00:08:03,690 atá cothrom le 13 - 141 00:08:03,690 --> 00:08:08,740 cinnte nach bhfuil an luach ASCII de, a bhfuil 67. 142 00:08:08,740 --> 00:08:12,810 >> Greann dom anois agus bogadh ar shiúl ó na Luachanna ASCII le hinnéacs aibítre 143 00:08:12,810 --> 00:08:18,690 gcás gurb é A nialas agus gurb é Z 25, rud a chiallaíonn go bhfuil Y 24. 144 00:08:18,690 --> 00:08:25,830 24 móide 2, modulo 6, tugann dúinn 26, modulo 26, 0, a bhfuil an 145 00:08:25,830 --> 00:08:28,170 innéacs aibítre de. 146 00:08:28,170 --> 00:08:32,980 Mar sin, is cosúil an fhoirmle seo chun a iarraidh ar an innéacs aibítre ar an litir agus 147 00:08:32,980 --> 00:08:34,960 Ní a luach ASCII. 148 00:08:34,960 --> 00:08:37,630 >> Ach dtosaíonn tú le luachanna ASCII. 149 00:08:37,630 --> 00:08:41,650 Agus a phriontáil an carachtar ciphertext, beidh ort a luach ASCII chomh maith. 150 00:08:41,650 --> 00:08:46,400 Tá sé suas chun tú, ansin, chun an figiúr amach conas a athrú ar ais agus amach. 151 00:08:46,400 --> 00:08:49,850 >> Nuair a figiúr tú amach an fhoirmle ceart do charachtar amháin, is gá gach tú a dhéanamh 152 00:08:49,850 --> 00:08:53,520 Is é an fhoirmle chéanna le gach litir sa téacs plain - 153 00:08:53,520 --> 00:08:57,720 ach amháin más rud é go bhfuil litir aibítre, ar ndóigh. 154 00:08:57,720 --> 00:09:02,360 Agus cuimhnigh gur gá duit a chaomhnú an cás, uachtair nó níos ísle, go bhfuil an áit 155 00:09:02,360 --> 00:09:06,890 an isUpper agus feidhmeanna isLower Beidh luadh níos luaithe a thagann i handy. 156 00:09:06,890 --> 00:09:08,830 D'fhéadfá a bheith dhá fhoirmle - 157 00:09:08,830 --> 00:09:11,680 ceann amháin le haghaidh litreacha chás uachtair agus ceann do litreacha beaga. 158 00:09:11,680 --> 00:09:18,420 Mar sin, isUpper beidh isLower cabhrú leat a chinneadh a bhfuil foirmle a chur i bhfeidhm. 159 00:09:18,420 --> 00:09:22,460 >> Conas a dhéanann tú iarratas ar do fhoirmle chun gach charachtar amháin i teaghrán? 160 00:09:22,460 --> 00:09:25,910 Bhuel, is teaghrán ach sraith de charachtair. 161 00:09:25,910 --> 00:09:31,150 Mar sin, is féidir leat rochtain a fháil ar gach carachtar ag grúpáil thar gach carachtar sa 162 00:09:31,150 --> 00:09:33,450 teaghrán i do lúb. 163 00:09:33,450 --> 00:09:37,550 Maidir leis an coinníoll de do do lúb, an fheidhm strlen, le teaghrán 164 00:09:37,550 --> 00:09:39,280 fad a bheidh, teacht i handy. 165 00:09:39,280 --> 00:09:44,020 Bíonn sé i teaghrán mar ionchur agus tuairisceáin an fad an téad. 166 00:09:44,020 --> 00:09:49,250 Bí cinnte a chur san áireamh ar an leabharlann ceart a bhaint as an fheidhm fad teaghrán. 167 00:09:49,250 --> 00:09:51,790 >> Agus tá tú do ciphertext. 168 00:09:51,790 --> 00:09:53,260 Is é mo ainm an Zamyla. 169 00:09:53,260 --> 00:09:54,510 Agus [CÓD LABHARTHA]. 170 00:09:54,510 --> 00:10:02,944