Проблема расшифровки шифра Цезаря
Я пытаюсь выполнить упражнение в книге по программированию, одним из упражнений которого является расшифровка зашифрованного текста, использующего шифр Цезаря с неизвестным сдвигом.
Вот зашифрованный текст:
HVWGWGHVSPSGHQCADIHSFSLSFQWGSWVOJSSJSFSLDSFWSBQSR
Я не знаю ожидаемого результата, потому что еще не определил алгоритм.
Я написал следующий алгоритм, чтобы попытаться расшифровать его с помощью шифра Цезаря, но это все, что я получил. Как мне расшифровать это в C#?
Что я уже пробовал:
string s = "HVWGWGHVSPSGHQCADIHSFSLSFQWGSWVOJSSJSFSLDSFWSBQSR"; int[] freq = new int[26]; for (int i = 0; i < s.Length; i++) { // converting string temp = s.Substring(i, 1); // converting to an array int itemp = (int)temp.ToCharArray()[0]; freq[itemp - 65]++; } for (int i = 0; i < 26; i++) { Console.WriteLine(i + " " + freq[i]); }
Michael_Davies
Именно этот вопрос был поставлен на stackoverflow 3 года назад!
http://stackoverflow.com/questions/17688958/how-do-i-write-an-algorithm-to-break-the-caesar-cipher
У него также есть ответ:
THISISTHEBESTCOMPUTEREXERCISEIHAVEEVEREXPERIENCED