0

1)Why are you cooking food today? 2)Why have you been cooking food today?

-Which one of them would be grammatically correct? And why the other one would be wrong? The use of 'today' in both of them has really confused me. Can you guys help? Thanks in advance.

1

Both are fully grammatical, and fully natural. Why do you think one of them is wrong?

Mostly, they would be usable in precisely the same circumstances. As with other questions of aspect in English, the difference is in how the speaker is choosing to view the events, not in any objective difference in the events.

"Why are you cooking food today" suggests that the cooking is happening in the future - later today. It may or may not be happening at the moment, or before now.

"Why have you been cooking food today" suggests that the cooking has been happening earlier today - it may or may not be happening still (or afterwards), but it is in some way still relevant now: maybe because people are still eating, or because you are still really hot from cooking.

0

1) Why are you cooking food today?

is correct. "today" as used here is a point in time, unless there is some other time references in context. There is no need for perfect tenses.
For 2), you could say:

2) Why have you been cooking food all day (today)?

where all day refers to various times during the day.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.