С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
sarvill
0 / 0 / 0
Регистрация: 02.06.2016
Сообщений: 1
1

Дешифрование Цезаря

12.06.2017, 10:18. Просмотров 467. Ответов 1

Всем привет) Помогите написать дешифратор Шифра цезаря. Буду очень благодарен
C#
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication1
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            textBox3.Text = "";
            int move = 0;
            string[] array = new string[] { "а", "б", "в",
 "г", "д", "е", "ё", "ж",
"з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с",
"т", "у", "ф", "х",
 "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я" };
            try
            {
                move = Convert.ToInt32(textBox1.Text);
            }
            catch
            {
                MessageBox.Show("Установите шаг шифрования!");
                return;
            }
 
            string[] array2;
            array2 = array.Skip(move).Concat(array.Take(move)).ToArray();
 
            foreach (string element in array2)
            {
 
            }
 
            string text = textBox2.Text;
            foreach (char bykva in text)
            {
                for (int i = 0; i < array.Length; i++)
                {
                    if (bykva.ToString().ToLower() == array[i])
                    {
                        textBox3.Text += array2[i];
                        break;
                    }
                    else
                    {
                        if (bykva.ToString() == " " || bykva.ToString() == "." ||
                        bykva.ToString() == "," || bykva.ToString() == ":" ||
                        bykva.ToString() == ";" || bykva.ToString() == "?" ||
                        bykva.ToString() == "!")
                        {
                            textBox3.Text += " ";
                            break;
                        }
                    }
                }
            }
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            Form1 fr2 = new Form1();
            fr2.Show();
            Hide();
            
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            textBox3.Text = "";
            int move = 0;
            string[] array = new string[] { "а", "б", "в",
 "г", "д", "е", "ё", "ж",
"з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с",
"т", "у", "ф", "х",
 "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я" };
            try
            {
                move = Convert.ToInt32(textBox1.Text);
            }
            catch
            {
                MessageBox.Show("Установите шаг шифрования!");
                return;
            }
 
            string[] array2;
            array2 = array.Skip(move).Concat(array.Take(move)).ToArray();
 
            foreach (string element in array2)
            {
 
            }
 
            string text = textBox2.Text;
            foreach (char bykva in text)
            {
                for (int i = 0; i < array.Length; i++)
                {
 
                    if (bykva.ToString().ToLower() == array[i])
                    {
                        textBox3.Text += array2[i];
                        break;
                    }
                    else
                    {
                        if (bykva.ToString() == " " || bykva.ToString() == "." ||
                        bykva.ToString() == "," || bykva.ToString() == ":" ||
                        bykva.ToString() == ";" || bykva.ToString() == "?" ||
                        bykva.ToString() == "!")
                        {
                            textBox3.Text += " ";
                            break;
                        }
                    }
                }
            }
        }
        }
    }
Добавлено через 38 минут
Помогите написать. Срочно надо
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2017, 10:18
Ответы с готовыми решениями:

Дешифрование файла
Доброго времени суток)) Уже несколько дней сижу над одной задачей: необходимо...

Шифр Хилла, дешифрование
Помогите пожалуйста с шифром Хилла. Использую алфавит из 29 символов. Шифрует...

Аффинный шифр (шифрование и дешифрование)
Ребята, помогите мне в написании кода программы шифрования и дешифрования...

Открытие файла и его последующее шифрование/дешифрование (алгоритм DES)
После открытия файла в textbox английские слова шифруются, а русские - нет. Как...

Код Цезаря, не нравится Value
На Value выбивает ошибку CS1061 Form using System; using...

1
Дмитрий3241
643 / 513 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
12.06.2017, 13:52 2
sarvill,
C#
1
2
3
4
5
6
7
8
private static void Main(string[] args) {
    var res = Decrypt("hello world");
    Console.WriteLine(string.Join(" ", res));
}
 
private static IEnumerable<char> Decrypt(IEnumerable<char> text, int sourceShift = 1) {
    return text.Select(c => (char)(c - sourceShift));
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2017, 13:52

Реализовать шифр Цезаря
Ребята, помогите, пожалуйста. Шифр Цезаря с ключом К=-5

Шифр Цезаря со случайным ключом
Доброго утра. В c# не так давно работаю, но нам поручили написать игру опираясь...

Шифр Цезаря с кодовым словом
Форумчане, помогите пожалуйста написать прогу . Шифр Цезаря у меня есть .В...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru