While it seems to make sense "why should someone both vote to reopen and vote to delete a single post", you are seeing it from a very narrow view. In the big picture, it actually makes a lot of sense and in some cases is a necessary feature.
From a historical perspective, the Stack Exchange sites have taken a very hands off view on telling people how to use their votes (all kinds of votes including up/down, close/reopen, delete/undelete), and leaving it to the community and individual users to decide how to vote, with the only exception being fraudulent voting (targeting a specific user).
This is because the privilege to use each of the different vote types is earned and as such, the user has earned a level of trust to use those votes wisely. Any restrictions on voting, even if it seems like it makes sense, would run contrary to that position. It also makes it harder for users to moderate posts when there are arbitrary restrictions based on a set of rules that may not apply in 100% of cases.
For your specific case of simultaneous delete and reopen votes, allowing this makes a lot of sense when you add a time component to the scenario. Realistically, it seems unlikely that someone would want to vote to delete and vote to reopen at the same instant in time, but consider a couple of scenarios:
- A user votes to delete a closed post, but at some point in time in the future, the post is edited and it becomes a perfectly acceptable question. Why can't that user come back and vote to reopen that post now?
- A user misclicks and accidentally casts a delete vote when they intended to cast a reopen vote (or vise versa)
- A user votes to reopen a closed post, and the original author tries to "fix" it before the question is reopened, but in doing so, makes the post a lot worse and delete worthy. The original reopen voter may want to come back and vote to delete instead since it can't likely be salvaged anymore.
It is important to know that delete votes and reopen votes both can't be retracted (yet?) and delete votes also do not age away, so once you cast either of the two votes, the vote will remain until the delete or reopen action is completed, or the reopen vote ages away. By restricting someone from casting a different vote simply because they used another contradictory one previously limits their ability to effectively handle posts, especially when the post changes over time.