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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 5.00
Klowanza
0 / 0 / 0
Регистрация: 11.10.2011
Сообщений: 11
#1

Задача на шифрование текста, язык Cи. - C++

19.12.2011, 22:19. Просмотров 1872. Ответов 6
Метки нет (Все метки)

Произвести шифрование текста согласно вводимому ключу , который представляет из себя последовательность символов ( изначально 1,2,3,4,5,6 и тд, кол-во символов произвольное). Текст разбивается на фрагменты равные по кол-ву символов в шифре и в каждом из них шифрование производится отдельно.
Пример:
стандарт 12345 || 12345 || 12345 шифр 45123: 45123 || 45123 || 45123
................Проби || тый_т || алон_ ......................бипро || _ттый || н_ало
И так далее с любым случайным шифром вводимым с клавиатуры.
Использовать только одномерные динамические массивы, символьные строки и стандартные библиотеки : conio,stdlib,stdio.
Без функций и рекурсий.
И если можно то расставьте комментарии.
Заранее благодарен и извиняюсь за кривое оформление.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2011, 22:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача на шифрование текста, язык Cи. (C++):

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

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

Шифрование текста - C++
Здравствуйте, пытаюсь зашифровать слово, через ключ. #include <iostream> using namespace std; int main() { char str =...

Шифрование текста в файле - C++
проблема в то что в процессе работы программа должна считывать текст в файле и кодировать его. Прога работает нормально,т.е. кодирует...

Шифрование текста. XOR - C++
Помогите с шифрование текста...с числоми вроде получалось. Что значит эта ошибка и как ее испрвить?..) #include <iostream> #include...

Шифрование и дешифрование текста - C++
Народ вот програма для шифрования текста мне нужно переделать так штоб били подпрограми: 1) на меню пользователя cout<<" Меню...

6
Klowanza
0 / 0 / 0
Регистрация: 11.10.2011
Сообщений: 11
22.12.2011, 18:37  [ТС] #2
Up!Up!
0
darkknight2008
62 / 62 / 6
Регистрация: 16.10.2011
Сообщений: 200
22.12.2011, 19:03 #3
Поясните, т.е. выделяются куски из тескста. А далее переставляются буквы согласно шифру?
И чта важно, есть массив с текстом и надо изменить этот самый массив, или достаточно вывести зашифрованный вариант??

Добавлено через 21 минуту
И как поступать с последним фрагментом, размер которого меньше чем предыдущих?
0
Klowanza
0 / 0 / 0
Регистрация: 11.10.2011
Сообщений: 11
22.12.2011, 19:29  [ТС] #4
Берем куски текста последовательно и изменяем в них расстановку символов в соответствии с шифром куски равны кол-ву символов в шифре.
Изменять надо сам массив, естественно перед этим вывести его в первозданном виде.
Размерность массива кратна кол-ву элементов в шифре.Следует делать массив больше размеров текста,а затем делать реаллок до размеров подходящих нам и при отсутствии эл-та просто передвигать пробелы.
0
darkknight2008
62 / 62 / 6
Регистрация: 16.10.2011
Сообщений: 200
22.12.2011, 19:54 #5
Ладно, я вроде сделал. Все идет примерно так:
1) Вводим длину шифра(у меня это ключ) и проверяем ее корректность
2) Вводим сам ключ
3)Проверяем корректность ключа (т.е. если у нас ключ введен 1 2 3 99 5, то он скажет что неверен, т.к. элементы должны быть от 1 до 5, если ключ 1 2 3 5 5, то скажет что неверен т.к. нет 4)
4) Далее сама программа
5) Вводим строку произвольной! длины.
6) Выделяем из нее куски размером с ключ, и обрабатываем
1) Берем элемент в буфере с номером i записываем в него элемент из куска, с номером согласно ключю.
2) Копируем буфер вместо текущего куска
3) Делаем все это пока мы не сможем в строке выделить целый кусок
7) Выводим результат

Пример:
Размер ключа: 5
1)Ключ 1 99 3 4 5 - выдаст ошибку
2)Ключ 1 3 4 4 5 - выдаст ошибку
3)Ключ 1 2 3 5 4
строка 1234512345123
Выводит 1235412354123
4) строка пробитый_талон_
Выводит: бипро_ттыйн_ало
В прикрепленном файле сам текст программы.
1
Вложения
Тип файла: rar main.rar (1.3 Кб, 93 просмотров)
Klowanza
0 / 0 / 0
Регистрация: 11.10.2011
Сообщений: 11
24.12.2011, 00:07  [ТС] #6
Спасибо , очень толково сделано.
0
Raphael92
0 / 0 / 0
Регистрация: 12.10.2010
Сообщений: 154
12.02.2012, 20:54 #7
Скажите пожалуйста, этот алгоритм относится к симметричной криптографии?
0
12.02.2012, 20:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2012, 20:54
Привет! Вот еще темы с ответами:

Курсовая: шифрование текста. - C++
Здравствуйте. В связи с рядом причин(главная конечно лень xD ), свою курсовую я умудрился взять только сейчас. Сдача через 2 недели....

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

Шифрование/дешифрование текста: шифр Цезаря - C++
8. Написать программу, которая позволяет зашифровывать и расшифровывать с помощью «шифра Цезаря» сообщение, написанное на русском языке....

Шифрование текста с применением магического квадрата - C++
Задание: Магический квадрат. 11 8 5 10 2 13 16 3 14 1 4 15 7 12 9 6 Алгоритм:


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

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

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