Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
П3.docx
Скачиваний:
17
Добавлен:
22.07.2019
Размер:
694.63 Кб
Скачать

5 Тестирование

После завершения программы было проведено тестирование. В результате этого тестирования и исправления ошибок была получена программа, верно выполняющая поставленные задачи.

6 Заключение

По завершении курсовой работы была создана программа «Шифр Виженера», выполняющая шифрование или дешифрование сообщений на русском языке.

Все задачи, указанные в ТЗ, программа успешно выполняет.

Для написания данной программы была использована программная среда Microsoft Visual C# 2005.

Приложение А (справочное)

Блок-схемы процедур

Процедура шифрования:

Процедура дешифрования:

Для Form2 и Form3 (вставка из файла):

Для Form2 и Form3 (сохранение в файл):

Приложение Б (справочное)

Листинги процедур программы:

Для Form2 (шифрование):

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace WindowsApplication1

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void button3_Click(object sender, EventArgs e)

{

if (saveFileDialog1.ShowDialog() == DialogResult.Cancel) { }

else richTextBox2.SaveFile(saveFileDialog1.FileName);

}

private void button2_Click(object sender, EventArgs e)

{

int i,j;

for (j = 0; j < textBox1.TextLength; j++)

if (!((textBox1.Text[j] >= 'А') && (textBox1.Text[j] <= 'Я') || (textBox1.Text[j] == ' ')))

{

textBox1.Clear();

break;

}

for (i = 0; i < richTextBox1.TextLength; i++)

if (!((richTextBox1.Text[i] >= 'А') && (richTextBox1.Text[i] <= 'Я') || (richTextBox1.Text[i] == ' ')))

{

richTextBox1.Clear();

break;

}

if (!(richTextBox1.Text == "" || textBox1.Text == ""))

{

richTextBox2.Clear();

int n = richTextBox1.TextLength, cs = 0;

for (i = 0; i < n; i++)

{

int x = ((Convert.ToInt32(richTextBox1.Text[i]) + Convert.ToInt32(textBox1.Text[(i - cs) % textBox1.TextLength])) % 32);

if (richTextBox1.Text[i] == ' ') { richTextBox2.Text += ' '; cs++; }

else richTextBox2.Text += (Convert.ToChar(1040 + ((x >= 0) ? x : (x + 32)))).ToString();

}

}

else

{

Form4 x = new Form4();

x.ShowDialog();

}

}

private void button1_Click(object sender, EventArgs e)

{

if (openFileDialog1.ShowDialog() == DialogResult.Cancel) { }

else richTextBox1.LoadFile(openFileDialog1.FileName);

}

}

}

Для Form3 (дешифрование):

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace WindowsApplication1

{

public partial class Form3 : Form

{

public Form3()

{

InitializeComponent();

}

private void button3_Click(object sender, EventArgs e)

{

if (saveFileDialog1.ShowDialog() == DialogResult.Cancel) { }

else richTextBox2.SaveFile(saveFileDialog1.FileName);

}

private void button2_Click(object sender, EventArgs e)

{

int i,j;

for (j = 0; j < textBox1.TextLength; j++)

if (!(textBox1.Text[j] >='А' && textBox1.Text[j] <='Я' || textBox1.Text[j] == ' '))

{

textBox1.Clear();

break;

}

for (i = 0; i < richTextBox1.TextLength; i++)

if (!((richTextBox1.Text[i] >= 'А') && (richTextBox1.Text[i] <= 'Я') || (richTextBox1.Text[i] == ' ')))

{

richTextBox1.Clear();

break;

}

if (!(richTextBox1.Text == "" || textBox1.Text == ""))

{

richTextBox2.Clear();

int n = richTextBox1.TextLength, cs = 0;

for (i = 0; i < n; i++)

{

int x = ((Convert.ToInt32(richTextBox1.Text[i]) - Convert.ToInt32(textBox1.Text[(i - cs) % textBox1.TextLength])) % 32);

if (richTextBox1.Text[i] == ' ') { richTextBox2.Text += ' '; cs++; }

else richTextBox2.Text += (Convert.ToChar(1040 + ((x >= 0) ? x : (x + 32)))).ToString();

}

}

else

{

Form4 x = new Form4();

x.ShowDialog();

}

}

private void button1_Click(object sender, EventArgs e)

{

if (openFileDialog1.ShowDialog() == DialogResult.Cancel) { }

else richTextBox1.LoadFile(openFileDialog1.FileName);

}

}

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]