smart.fm で更新してきた、
旧チャンネルブログの文法問題をお届けします。
今週は解答編です
======================================
●アプリ情報:
テストバージョン 2.18と2.19 。
今週の進捗
なしです。ごめんなさい…色々と滞ってる…(ToT)
今後の予定(作成順)
・チャットルーム作成
・アプリにコースが作れるように大幅改良
遅れに遅れて大変申し訳ありません。
======================================
先週の問題にチャレンジして下さった皆様、ありがとうございました。
では解答と解説に参ります。
まずは「過去完了形」のお話をします。
多くの皆さんが、過去完了形を苦手としていることを私は知っています。
過去完了形のおさらいをまずします。
====================================
【過去完了の制限】
過去完了形(had + 過去分詞)
を使うには実は制限があります。
「過去のいつまでか」というポイントが必要なのです。
「過去のいつまでか」という説明がなければ、過去完了形は使えません。(逆にその説明があれば、原則、過去完了にしなければなりません)
より正確な↓図
例えば
(父が死んだとき(死ぬ前)、私はここに2年間住んでいた)
I had lived here for two years when(before) my father died.
when(before) my father died.(父が死んだとき(前))という
「過去のいつまでか」という説明があるので、
ここでは
I
had lived here for two years という具合に
「過去完了(had lived)」にしなければなりません。
===================================
↓ここが最大のポイントです。
「過去のいつまでか」という説明がなければ、過去完了形は使えません。(逆にその説明があれば、原則、過去完了にしなければなりません)
では解説に行きます。
====================
問題・正しいものを1つ選べ
1
A. He said that he has seen me long before.
B. He said that he has seen me long ago.
C. He said that he had seen me long before.
D. He said that he had seen me long ago.
E. He said that he saw me long before.
正解
C. He said that he had seen me long before
(彼は私を長い間見てない、と言った)
(彼はかなり前に私と会ったことがある、と言った)
解説
ポイントは said と before である。
先に before から説明する。before の品詞をまず考えよう。
before は今回1語である。
before+名詞 …これならこのbeforeは前置詞である。
before+SV~ …これならこのbeforeは接続詞である。
今回は↑このどちらでもない。こういう場合は「
副詞」である。
「副詞の場合の時の before の意味」は「
それ以前に」である。
では「
それ以前」とは「
いつ以前」か? わかるだろうか?
考えられるのは
・「[
今を基準にして]以前」
もしくは
・「[
ある昔の1時点を基準にして]それ以前」
である。
今回は文脈で↑上のどちらなのかがわかる。
He
said(彼が
言った)←と書いてあるので、
このタイミング「以前」ということである。
例えば、彼が「~と言った」のが、先週の金曜日ならば⇒「先週の金曜日
よりも以前」の話なのである。
said(言った)が「
過去形」なので、言ったのは今ではない。
過去(例えば「先週の金曜日」)に said(言った)のは明らかである。
つまり、今回のbeforeの正体が「副詞」で、意味は
「それ(ある昔の1時点)より以前に」である、とわかった段階で
「過去のいつまでか」という説明(before)がある。⇒したがって手前は【過去完了形】に概ね決定するのである。
He said [that he【 】long before].
↑ここに入る時制が「現在時制」がありえるだろうか?
過去(例えば先週の金曜日)
よりも【以前】のことを言うのに「現在時制」は絶対にありえない。
「過去より昔」に「現在」が絡むことはありえないのだ!
したがって
He said [that he【 】long before].
↑
ここには現在時制は来れない。来れるのは「
過去時制、まずは過去形ではなく
過去完了形」なのである。
これで判定すれば
A. He said that he
has seen me long before.
↑現在時制(現在完了形)だから×
C. He said that he
had seen me long before.
↑過去時制(過去完了形)だから〇の可能性がある
E. He said that he
saw me long before.
↑過去時制(過去形)だから〇の可能性がある
となる。
---
次に ago を説明したい。
ago は「
過去形」のときのみ一緒に使える
「現在完了形」や「過去完了形」とは一緒に使えない。
この基準から判断すると
B. He said that he
has seen me long ago.
↑「現在
完了形」だから×
D. He said that he
had seen me long ago.
↑「過去
完了形」だから×
となる。
===
とすると、残っているのは
C. He said that he had seen me long before.
E. He said that he saw me long before.
の2つ。
ここで、この2つから1つに正解を絞るには「long(長く)」という単語が鍵を握る。
「長く」という意味は「期間」を示す。
であるならば、
「期間」の意味を示せるのは 完了形。時制が現在なら現在完了形、過去なら過去完了形である。今回は過去時制と分かっているので、今回ならば
×過去形
〇過去完了形
である。
ここで考えるのは原則である。「かなり前に会ったことがある」という<経験>の意味を表すのならば、完了形のほうが無難なのだ。したがって、完了形のほうをこの場合は正解とする。<しかし実際は、過去形を使う例も許される模様>
したがって正解は
C. He said that he
had seen me long before.
である。
=============================
2
A. John had arrived after you have left.
B. John had arrived after you left.
C. John arrived after you have left.
D. John arrived after you left.
正解
D. John arrived after you left.
(あなたが出たあと、ジョンが到着した)
解説
after ~ は「~の後で」という意味である。
順番の前後関係を考えよう
A. John had arrived after you have left.
「あなたが部屋を出ている(現在時制の)後」で「ジョンが到着した(過去完了形)」
過去完了形は「その過去の時点よりもさらに昔の過去のこと」を表す表現である。
(そもそも基準となる「過去形(の基準ポイント)」がないので、過去完了形は使えない!<この時点で×>)
仮に使えたとしても、
現在より後に⇒「過去の1時点よりもさらに昔の過去」が来ている⇒ありえない!
したがって×
B. John had arrived after you left.
「あなたが部屋を出た(過去形)後」で「ジョンが到着した(過去完了形)」
過去完了形は「その過去の時点よりもさらに昔の過去のこと」を表す表現である。
(そもそも基準となる「過去形」がないので、過去完了形は使えない!<この時点で×>)
仮に使えたとしても、
過去より後に⇒「過去の1時点よりもさらに昔の過去」が来ている⇒ありえない!
したがって×
C. John arrived after you have left.
「あなたが部屋を出ている(現在時制)後」で「ジョンが到着した(過去形)」
現在より後に⇒「過去」が来ている⇒ありえない!
したがって×
D. John arrived after you left.
「あなたが部屋を出た(過去形)後」で「ジョンが到着した(過去形)」
共に「過去形」ではあるが、after があれば「どちらが先でどちらが後なのか」という順番が分かる。
こういう場合は「共に過去形」でOK。
したがって、これが正解である。
=============================
3
A.I met him a few days before.
B.I had met him a few days before.
C.I have met him a few days before.
正解
B.I had met him a few days before.
(私はその2、3日前に、彼に会っていた)
この問題が厄介。
今回も before が問題 となる。
この before も1語。
今回のbeforeも、「before+名詞」でも「before +SV~」でもないので、
⇒品詞は「副詞」。
副詞の before の意味は
・「[
今を基準にして]以前」
もしくは
・「[
ある昔の1時点より]以前」
である。
まずこのへん↓を少し考えよう。
今回の befote が、もしも「[今を基準にして]以前」という意味ならば
A.I met him a few days before.
これは正解に見えるかもしれない。 「今を基準に2、3日前(今から2、3日前)」ならば、met という「過去形」でOKのように見えやすい。 しかし、残念ながらこれは間違い。なぜか?
なぜなら、「今を基準にして2、3日前」←という表現は
× a few days
before.
〇 a few days
ago
と使うからである。
とすれば、今回のbefore は
×・「[今]以前」
〇・「[ある昔の1時点より]以前」
ということである。
実は、
「
今を基準にして2、3日前」←という表現は
× a few days
before.
〇 a few days
ago
なのだが、
「今を基準にするのではなく」
「
過去の1時点を基準にしてその2、3日前」←という表現は
〇 a few days
before
という具合に使う。
したがって
B.I
had met him a few days before.
↑
ここが
過去完了形は充分
正解候補になる。
この英文のbeforeが「過去の1時点」を示せているから、過去完了を使う条件を備えているからである。
では
C.I have met him a few days before. ←これはどうか?
何度も確認する。
before の意味で考えられるのは
・「[今を基準にして]以前」
もしくは
・「[ある昔の1時点を基準にして]それ以前」
である。
・「[今を基準にして]以前」であれば、現在完了形(have met)は使える。
実は↓こういう表現は可能。正しい使い方である。
I have met him before.(私は以前に彼にあったことがある<経験>)
↑この場合は
「時間を示す語+before」ではなく「before」だけなのだ。
しかし選択肢Cは↑このように「before 単独」ではない。
時間を示す語+before
となっている。手前にオマケ?があるのだ。「before単独の場合」と 選択肢Cは「事情が異なる」のだ。
C.I have met him a few days before.
↑この場合は
「時間を示す語+before」であって、「before」だけではないのだ。
さっきも書いたが「今を基準に2、3日前(今から2、3日前)」←という表現は
× a few days
before.
〇 a few days
ago
である。だから、選択肢Cの a few days before という表現は⇒「
過去の1時点を基準にしてその2、3日前」なのだ。
また、before があっても、別バージョンの「今」が基準の現在完了形が使える表現もある。
「[今を基準にして]2、3日前」…という表現は(before ではなく ago を使うのが正しいので)使えないが
「[今を基準にして]2、3日間」…という【期間を示す】表現なら、現在完了形がふさわしい。
つまり
I have met him for a few days before.
↑これだったらOK。(私はここ2、3日間、彼と会っている(継続))
期間を示す for 「~の間」 が大事なのだ!
<訂正 2013年5月1日 上記部分は、私の勘違いと分かりました。このように for があっても間違いです。詳しくは
http://q-eng.com/diary/12904
の解説をご覧ください。
お詫びして訂正いたします。まことに申し訳ありませんでした。
繰り返しだが
「(
過去の1時点を基準にして)その2、3日前」←という表現は
〇 a few days
before
という具合に使うので、正解は
B.I had met him a few days before.
(私はその2、3日前に、彼に会っていた<経験>)
となる。
=======================================
以上になります。難しかったようですね。
特に 3は「正解者0名」でした。いかがでしたでしょうか?
それではまた来週です!
問題編
http://q-eng.com/diary/12511
出典
コメント