英文法ドリル2026年9月21日10分で読める

仮定法・if文の練習問題25問【解説つき】(即時採点つき)

if の後ろに will は置けない、過去形が来たら「非現実」のサイン、would の直後は原形・過去の後悔は would have+過去分詞——判定は2段階です。まず「話し手が実現すると思っているか(真の条件)」「もしもの世界の話か(仮定法)」を分けます。次に「基準が今か過去か」で時制を決めます。下の25問で、日本語の「〜たら・〜ば」が消してしまうこの2つの判断を、全問日本語解説つきで練習します。

著者: Raheel Ashraf

無料の練習: 英語 Grammar 練習問題|無料・解答と解説つき

仮定法の英文は2段階の判定で組み上がります。第一段階は「実現しそうか、もしもの話か」です。「明日雨が降ったら」は実現しうる話なので If it rains(if 節には未来でも現在形を使い、will を置かない)。「もしお金があったら」は今の現実に反するので If I had money, I would〜(過去形は過去の出来事ではなく、現実から一歩引いた距離を示しています)。第二段階は「基準の時点が今か過去か」で、過去のもしもは If I had known, I would have helped と had+過去分詞/would have+過去分詞の二段構えになります。

日本語の「〜たら・〜ば・〜と・〜なら」は、この実現する/しないの情報を持っていなくて、全部 if 訳できてしまうように見えます。だから日本人は if 節に will を置いたり、would を二つ並べたりしてしまう。下の25問は基礎(真の条件・will 禁則)・応用(仮定法過去と would/were)・実践(仮定法過去完了・混合仮定法・wish・倒置)の3段階で、各問即時採点。解説では毎回「対応する日本語のたら・ば・のにがどれか」を明示します。

未来を表す will は、if 節には置けません(If it will rain tomorrow は不可)。ただし意志の will なら例外として許されます(If you will wait a moment「もし待っていてくださるなら」)。迷ったときは「その will は未来の話?意志の話?」と自問してみるのが最短です。また、主節側の will(I will go if... は可)は原則どおり主節に置けばよいので、禁止なのは「条件の if 節に未来の will を入れること」だけ、と整理しておけば安全です。

仮定法・if文 クイズ 25問

基礎(真の条件)
Q1.If it ___ tomorrow, we'll cancel the picnic.
Q2.I'll text you as soon as I ___ at the station.
Q3.You'll miss the train ___ you hurry.
Q4.「日本に行くなら、京都に行きたい」の英語はどれ?
Q5.She ___ upset if I tell her the truth.
Q6.If you heat ice, it ___.
Q7.「彼が来なければ、始めましょう」の正しい英語はどれ?
応用(仮定法過去:現実から一歩引く)
Q1.If I ___ you, I'd apologize.
Q2.What would you do if you ___ a million dollars?
Q3.「もし今日一日暇だったら、ビーチに行くのに」の英語はどれ?
Q4.If she studied harder, she ___ better grades.
Q5.I wish I ___ taller.
Q6.If we left now, we ___ the traffic.
Q7.If you ___ wait a moment, I'll check for you.
Q8.「もしスマホがなかったら、どうする?」の英語はどれ?
Q9.I have no problem ___ you keep your promise.
Q10.If I were the manager, I ___ more staff.
実践(仮定法過去完了・wish・倒置)
Q1.If I had known about the meeting, I ___ there.
Q2.「もっと練習していれば、勝てたのに」の英語はどれ?
Q3.She would have become a doctor if she ___ medicine.
Q4.If you ___ told me earlier, I could have helped.
Q5.___ I known about the problem, I would have fixed it.
Q6.「あのときその仕事を引き受けていなければ、今ここにいなかったよ」の英語はどれ?
Q7.I wish I ___ harder for the exam last term.
Q8.Without that phone call, we ___ the train.

ルールまとめ:if 文の2段階判定

仮定法は暗記ではなく判定順です。①現実の条件か、もしもの話か。②もしもなら、基準の時点は現在か過去か。の2問に答えてから動詞を決めます。

現実の条件(明日の話・法則)→ if +現在形、主節 will/現在形。if 節に will は入れない
今のもしも(事実に反する)→ if +過去形、主節 would +原形。be 動詞は were が規範
過去のもしも(後悔・反省)→ if +had +過去分詞、主節 would have +過去分詞
wish:今の願望は過去形、過去の後悔は過去完了
unless=if not「〜しない限り」、as long as「〜する限り(条件)」
フォーマルな圧縮形:Had I known…(=If I had known)、If it were not for…(=それがなければ)
would を二つ並べないこと。would が入るのは原則として「if 節の外側(主節)」だけで、節の方の位置は常に時制をずらした動詞(過去形/had +過去分詞)です。

最大のつまずき点:たら・ば・と・ならは4つ、ifは1つ

日本語の条件表現は「明日雨が降ったら行く(仮定)」「春になると桜が咲く(必然)」「時間があれば行きます(十分条件)」「金持ちなら遊ぶのに(現実に反するもしも)」と、助詞の使い分けで条件の温度を細かく書き分けます。一方、英語は接続詞なら if(+ unless / as long as)でほぼ固定で、温度と時点の情報は接続詞ではなく「時制の一段ずらし」に載せます。日本語話者が if 節に will や would を置きたくなるのは、助詞に相当する情報を動詞側に載せる発想が日本語にないためです。

もう一つのズレは「もしも」です。日本語の「もし」は前に置くだけの飾りの語で、「もし時間があれば」の動詞は「ある+たら」のまま、時制は動きません。英語は非現実に「過去の形」を借りて、これを表します。If I had time の had は「持っていた」という過去の事実ではなく、「持っている(現実)を一段後ろに下げて置く形」です。時制の一致ではなく距離の表現だと理解すると、would/were/had known が全部同じ論理で繋がります。

「明日時間があれば行く」→ If I have time tomorrow, I'll go.(まだ実現しうる話)
「時間があれば行くのに(今は忙しい)」→ If I had time, I would go.(もしも)
「もっと早く言ってくれていれば」→ If you had told me earlier.(過去のもしも)
「春になると暖かくなる」→ When spring comes, it gets warmer.(「と」は必然なので if より when)
日本語の「たら・ば」を見て英語を組み立てる前に「これは現実の話?もしも?基準は今?過去?」の4択に分解する癖をつけると、will/would と had の選択はほぼ迷わなくなります。

なぜ日本人は仮定法で間違えるのか

文法用語が邪魔をしている節があります。「仮定法過去」という名前は「過去の事実について語っている」ように聞こえますが、中身は「今のもしも」です。テスト対策で暗記した用語と実態がズレたまま、If I were you を「過去について話している文」と誤解したまま大人になった、という人が本当に多い。名前を外して「現実から一歩引いた形」と再定義するだけで、would の使い道は一気に整理されます。

さらに、日本語に「〜だったのに(でももう取り返しがつかない)」に相当する組み立てが限られているので、would have done「できたのにしなかった」の感覚が薄くなります。should have done「すべきだったのに」や could have done「できたのに」と含めて、過去の未実現を語る英語の型は1セット(had + ずらし)しかありません。実践グループの8問は、この「日本語に薄い領野」を集中練習できるよう構成しました。

仮定法の英文を読んだら「これは現実の話?もしも?時点は今?過去?」を必ず声に出して確認。判定を声に出す訓練が、読みでも書きでもミスを減らします。

効果的な練習方法

1日に9問ずつ3日で25問を一周します。解説では「その文が現実条件・現在のもしも・過去のもしものどれか」を必ず自分の言葉で確認してください。翌日に間違えた問題だけを再挑戦すれば、2段階判定の正答率が9割近くまで上がります。

仕上げに自分の体験を仮定法で3文書いてみましょう。I wish I had 〜ed / If I had 〜ed, I would have 〜ed は、実は誰にでも書ける題材の塊です。書いた英文を PromGeeの無料英文法チェッカーに貼り付ければ、二重の would や if 節の will 混入を日本語付きの指摘で検出します。動名詞と不定詞のガイドをあわせて読むと、would have 系の組み立ても整理されます。

もっと練習する

よくある質問

if の後ろに will は本当に置けませんか?

未来を表す will は、if 節には置けません(If it will rain tomorrow は不可)。ただし意志の will なら例外として許されます(If you will wait a moment「もし待っていてくださるなら」)。迷ったときは「その will は未来の話?意志の話?」と自問してみるのが最短です。また、主節側の will(I will go if... は可)は原則どおり主節に置けばよいので、禁止なのは「条件の if 節に未来の will を入れること」だけ、と整理しておけば安全です。

仮定法過去と仮定法過去完了の見分け方は?

基準の時点で見分けます。「今お金がない」(今の事実)ベースのもしもは If I had money, I would buy 〜。「過去に買いそびれた」(過去の事実)ベースの後悔は If I had bought it, I would have saved money。日本語の手がかりは「のに」で、「〜なのに(今)」が仮定法過去、「〜すればよかったのに(過去)」が仮定法過去完了です。

If I was と If I were はどちらが正しいですか?

規範的には If I were が正解とされます。I でも he でも were にするのが仮定法の伝統的な形です。ただし日常会話では If I was you というネイティブも珍しくなく、口語では was 容認・筆記と試験では were、と使い分けるのが現実的です。

自分のif文をその場で確認

二重の would や if 節の will 混入は、自分ではなかなか気づけないもの。PromGeeの無料英文法チェッカーに仮定法の英文を貼り付けると、型崩れを日本語で解説してくれます。

無料で英文をチェックする

参考資料・出典

本ガイドは定評のある英文法リソースに基づいています。さらに学びたい方は以下の参考資料をご覧ください。