質問: 英語の質問 ・ i ( ) in new york for three years when i was a child . 答えlived 過去形なのにfor three years ってどういうことなんでしょうか? ・i ( ) a book for an hour when he entered the room. 答え had been reeding had read では駄目ですか?過去完了にはある時点までの状態の継続という意味があるそうですが ・please tell me as soon as you ( ) your homework 答え have done なんで現在完了なんですか?doじゃだめですか? ・we don't know if he ( ) back to japan again 答え will come comesでは駄目ですか? 回答お願いします!
回答: ・ i ( ) in new york for three years when i was a child . 答えlived 過去形なのにfor three years ってどういうことなんでしょうか? →答はlivedです。 過去のある時点で3年間ニューヨークに住んでいたのです。たとえば、27年前から25年前までニューヨークに住んでいたということです。 i have lived in new york for three years. なら、今までの3年間ニューヨークに住んでいたことになります。3年前から住んでいたという意味です。 ご質問の文は自分が子供の頃ですから昔の話です。ですから過去形ということになります。 ・i ( ) a book for an hour when he entered the room. 答え had been reeding had read では駄目ですか?過去完了にはある時点までの状態の継続という意味があるそうですが →had readを絶対に使ないかと言うと、使える可能性はあると思います。それは、彼が部屋に入ったまさにその瞬間に私がその本を1時間かけて「読み終えた」という特殊な場合です。しかし、そういう偶然的なことはほとんどないでしょうから、しかもそのようなことがあったとしても、そのことをことさら取り上げる理由がなければ言わないと思います。だから、彼が部屋に入ったときに、それまで1時間本を読んでいたということで、had been readingが答です。ついでに、reedingでなくreadingです。 ・please tell me as soon as you ( ) your homework 答え have done なんで現在完了なんですか?doじゃだめですか? →私に教えてほしい時が、どの時点かというと、宿題をやり終えた時点ですね。宿題をやっている時点ではないのです。whenならまだしも、as soon asを使っているのですから、何かやり終えたらすぐにという意味に使わないと、使えませんね。 やり終えるのは現在完了(それでこの場合副詞節なので未来のことを表すと考えてください)を使えるのです。現在完了は現在形の一種ですからこの使い方は正しい用法です。 please tell me as soon as you do your homework.だと、宿題をやりはじめた時点なのか、やっている途中なのか。やり終えたという感じはこの表現ではでません。こんな曖昧な言い方はしないはずです。 ・we don't know if he ( ) back to japan again 答え will come comesでは駄目ですか? →japanはjapanにしましょう。 comeは1回の動作ですから、それを現在形で使うときには、このような文脈では妙な感じがします。 彼がまた日本に戻ってくるかどうかーーと日本語ではなるかもしれませんが、 he comes back to japan again. では、100%間違いなく戻ってくるという保証がない(たとえば途中で死ぬかも)ので、現在形の確実な言い方ができないので、willなどを入れます。 he will come back to japan again.としなければなりません。(劇の台本などは例外で、はっきりと決まるから言えますが) ですから、we don't knowとしても理屈は同じで、willをつけなければなりません。 以上でよろしいでしょうか。