質問: 時制問題でつまづきました。 とある問題集に you are late. we ( ) for you for an hour. という問題があって、選択肢が(1)waited (2)had waited (3)have been waited (4)have been waiting で、答えは(4)have been waiting 訳は「遅いなあ。君を一時間待っているんだよ。」となっていました。 でも私はwe waited for you for an hour.でも正解のような気がして・・・。そこで質問ですが、waitedがだめな理由はyou are late. だからですか?you were late.ならwaitedが正解ですか? ここでさらに疑問なのが、友達がたった今遅れてやってきた時にyou are late.とは言わないんでしょうか?例えば遅刻して入ってきた生徒に教師が一言・・・you are late. you were late.どっちでしょう? 上の問題を見て私は、友達が目の前に現れての一言だと思ったので、一時間待ったという過去の事実をあらわす過去形を選択したのですが・・・。 考えれば考えるほどわからなくなってしまったので、どなたかアドバイスください。お願いします。
回答: we waited for you for an hour. は間違いではありません。最も一般的な表現は we have been waiting for you for an hour. ですが、次善は we waited for you for an hour. です。何故かとなると説明は難しいのですが「今までずっと...してたのだ」というには現在完了進行形がぴったりなのです。日本語はなにかと過去形表現が多いのですが、英語では過去形は過去のことを表すのです。現在完了進行形より簡単なのでつい使ってしまうことはあるので次善です。