I reworked the answer. Deleted anything doubtful, confusing or not on point. Added a segment on 'generality.'
Doubt.
Upshot:
- Both '하나요?' and '해요?' can be straightforward inquiry implying no expectation of the answer going one way or the other.
- '해요?' is suitable for signaling an expectation or desire to confirm. (Note: This is nothing special about '해요?' Most forms of question are.) '하나요?' much less.
- Thus, '해요?' would have a better claim to be called 'confirmatory' than '하나요?' has to 'dubitative.' (On this term of grammar, see the answer by Michaelyus.)
Example. In reference to some event you did not attend, either of
끝났어요? (Has it ended?)
끝났나요?
can be straightforward inquiry that signals nothing but your desire to know. You don't appear to think the answer would go one way or the other.
However, if people are streaming out of the conference room, and you are asking someone merely to confirm, you would say the first of:
끝났어요?
끝났나요?
Yes, you can force '끝났나요?' into that job by giving it the right tone, but it would not sound as good.
Therefore if '끝났나요?' is 'dubitative', it is not in always signaling doubt, but in being unsuitable for an expression of expectation or desire to confirm.
Another example on doubt.
Suppose you were somewhere and your sister was to join you shortly. You want to tell her to bring the car, but your mom answering the phone says she already left. Here, which of
차 갖고 갔어요? (Did she take the car?)
차 갖고 갔나요?
will come out may be 'random' for most people (barring e.g. subtle aesthetic preferences). In any event, neither would imply more doubt or expectation than the other.
But suppose your sister was in the habit of taking your car, and you suspect this has happened again. Barging in at the door you say to your mother:
걔 또 차 갖고 갔어요?
걔 또 차 갖고 갔나요?
Here you are far more likely to say the first.
(I have scrapped the bus driver example as raising unrelated questions.)
Generality.
Upshot:
- Both '해요?' and '하나요? may refer to a particular person and event.
- For generalities, '하나요?' is more likely.
Example. Either of
할아버지는 언제 결혼하셨어요? (Grandpa, when did you get married?)
할아버지는 언제 결혼하셨나요?
will be OK.
But of
조선시대에는 보통 몇 살에 결혼했어요?
조선시대에는 보통 몇 살에 결혼했나요? (In the Josun era, at what age did people generally marry?)
the latter sounds much better.
Don't let the reference to the Josun dynasty make you think this is a case of doubt. The question might be about some procedure. If you are asking some contractor how he handles an engineering situation, either of
이런 경우에는 주로 어떤 자재를 써요? (In this case, usually which material would be used?)
이런 경우에는 주로 어떤 자재를 쓰나요?
may do.
But if the question is about orthodoxy, then the second is more likely:
이런 경우에는 주로 어떤 자재를 써요?
이런 경우에는 주로 어떤 자재를 쓰나요?
Note: I may be condensing many variables into 'generality,' and more examples might bring out further subtleties.
A caveat.
You must not think that '하나?' is related to '하나요?' in the same way '해?' is to '해요?'
Between '해?' and '해요? (e.g. '갔어?' and '갔어요?') there is only the difference of familiarity or respect.
But '하나?' is wholly different from '하나요?'
'하나?' can be one of these three things (possibly others).
- Expression of moderate respect. A mother-in-law might use it to address her son-in-law, or a professor a graduate student, and in old movies educated men each other.
- A question spoken as if in soliloquy. Here it means something like (and is probably an elided version of), '하나 봐' or '하나 몰라.'
- In poetry, something like exclamation.
I.e., just because you know when to say '했나요?' you cannot just drop '요' and get a familiar version.
-나요 and -가요.
These are equivalent, the choice depending only on phonetic considerations. I am placing them among certain possibly related forms for reference.
-나요
답이 맞다. (The answer is right--base form.)
답이 맞아. (The answer is right.)
답이 맞아요. (The answer is right.)
답이 맞아? (Is the answer right?)
답이 맞아요? (Is the answer right?)
답이 맞나 보다. (The answer seems right--base form; this sentence could have other meanings.)
답이 맞나 확인하다. (Null-subject ascertains whether the answer is right--base form.)
답이 맞나? (Is the answer right?)
답이 맞나요? (Is the answer right?)
-가요
개가 어리다. (The dog is young--base form.)
개가 어려. (The dog is young.)
개가 어려요. (The dog is young.)
개가 어려? (Is the dog young?)
개가 어려요? (Is the dog young?)
개가 어린가 보다. (The dog seems young--base form; this sentence could have other meanings.)
개가 어린가 확인하다. (Null-subject ascertains whether the dog is young--base form.)
개가 어린가? (Is the dog young?)
개가 어린가요? (Is the dog young?)