Exemple #1
0
        static void anagramsMode(LanguageInfo language)
        {
            Console.Write("Get top 20 anagrams for: ");
            var input = Console.ReadLine();

            if (string.IsNullOrEmpty(input))
            {
                Console.WriteLine("Input was empty. Try again.");
            }
            else if (!input.All(x => x == AnagramFinder.WILDCARD || language.Letters.Keys.Contains(x)))
            {
                Console.WriteLine("Invalid character(s) in the input. Try again.");
            }
            else
            {
                var anagramFinder = new AnagramFinder(language);
                var foundAny = false;

                foreach (var anagram in anagramFinder.GetTopAnagrams(input.ToCharArray(), 20))
                {
                    Console.WriteLine("  {0} ({1}p)", anagram.Word, anagram.Points);
                    foundAny = true;
                }

                if (!foundAny)
                    Console.WriteLine("No anagrams found.");
            }

            Console.WriteLine();
        }