Пример #1
0
 static bool SplitBetween(LetterClass a, LetterClass b)
 {
     return(a != b ||
            a == LetterClass.Other ||
            b == LetterClass.Other
            );
 }
Пример #2
0
        private static void initializeTheLetterCommonText(string letter_Instructions,
                                                          string letter_welcomePara,
                                                          string letter_body,
                                                          string letter_Title,
                                                          string sum_Title,
                                                          string sum_body,
                                                          string sum_Instructions,
                                                          string sum_Welcome,
                                                          out LetterClass summaryLetter,
                                                          out LetterClass verificationLetter)
        {
            //set up the letter classes for printing
            summaryLetter      = new LetterClass();
            verificationLetter = new LetterClass();

            summaryLetter.Load(sum_Title,
                               sum_Welcome,
                               sum_body,
                               sum_Instructions);

            verificationLetter.Load(letter_Title,
                                    letter_welcomePara,
                                    letter_body,
                                    letter_Instructions);
        }
 public List <WordClass> solve()
 {
     foreach (string word in wordsToFind)
     {
         for (int i = 0; i < this.numberOfRows; i++)
         {
             for (int j = 0; j < this.numberOfColumns; j++)
             {
                 if (word[0] == puzzle[i][j])
                 {
                     LetterClass initialLetter = new LetterClass(word[0], i, j);
                     allSolutions(i, j, word, initialLetter);
                 }
             }
         }
     }
     return(this.solution);
 }
Пример #4
0
 static bool SplitBetween(LetterClass a, LetterClass b)
 {
     return a != b
         || a == LetterClass.Other
         || b == LetterClass.Other
     ;
 }
        private void wordDisplacement(int initialRowPosition, int initialColumnPosition, int despRow, int despCol, string word, LetterClass initialLetter)
        {
            List <LetterClass> positions = new List <LetterClass>();

            positions.Add(initialLetter);
            int r = initialRowPosition;
            int c = initialColumnPosition;

            for (int i = 1; i < word.Count(); i++)
            {
                r += despRow;
                c += despCol;

                if (r >= 0 && c >= 0 && r < this.numberOfRows && c < this.numberOfColumns)
                {
                    positions.Add(new LetterClass(this.puzzle[r][c], r, c));
                }
            }
            addToSolution(positions, word);
        }
 private void solveRightDown(int initialRowPosition, int initialColumnPosition, string word, LetterClass initialLetter)
 {
     wordDisplacement(initialRowPosition, initialColumnPosition, 1, 1, word, initialLetter);
 }
 private void solveLeftUp(int initialRowPosition, int initialColumnPosition, string word, LetterClass initialLetter)
 {
     wordDisplacement(initialRowPosition, initialColumnPosition, -1, -1, word, initialLetter);
 }
 private void allSolutions(int initialRowPosition, int initialColumnPosition, string word, LetterClass initialLetter)
 {
     solveUp(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveDown(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveLeft(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveRight(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveLeftUp(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveLeftDown(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveRightUp(initialRowPosition, initialColumnPosition, word, initialLetter);
     solveRightDown(initialRowPosition, initialColumnPosition, word, initialLetter);
 }