Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Шифрование и дешифрование методом Гронсфельда 
:(
    Опции темы
Hetls
Дата 24.1.2017, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 18.10.2016
Где: Русь Матушка! !!

Репутация: нет
Всего: нет



Язык C++. Суть задачи, в том, что бы зашифровать или дешифровать заданный текст (методом Гронсфельда), с использованием модулей.
Но проблема, в том, что, как бы я не старался исправить ошибки, прога всё равно нормально не работает(

Код

#include <iostream>
#include <fstream>
#include <string.h>
#include <cstdlib>
#include <sstream>
#include <ctime>
#include <string>
#include <algorithm>

using namespace std;

int n;

//Модуль ввода
void vvod (const char)
{

const char * aa = {"а, б, в, г, д, е, ё, ж, з, и, й, к, л, м, н, о, п, р, с, т, у, ф, х, ц, ч, ш, щ, ъ, ы, ь, э, ю, я, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, *, !, @, #, $, %, ^, &,', <, >, ?"};
    
    cout<<"\t\t\tВыберете действие"<<endl;
    cout<<'\n';
    cout<<"Для выбора действия - шифрование, введите 1"<<endl;
    cout<<"Для выбора действия - дешифрование, введите 2"<<endl;
    cout<<"------------------------------------------------------------------------------\n";
    cin>>n;
    cout<<"\n----------------------------------------------------------------------------\n";

    const char* a = "укроп";
}

//Модуль обработки 1 (шифрование)
void shifrovania (int * arr)

    if(n==1){
        
    int * arr = new int[strlen("a")];
 
    for(int i = 0; i < strlen("a"); ++i) {
        srand(time(0) * (i - 5));
        arr[i] = rand() % 9;
    }
 
    string b;
 
    for(int i = 0; i < strlen("a"); ++i) {
        b.push_back(char("a"[i] + arr[i]));
    }
 
    cout << b << endl << endl;
 
    for(int i = 0; i < strlen(("a")); ++i) {
        cout << arr[i] << " ";
    }
}
}

 //Модуль обработки 2 (дешифрование)
 void deshifrovania (int *arr)
 {
    else if(n==2){
    
    int * arr = new int[strlen(a)]; 
 
    string b;
 
    for(int i = 0; i < strlen(a); ++i) {
        b.push_back(char(a[i] + arr[i]));
    }
}
}

//Модуль вывода
vvod vivoda (int * arr)
{
cout << b << endl << endl;
}

int main() {
    
    setlocale (LC_ALL, "Russian");
const char * aa
const char *a
int * arr = new int[strlen(a)];

    system ("pause");
    return 0;   
}


Это сообщение отредактировал(а) Hetls - 24.1.2017, 14:14
PM MAIL WWW IM Skype GTalk Jabber AOL YIM MSN   Вверх
feodorv
Дата 24.1.2017, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Цитата(Hetls @  24.1.2017,  07:54 Найти цитируемый пост)
int main() {
    
    setlocale (LC_ALL, "Russian");
const char * aa
const char *a
int * arr = new int[strlen(a)];
    system ("pause");
    return 0;   
}


А что здесь должно работать?


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
vol4ek
Дата 24.1.2017, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


конь в пальто
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 1.5.2011
Где: Минск

Репутация: нет
Всего: 0



Цитата(feodorv @ 24.1.2017,  12:40)
Цитата(Hetls @  24.1.2017,  07:54 Найти цитируемый пост)
int main() {
    
    setlocale (LC_ALL, "Russian");
const char * aa
const char *a
int * arr = new int[strlen(a)];
    system ("pause");
    return 0;   
}


А что здесь должно работать?

вроде бы задача не для тех кто язык не первый день изучает, как епрст можно выложить код, который аж глаза режет???

Добавлено через 1 минуту и 54 секунды
Цитата(Hetls @ 24.1.2017,  07:54)
с использованием модулей.

кого? может функций?

Добавлено через 3 минуты и 51 секунду
Цитата(Hetls @ 24.1.2017,  07:54)
const char* a = "укроп";

раз ты такой умный, то дальше сам допишешь
Код

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <string>

using namespace std;

int * in(string a, string * b) 
{
    int * arr = new int[a.size()];
    for(int i = 0; i < a.size(); ++i) {
        srand(time(0) * (i - 5));
        arr[i] = rand() % 10 - 5;
    }
    for(int i = 0; i < a.size(); ++i)
    {
        b->push_back(char((a[i]) + arr[i]));
    }
    return arr;
}

string out(string a, int arr[])
{
    string b;
    for(int i = 0; i < a.size(); ++i) {
        b.push_back(char((a[i]) - arr[i]));
    }
    return b;
}


int main ()
{
    setlocale(0, "");
    string  str;
    string input = "вафля";
    int * h = new int[input.size()];
    h = in(input, &str);
    
        cout << "Зашифрованное слово = " << str << endl;
        cout << "Закрытый ключ = ";
        for (int s = 0; s < input.size(); s++)
        {
            cout << h[s];
        }
        cout << endl;
    cout << "Расшифрованное слово = " << out(str, h) << endl;
    delete [] h;
    system("pause");
    return 0;
}


PM MAIL ICQ   Вверх
Hetls
Дата 24.1.2017, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 18.10.2016
Где: Русь Матушка! !!

Репутация: нет
Всего: нет



Цитата(vol4ek @ 24.1.2017,  12:55)
Цитата(feodorv @ 24.1.2017,  12:40)
Цитата(Hetls @  24.1.2017,  07:54 Найти цитируемый пост)
int main() {
    
    setlocale (LC_ALL, "Russian");
const char * aa
const char *a
int * arr = new int[strlen(a)];
    system ("pause");
    return 0;   
}


А что здесь должно работать?

вроде бы задача не для тех кто язык не первый день изучает, как епрст можно выложить код, который аж глаза режет???

Добавлено @ 12:57
Цитата(Hetls @ 24.1.2017,  07:54)
с использованием модулей.

кого? может функций?

Добавлено @ 12:59
Цитата(Hetls @ 24.1.2017,  07:54)
const char* a = "укроп";

раз ты такой умный, то дальше сам допишешь
Код

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <string>

using namespace std;

int * in(string a, string * b) 
{
    int * arr = new int[a.size()];
    for(int i = 0; i < a.size(); ++i) {
        srand(time(0) * (i - 5));
        arr[i] = rand() % 10 - 5;
    }
    for(int i = 0; i < a.size(); ++i)
    {
        b->push_back(char((a[i]) + arr[i]));
    }
    return arr;
}

string out(string a, int arr[])
{
    string b;
    for(int i = 0; i < a.size(); ++i) {
        b.push_back(char((a[i]) - arr[i]));
    }
    return b;
}


int main ()
{
    setlocale(0, "");
    string  str;
    string input = "вафля";
    int * h = new int[input.size()];
    h = in(input, &str);
    
        cout << "Зашифрованное слово = " << str << endl;
        cout << "Закрытый ключ = ";
        for (int s = 0; s < input.size(); s++)
        {
            cout << h[s];
        }
        cout << endl;
    cout << "Расшифрованное слово = " << out(str, h) << endl;
    delete [] h;
    system("pause");
    return 0;
}


Мне сказали, что нужно код разбить на модули (каждый модуль отражает определённое действие - ввод, шифрование, дешифрование и вывод).
И если я вас, как то, задел обычным словом "укроп", которое обозначает растение, то не моя вина...

PM MAIL WWW IM Skype GTalk Jabber AOL YIM MSN   Вверх
Olej
Дата 24.1.2017, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 30.11.2016

Репутация: нет
Всего: нет



Цитата(Hetls @ 24.1.2017,  14:13)
И если я вас, как то, задел обычным словом "укроп", которое обозначает растение, то не моя вина...

Это раньше было: "слово укроп обозначало растение".
Согласно последним изданным толковым словарям русского языка, слово "укроп" является синонимом слова "придурок".  smile 
PM MAIL   Вверх
Hetls
Дата 24.1.2017, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 18.10.2016
Где: Русь Матушка! !!

Репутация: нет
Всего: нет



Цитата(Olej @ 24.1.2017,  14:53)
Цитата(Hetls @ 24.1.2017,  14:13)
И если я вас, как то, задел обычным словом "укроп", которое обозначает растение, то не моя вина...

Это раньше было: "слово укроп обозначало растение".
Согласно последним изданным толковым словарям русского языка, слово "укроп" является синонимом слова "придурок".  smile

да ладно https://www.google.ru/webhp?sourceid=chrome...%80%D0%BE%D0%BF ?
PM MAIL WWW IM Skype GTalk Jabber AOL YIM MSN   Вверх
Olej
Дата 24.1.2017, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 30.11.2016

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
vol4ek
Дата 24.1.2017, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


конь в пальто
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 1.5.2011
Где: Минск

Репутация: нет
Всего: 0



господа товарищи! Хватит оффтоп разводить 
Olej, тебя в первую очередь касается. Алгоритм шифрования реализован, функции написаны, дальше даже калека сможет доделать  smile 
PM MAIL ICQ   Вверх
Olej
Дата 24.1.2017, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 30.11.2016

Репутация: нет
Всего: нет



Цитата(vol4ek @ 24.1.2017,  22:19)
господа товарищи! Хватит оффтоп разводить 
Olej, тебя в первую очередь касается. Алгоритм шифрования реализован, функции написаны, дальше даже калека сможет доделать  smile

Ну а что ж там этот калека ещё не доделал? smile 

Это сообщение отредактировал(а) Olej - 24.1.2017, 22:26
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1742 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.