Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 12.11.2020
Сообщений: 1

Беда с шифром Цезаря

12.11.2020, 20:26. Показов 857. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем, есть код, который шифрует буковки по Цезарю, но принять он может только одно слово, а по заданию нужно сделать так, чтобы шифровало строку. Никак не могу догадаться, что мне сделац.
Вот код:
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include <string>
using namespace std;
 
void encrypth(void)
{
    setlocale(LC_ALL, ".1251");
    cout << "Введите сообщение для шифровки: ";
    setlocale(LC_ALL, ".866");
    char buff[50] = { 0 };
    cin >> buff;
    setlocale(LC_ALL, ".1251");
    cout << "Введите ключ: ";
    int k = 0;
    cin >> k;
    for (int i = 0; i < strlen(buff); i++)
        buff[i] += k;
    setlocale(LC_ALL, ".1251");
    cout << "Криптограмма: ";
    setlocale(LC_ALL, ".866");
    cout << buff << endl;
    setlocale(LC_ALL, ".1251");
}
 
void decrypth(void)
{
    setlocale(LC_ALL, ".1251");
    cout << "Введите криптограмму: ";
    setlocale(LC_ALL, ".866");
    char buff[50] = { 0 };
    cin >> buff;
    setlocale(LC_ALL, ".1251");
    cout << "Введите ключ: ";
    int k = 0;
    cin >> k;
    for (int i = 0; i < strlen(buff); i++)
        buff[i] -= k;
    setlocale(LC_ALL, ".1251");
    cout << "Расшифрованный текст: ";
    setlocale(LC_ALL, ".866");
    cout << buff << endl;
    setlocale(LC_ALL, ".1251");
}
 
void main(void)
{
    setlocale(LC_ALL, ".1251");
    int choice = 0;
    do
    {
        cout << "1 - Шифрование, 2 - Дешифровка, 3 - Выход из программы." << endl << "Какую операцию выполнить?: ";
        do
        {
            cin >> choice;
        } while ((choice != 1) && (choice != 2) && (choice != 3));
        if (choice == 1)
            encrypth();
        else if (choice == 2)
            decrypth();
        else
            exit(0);
    } while (choice != 3);
    system("pause");
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.11.2020, 20:26
Ответы с готовыми решениями:

Помогите с Шифром Цезаря
Вообщем народ! Необходимо чтоб на вход поступала зашифрованная строка на латинице и далее выдавались все варианты перебора... Не могу...

Проблема с шифром Цезаря(не работает с кириллицей )
Всем привет. У меня есть рабочий код шифра Цезаря. Когда я использую в коде char, все отлично работает, но кириллицу не обрабатывает,...

Проблема с шифром Цезаря
Добрый день! Уважаемые форумчане, прошу Вашей помощи, т.к в этом деле новичок. Делаю ДЗ и возникло ряд проблем: 1. как поправить...

1
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
12.11.2020, 21:09
Цитата Сообщение от Spasite_menya Посмотреть сообщение
В общем, есть код, который шифрует буковки по Цезарю, но принять он может только одно слово, а по заданию нужно сделать так, чтобы шифровало строку. Никак не могу догадаться, что мне сделац.
Вот код:
Цитата Сообщение от Spasite_menya Посмотреть сообщение
cout << "Введите сообщение для шифровки: ";
    setlocale(LC_ALL, ".866");
    char buff[50] = { 0 };
    cin >> buff;
C++
1
2
cin.ignore();
cin.getline(buf, 50);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.11.2020, 21:09
Помогаю со студенческими работами здесь

Чат бот вк с шифром цезаря
Нужно написать чат бота для вк, чтобы он шифровал и дешифровал отправленные ему сообщения на шифре Цезаря. Шифр Цезаря есть свой

Зашифровать файл шифром Цезаря
Зашифруйте данный текстовый файл шифром Цезаря, при этом символы первой строки файла должны циклически сдвигаться на 1, второй строки — на...

Зашифровать файл шифром цезаря
Зашифруйте данный текстовый файл шифром Цезаря, при этом символы первой строки файла должны циклически сдвигаться на 1, второй строки — на...

Закодировать текст шифром Цезаря
Нужна программа, которая будет считывать текстовое сообщение из файла и зашифровывать его при помощи шифра Цезаря(например есть ключ 123. и...

Кодирование/декодирование данных шифром Цезаря
Здравствуйте! Помогите, пожалуйста, с решением одной любой из следующих задач! Программирование у меня не профилирующий предмет, и я в нём...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru