>> [Halisi kucheza]
>> ZAMYLA CHAN: Hebu kutekeleza Vigenere, zaidi kidogo ya
kupata cipher kuliko Kaisari.
Nakala wazi ni enciphered kutumia kamba badala ya integer.
Kila tabia herufi katika Nakala wazi ni kubadilishwa kwa
barua katika Keyword.
>> Katika mfano huu, Keyword ohai, O sambamba na mabadiliko ya 14; H kwa
kuhama ya 7; kuhama, ya 0; na mimi mabadiliko ya 8.
Kama wameweza kwa mafanikio yako Kaisari cipher, utakuwa ni nzuri
mfumo ambayo wewe inaweza kutekeleza Vigenere.
Kama unaweza kuona, mbio Vigenere cipher na tabia moja kama
Keyword ni kitu kimoja kama cipher Kaisari.
>> hatua hiyo kuomba Vigenere kama walivyofanya katika Kaisari.
Keyword ni ya pili ya mstari amri hoja, hivyo kupata huduma hiyo na argv1.
Basi haja ya kuthibitisha kuwa muhimu neno ni kweli kila herufi.
Hapa ni wapi alpha wanaweza kuja katika Handy.
Kama una Keyword halali, kupata nguvu kutoka kwa mtumiaji, na kisha
uko tayari kwa encipher.
>> Cipher Vigenere formula ni sawa Kaisari formula, ila sasa k
inakuwa k subscript j, kuonyesha barua j-th wa Keyword.
Hebu hatua kupitia mchakato huu.
Sema alitaka kutuma ujumbe kwa yako ajali, mimi kama wewe, lakini huna
nataka kila mtu kujua.
Hivyo unaweza kutumia cipher Vigenere na Keyword panda, kwa sababu, vizuri, wewe pia
kama pandas.
>> barua ya kwanza, mimi, itakuwa kubadilishwa na p, kutoa x, barua 15 baada ya mimi,
kwa sababu 15 p ni 16 barua ya alfabeti.
barua ijayo katika maandishi wazi ni nafasi, hivyo kuwa ya kubadilishwa.
Na index ya Keyword si mabadiliko.
>> Kisha barua ijayo katika maandishi wazi ni l, kubadilishwa kwa, ambayo haina kuhama
Nakala wazi barua wakati wote, kwa sababu ni barua 0 ya alfabeti.
mchakato unaendelea, kuendeleza Keyword tabia kila wakati kuna
mbili katika maandishi wazi.
Mara baada ya barua ya mwisho katika Keyword ni kufikiwa, Keyword Wraps kuzunguka na
mabadiliko ya wazi ijayo Nakala mbili na p.
X lvne NOH.
Jinsi ya kimapenzi.
>> Hivyo kutokana na tabia, ni jinsi gani unaweza kubadilisha kwamba katika sambamba
cipher kuhama?
Jaribu kulinganisha ASCII maadili kwa kuhama.
Labda unaweza kupata uhusiano kati ya herufi na wao
herufi index kutumia math ASCII.
Unaweza kuongeza au Ondoa moja tabia kutoka mwingine kupata
wewe matokeo taka?
>> Kumbuka kwamba mabadiliko kwa herufi kubwa na herufi ndogo ni sawa.
Hivyo labda itabidi kutambua mbili formula sawa na kuwakilisha
kuhama, moja kwa herufi kubwa Keyword tabia, na moja
kwa moja lowercase.
>> Ijayo, kumbuka kwamba maendeleo Keyword tu kama tabia katika
Nakala wazi ni barua na kwamba kesi ya wazi
Nakala lazima zihifadhiwe.
Hivyo kama sisi kuangalia formula kwa ajili ya Vigenere kuhama, kuna mambo mawili index
vigezo, i na j.
Moja anaendelea kufuatilia msimamo katika bonde maandishi, na wengine nafasi
katika Keyword.
Lakini maandishi yako wazi kuwa sana tena kuliko Keyword yako, katika kesi ambayo yako
Keyword index inahitaji wrap kuzunguka nyuma mwanzo wa Keyword.
>> Jinsi gani unaweza kufanya hili?
Hebu kuangalia nyuma katika modulo operator.
Modulo inaelezwa ni salio ya kugawa namba mbili.
Lakini nini vitendo halisi matumizi ya modulo?
>> Naam, kusema kuwa kundi kubwa la watu, na unahitaji kugawanya katika
makundi matatu.
Moja ya njia ya kugawanya watu katika makundi ni kuwa na wao kuhesabu mbali.
Wewe idadi kundi vikundi namba 1, 2, na 3.
mtu wa kwanza kusema 1, 2 ijayo, 3 ijayo.
mtu baada ya kuwa watasema 1, kwa sababu hakuna kikundi 4, na
wanawake kuanza juu kutoka huko.
>> Unaweza kutumia modulo kwa kufanya kitu kimoja.
Wakati huu, vikundi vya mapenzi kuwa kikundi 0, 1, na 2.
Mtu wa kwanza, idadi 1 modulo 3, ni 1.
2 mtu modulo 3 ni 2.
3 mtu modulo 3 ni 0.
4 mtu modulo 3 anatoa 1, na hivyo vikundi vinaweza wrap kote.
>> Hivyo kama wewe kuchukua index na modulo kwamba index na ukubwa wa upeo,
matokeo kamwe kuwa zaidi au sawa na ukubwa, kwa maana ya kwamba
inaweza kuongeza index kama kiasi kama wewe Ningependa.
Na muda mrefu kama wewe modulo index kwa idadi fulani, huwezi kupata idadi
kubwa kuliko ile.
Hivyo tuna watu 10 badala ya 5, na wangeweza wote kupata ajili ya vikundi vya
idadi 0, 1, au 2.
>> Kujaribu kuomba hii kwa zaidi ya wrapping Keyword, ila badala ya kuchagua
watu ndani ya kundi idadi unataka index ya Keyword ili uweze
kupata tabia ya haki kwa kuhama bila mno
urefu wa kamba.
Pamoja na kwamba, una yako Vigenere cipher.
Jina langu ni Zamyla, na hii ni CS50.