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

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

Войти
Регистрация
Восстановить пароль
 
Dante94
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 12
#1

Составить программу для шифрования информации - C++

15.04.2013, 17:51. Просмотров 618. Ответов 3
Метки нет (Все метки)

Составить программу для шифрования информации (в любом файле) с помощью операции "исключающая или". Т.е. дан файл с данными, которые нужно зашифровать с помощью "ключа" и файл "результат", в котором записываются зашифрованные данные."Ключ" должен вводится с клавиатуры.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2013, 17:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Составить программу для шифрования информации (C++):

Составить программу с массивами структурами. Заполнить структуры информации, составить - C++
Составить программу с массивами структурам согласно варианту. Заполнить структуры информации, составить запросы , и вывести результаты...

Составить программу вывода информации по имени - C++
Доброго времени суток, задали задачку в С++, сам попробовал написать но что то не работает. Смысл такой. Дана информация об институтах...

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

Реализовать программу для хранения информации о студентах - C++
Реализовать программу для хранения информации о студентах. Предусмотреть ввод следующих данных: ФИО, группа, средний балл, количество...

Написать программу для обработки информации об автомобилях - C++
Написать программу для обработки информации об автомобилях, сдаваемых на прокат (марка автомобиля, год выпуска, километраж). Программа...

Написать программу для обработки информации о проведении парусной регаты - C++
15. Написать программу для обработки информации о проведении парусной регаты. Информация включает следующие данные: - Название яхты. ...

3
abit
271 / 270 / 35
Регистрация: 03.02.2013
Сообщений: 756
15.04.2013, 18:30 #2
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 <fstream> 
 
using namespace std;
 
int main() 
{ 
    std::ifstream in("input.txt", std::ifstream::in | std::ifstream::binary);
    std::ofstream out("output.txt", std::ifstream::out | std::ifstream::binary);
    unsigned int data;
    unsigned int key;
    std::cout<<"Intput a key - ";
    std::cin>>key;
    data=in.get();
    while (in.good()) 
    {   
        out<<(char)(data^key); 
        data=in.get(); 
    };
    in.close();
    out.close();
}
Добавлено через 1 минуту
расшифровать назад - можно задав шифрованный файл в качестве входного и с тем же ключом, что был при шифровке - таковы свойства xor

p.s. ключ - цифры от 0 до 2^32-1
1
Dante94
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 12
15.04.2013, 20:03  [ТС] #3
Большое спасибо и если не сложно можете представить эту программу через библиотеку stdio, а то через fstream мне не совсем понятно.
0
abit
271 / 270 / 35
Регистрация: 03.02.2013
Сообщений: 756
15.04.2013, 21:11 #4
Большое спасибо и если не сложно можете представить эту программу через библиотеку stdio, а то через fstream мне не совсем понятно.
с такими темами впредь обращайтесь в раздел Си... С++ к stdio имеет очень отдалённое отношение, вот я перевёл ту часть своей программы с С++ которая использует fstream на С и проверил - работает, но я разбираюсь в Си только интуитивно, книжек по нему не читал, так что вероятно там многое можно оптимизировать

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
#include <iostream> 
#include <cstdio> 
 
using namespace std;
 
int main() 
{ 
 
    FILE * pfile1, * pfile2;
        pfile1 = fopen ("input.txt","r");
        pfile2 = fopen ("output.txt","wb");
    
    unsigned int data;
    char buff[4];
    unsigned int key;
    std::cout<<"Intput a key - ";
    std::cin>>key;
 
    while (fgets(buff, sizeof(unsigned int)+1, pfile1) != NULL)
    {   
        data = *buff;
        data = data^key;
        *buff = data;
        fputs(buff,pfile2);
    };
 
    fclose(pfile1);
    fclose(pfile2);
}
1
15.04.2013, 21:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2013, 21:11
Привет! Вот еще темы с ответами:

Написать программу для перевода единиц измерения количества информации - C++
Я недавно начал изучать С++. Хотел попробовать написать программу для перевода единиц измерения количества информации. Но почему то она не...

Разработать программу «Библиотека», в которой для хранения информации о книгах используется массив структур - C++
Разработать программу «Библиотека», в которой для хранения информации о книгах используется массив структур inv_bib. Различные функции...

Написать программу, в которой объединение используется для хранения информации об одной из геометрических фигур - C++
НАРОООООД!!!!Выручьте!!!! &quot;сделать на Borland C++ под DOS или Microsoft Visual C++ консольное приложение (Win 32 Console Application). ...

Битовые операции. Написать программу для хранения в битовом поле информации о конфигурации компьютера. - C++
1. Написать программу для хранения в битовом поле информации о конфигурации компьютера. Например: Корпус AT – 0, ATX – 1; Видео на борту –...


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

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

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