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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ непрямоугольная матрица, ввод и вывод http://www.cyberforum.ru/cpp-beginners/thread1674289.html
Из входного потока вводится непрямоугольная матрица целых чисел , i=1,...j=1,....,ni. Значения m и ni заранее неизвестны и вводятся из входного потока. Сформировать ВЕКТОР {bi}, i=1,..,m, i-ый...
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 слова. Для каждой буквы первого слова (в том числе и для повторяющихся в этом слове букв) определить, входит ли она во второе слово. Например, если заданы слова информация и процессор, то для...
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
Сообщений: 79

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

01.03.2016, 14:23. Просмотров 377. Ответов 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;
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru