public void CalculatePlayerScore()
        {
            int playerScore        = 0;
            int playerAnswersCount = this.playerAnswers.Count;

            for (int i = 0; i < playerAnswersCount; i++)
            {
                if (playerAnswers[i] != null)
                {
                    if (playerAnswers[i] == problems[i].Answer)
                    {
                        switch (this.Difficulty)
                        {
                        case Difficulty.Easy:
                            playerScore += 3;
                            break;

                        case Difficulty.Hard:
                            playerScore += 5;
                            break;

                        default:
                            break;
                        }
                    }
                    else
                    {
                        switch (this.Difficulty)
                        {
                        case Difficulty.Easy:
                            playerScore -= 1;
                            break;

                        case Difficulty.Hard:
                            playerScore -= 3;
                            break;

                        default:
                            break;
                        }
                    }
                }
            }

            if (timerIsRunning)
            {
                DataPersister.SavePlayerScore(playerScore);
                MessageBox.Show(string.Format("Your score is {0}.", playerScore));
                RaiseGameFinished();
            }

            this.timerIsRunning = false;
            StopTimer();
        }