- ベストアンサー
仮定法
If you haven't received the book you ordered by tomorrow, please let us know. という文で、どうしてhaven't received となるか教えて下さい。If節の中でどうして現在完了を用いることができるのですか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
条件のif節や時の接続詞(whenなど)の節中では 未来のことでも現在形にする、というのが基本ですが、 現在完了も現在形の一種なので、使うことができます。 You can go out when you have finished the homework. ちゃんと宿題やったら出かけてもいいよ。 つまり、「ちゃんと届かなかったら連絡してください」という意味で、現在完了になっているのでしょう。 ですから、この文は仮定法ではなく、通常の条件の文だと思われます。
その他の回答 (1)
- Ganbatteruyo
- ベストアンサー率63% (4601/7273)
アメリカに35年ほど住んでいる者です。 文法的には説明できませんが、こう言うことです。 つまり、注文した本が明日までに届いたと言う事が完了していなかったら、連絡を下さい。と言う事なんですね。 何かすごいこじつけのように聞こえますが、今から明日までにという期間中に受け取らなかったら、ということでhave not receivedと言う形をとるんですね。 ですから、have not received sinceは過去から今までのこと、have not received byは今から将来まで、というように覚えてしまっていいと思います。 口語では、ここを現在形で、If you do not receive the bookと言ってしまいます。 これでいいでしょうか。 分からない点がありましたら、補足質問してください。
お礼
ありがとうございました!現在完了を用いている理由がよく分かりました。万事解決です!感謝してます!
お礼
あっ!!なるほど!時を表わす副詞節だったんですね!仮定法かと勘違いしてました。ありがとうございました!