>> [Musiqi ifa]
>> ZAMYLA Chan: edək həyata Vigenere, bir az daha
Sezar çox parol təmin edir.
Bu düz mətn istifadə enciphered edir yerinə tam bir simli.
Hər əlifba xarakter düz mətn tərəfindən keçdikdə
söz məktub.
>> Bu nümunədə, söz ohai, O 14 bir növbədə uyğun gəlir H üçün
7 növbədə, A shift 0; və mən 8-shift.
Siz uğurla icra etdik varsa Caesar cipher, bu gözəl olacaq
çərçivəsində olan siz Vigenere həyata keçirə bilərlər.
Gördüyünüz kimi, bir Vigenere çalışan kimi bir xarakteri ilə parol
söz eyni şeydir bir Sezar parol kimi.
>> Eyni addımlar Vigenere müraciət onlar Caesar olduğu kimi.
Söz ikinci komanda xətt dəlil, belə ki, argv1 ilə daxil.
Sonra yoxlamaq lazımdır ki, əsas sözü həqiqətən əlifba edir.
Burada alpha Ü edir lazımlı gələ bilər.
Cari bir söz varsa, almaq sonra istifadəçi güc və
Siz encipher hazırsınız.
>> Bu Vigenere cipher formula oxşar İndi k istisna olmaqla Caesar formula üçün
ifadə k subscript j olur söz və j-ci məktub.
Bu prosesi addım edək.
Siz bir mesaj göndərmək istəyib crash, mən sizi istəyirəm, lakin siz bunu
hər kəs bilmək istəyirəm.
Beləliklə, siz bir Vigenere parol istifadə söz panda, çünki, yaxşı, siz də
PANDAS istəyirəm.
>> İlk məktub, mən keçdikdə olunacaq Mən sonra, 15 məktubları x verilməsi P,
15 p 16, çünki əlifbası məktubu.
Düz mətn növbəti məktub Boşluq keçdikdə, belə ki.
Və söz göstəricisi dəyişməyəcək.
>> Sonra düz metin növbəti məktub keçmək olmayan tərəfindən keçdikdə l,
bütün düz metin olaraq məktub, çünki bir əlifbası 0th məktubu.
Bu proses inkişaf davam edir söz xarakter var hər zaman
düz mətn məktubu.
Söz son məktub sonra çatdı, söz ətrafında wraps və
növbəti düz keçid p mətn məktubu.
X lvne noh.
Necə romantik.
>> Belə ki, bir xarakter verilmiş, necə çevirmək yoxdur ki, müvafiq daxil
shift parol?
Ki, ASCII müqayisə edin shift dəyərlər.
Bəlkə bir əlaqə tapa bilərsiniz məktubları və onların arasında
ASCII riyaziyyat istifadə edərək, əlifba index.
Bir xarakter əlavə və ya çıxmaq edə başqa almaq
istədiyiniz nəticə?
>> Xatırla ki, böyük üçün növbəli Böyük və kiçik hərfləri eynidir.
Belə ki, bəlkə iki müəyyən etmək üçün lazımdır oxşar düsturlar da təmsil etmək
növbədə, bir böyük bir söz xarakteri, və bir
bir kiçik bir.
>> Sonra, unutmayın ki, söz avanslar yalnız xarakter əgər
düz mətn bir məktub və ki, düz işi
mətn saxlanılır olmalıdır.
Biz üçün formula baxmaq Belə ki, əgər Vigenere shift, iki index var
dəyişənlər, i və j.
Bir düzündə mövqe tutar mətn, və digər mövqe
söz edir.
Lakin düz mətn çox uzun ola bilər Açar söz çox, bu halda,
söz index geri ətrafında kesmek lazımdır söz əvvəlinə.
>> Siz necə etməliyəm?
Ki, geri nəzər edək modulo operator.
Modulo müəyyən edilir qalan deyil iki ədəd bölünməsi.
Amma nə faktiki praktik var modulo istifadə?
>> Bəli, böyük bir qrup var demək insanlar, və bölünür lazımdır
üç qrupa.
Qruplar insanları bölmək üçün bir yolu onları saymaq var.
Siz sayı qrupları qrupu sayı 1, 2, 3.
Ilk şəxs, 1 deyəcəklər növbəti 2, növbəti 3.
1 deyəcəklər bundan sonra şəxs, bir qrup 4, və yoxdur, çünki
count oradan artıq başlayır.
>> Siz modulo istifadə edə bilərsiniz eyni şey.
Bu dəfə qrup qrupu 0, 1 və 2 ola bilər.
Ilk şəxs, sayı 1 modulo 3, 1-dir.
Şəxs 2 modulo 3 2-dir.
Şəxs 3 modulo 3 0 edir.
Şəxs 4 modulo 3 belə 1 verir, qruplar ətrafında kesmek bilər.
>> Bir index və modulo almaq Belə ki, əgər maksimum ölçüsü ki indeksi
nəticə və ya daha çox heç vaxt məna, ölçüsü bərabər ki,
kimi index artıra bilər istədiyiniz kimi çox.
Və kimi uzun siz tərəfindən index modulo kimi bir sayı, bir sıra almaq deyil
daha böyük.
Beləliklə, biz 10 nəfər əvəzinə 5 var və Onlar bütün qruplar təyin olmaq
sayı 0, 1 və ya 2.
>> Üzərində wrapping bu müraciət edin söz, başqa əvəzinə çeşidlənməsi
qrup nömrələri insanları siz istədiyiniz söz indeksi bilərsiniz, belə ki,
üçün sağ karakter almaq ki, aşmadan keçmək
simli uzunluğu.
Ki, siz sizin Vigenere cipher.
My name Zamyla, bu CS50 edir.