#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Local $alf = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"
Local $shiftalf = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"
GUICreate("Шифр Цезаря",500,500)
GUICtrlCreateLabel("Сдвинутый алфавит", 0, 0)
Local $idalf = GUICtrlCreateInput("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ",0, 20, 300, 20)
GUICtrlCreateLabel("Сдвиг алфавита", 350, 0)
Local $idkey = GUICtrlCreateInput("1",350, 20, 100, 20)
GUICtrlCreateLabel("Ввод шифруемого текста", 0, 80)
Local $idMyedit1 = GUICtrlCreateEdit("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", 0,100, 200, 97, $ES_AUTOVSCROLL + $WS_VSCROLL)
GUICtrlCreateLabel("Результат шифровки-расшифровки", 0, 220)
Local $idMyedit2 = GUICtrlCreateEdit("", 0,250, 200, 97, $ES_AUTOVSCROLL + $WS_VSCROLL)
Local $idButton1 = GUICtrlCreateButton("закодировать в цезаря", 220, 100, 185, 25)
Local $idButton2 = GUICtrlCreateButton("раскодировать из цезаря", 220, 250, 185, 25)
GUISetState(@SW_SHOW)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $idButton1
;закодировать в шифр цезаря
$text = GUICtrlRead($idMyedit1)
local $y = ""
Local $key = GUICtrlRead($idkey)
local $n = 34
for $index = 1 to $n
local $indexsymbol = Mod(($n + $index+$key),$n)
$y = $y & StringMid($alf,$indexsymbol,1)
next
GUICtrlSetData($idMyedit1, "")
GUICtrlSetData($idMyedit2, "")
GUICtrlSetData($idMyedit1, StringUpper($text), 1)
GUICtrlSetData($idMyedit2, StringUpper($y), 1)
GUICtrlSetData($idalf,"")
GUICtrlSetData($idalf,StringUpper($y))
Case $idButton2
EndSwitch
WEnd
|