Example #1
0
        static void ShowResearch(AlphabetResearch research)
        {
#if AlphabetEnabled
            Console.WriteLine("Char\t-\tFrequency");

            foreach (var alphabetChar in research.charFrequency)
            {
                Console.WriteLine("{0}\t-\t{1}",
                                  alphabetChar.Key == '\n' ? "\\n" : alphabetChar.Key.ToString(),
                                  alphabetChar.Value);
            }
            Console.WriteLine();
#endif

            Console.WriteLine("Entropy: {0};\nAmount of information: {1}\n", research.entropy, research.amountOfInformation);
        }
Example #2
0
        static void TextResearch(string fileName, string content)
        {
            AlphabetResearch alphabetResearch = new AlphabetResearch();
            HashSet <char>   alphabet;


            alphabet = new HashSet <char>(content);
            alphabetResearch.charFrequency = new Dictionary <char, double>();

            foreach (char ch in alphabet)
            {
                alphabetResearch.charFrequency[ch] = CalculateFrequency(content, ch);
            }

            alphabetResearch.entropy             = CalculateEntropy(alphabetResearch.charFrequency);
            alphabetResearch.amountOfInformation = CalculateAmountOfInformation(content, alphabetResearch.entropy);

            Console.WriteLine(fileName + "\n");
            ShowResearch(alphabetResearch);
        }