Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2019
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.68 KB | None | 0 0
  1. def encode_to_morse(text):
  2. a = [list(i) for i in text.split(' ')]
  3. k = ''
  4. for i in a:
  5. s = ''
  6. for j in i:
  7. s += MorseCode[j] + ' '
  8. k += ' ^ ' + s[:-1]
  9. return k[3:]
  10.  
  11.  
  12. def decode_from_morse(txt):
  13. a = [i for i in txt.split()]
  14. decode_morse = {
  15. '--.-': 'q',
  16. '.--': 'w',
  17. '.': 'e',
  18. '.-.': 'r',
  19. '-': 't',
  20. '-.--': 'y',
  21. '..-': 'u',
  22. '..': 'i',
  23. '---': 'o',
  24. '.--.': 'p',
  25. '.-..': 'l',
  26. '-.-': 'k',
  27. '.---': 'j',
  28. '....': 'h',
  29. '--.': 'g',
  30. '..-.': 'f',
  31. '-..': 'd',
  32. '...': 's',
  33. '.-': 'a',
  34. '--..': 'z',
  35. '-..-': 'x',
  36. '-.-.': 'c',
  37. '...-': 'v',
  38. '-...': 'b',
  39. '-.': 'n',
  40. '--': 'm'}
  41. code = ''
  42. for i in a:
  43. if i == '^':
  44. code += ' '
  45. else:
  46. code += decode_morse.get(str(i), str(i))
  47. return code
  48.  
  49.  
  50. def main():
  51. global start
  52. a = input(
  53. 'Укажите, пожалуйста, на каком языке сообщение: 1 - Английский, 2 - Азбука морзе, 3 - Выход.')
  54. if a == '3':
  55. return False
  56. while a != '1' and a != '2':
  57. print('Ошибка ввода')
  58. a = input(
  59. 'Укажите, пожалуйста, на каком языке сообщение: 1 - Английский, 2 - Азбука морзе, 3 - Выход.')
  60. if start == 0:
  61. print('В сообщении или коде должны быть только латинские буквы и пробелы.')
  62. print('Пробелы в азбуке морзе оформляютя как знак " ^ ", а между буквами стоит одинарный пробел.')
  63. start = 1
  64. if a == '1':
  65. print(encode_to_morse(input().lower()))
  66. if a == '2':
  67. print(decode_from_morse(input().lower()))
  68. if a == '3':
  69. return False
  70. return True
  71.  
  72.  
  73. start = 0
  74. global MorseCode
  75. MorseCode = {'q': '--.-',
  76. 'w': '.--',
  77. 'e': '.',
  78. 'r': '.-.',
  79. 't': '-',
  80. 'y': '-.--',
  81. 'u': '..-',
  82. 'i': '..',
  83. 'o': '---',
  84. 'p': '.--.',
  85. 'l': '.-..',
  86. 'k': '-.-',
  87. 'j': '.---',
  88. 'h': '....',
  89. 'g': '--.',
  90. 'f': '..-.',
  91. 'd': '-..',
  92. 's': '...',
  93. 'a': '.-',
  94. 'z': '--..',
  95. 'x': '-..-',
  96. 'c': '-.-.',
  97. 'v': '...-',
  98. 'b': '-...',
  99. 'n': '-.',
  100. 'm': '--'}
  101. a = True
  102. while a:
  103. a = main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement