コード例 #1
0
ファイル: CrozzleSequences.cs プロジェクト: bo1/crozzle1
        public void CheckDuplicateWords(int lowerLimit, int upperLimit)
        {
            // Create unique sequences.
            List <string> uniqueSequences = new List <string>();

            foreach (WordData sequence in Sequences)
            {
                if (!uniqueSequences.Contains(sequence.Letters))
                {
                    uniqueSequences.Add(sequence.Letters);
                }
            }

            // Check the number of occurances.
            foreach (String letters in uniqueSequences)
            {
                List <WordData> duplicates = Sequences.FindAll(x => x.Letters.Equals(letters));

                if (duplicates.Count > 1)
                {
                    if (duplicates.Count < Configuration.MinimumNumberOfTheSameWord || duplicates.Count > Configuration.MaximumNumberOfTheSameWord)
                    {
                        ErrorMessages.Add(String.Format(CrozzleErrors.DuplicateWordCountError,
                                                        letters, duplicates.Count, Configuration.MinimumNumberOfTheSameWord, Configuration.MaximumNumberOfTheSameWord));
                    }
                }
            }
        }
コード例 #2
0
        public void CheckDuplicateWords(int lowerLimit, int upperLimit)
        {
            // Create unique sequences.
            List <string> uniqueSequences = new List <string>();

            foreach (WordData sequence in Sequences)
            {
                if (!uniqueSequences.Contains(sequence.Letters))
                {
                    uniqueSequences.Add(sequence.Letters);
                }
            }

            // Check the number of occurances.
            foreach (String letters in uniqueSequences)
            {
                List <WordData> duplicates = Sequences.FindAll(x => x.Letters.Equals(letters));
                duplicates.RemoveAt(0); // A duplicate does not include the word itself.

                if (duplicates.Any())
                {
                    if (duplicates.Count < lowerLimit || duplicates.Count > upperLimit)
                    {
                        ErrorMessages.Add(String.Format(CrozzleErrors.DuplicateWordCountError,
                                                        letters, duplicates.Count, lowerLimit, upperLimit));
                    }
                }
            }
        }