public void FindSolutions() { Console.WriteLine("Finding next solution..."); board = board ?? new Board(); while (!board.IsSolution && !board.IsFinished) { if (!board.HasAttacks) { Console.WriteLine(board.ToString()); } board.Increment(); } if (!board.IsFinished) { Console.WriteLine("Solution #{0} Found!", SolutionsFound); board.Increment(); FindSolutions(); } }