Визуальный интерфейс - C#
Формулировка задачи:
Есть следующий программный код:
Необходимо создать простой блокнот, который будет открывать файл, используя вышеуказанный код, шифровать его и сохранять.
Помогите,пожалуйста, с реализацией, ибо в программировании я на начальном этапе, а с визуальным интерфейсом незнакома и вовсе.Просьба,максимально подробно комментировать все происходящее и код реализации, дабы самой разобраться "что есть что".
Заранее спасибо.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Афинный_Шифр_
{
class Program
{
static void Main(string[] args)
{
int a = 7, k = 3;//где а и k ключи шифра
//Строка, к которой применяется шифрование
string s = "";
//Строка - результат шифрования
string result = "";
// кодируемый алфавит
string alf = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
// переменная,для обозначения массива алфавита
int m = alf.Length;
//Вывод сообщения на экран
Console.WriteLine("Введите кодируемую строку");
//Считывание строки
s = Convert.ToString(Console.ReadLine());
//Выполение шифрования:
// Для каждого символа кодируемой строки;
for (int i = 0; i < s.Length; i++)
// Поиск соответствующего символа в алфавите;
for (int j = 0; j < alf.Length; j++)
{
// Если символ найден
if (s[i] == alf[j])
{
int x = j;
int c = ((x * a) + k) % 33;
//E(x)=(ax+к)\mod m (формула афинного шифра),где m-количество символов алфавита
}
Console.WriteLine("Результат шифрования");
Console.WriteLine(result += alf[c].ToString());
}
Console.ReadKey();
}
}
}Решение задачи: «Визуальный интерфейс»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
// Открываем файл
if (openFileDialog1.ShowDialog() == DialogResult.OK)
richTextBox1.LoadFile(openFileDialog1.FileName, RichTextBoxStreamType.PlainText);
}
private void button2_Click(object sender, EventArgs e)
{
int a = 7, k = 3;//где а и k ключи шифра
//Строка, к которой применяется шифрование
string s = richTextBox1.Text;
//Строка - результат шифрования
string result = "";
// кодируемый алфавит
string alf = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
// переменная,для обозначения массива алфавита
int m = alf.Length;
//Выполение шифрования:
// Для каждого символа кодируемой строки;
for (int i = 0; i < s.Length; i++)
// Поиск соответствующего символа в алфавите;
for (int j = 0; j < alf.Length; j++)
{
// Если символ найден
if (s[i] == alf[j])
{
int x = j;
int c = ((x * a) + k) % 33;
//E(x)=(ax+к)\mod m (формула афинного шифра),где m-количество символов алфавита
richTextBox2.Text += alf[c].ToString();
}
}
}
private void button3_Click(object sender, EventArgs e)
{
// Сохраняем файл
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
richTextBox2.SaveFile(saveFileDialog1.FileName, RichTextBoxStreamType.PlainText);
}
}
}