Азбука Морзе C#

Азбука Морзе – это один из способов кодирования букв, цифр и других символов. Для кодирования какого-либо символа используется набор знаков, состоящий из “точек” и “тире”. В этой статье мы разберем исходный код программы, которая выполняет шифрование символов в код азбуки Морзе, а также выполняет обратное действие – дешифровку. Программа написана на языке программирования C#. В конце статьи вы можете скачать исходник этой программы, написанной в среде разработки Visual Studio.

В таблице приводятся коды букв азбуки Морзе для русского и английского алфавита, а также для цифр.

Азбука Морзе. Коды символов

Азбука Морзе. Разбор программы

Интерфейс программы представлен четырьмя текстовыми полями и двумя кнопками. В левом столбце (шифрование) расположены элементы управления: textBox1, textBox2 и button1; в правом (дешифровка) – textBox3, textBox4 и button2.

Азбука Морзе. Интерфейс программы

Интерфейс программы

Проводим исходный текст программы для шифрования азбукой Морзе.

В массиве символов characters содержатся все символы (русские буквы и цифры), которые программа может шифровать и дешифровать. В массиве строк codeMorse хранятся последовательности кода азбуки Морзе для символов в том же порядке, что и символы в characters.

При нажатии кнопки “Зашифровать” происходит следующее (строки 39-55): в переменную input заносится текст из textBox1, затем этот текст переводится в верхний регистр с помощью метода ToUpper(). Далее в цикле foreach перебираем посимвольно строку input. Для каждого символа выполняем поиск такого же символа в массиве characters (пробелы игнорируются) с помощью метода IndexOf() и сохраняем его номер в переменную index. “Добавляем” к строке вывода (output) код Морзе из массива codeMorse, в качестве номера элемента указываем index. Разделяем коды Морзе пробелами. С помощью метода Remove() удаляем последний символ в строке output – он является пробельным символом. И, наконец, выводим результат шифрования на экран в textBox2.

Процесс дешифровки по азбуке Морзе реализован по аналогии с шифрованием, поэтому говорить о нем подробно нет смысла. Отметим лишь, что к входной строке применяется метод Split(), который разбивает строку input на массив строк, разделенных пробелом. Каждый элемент этого массива будет являться одним закодированным символом.

Демонстрация работы программы “Азбука Морзе”:

Азбука Морзе. Демонстрация работы программы

Скачать исходник программы можно, нажав на кнопку ниже.

Скачать исходник

 

 

Смотрите также:

Азбука Морзе – Википедия

 

Азбука Морзе C#
5 (100%) 1 vote

Поделиться в соц. сетях:

3 комментария(ев) к статье “Азбука Морзе C#

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">