Exemple #1
0
        public int IsPangram(string N)
        {
            if (N.Length < 1 || N.Length > 103)
            {
                // TODO: user is able to retry with valid input
                Console.WriteLine("Invalid string input, Please enter a valid string that includes at least one character but no greater that 103 characters total");
                return(0);
            }
            else
            {
                // Convert everything to lowercase first
                var lowercaseString = N.ToLower();
                LetterCounter = LoadDictionary();

                // No need for char array
                foreach (char c in lowercaseString)
                {
                    if (LetterCounter.ContainsKey(c))
                    {
                        LetterCounter[c]++;
                    }
                }

                // Now let's see if what the dictionary has is a pangram
                // with the power of Linq
                bool isPangram = LetterCounter.All(i => i.Value != 0);

                return(Convert.ToInt32(isPangram));
            }
        }
        private static int GetAnswer()
        {
            var count = 0;

            for (var i = start; i <= finish; i++)
            {
                string words;
                try
                {
                    words = NumberToWords.Convert(i);
                }
                catch (ArgumentException ex)
                {
                    Console.WriteLine("Error converting number to words: {0}", ex.Message);
                    return(-1);
                }

                var letters = LetterCounter.Count(words);
                count += letters;

                if (verbose)
                {
                    Console.WriteLine("{0} : {1} : {2}", words, letters, count);
                    Thread.Sleep(step);
                }
            }

            return(count);
        }
        static void Main(string[] args)
        {
            string        sample  = "aaabbc";
            LetterCounter snample = new LetterCounter();

            Console.WriteLine(snample.Count(sample));
            Console.ReadLine();
        }
Exemple #4
0
 public LetterCounterEditor(LetterCounter counter)
 {
     InitializeComponent();
     ForeColor = ThemeColorTable.ForeColor;
     BackColor = ThemeColorTable.BackgroundColor;
     ThemeUpdateControls.UpdateControls(this);
     _counter = counter;
 }
Exemple #5
0
 public LetterCounterEditor(LetterCounter counter)
 {
     InitializeComponent();
     ForeColor = ThemeColorTable.ForeColor;
     BackColor = ThemeColorTable.BackgroundColor;
     ThemeUpdateControls.UpdateControls(this);
     _counter = counter;
     textBoxStartLetter.KeyPress += new KeyPressEventHandler(textBoxStartLetter_KeyPress);
 }
        public void TestLetterCounter_BasicWord()
        {
            // Arrange.
            var letterCounter = new LetterCounter();

            // Act.
            var result = letterCounter.GetLetterCounts("hello");

            // Assert.
        }
        public void TestLetterCounter_NullValues()
        {
            // Arrange.
            var letterCounter = new LetterCounter();

            // Act.
            var result = letterCounter.GetLetterCounts(null);

            // Assert.
        }
Exemple #8
0
        public static LetterCounter CountLetters(string text)
        {
            LetterCounter counter = new LetterCounter();

            foreach (char c in text)
            {
                counter.AddLetter(c);
            }
            return(counter);
        }
 public void CountShouldReturnTheNumberLettersAppearsInTheStringRegardlessOfCase()
 {
     var counter = new LetterCounter();
     counter.Count("tesT").Should().BeEquivalentTo(new Dictionary<string, int>
     {
         ["T"] = 2,
         ["E"] = 1,
         ["S"] = 1
     });
 }
        public void TestLetterCounter_LongerSentence()
        {
            // Arrange.
            var letterCounter = new LetterCounter();

            // Act.
            var result = letterCounter.GetLetterCounts("the quick brown fox jumps over the lazy dog.");

            // Assert.
        }
Exemple #11
0
        private static void OutputResults(IEnumerable <SearchResult> results)
        {
            Console.WriteLine("Using Lucene method.");
            var i = 0;

            foreach (var result in results)
            {
                Console.WriteLine($"{LetterCounter.GetLetterCounter(i)}. " + result);
                i++;
            }
        }
Exemple #12
0
        private static void OutputResults(SortedDictionary <string, List <int> > results)
        {
            Console.WriteLine("Using dictionary method.");
            var i = 0;

            foreach (var result in results)
            {
                Console.WriteLine($"{LetterCounter.GetLetterCounter(i)}. {result.Key} {{{result.Value.Count}:{string.Join(",", result.Value)}}}");
                i++;
            }
        }
Exemple #13
0
        /// <summary>
        /// Helper method will load all lowercase
        /// letters in the alphabet with an associated
        /// integer of 0 to keep count
        /// </summary>
        /// <returns></returns>
        public Dictionary <char, int> LoadDictionary()
        {
            // 97 = a & 122 = z
            for (int i = 97; i <= 122; i++)
            {
                // Dictionary is empty so we are just setting it up
                // with all lowercase letters in the alphabet.
                // Convert from int to its ascii value.
                LetterCounter.Add((char)i, 0);
            }

            return(LetterCounter);
        }
Exemple #14
0
        public void LetterCounterTest()
        {
            // Assemble
            char          letter         = Convert.ToChar("i");
            int           expectedResult = 6;
            String        sentence       = "iiiiioi";
            LetterCounter letterCounter  = new LetterCounter();

            // Act
            int actualResult = LetterCounter.LetterCount(sentence, letter);

            //Assert
            Assert.AreEqual(expectedResult, actualResult);
        }
Exemple #15
0
        public void dicTestDiffChars()
        {
            Dictionary <char, int> dic      = new Dictionary <char, int>();
            LetterCounter          letcount = new LetterCounter();
            string test = "Negyvenkettő";

            dic.Add('N', 1);
            dic.Add('e', 3);
            dic.Add('g', 1);
            dic.Add('y', 1);
            dic.Add('v', 1);
            dic.Add('k', 1);
            dic.Add('t', 2);
            dic.Add('ő', 1);

            Assert.AreEqual(dic, letcount.charLister(test));
        }
Exemple #16
0
        public static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                throw new ArgumentException("No input provided", nameof(args));
            }

            var counter = new LetterCounter();

            var result = counter.Count(args[0]);

            var consoleTable = new ConsoleTable();

            consoleTable.Options.EnableCount = false;
            var resultWriter = new ResultWriter(consoleTable);

            resultWriter.Write(result);

            Console.WriteLine(
                $"The text has been processed.{Environment.NewLine}Total letters counted: {args[0].Length}");
        }
Exemple #17
0
        public void OneCharacterOnce()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count("a"), new char[] { 'a' });
        }
Exemple #18
0
        public void SimpleString()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count("aaabbc"), new char[] { 'a', 'b', 'c' });
        }
Exemple #19
0
 public LetterCounterEditor(LetterCounter counter)
 {
     InitializeComponent();
     _counter = counter;
 }
Exemple #20
0
        public void OneCharacterMultipleTimes()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count("aaa"), new char[] { 'a' });
        }
Exemple #21
0
        public void SentenceTest()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count("Happy birthday to you"), new char[] { ' ', 'y', 'a', 'h', 'o', 'p', 't', 'b', 'd', 'i', 'r', 'u' });
        }
Exemple #22
0
        public void LargerTest()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count("abracadabra"), new char[] { 'a', 'b', 'r', 'c', 'd' });
        }
Exemple #23
0
        public void LettersWithSameCountAreAlphabetical()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count("cabdpe"), new char[] { 'a', 'b', 'c', 'd', 'e', 'p' });
        }
Exemple #24
0
        public void EmptyString()
        {
            LetterCounter lc = new LetterCounter();

            CollectionAssert.AreEqual(lc.Count(""), new char[] { });
        }