If the player spells a ten or more letter word, they should receive a 200 point bonus

From TRCCompSci - AQA Computer Science
Revision as of 13:32, 14 November 2017 by Admin (talk | contribs)
Jump to: navigation, search

Find the GetScoreForWord method. The for loop will calculate the score for the word played, the if statement adds any bonus points.

private static int GetScoreForWord(string Word, Dictionary<char, int> TileDictionary)
        {
            int Score = 0;
            for (int Count = 0; Count < Word.Length; Count++)
            {
                Score = Score + TileDictionary[Word[Count]];
            }
            if (Word.Length > 7)
            {
                Score = Score + 20;
            }
            else if (Word.Length > 5)
            {
                Score = Score + 5;
            }
            return Score;
        }

Change the if statement by adding a new condition, and change the current >7 condition to an else if instead. See below:


if (Word.Length > 10)
{
  score = score + 200;
}
else if (Word.Length > 7)
{
  Score = Score + 20;
}
else if (Word.Length > 5)
{
  Score = Score + 5;
}