0 / 0 / 0
Регистрация: 06.01.2018
Сообщений: 26
1

Сравнение элементов массива и сдвиг (Ну или шифр Цезаря)

14.04.2018, 22:49. Показов 794. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"rus");
    system("color 0C");
    const int ARRSIZE = 50;
    int A;
    char H[]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    char L[]="abcdefghijklmnopqrstuvwxyz";
    cout << "\n  1 - Шифровка\n  2 - Дешифровка" << endl;
    (cin >> A).get();
switch (A)
{
 
case 1:
   {
   int cont1;
   int Key;
   char YW[ARRSIZE];
   cout << "Введите ключ" << endl;
   (cin >> Key).get();
    cout << "Введите слово" << endl;
    cin.getline(YW,ARRSIZE);
   // int Z=strlen(YW);
  //  cout<< Z;
for(int i=0; i<strlen(YW);i++)
{
    for(int j=0; j<strlen(H); i++)
    {
        for(int k=0; k<strlen(L);i++)
        {
 
         if(YW[i]==H[j])
         {
           YW[i]=H[j+Key];
           cout << YW;
         }
 
        if(YW[i]==L[k])
         {
           YW[i]=L[k+Key];
           cout << YW;
         }
 
 
 
        }
 
    }
 
 
}
 
}
}
return 0;
}
Собственно, задача такова, чтобы сравнить все элементы массива YW с элементами массивов H и L и в случае нахождения одинаковых, должно быть YW[i]=L[k+Key];
А если проще, то просто попытка написать шифр Цезаря... но чот не выходит.
Заранее спасибо за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.04.2018, 22:49
Ответы с готовыми решениями:

Шифр Цезаря. Обратный сдвиг
#include&lt;stdio.h&gt; #include&lt;string.h&gt; int main() { char E = &quot;ABCDEFGHIJKLMNOPQRSTUVWXYZ&quot;; ...

Шифр цезаря,сдвиг букв
Есть прога,считывающая кол-во слов в текстовом файле,нужно дописать шифр Цезаря,который бы сдвигал...

Шифр Цезаря. Исправить цикл или замените любым другим
Здравствуйте, есть такой код, в этом цикле &quot;while (a!='\0')&quot; есть ошибка, ну точнее есть &quot;особый...

Расшифровать файл (шифр - перестановка или сдвиг)
Файл досовской кодировки, имеет простой способ шифрации перестановка, сдвиг или аналогичные...

1
1505 / 968 / 812
Регистрация: 30.04.2016
Сообщений: 3,334
05.05.2018, 23:42 2
TailaLaira, здравствуйте! Вот код дешифровки (шифровку можно сделать по аналогии):

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
#include <bits/stdc++.h>
 
    using namespace std;
 
int main() {
    string str;
    int k, p;
    cout << "Enter a string:\n";
    getline(cin, str);
    cout << "Enter a shift value:\n";
    cout << "k = ";
    cin >> k;
    cout << "Target info:\n";
    for (int i = 0; i < str.size(); i++) {
        if (int(str[i]) - k < 65) {
            p = 26 - k + int(str[i]);
            cout << char(p);
        } else {
            cout << char(str[i] - k);
        }
    }
    system("pause");
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2018, 23:42
Помогаю со студенческими работами здесь

Шифр Цезаря и шифр Виженера
1. Используя шифр Цезаря расшифруйте слово ЛГПЗРГ. Шифр Цезаря для русского алфавита со сдвигом на...

Шифр Цезаря
Алфавит представляет из себя массив символов и задается методом setAlphabet; Значение сдвига...

Шифр Цезаря
Реализовать шифр Цезаря на Delphi. Программу написал, но нужна помощь в реализации пробелов....

Шифр цезаря
Никак не могу понять в чем проблема, может кто подсказать? Стараюсь реализовать шифр цезаря. В этом...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru