Guest User

Untitled

a guest
May 12th, 2020
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 1.19 KB | None | 0 0
  1. alphabet_Eng=["a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"]
  2. alphabet_Russ=["а, б,в,г,д,е,ж,з,и,й,к,л,м,о,п,р,с,т,у,ф,х,ц,ч,ш,щ,ъ,ы,ъ,э,ю,я"]
  3. n=alphabet_Eng.length # кол-во символов в алфавите
  4. key=gets #ввод ключа с клавиатуры
  5.  
  6. file=file.open("message.txt","r+") #открытие+ чтение файла открытого текста
  7. file_length=file.length # подсчет символов в файле
  8. text = lines.join #
  9. key_Length=key.length # подсчет символов в введенном ключе
  10.  
  11. m=0 # номер символа открытого текста из массива alphabet_Eng
  12. q=0 # номер символа введенного ключа из массива alphabet_Eng
  13. while m<key_Length && q<key_Length # условие пока m и q не равны длине ключа
  14. m+=1
  15. q+=1
  16. symbol_Number=(key[m]+alphabet_Eng[q])%n # номер символа, который получается в результате формулы Виженера
  17. symbol=alphabet_Eng[Symbol_Number] # символ, который вычисляется по номеру из Symbol_Number
  18. end
Advertisement
Add Comment
Please, Sign In to add comment