Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Lenster
0 / 0 / 0
Регистрация: 23.01.2016
Сообщений: 34
1

Зашифровать текст по ключу

13.10.2016, 11:31. Просмотров 762. Ответов 3
Метки нет (Все метки)

Разработать функцию программиста, которая шифрует строку, заменяя каждый символ другим символом по следующему правилу: к коду первого по счету символа добавляется первая цифра ключа, к коду второго символа - вторая цифра ключа, к коду третьего символа - третья цифра ключа, к коду четвертого символа - опять первая цифра ключа и так далее.
Зашифровать текст по ключу (заданному в виде трехзначного числа). Текст строки вводится с клавиатуры.

Помогите с выполнением программы. Не понимаю как реализовать программу.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2016, 11:31
Ответы с готовыми решениями:

Зашифровать текст С++
Нужно текст взять из текстового документа File.txt, и вывести в...

Зашифровать текст
Здравствуйте ! Помогите,пожалуйста,составить программу,которая бы считывала...

зашифровать текст
На C++ как зашифровать текст,чтобы буквы выводились в любом порядке в слове.

Зашифровать текст
Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания,...

Зашифровать текст
. Чтобы зашифровать текст, записанный с помощью русских букв и знаков...

3
IpHuman
14 / 14 / 2
Регистрация: 28.01.2015
Сообщений: 26
13.10.2016, 12:35 2
Советую воспользоваться асоциативным контейнером map или multimap. В mар тип значения отличается от типа ключа, причем ключи уникальны
и на каждый ключ приходится только одно значение. Тип multimap подобен mар, за исключением того, что один ключ может быть связан с несколькими значениями.
К примеру в твоем случае:
C++
1
multimap<int, string> codes;
Один из возможных подходов - создание пары и вставка ее в объект multimap:
C++
1
pair<const int, string> item(213, "List");
Остальное - дело логики.
0
VAN0
59 / 59 / 53
Регистрация: 05.05.2013
Сообщений: 150
Завершенные тесты: 1
13.10.2016, 12:38 3
Лучший ответ Сообщение было отмечено Lenster как решение

Решение

Цитата Сообщение от IpHuman Посмотреть сообщение
Советую воспользоваться контейнером map или multimap. В mар тип значения отличается от типа ключа, причем ключи уникальны
и на каждый ключ приходится только одно значение. Тип multimap подобен mар, за исключением того, что один ключ может быть связан с несколькими значениями.
зачем такие трудности, здесь все решается элементарно:
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
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{   string str;
    cout << "Enter string: ";
    cin >> str;
    int key = 0;
    cout << "Enter key(three digit): ";
    do
    {
        cin >> key; 
        if (key < 1000 && key > 99) break;
        cout << "Invalid key. Enter key (three digit) again: ";
    
    } while (true);
    
    int key_array[3];
    key_array[0] = key/100%10;
    key_array[1] = key/10%10;
    key_array[2] = key%10;
    int index_key = 0;
    for (int i = 0; i< str.length(); i++)
    {
           str[i] += key_array[index_key];
           if (index_key == 2)  index_key = 0;
           else     index_key ++;
    }
    cout << "Cript string:\n" << str;
    index_key = 0;
    for (int i = 0; i< str.length(); i++)
    {
           str[i] -= key_array[index_key];
           if (index_key == 2)  index_key = 0;
           else     index_key ++;
    }
    cout << "\nDecript string:\n" << str;
    cin.get();
    return 0;       
}
1
IpHuman
14 / 14 / 2
Регистрация: 28.01.2015
Сообщений: 26
13.10.2016, 12:46 4
Цитата Сообщение от VAN0 Посмотреть сообщение
зачем такие трудности, здесь все решается элементарно:
Думаю здесь вы правы, но через шаблоны тоже как вариант можно реализовать. Хотя для такой не большой задачи можно и обойтись.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.10.2016, 12:46

Зашифровать текст
Зашифровать данное слово, используя таблицу ASCII-кодов: Printer И...

Зашифровать и расшифровать текст
Зашифровать и расшифровать текст, находящийся в строкe с именем Fin....

Текстовый редактор. Зашифровать текст.
подскажите пожалуйста не пойму что надо сделать??? &quot;файл должен храниться в...


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

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

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