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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 4.88
NeonLost
Пес войны
75 / 86 / 3
Регистрация: 23.02.2012
Сообщений: 653
#1

Шифрование текста. XOR - C++

18.05.2012, 14:47. Просмотров 4474. Ответов 8
Метки нет (Все метки)

Помогите с шифрование текста...с числоми вроде получалось. Что значит эта ошибка и как ее испрвить?..)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int main()
{
    string Text="Hello World";
    for (int i=1;i<=Text.length();i++)
    {
       char mask=(sin(i)*400)-(cos(i)*250/20);
       Text=(Text^mask); //   <--ошибка в этой строке
    }
    cout<<Text;
}
ошибка:error C2676: бинарный "^": "std::string" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору.
Отсутствует оператор "^" соответствующий этим операндам.

как я понял в std::string нет перегруженного оператора "^ "?..)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2012, 14:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Шифрование текста. XOR (C++):

XOR шифрование - C++
Задание:Написать программу на выбранном языке программирования, реализующую описанный выше алгоритм для шифрования содержимого текстового ...

Шифрование Xor'ом - C++
Добрый день, уважаемые) тут такое дело, сел делать курсач и столкнулся с проблемой. Работа по шифрованию бинарными операциями и...

XOR шифрование - C++
Здравствуйте. Не хотел создавать ещё тему, но у меня не все гладко прошло с XOR шифрованием, не смотря на то, что там все просто. Не пойму...

Не выходит xor шифрование - C++
есть вот такой код string xorcrypt(const string&amp; str, const string&amp; key) { string retval; retval.resize(str.length()); for...

XOR шифрование/дешифрование - C++
Всем привет. Пож-ста помогите написать программу, шифрующую/дешифрующую xor маску. 2 Примера : N1 из FF FF FF FF D2...

Шифрование XOR не работает с кириллицей - C++
Проблема и никак не могу решить. Функция XOR возвращает при исходной строке &quot;съешь еще этих мягких мексиканских кактусов да выпей...

8
ggmann
20 / 20 / 1
Регистрация: 06.10.2008
Сообщений: 173
18.05.2012, 14:51 #2
ты не можеш обратится к всему Text , тебе нужно поелементно его ксорить
1
NeonLost
Пес войны
75 / 86 / 3
Регистрация: 23.02.2012
Сообщений: 653
18.05.2012, 14:55  [ТС] #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int main()
{
    char Text[]="Hello World";
    for (int i=0;i<=11;i++)
    {
       char mask=(sin(3.14)*400)-(cos(3.14)*250/20);
       Text[i]=(Text[i]^mask);
    }
    for (int i=0;i<=11;i++) cout<<Text[i];
    cout<<endl;
    for (int i=0;i<=11;i++)
    {
       char mask=(sin(3.14)*400)-(cos(3.14)*250/20);
       Text[i]=(Text[i]^mask);
    }
    for (int i=0;i<=11;i++) cout<<Text[i];
    getchar();
}
спс, вот так работает)
0
ggmann
20 / 20 / 1
Регистрация: 06.10.2008
Сообщений: 173
18.05.2012, 16:48 #4
вместо i<=11 можеш написать Text.size(); =)
1
JokerNN
132 / 128 / 36
Регистрация: 29.12.2011
Сообщений: 359
18.05.2012, 17:15 #5
Цитата Сообщение от ggmann Посмотреть сообщение
вместо i<=11 можеш написать Text.size(); =)
О_о давно такие выкрутасы с Char* можно делать?)
0
NeonLost
Пес войны
75 / 86 / 3
Регистрация: 23.02.2012
Сообщений: 653
18.05.2012, 23:21  [ТС] #6
Цитата Сообщение от ggmann Посмотреть сообщение
вместо i<=11 можеш написать Text.size(); =)
да да да)))
0
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,019
19.05.2012, 02:04 #7
Цитата Сообщение от ggmann Посмотреть сообщение
вместо i<=11 можеш написать Text.size(); =)
точнее
C++
1
sizeof(Text)/sizeof(*Text)
это не string
0
ggmann
20 / 20 / 1
Регистрация: 06.10.2008
Сообщений: 173
22.05.2012, 11:12 #8
ой, незаметил что там чар, думал стринга сори
0
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
22.05.2012, 12:36 #9
>> for (int i=1;i<=Text.length();i++)

зы: индексы начинаются с 0. правильно:

for(int i=0; i<Text.length(); i++)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2012, 12:36
Привет! Вот еще темы с ответами:

Шифрование строк [Метод XOR] - C++
Некорректное шифрование строк. Шифрование проводится с помощью метода XOR. // Использование XOR для шифрования и расшифровки...

Шифрование XOR не кодирует бинарные данные - C++
Текст кодирует/декодирует нормально.Бинарные файлы НЕТ. char tst=&quot;fnfdnbdlfkbpfdgkgfdm&quot;; wchar_t in=L&quot;F:\\test\\1.exe&quot;; wchar_t...

Шифрование текста, табличная замена текста - C++
Один из простейших способов шифровки текста состоит в табличной замене каждого символа другим символом - его шифром. Выбрать некоторую...

Шифрование текста - C++
необходимо создать программу что бы зашифровать и расшифровать данный текст путем замены буквы на следующую по алфавиту. помогите...


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

Или воспользуйтесь поиском по форуму:
9
Yandex
Объявления
22.05.2012, 12:36
Ответ Создать тему
Опции темы

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