Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
DefineTrueFalse
869 / 446 / 35
Регистрация: 25.10.2011
Сообщений: 910
16.11.2011, 02:16

Программа "шифрование послания"

16.11.2011, 02:16. Просмотров 3176. Ответов 31
Метки (Все метки)

Ответ

Цитата Сообщение от LK Посмотреть сообщение
не понятно - это как ? и как правильно ?
Как минимум получать массив кодировки из текстового поля, а лучше из файла (или вообще мазохистким способом - статистически).
Цитата Сообщение от UltraRedMan Посмотреть сообщение
...а можно теперь как то чтобы оно его кодировало не символами, а тоже буквами но со смещением как метод Цезаря ??
Можно заполнить в соотвествии с условием, но для этой задачи, это будет извращением.
Если я правильно помню, шифр цезаря заключается в сдвиге на 3 символа по алфавиту влево. Если так, тогда что-то подобное получается.

Кодировка шифра Цезаря.
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   const AnsiString Input = Memo1->Text.Trim();
   AnsiString Result =  "";
   for (int index = 1; index <= Input.Length(); index++)
      if ((Input[index] > 64) && (Input[index] < 91))
      // заглавные буквы
      {
         if (Input[index] < 68) Result+=(char)(88 + Input[index] - 65);
         // обработка для 'A B C'.
         else Result+=(char)(Input[index]-3);
         // остальные символы по обычному шифру.
      }
      else if ((Input[index] > 96) && (Input[index] < 123))
      // строчные буквы
      {
         if (Input[index] < 100) Result+=(char)(120 + Input[index] - 97);
         // обработка для 'a b c'.
         else Result+=(char)(Input[index]-3);
         // остальные символы по обычному шифру.
      }
      else Result+=Input[index];
      // для всяких пробелов и т.п.
   Memo2->Text = Result;
}
Де-кодировка шифра Цезаря.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void __fastcall TForm1::Button2Click(TObject *Sender)
{
   const AnsiString Input = Memo1->Text.Trim();
   AnsiString Result =  "";
   for (int index = 1; index <= Input.Length(); index++)
      if ((Input[index] > 64) && (Input[index] < 91))
      {
         if (Input[index] > 87) Result+=(char)(65 + Input[index] - 88);
         else Result+=(char)(Input[index]+3);
      }
      else if ((Input[index] > 96) && (Input[index] < 123))
      {
         if (Input[index] > 119) Result+=(char)(97 + Input[index] - 120);
         else Result+=(char)(Input[index]+3);
      }
      else Result+=Input[index];
   Memo2->Text = Result;
}


Вернуться к обсуждению:
Программа "шифрование послания"
2
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2011, 02:16
Готовые ответы и решения:

Не могу создать программу "шифрование"
Ребята помоги пожалуйста.&quot;Разработать программу «Шифрование», которая...

MessageBox - чтобы вместо "Yes" и "No" показывало "Да" и "Нет"
Доброе время суток, как переделать int Key= Application-&gt;MessageBox(L&quot;Text&quot;,...

Ищу исходник игры на С++, на подобие "Солитер", "Быки и коровы", "Змейка" и т. д
Нужен код игры на С++, на подобие &quot;Солитер&quot;, &quot;Быки и коровы&quot;, &quot;Змейка&quot; и т. д....

Открыть папку "мой компьютер", "панель управления", "program files"
Нужно открыть папку &quot;мой компьютер&quot;, &quot;панель управления&quot;, &quot;program files&quot;

Ошибки: "Failed to allocate SAVEmem" и ""bcc32" exited with code 1."
Помогите пожалуйста с этими ошибками. Такое не только у меня, полазил по разным...

31
Другие темы раздела
C++ Builder Получить список выделенных файлов http://www.cyberforum.ru/cpp-builder/thread383626.html
2. Как получить список выделенных файлов в любом менеджере файлов, который будет передаваться в мою программу на С++ через опцию "Открыть с помощью..." далее имя моей программы? (У меня открывается...
C++ Builder Поиск в TMemo и копирование в Memo2 Здравствуйте! Помогите пожалуйста решить задачу. Заранее спасибо! Есть 3 компонента на форме Memo1, Memo2 и Button1. В Memo1 загружены текстовые строки: aaaaaaaaaa bbb7777bbb cccccccccc ... http://www.cyberforum.ru/cpp-builder/thread383599.html
C++ Builder Получение имени запускаемого файла(ов) для его обработки в программе на С++
Определенное расширение файла привязываем к программе написанной на С++. 1. Как в этой программе получить в качестве входных параметров имя запущенного файла по клику мышки (не через консоль)? ...
C++ Builder Цвет текста TCheckListBox
Как можно поменять цвет текста одной строки в TCheckListBox?
C++ Builder Масштабироване матрицы изображения http://www.cyberforum.ru/cpp-builder/thread383516.html
Всем привет. Суть задачки следующая: есть большое изображение, из которого я плучаю часть (прямоугольную область). В этой области имеется изображение цифры. Далее я пределяю контуры цифры и загоняю...
C++ Builder Как можно сделать форму, которая будет перекрывать панель задач? Здравствуйте. Подскажите пожалуйста как можно сделать форму которая будет перекрывать панель задач. Вот как здесь http://************.com/******* Внимание ВСЕМ кто скачал архив под названием... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru