• Страница 1 из 1
  • 1
[Общее] [AHK] Шифр Цезаря
Владислав
Дата: Воскресенье, 09.03.2014, 23:20 | Сообщение # 1
Главный
Сообщений:
527
Награды:
5
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
  • Страница 1 из 1
  • 1
Поиск: