>> [Reproducció de música]
>> ZAMYLA CHAN: Posarem en pràctica Vigenère, una mica més
assegurar xifra del Cèsar.
El text es xifra usant una cadena en lloc d'un nombre enter.
Cada lletra de l'alfabet en text sense format es desplaça per una
lletra en la paraula clau.
>> En aquest exemple, la paraula clau ohai, O correspon a un desplaçament de 14, H a una
canviar de 7; A, torn d' 0, i un desplaçament de 8.
Si ha implementat amb èxit la seva Xifrat César, serà un bon
marc des del qual es pot implementar Vigenère.
Com podeu veure, córrer un Vigenère xifrat amb un caràcter individual com
paraula clau és el mateix com un sistema de xifrat César.
>> Els mateixos passos s'apliquen a Vigenère com ho van fer en Cèsar.
La paraula clau és la segona línia d'ordres argument, per la qual cosa s'accedeix amb argv1.
Després cal verificar que la clau paraula és veritat tot alfabètic.
Aquí és on alpha pot ser útil.
Si vostè té una paraula clau vàlida, s'obté la la força per part de l'usuari i, a continuació,
vostè està preparat per xifrar.
>> La fórmula xifrat Vigenère és similar al Cèsar fórmula, excepte que ara k
k esdevé subíndex j, el que indica la j-èsima lletra de la paraula clau.
Donem un pas a través d'aquest procés.
Diguem que vostè vol enviar un missatge a la accident, m'agrades, però no ho faig
vull que tots sàpiguen.
Així que utilitza un xifrat de Vigenère amb el colla de paraules clau, perquè, bé, també
com pandes.
>> La primera carta, jo, es desplaçarà per p, donant x, 15 cartes després que jo,
perquè 15 p és el 16 lletra de l'alfabet.
La següent lletra del text és un espai, pel que no es va moure.
I l'índex de la paraula clau no canviarà.
>> A continuació, la següent lletra en text pla és l, desplaçat per una, que no es desplaça
la lletra de text sense format en absolut, perquè a és la lletra de l'alfabet 0 ª.
El procés continua, l'avanç de la personatge clau cada vegada que hi ha un
lletra en el text sense format.
Una vegada que l'última lletra de la paraula clau és aconseguir, la paraula clau s'embolica al voltant de i
es desplaça a la següent plana text lletra per p.
X lvne noh.
Què romàntic.
>> Així que donat un caràcter, com convertir que en el corresponent
xifrar torn?
Intenta comparar l'ASCII Els valors per al canvi.
Potser vostè pot trobar una relació entre les lletres i els seus
Índex alfabètic usant matemàtiques ASCII.
Es pot afegir o restar un caràcter d'un altre per obtenir
que el resultat desitjat?
>> Recordeu que els canvis de majúscules i minúscules són iguals.
Així que potser haurà d'identificar a dos fórmules similars per representar la
canvi, un per a una majúscula caràcter de paraula clau, i un
d'un en minúscula.
>> A continuació, recorda que la paraula clau avenços només si el caràcter en
text és una carta i que el cas de la plana
text ha de ser preservada.
Així que si ens fixem en la fórmula per al Vigenère canvi, hi ha dos índex
variables i i j.
Es realitza un seguiment de la posició en la plana text, i l'altra la posició
en la paraula clau.
Però el text pot ser molt més llarg que la seva paraula clau, en aquest cas el
índex de paraules clau ha d'embolicar al voltant de l'esquena per al començament de la paraula clau.
>> Com fer això?
Anem a mirar cap enrere en el operador mòdul.
Mòdul es defineix és la resta de dividir dos nombres.
Però el que és una pràctica real l'ús de mòdul?
>> Bé, diguem que té un gran grup de persones, i cal dividir en
tres grups.
Una manera de dividir la gent en grups és fer que compti.
Vostè número del grup de grups número 1, 2, i 3.
La primera persona que dirà 1, la propera 2, la següent 3.
La persona després que digui 1, perquè no és un grup 4, i el
recompte comença de nou des d'allà.
>> Vostè pot utilitzar mòdul de fer el mateix.
Aquesta vegada, els grups ser el grup 0, 1, i 2.
La primera persona, el nombre 1 modul 3, 1.
Persona 2 mòdul 3 és 2.
Persona 3 mòdul 3 és 0.
Persona 4 mòdul 3 dóna 1, i així els grups poden embolicar al voltant.
>> Així que si vostè pren un índex i el mòdul dit índex per una mida màxima, la
resultat mai serà més gran que o igual a la grandària, el que significa que
pot augmentar l'índex com tot el que volgués.
I mentre que l'índex de mòdul per un nombre, vostè no aconseguirà un nombre
més gran que això.
Així que tenim 10 persones en lloc de 5, i tots ells se'ls assigna als grups
número 0, 1, o 2.
>> Intenta aplicar això a embolicar el paraula clau, excepte que en lloc de classificar
la gent en nombres de grup que desitja que el Índex de la paraula clau, perquè pugui
obtenir el caràcter adequat per a la canviar sense excedir l'
longitud de la cadena.
Amb això, vostè té el seu Vigenère.
El meu nom és Zamyla, i això és CS50.