仮定法/仮定法過去完了/倒置
作成日時: 2025/12/15 07:34
問題の詳細
次の日本語の文に合うように、語句を並べかえ、英文を完成させなさい。
「もし彼がその計画について事前に知っていたら、そんな間違いはしなかっただろう。」
解説: 仮定法過去完了の倒置 本問の解き方: ●仮定法で If が省略できるケース ●「~がなければ/なかったら…」の文
【Had S Vpp, S would have Vpp…】 (元の形:【If S had Vpp, S would have Vpp…】)
※ Vpp:Verb Past Participle(動詞の過去分詞)の略
※「もし~していなかったら」という否定の場合でも、Had だけが前に出て、not は主語の後ろに残る。(Hadn't S... とはしない)
1,日本語の文の意味から、仮定法が使われていそうだ。しかし、語群を見てもifがない→ifの省略が使われていると予測。
2,本来の形を考える。本来の形は "If he had known about the plan beforehand, ..."
3,If を省略すると、助動詞の Had が主語の前に出て倒置が起こります。(以降の解法は省略)
・仮定法過去で、動詞がbe動詞 (were) の場合(最も一般的):If I were you, ...→Were I you, ...
※注意点:仮定法過去で「一般動詞」を使っている場合、ifは省略できない。
・仮定法過去完了の場合:If I had known it, →Had I known it,
・仮定法未来・助動詞 should を使う場合(万一~なら):If you should have any questions, →Should you have any questions,
・仮定法未来・were to を使う場合(仮に~するとしたら):If the sun were to rise in the west, →Were the sun to rise in the west,
・動詞が had(持っている)の場合(※文語的・古風)
・it were not for(もし(今)~がなければ):If it were not for your help, →Were it not for your help,
・it had not been for(~がなかったら):If it had not been for your help, →Had it not been for your help,
【Without your help, ...】や【But for your help, ...】でも、ifを省略して同じ意味を表せる。