|
Форум AHK Программирование Исходники [Общее] [AHK] Шифр Цезаря |
[Общее] [AHK] Шифр Цезаря |
Offline
Текст шифруется
Код Gui, Add, Edit, x1 y1 w309 h85 -Multi vEncrypt, Gui, Add, Button, x0 y86 w102 h23 Default gCesar, Шифровать Gui, Add, Edit, x1 y110 w309 h85 -Multi +ReadOnly vDecrypt, Gui, Show, Center w311 h197, Шифр Цезаря Return Cesar: Gui, Submit, NoHide Text_Decrypt := Cesar(Encrypt) GuiControl, , Encrypt, %Text_Decrypt% Return Cesar(Encrypt) { StringCaseSense, on AutoTrim, off StringLen, length, Encrypt source = abcdefghijklmnopqrstuvwxyz source_CAPS = ABCDEFGHIJKLMNOPQRSTUVWXYZ StringSplit, source, source StringSplit, Encrypt, Encrypt StringSplit, source_CAPS, source_CAPS Loop, %length% { char_pos = %A_Index% Loop, 26 { comp_char := source%A_Index% If Encrypt%char_pos% = %comp_char% { replace := A_Index + 3 If replace > 26 replace -= 26 Encrypt%char_pos% := source%replace% break } comp_char := source_CAPS%A_Index% If Encrypt%char_pos% = %comp_char% { replace := A_Index + 3 If replace > 26 replace -= 26 Encrypt%char_pos% := source_CAPS%replace% break } } } Text_new = Loop, %length% { new_char := Encrypt%A_Index% Text_new = %Text_New%%new_char% } return Text_new } return GuiClose: ExitApp |
| |||
| |||