Ejemplo n.º 1
0
        static PairForD[] SortirovkaForValue(PairForD[] words, PairForD value, PairForD first, int znach)
        {
            PairForD a = first, b = value;

            if (value.value < first.value)
            {
                words[znach - 1] = b;
                words[znach]     = a;
            }
            return(words);
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            string text = System.IO.File.ReadAllText(@"C:\Users\Екатерина\Desktop\text5.txt");

            text = text.ToLower();
            string[] newText = text.Split(' ', '-', '.', ',', '(', ')', '"');

            var dictionary = new Dictionary <string, int>();

            for (int i = 0; i < newText.Length; i++)
            {
                if (newText[i] != "")
                {
                    string slovo = Convert.ToString(newText[i]);
                    if (!dictionary.ContainsKey(slovo))
                    {
                        dictionary[slovo] = 1;
                    }
                    else
                    {
                        dictionary[slovo]++;
                    }
                }
            }

            int k = 0;

            foreach (var pair in dictionary)
            {
                k++;
            }

            PairForD[] wordsAndVal = new PairForD[k];
            int        j           = 0;

            foreach (var pair in dictionary)
            {
                wordsAndVal[j].key   = pair.Key;
                wordsAndVal[j].value = pair.Value;
                j++;
            }

            for (int i = wordsAndVal.Length - 1; i > 0; i--)
            {
                int a = wordsAndVal[i - 1].value, b = wordsAndVal[i].value;
                if (a < b)
                {
                    PairForD first = wordsAndVal[0];
                    for (int n = 1; n < wordsAndVal.Length; n++)
                    {
                        wordsAndVal = SortirovkaForValue(wordsAndVal, wordsAndVal[n], first, n);
                        first       = wordsAndVal[n];
                    }
                }
            }

            for (int i = 0; i < wordsAndVal.Length; i++)
            {
                Console.WriteLine(wordsAndVal[i].key + "\t" + wordsAndVal[i].value);
            }

            Console.ReadKey();
        }