Question: The puzzle generated includes some unexpected (or dirty) words. How do I keep this from happening?
Answer: Sorry. That would require the program to have a dictionary of words, and then going through the puzzle looking for any dictionary word that isn't in the word list that the user specifies. While this is possible to do, the problem occurs seldom enough that I'm not going to worry about it. I also don't have a good enough vocabulary to type in all of the unexpected words that people might type.