Определить частоту, с которой встречаются в тексте различные буквы русского алфавита - C#
Формулировка задачи:
Ребята выручайте Решите задачи !!! Буду премного благодарен!!!
1. Задан текст, содержащий не более 255 символов. Определить частоту, с которой встречаются в тексте различные буквы русского алфавита (в долях от общего количества букв)
2. Назовем сложностью предложения сумму количества слов и знаков препинания. Определить сложность заданного предложения.
3. Для хранения текста в сжатом виде найти часто повторяющиеся последовательности из двух букв и заменить их кодом. В качестве кода использовать символы, не встречающиеся в тексте. Составить так же таблицу кодов
Решение задачи: «Определить частоту, с которой встречаются в тексте различные буквы русского алфавита»
textual
Листинг программы
using System;
namespace A
{
static class Program
{
static double[] Freq(string s)
{
var result = new double['Я' - 'А' + 1];
foreach (var c in s.ToUpper())
if ((c >= 'А') && (c <= 'Я')) result[c - 'А']++;
for (int i = 0; i < result.Length; i++)
result[i] /= s.Length;
return result;
}
static void Main(string[] args)
{
string text = "Задан текст, содержащий не более 255 символов. Определить частоту, с которой встречаются в тексте различные буквы русского алфавита (в долях от общего количества букв)";
var freq = Freq(text);
for (int i = 0; i < freq.Length; i++)
Console.Write("{0} - {1:0.0000}\t", (char)(i + 'А'), freq[i]);
Console.ReadKey();
}
}
}