Форум программистов, компьютерный форум CyberForum.ru

Шифрование умножением на бинарные матрицы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ непрямоугольная матрица, ввод и вывод http://www.cyberforum.ru/cpp-beginners/thread1674289.html
Из входного потока вводится непрямоугольная матрица целых чисел , i=1,...j=1,....,ni. Значения m и ni заранее неизвестны и вводятся из входного потока. Сформировать ВЕКТОР {bi}, i=1,..,m, i-ый элемент которого РАВЕН количеству элементов i-ой строки матрицы, отсутсвующих в (i+1)-ой строке (Bm равен количеству элементов m-ой строки матрицы, отсутсвующих в первой строке). Проблема возникла с...
C++ Ошибка: Run-Time Check Failure #2 - Stack around the variable 'ttt1' was corrupted Ошибка при дебаге. Помогите понять в чем дело. Visual Studio 2010 Код #include <iostream> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread1674232.html
C++ как вы рассчитываете стоимость своей работы программиста?
Программисты C++ посоветуйте как вы рассчитываете стоимость своей работы? Если в html все более чем понятно как рассчитать время и стоимость работы, то в С++ это проблематично... Мне как начинающей к примеру, иногда требуется походить подумать как запрограммировать ту или иную задачу, а иногда два дня, а потом еще пару дней допилить ошибки. Заказчик может подумать, что ты не работаешь... С...
Для каждой буквы первого слова определить, входит ли она во второе слово C++
Даны 2 слова. Для каждой буквы первого слова (в том числе и для повторяющихся в этом слове букв) определить, входит ли она во второе слово. Например, если заданы слова информация и процессор, то для букв первого из них ответом должно быть: нет нет нет да да нет нет да нет нет. В чём ошибка? #include <iostream> #include <string> #include <conio.h> using namespace std;
C++ Вывести все треугольники в рандомном порядке, рандомном месте и с рандомной ориентацией (Glut в С++) http://www.cyberforum.ru/cpp-beginners/thread1674190.html
#include <windows.h> #include <glut.h> //Подключение библиотеки glut.h #include <gl/GL.h> void MyDisplay() { int i = 0; glClear(GL_COLOR_BUFFER_BIT); float X1 = { 0, 0};
C++ Разработать класс "Зарплата" Помогите пожалуйста, срочно. Среда Eclipse. Разработать класс "зарплат". Класс должен содержать следующие элементарные переменные и методы: Фамилия сотрудника, код работы, количество отработанных дней за месяц, тариф за один день, конструкторы: По умолчанию, для определения всех переменных, метод для расчета зарплаты, метод для вывода значений на экран. подробнее

Показать сообщение отдельно
Faust611
2 / 2 / 0
Регистрация: 16.06.2015
Сообщений: 73

Шифрование умножением на бинарные матрицы - C++

01.03.2016, 14:23. Просмотров 241. Ответов 2
Метки (Все метки)

Пытаюсь получить сделать шифрование на бинарные матрицы.Получился вот такой вот код.Ну почему выдает ошибку когда пытаюсь скомпилировать.
может я конечно что-то неправильно написал.Помогите разобраться пожалуйста.
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
132
133
134
135
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
//funkcia podscheta dlinni massiva
unsigned int Lenght(const char s[])
{
 int L=0;
 while(s[L++]);
 return (L-1);
}
 
int main()
{
 unsigned int  key[8][8];
 
 //stroka 1
 key[0][0]=1;
 key[0][1]=0;
 key[0][2]=0;
 key[0][3]=0;
 key[0][4]=1;
 key[0][5]=0;
 key[0][6]=0;
 key[0][7]=0;
 //строка 2
 key[1][0]=0;
 key[1][1]=1;
 key[1][2]=1;
 key[1][3]=0;
 key[1][4]=0;
 key[1][5]=0;
 key[1][6]=1;
 key[1][7]=0;
 //stroka 3
 key[3][0]=0;
 key[3][1]=1;
 key[3][2]=1;
 key[3][3]=1;
 key[3][4]=0;
 key[3][5]=1;
 key[3][6]=1;
 key[3][7]=1;
  //stroka 4
 key[0][0]=1;
 key[0][1]=0;
 key[0][2]=1;
 key[0][3]=1;
 key[0][4]=1;
 key[0][5]=1;
 key[0][6]=0;
 key[0][7]=1;
  //stroka 5
 key[0][0]=0;
 key[0][1]=0;
 key[0][2]=0;
 key[0][3]=1;
 key[0][4]=0;
 key[0][5]=1;
 key[0][6]=1;
 key[0][7]=0;
  //stroka 6
 key[0][0]=1;
 key[0][1]=1;
 key[0][2]=0;
 key[0][3]=1;
 key[0][4]=0;
 key[0][5]=0;
 key[0][6]=1;
 key[0][7]=0;
  //stroka 7
 key[0][0]=0;
 key[0][1]=0;
 key[0][2]=0;
 key[0][3]=1;
 key[0][4]=1;
 key[0][5]=0;
 key[0][6]=1;
 key[0][7]=0;
  //stroka 8
 key[0][0]=0;
 key[0][1]=1;
 key[0][2]=1;
 key[0][3]=0;
 key[0][4]=1;
 key[0][5]=0;
 key[0][6]=0;
 key[0][7]=1;
 
 char abc[28]="abcdefghijklmnopqrstuvwxyz";
 
 //kodiruem slovo "studentaa"
 unsigned short word[9];
 
 char text[15]="studentaa";
 
 int w=0;
 
 cout<<""<<endl;
 cout<<"ishodnoe slovo: studentaa"<<endl;
 while(w<=Lenght(text))
 {
  for(int i=0;i<25;i++)
  {
 
   if(text[w]==abc[i])word[w]=i;
  }
 
  w++;
 }
 
 
 unsigned short cript[9]={0};
 
 cout<<"polychenniy shifr v vide chastey razbityh po 3"<<endl<<" "<<endl;
 for(int k=0;k<9;k+=3)
 {
  for(int i=0;i<8;i++)
  {
  cript[i+k]=(key[i][i]*word[0+k]+key[i][i]*word[1+k]+key[i][i]*word[2+k]);
 
  cout<<cript[i+k]<<" ";
  }
  cout<<endl;
 }
 cout<<" polychenniy shifr v vide stroki nomerov i bykv:"<<endl;
 
 for(int i=0;i<9;i++)
 cout<<cript[i]<<"="<<abc[cript[i]]<<endl;
 cout<<endl<<"Pozalysta nazmite ENTER";
 cin.get();
 
 return 0;
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru