問題ページにもどる

この問題でおさえておきたいこと

「もし~がなかったら」の表現3つをおさえよう!
仮定法ではifを省略して疑問文の語順にすることができる場合がある!

解答
🄰
(1)had,not,been
(2)But,for
🄱
(1)(If it were not for air), all animals would die.
(2)(Were it not for your support), our company couldn't survive.
(3)(Were the sea to rise two meters), most of this island would be under water.

解説

🄰

(1)「彼の助けがなかったら、私は成功できなかったことでしょう。」

この組の上の文にてcouldがあり、しかもcouldの後は〈have+過去分詞〉がつづいています。この形が使われているということは、この文では仮定法が使われていることになります。仮定法で〈could have+過去分詞〉は「~できただろう」と過去の事実に反する仮定をします

その仮定法の文で、without ~は「もし~がなかったら」という意味をあらわします。この組の下の文は、コンマ以降の部分は上の文と同じですから、「もし~がなかったら」ということを別の表現であらわす必要がありますね。

if it had not been for ~は過去のことについて「もし~がなかったら」という意味をあらわしますが、ちょうどこの文は過去のことについての仮定法を使ったものでしたので、この表現を使うことができます。

(2)「彼が私を推薦してくれたので、私は昇進をしました。」

この組の下の文にはwouldがあり、しかもwouldの後は〈have+過去分詞〉がつづいています。ふつうの文で〈would have+過去分詞〉が使われるのは仮定法であることが多いです。仮定法で〈would have+過去分詞〉は「~しただろう」と過去の事実に反する仮定をします

上の文では「私は昇進をした」とありますが、下の文では「私は昇進をしなかっただろう」で終わっています。his recommendation(彼の推薦)があることとあわせて考えると、「彼の推薦がなかったら」という意味の英語を書く必要があると推測できますね。

ところが、without ~もif it had not been for ~も空所の数と合わなくて使えません。この「もし~がなかったら」の意味をあらわす表現にはもう1つあり、but for ~も「もし~がなかったら」という意味をあらわします。これならこの問題に使えますね。この3つの表現はセットで覚えておくようにしましょう

🄱

(1)「もしも空気がなかったら、すべての動物が死んでしまうことでしょう。」

並べかえる語句にifがあることと、同じ文にwouldがあることから、この文は仮定法が使われているのは明らかです。ちなみに、仮定法でwould ~という形は「~するだろう」と現在の事実に反する仮定をするんでしたね?

さて、仮定法の文にて、並べかえる語句にforやnotがあるということから、ある表現が使えるかがこの問題を解くカギになります。if it were not for ~で現在のことについて「もし~がなかったら」という表現です。この表現を使って「もしも空気がなかったら」という意味にすればよいというわけです。

(2)日本文に「支援がなければ」とあることと、英文にcouldが使われていることから、仮定法が使われていますね。そして、「~がなければ」とあるので、さっきの(1)にあったif it were not for ~を使うと考えることができます。ところが、並べかえる語句の中にifがありません。

実は、仮定法の文ではifを省略することができます。もちろん、勝手に省略してはダメで、「ifを省略しましたよ」とわかりやすくするために、ifを省略した場合は、主語の部分とwere(または助動詞)の語順を逆にする必要があります。

並べかえる語句にsupportやyourがありますから、もしふつうにifを使って書くとすれば、「あなたの支援がなければ」はif it were not for your supportとなるでしょう。そのifが省略されると、itとwereの語順が逆になり、Were it not for your supportとなるわけです。


(参考)

1.仮定法過去の文であれば、このように主語とwereの語順を逆にします。一方、仮定法過去完了の文であれば、主語と過去完了のhadの語順を逆にします。

例:Had he studied hard, he would have passed the exam.
(もし彼がより一生懸命勉強していたなら、彼はその試験に合格していたことでしょう。)

2.ifを省略して語順を逆にするということが許されるのは、wereや助動詞のときだけに限られます。ふつうの動詞のときはifを省略することはできません。

例:If she knew the truth, she would be very angry.
(もし彼女が真実を知っているのなら、彼女はとても怒っていることでしょう。)
knewはwereという単語でも助動詞でもなくふつうの動詞なので、ifを省略することはできません。


(3)日本文に「上昇すれば」とあること、英文中にwouldがあるので、仮定法を使った文ですね。並べかえる語句にto riseやwereが含まれているので、were to ~を使った仮定法の文だと考えることができます。

ただ、この問題でもifがありませんから、さっきの(2)にあったように、ifを省略して語順を逆にする必要がありますね。もしifを使って書くとすれば、上昇するのは「海」ですから、if the sea were to riseとなるはずです。

このifを省略して主語とwereを逆にすれば、were the sea to riseとなります。どれぐらい上昇するのかということも述べるためにtwo meters(2メートル)を付け足せば、並べかえる部分は完成ですね。

ちなみに、shouldを使った仮定法もありましたが、これもifを省略すれば、下の例文に示したとおり、主語とshouldの語順を逆にします。
例:Should he decided to do it, I would be surprised.
(もし万一彼がそれをしようと決めたら、私は驚くことでしょう。)