Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
1

Как сформировать таблицу частот появления символов

09.05.2015, 09:56. Показов 1626. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я _
Ф Н ( Щ И Г Е R A Д Ы ~ @ S Л Я Ж ^ C Ш М Б Q П Т Х Ю Ъ Р } \ _ #
* Н У Щ D + Е R = Д Ц Й Ч [ В Ь ) O & { М Б Q П Т Х Ю Ъ Р } \ _ <
Л Н ( Щ И ] Е R % Д Ы ~ @ G / Я Э З " Ш М Б Q П Т Х Ю Ъ Р } \ _ W
Ф Н У Щ D К Е R A Д Ц Й Ч S + Ь Ж ^ C { М Б Q П Т Х Ю Ъ Р } \ _ V


таблицу частот появления символов, как выше дано, нужно сделать, в общем. Понятия не имею "как???"

А вы знаете как такую программу написать в делфи??

Добавлено через 1 час 28 минут
аппп
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.05.2015, 09:56
Ответы с готовыми решениями:

Построить таблицу частот появления в тексте каждой буквы
Считая, что текст содержит буквы только латинского алфавита, построить таблицу, в которой для...

Составить программу для печати гистограммы частот появления символов, которые вводятся
Составить программу для печати гистограммы частот появления символов, которые вводятся. Гистограмму...

Получить таблицу частот символов в тексте
написать консольное приложение на языке c#, которое позволит получить таблицу частот символов в...

Формирования вектора частот появления элементов в матрице
Помогите пожалуйста реализовать задание в маткаде. Формирования вектора частот появления...

19
843 / 738 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
09.05.2015, 10:05 2
Цитата Сообщение от mute Посмотреть сообщение
таблицу частот появления символов, как выше дано
Некоторые частоты упорядоченно идут например верхняя строка, можно было бы заполнить в цикле так:
Delphi
1
2
3
4
5
6
var
  ch: Char;
begin
  for ch := 'А' to 'Я' do
   Memo1.Lines.Add(ch);
end;
Но все остальные частоты нарушают этот порядок, поэтому лучше просто записать в массив вручную все это или в таблицу или куда ты там хотел.
Я так понял это у тебя символьный массив?
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
09.05.2015, 12:52  [ТС] 3
в том то и дело что нельзя руками вводить, задание преподавателя, чтобы таблица частот формировалась сама :black_eye.:

Добавлено через 2 часа 27 минут
апппп
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
09.05.2015, 13:13 4
Поиск по форуму в помощь. Вот здесь, как пример, на C - Частота повторения букв в тексте.
Исключая ввод/вывод, вся программа сводится у циклу из одной строчки.
0
Злостный нарушитель
9490 / 5137 / 1172
Регистрация: 12.03.2015
Сообщений: 24,215
09.05.2015, 13:22 5
Как звучит оригинал задания?

Добавлено через 7 минут
тебе надо получить что-то типа этого?
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const
  // Кириллица
  RussianLetters: set of Char = ['А'..'я'];
 
  // Вероятности встречаемости русских букв в тексте.
  // Их я получил эмпирическим путём: написал специальную консольную
  // программу подсчёта и скормил ей пару десятков мегабайт текстовых
  // файлов со всякими рассказами, анекдотами и т.п.
  Probabilities: array['А'..'я'] of Single = (
       0.057, 0.010, 0.031, 0.011, 0.021, 0.067, 0.007, 0.013,   // АБВГДЕЖЗ
       0.052, 0.011, 0.023, 0.030, 0.024, 0.043, 0.075, 0.026,   // ИЙКЛМНОП
       0.038, 0.034, 0.046, 0.016, 0.001, 0.006, 0.002, 0.011,   // РСТУФХЦЧ
       0.004, 0.004, 0.000, 0.012, 0.012, 0.003, 0.005, 0.015,   // ШЩЪЫЬЭЮЯ
       0.057, 0.010, 0.031, 0.011, 0.021, 0.067, 0.007, 0.013,   // абвгдежз
       0.052, 0.011, 0.023, 0.030, 0.024, 0.043, 0.075, 0.026,   // ийклмноп
       0.038, 0.034, 0.046, 0.016, 0.001, 0.006, 0.002, 0.011,   // рстуфхцч
       0.004, 0.004, 0.000, 0.012, 0.012, 0.003, 0.005, 0.015);  // шщъыьэюя
какие символы должны присутствовать в массиве?
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
09.05.2015, 14:16  [ТС] 6
Verevkin, в оригинале я должна сделать шифрование дешифрование методом монофонической замены, а этот метод предполагает таблицу частот как в самом верху дано.
А сформировать эту таблицу частот появления букв нужно написав какую то программу, чтобы в результате вышло что-то типа вот этого:
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я _
Ф Н ( Щ И Г Е R A Д Ы ~ @ S Л Я Ж ^ C Ш М Б Q П Т Х Ю Ъ Р } \ _ #
* Н У Щ D + Е R = Д Ц Й Ч [ В Ь ) O & { М Б Q П Т Х Ю Ъ Р } \ _ <
Л Н ( Щ И ] Е R % Д Ы ~ @ G / Я Э З " Ш М Б Q П Т Х Ю Ъ Р } \ _ W
Ф Н У Щ D К Е R A Д Ц Й Ч S + Ь Ж ^ C { М Б Q П Т Х Ю Ъ Р } \ _ V

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


ну могут быть частоты не только русских букв, но и разных символов как выше дано, лишь бы по столбцу частоты были практически одинаковые или близкие
0
Злостный нарушитель
9490 / 5137 / 1172
Регистрация: 12.03.2015
Сообщений: 24,215
09.05.2015, 14:34 7
Цитата Сообщение от mute Посмотреть сообщение
могут быть частоты не только русских букв, но и разных символов как выше дано, лишь бы по столбцу частоты были практически одинаковые или близкие
Ну так сформулируй задание по-человечески: для начала - входные и выходные данные, их типы, размеры и другие нужные параметры.
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
09.05.2015, 14:43  [ТС] 8
Verevkin, мне самой никто по-человечески это задание не объяснил, я как поняла объясняю, нужно чтобы таблица частот была сформировано программой, а не вручную - так мне препод сказал и на до свидание послал

вот типа такого:
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я _
Ф Н ( Щ И Г Е R A Д Ы ~ @ S Л Я Ж ^ C Ш М Б Q П Т Х Ю Ъ Р } \ _ #
* Н У Щ D + Е R = Д Ц Й Ч [ В Ь ) O & { М Б Q П Т Х Ю Ъ Р } \ _ <
Л Н ( Щ И ] Е R % Д Ы ~ @ G / Я Э З " Ш М Б Q П Т Х Ю Ъ Р } \ _ W
Ф Н У Щ D К Е R A Д Ц Й Ч S + Ь Ж ^ C { М Б Q П Т Х Ю Ъ Р } \ _ V
0
Злостный нарушитель
9490 / 5137 / 1172
Регистрация: 12.03.2015
Сообщений: 24,215
09.05.2015, 15:05 9
Цитата Сообщение от mute Посмотреть сообщение
так мне препод сказал и на до свидание послал
без чёткого задания, к сожалению, вынужден сделать то же самое.
не обижайся, ничего личного. просто невозможно выполнить задание, не зная само задание.
придётся тебе вернуться к преподу и предъявить претензии.
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
09.05.2015, 15:08  [ТС] 10
четче не бывает.
0
Злостный нарушитель
9490 / 5137 / 1172
Регистрация: 12.03.2015
Сообщений: 24,215
09.05.2015, 15:13 11
Цитата Сообщение от mute Посмотреть сообщение
четче не бывает.

Не по теме:

Что ж, тогда жди телепатов.
Мне телепатор за неуплату отключили.

0
843 / 738 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
09.05.2015, 16:49 12
Цитата Сообщение от mute Посмотреть сообщение
нужно чтобы таблица частот была сформировано программой, а не вручную - так мне препод сказал и на до свидание послал
Ну дак и я сначала подумал что эта таблица связана с каким то алгоритмом, я начал ее исследавать, может каждый символ из твоей таблицы это каждый третий символ из таблицы
http://ipg.h1.ru/lessons/delphi/les04_pr01.html
А оказалось нет!
таблица частот что тебе дали и ее значения не поддаются ни одному алгоритму!
Такие данные тольк руками прописывать..
Ну а воспроизводить уже можно и атоматически как нибудь можно будет, но прописывать только руками.
Если я не прав может кто и поправит что не так.
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
09.05.2015, 17:25  [ТС] 13
берется короче изначальный русский алфавит от А до Я - проверяется на частоты, все это сохраняется
потом берется ряд символов, н-р, другого алфавита - проверяется на частоты, все это сохраняется
потом берется еще один ряд символов, н-р, всяких пунктуационных знаков препинания и пр - проверяется на частоты

потомс значит все результаты сравниваются между собой, ну там где частоты появления приблизительно одинаковы - они в один столбик рисуются, символы в одном столбике могут повторяться как тут:
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я _
Ф Н ( Щ И Г Е R A Д Ы ~ @ S Л Я Ж ^ C Ш М Б Q П Т Х Ю Ъ Р } \ _ #
* Н У Щ D + Е R = Д Ц Й Ч [ В Ь ) O & { М Б Q П Т Х Ю Ъ Р } \ _ <
Л Н ( Щ И ] Е R % Д Ы ~ @ G / Я Э З " Ш М Б Q П Т Х Ю Ъ Р } \ _ W
Ф Н У Щ D К Е R A Д Ц Й Ч S + Ь Ж ^ C { М Б Q П Т Х Ю Ъ Р } \ _ V

и вот вам частотня таблица, в виде массива ... я бы так соображала еслиб умела писать программы такого уровня...
0
843 / 738 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
09.05.2015, 17:34 14
Любой текст можно проверить на любые символы и определить какой символ встречается чаще может это нужно?
Если нет то надо искать таблицу частот наверно в гугле где то.
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
09.05.2015, 17:50  [ТС] 15
нужно таблицу сделать частотную, анализируя большие тексты
0
843 / 738 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
09.05.2015, 17:57 16
Дак тогда тебе другая программа нужна.
Тебе нужна програма что подсчитывает количество символов в тексте. (а затем считает часто-встречающиеся)
0
5706 / 2297 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
09.05.2015, 18:38 17
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
Дак тогда тебе другая программа нужна.
Тебе нужна програма что подсчитывает количество символов в тексте. (а затем считает часто-встречающиеся)
ну, а ответ в 5 посту это уже и объясняет... умножите на 100 и получите процентуальное соотношение букв некого текста / некий текст..
0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
10.05.2015, 10:46  [ТС] 18
0
5706 / 2297 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
10.05.2015, 11:30 19
Цитата Сообщение от mute Посмотреть сообщение
потомс значит все результаты сравниваются между собой, ну там где частоты появления приблизительно одинаковы - они в один столбик рисуются, символы в одном столбике могут повторяться как тут:
начни с простого, посчитай кол-во одинаковых знаков в одной строке сперва, заноси результаты в массив, или даже это не в состоянии?

Не по теме:

Вы тоже на программиста учитесь ?

0
20 / 20 / 11
Регистрация: 26.11.2012
Сообщений: 164
Записей в блоге: 2
10.05.2015, 11:50  [ТС] 20
Arcor, не в состоянии, не программист
Кликните здесь для просмотра всего текста
0
10.05.2015, 11:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.05.2015, 11:50
Помогаю со студенческими работами здесь

Формирования вектора частот появления элементов в матрице
Необходимо в MatLab в матрице размером 5 на 5 вывести каждое число и сколько раз оно встречается

Разработать программу вычисления частот появления букв русского алфавита
Разработать программу вычисления частот появления букв русского алфавита,которые встречаются в...

Сформировать таблицу ASCII-кодов символов с номерами от a до b
Ввести натуральные числа a и b размером в один байт Сформировать таблицу ASCII-кодов символов с...

Сформировать и вывести на экран таблицу ASCII-символов
Используя вложенные циклы, сформировать и вывести на экран таблицу ASCII-символов с кодами в...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru