Translation:Do you know why they are angry?
It's a somewhat subtle point, but we need the "吗" in this sentence because "为什么" isn't functioning as a question word - the question is whether or not the person being asked (你) knows why (知道为什么) the other group of people (他们) are angry. So a valid response to this question could simply be "我(不)知道" without actually explaining why the people in the other group are angry; but on the other hand the question "他们为什么生气" calls for an explicit explanation of "why they are angry" because in this case "为什么" now functions as a question word.
If we leave off the "吗" in the original sentence, then the sentence becomes the assertion "你知道他们为什么生气" meaning "you know why they are angry".
I'm curious as to why this is "Do you know why they are angry?" and not "Why do you think they are angry?"
Is there something semantic I'm missing here? The first line would be looking for a yes or no, but the second one would be looking for the reason. I don't know how to tell from the Chinese characters that that's what they're looking for.
First if all, the sentence ends with 吗, which means it is a yes/no question. Also, 知道 means "to know". 觉得 means "to think" or "to feel" (your belief or opinion).
You can look at the sentence in this exercise as: 你知道...吗? (Do you know...?)
The ”他们为什么生气” (why they are angry) is just the specific information we are talking about. This is a yes/no question asking whether or not you know this information.
As its own sentence, ”他们为什么生气? ” means "Why are they angry?"