Мегаобучалка Главная | О нас | Обратная связь


Технология разработки приложения



2016-01-05 1020 Обсуждений (0)
Технология разработки приложения 0.00 из 5.00 0 оценок




 

Чтобы создать приложение, следует:

1) Открыть Microsoft Visual Studio 2010.

2) Выбрать пункт меню «Создать проект».

3) Выбрать в шаблоне С# «Приложение Windows Form» и нажать «ОК».

4) В открывшемся окне формы переносим компоненты из Панели элементов:

а) RichTextBox - c помощью этого элемента управления пользователь может вводить и изменять текст.

б) TabControl – обрабатывает и отображает для пользователя соответствующую коллекцию вкладок, содержащих элементы управления и компоненты.

в) ToolStrip – предоставляет панели инструментов и другие элементы интерфейса пользователя, поддерживающих множество форматов представления элементов.

г) Button – при нажатии возникает событие.

д) NumericUpDown – отображает единичное числовое значение, которое пользователь может увеличить или уменьшить с помощью кнопок «вверх-вниз» элемента управления.

е) Label – предоставляет элементу управления текс описания либо информацию во время выполнения.

5) Обработчик события метода Shifr1_Click отвечает за шифрование методом Цезаря. При нажатии кнопки «Шифрование» происходит кодирование текста.

6) Обработчик события метода DeShifr1_Click отвечает за дешифрование метода Цезаря. При нажатии кнопки «Дешифрование» происходит декодирование текста.

7) Обработчик события метода Shifr2_Click отвечает за шифрование методом Атбаш. При нажатии кнопки «Шифрование» происходит кодирование текста.

8) Нажать клавишу F5 и начать компиляцию программу.

9) Программа готова к использованию.

 

 


 

Описание программы

 

В обработчике событий Shifr1_Click происходит шифрование методом Цезаря и вывод кодированного сообщения в DeShifrText1:

private void Shifr1_Click(object sender, EventArgs e)

{

int key = Convert.ToInt32(numericUpDown1.Value.ToString());

//количество сдвигов

string s = ShifrText1.Text;//храню слово, которое будем шифровать

string s1 = "";//храню результат шифрования

string alf = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz";//работаю с английским алфавитом

string alfphabet = "АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя";//работаю с русским алфавитом

for (int i = 0; i < s.Length; i++)//цикл перебора букв шифруемого слова

{

if (s[i].ToString() == " " || s[i].ToString() == "." || s[i].ToString() == "," || s[i].ToString() == ":" || s[i].ToString() == ";" || s[i].ToString() == "?" || s[i].ToString() == "!") // эти знаки печатаются без зашифровки

{

s1 = s1 + s[i];

}

for (int j = 0; j < alfphabet.Length; j++)//цикл сравнения каждой бкувы с алфавитом

{

if (s[i] == alfphabet[j]) // в случае совпадения создаем темп, где храню номер буквы со сдвигом

{

int temp = j + 2*key;//номер буквы+сдвиг в темп

while (temp >= alfphabet.Length)//чтобы темп не уходил за рамки алфавита

temp -= alfphabet.Length;

s1 = s1 + alfphabet[temp];//заношу зашифрованную букву в переменную для ее хранения

}

}

for (int j = 0; j < alf.Length; j++)//цикл сравнения каждой буквы с алфавитом

if (s[i] == alf[j])

{

int temp = j + 2*key;//номер буквы-сдвиг в темп

while (temp >= alf.Length)//чтобы темп не уходил за рамки алфавита

temp -= alf.Length;

s1 = s1 + alf[temp];//заношу зашифрованную букву в переменную для ее хранения

}

}

DeShifrText1.Text = s1;

}

В обработчике событий DeShifr1_Click происходит декодирование сообщения, полученного раннее, которое тоже выводится на экран:

private void DeShifr1_Click(object sender, EventArgs e)

{

int key = Convert.ToInt32(numericUpDown1.Value.ToString());

//количество сдвигов

string s = ShifrText1.Text;//храню слово, которое будем шифровать

string s1 = "";//храню результат шифрования

string alf = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz";//работаю с английским алфавитом

string alfphabet = "АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя";//работаю с русским алфавитом

for (int i = 0; i < s.Length; i++)//цикл перебора букв шифруемого слова

{

if (s[i].ToString() == " " || s[i].ToString() == "." || s[i].ToString() == "," || s[i].ToString() == ":" || s[i].ToString() == ";" || s[i].ToString() == "?" || s[i].ToString() == "!") // эти знаки печатаются без зашифровки

{

s1 = s1 + s[i];

}

for (int j = 0; j < alfphabet.Length; j++)//цикл сравнения каждой бкувы с алфавитом

{

if (s[i] == alfphabet[j]) // в случае совпадения создаем темп, где храню номер буквы со сдвигом

{

int temp = j - 2*key+66;//номер буквы+сдвиг в темп

while (temp >= alfphabet.Length)//чтобы темп не уходил за рамки алфавита

temp -= alfphabet.Length;

s1 = s1 + alfphabet[temp];//заношу зашифрованную букву в переменную для ее хранения

}

}

for (int j = 0; j < alf.Length; j++)//цикл сравнения каждой буквы с алфавитом

if (s[i] == alf[j])

{

int temp = j - 2*key;//номер буквы-сдвиг в темп

while (temp >= alf.Length)//чтобы темп не уходил за рамки алфавита

temp -= alf.Length;

s1 = s1 + alf[temp];//заношу зашифрованную букву в переменную для ее хранения

}

}

В обработчике событий Shifr2_Click происходит кодирование методом Атбаш:

private void Shifr2_Click (object sender, EventArgs e)

{

string abc1 = "АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя";

string abc2 = "ЯяЮюЭэЬьЫыЪъЩщШшЧчЦцХхФфУуТтСсРрПпОоНнМмЛлКкЙйИиЗзЖжЁёЕеДдГгВвБбАа";

string abc3 = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvWwXxYyZz";

string abc4 = "ZzYyXxWwVvUuTtSsRrPpOoNnMmLlKkJjIiHhGgFfEeDdCcBbAa";

string str1 = "";

string str2 = ShifrText2.Text;

for (int i = 0; i < str2.Length; i++)

{

if (str2[i].ToString() == " " || str2[i].ToString() == "." || str2[i].ToString() == "," || str2[i].ToString() == ":" || str2[i].ToString() == ";" || str2[i].ToString() == "?" || str2[i].ToString() == "!") // определение знаков, которые печатаются без изменений

{

str1 = str1 + str2[i];

}

for (int l = 0; l < abc1.Length; l++)

if (str2[i] == abc1[l])

{

str1 = str1 + abc2[l];

}

for (int l = 0; l < abc4.Length; l++)

if (str2[i] == abc4[l])

{

str1 = str1 + abc3[l];

}

}

DeShifrText2.Text = str1 ;

}

В обработчике события выходToolStripMenuItem_Click_1 производится выход из приложения:

private void выходToolStripMenuItem_Click_1(object sender, EventArgs e)

{

Close();

}

В обработчике события цезарьToolStripMenuItem_Click происходит переход во вкладку кодирования методом Цезаря:

private void цезарьToolStripMenuItem_Click(object sender, EventArgs e)

{

tabControl1.SelectTab(0);

}

В обработчике события атбашToolStripMenuItem_Click происходит переход во вкладку кодирования методом Атбаш:

private void атбашToolStripMenuItem_Click(object sender, EventArgs e)

{

tabControl1.SelectTab(1);

}

В обработчике события о_программеToolStripMenuItem_Click открывает диалоговое окно «О программе»:

private void о_программеToolStripMenuItem_Click(object sender, EventArgs e)

{

AboutBox1 box = new AboutBox1();

box.Show();

}

 


 



2016-01-05 1020 Обсуждений (0)
Технология разработки приложения 0.00 из 5.00 0 оценок









Обсуждение в статье: Технология разработки приложения

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1020)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.005 сек.)