こんにちは、育伸開発です。
現在完了の授業が4回目となりました。今回の授業では今までの内容を踏まえつつ総合演習を行います。練習問題を出しますので解いていきましょう。
いくつか難易度が高いものや、気を付けておかないと間違えやすいものを出題しました。間違えて経験を積むのもいいことです。全ての問題に解説をつけましたので、ミス問題を理解して定着を図ることで力が更につくようになっています。
現在完了のそれぞれの用法について授業を受けたい方は以下の記事をご覧ください。
【中3英語 現在完了 その1】継続用法「ずっと~している」の授業
【中3英語 現在完了 その2】完了用法「~したところだ」の授業
【中3英語 現在完了 その3】経験用法「~したことがある」の授業
練習問題(印刷用ダウンロードプリント)
先生:授業を始めます。気を付け、礼。お願いします。
生徒:お願いします。
先生:今日は現在完了の授業のまとめとして、問題を演習していくよ。今からプリントを配るので早速解いていこう。でははじめ!
以下PDFファイルのダウンロードプリントになります。問題・解答ともにA4サイズで2ページずつあります。
現在完了05 総合問題 問題 (189 ダウンロード)現在完了05 総合問題 解答 (143 ダウンロード)
先生:いつものように以下プリントと同じ問題を載せておこう。その下には解答も載せておくので、パソコンやスマホの画面を見たまま勉強したい人は、それを見ながらノートにやっていってね。
現在完了 総合問題
1 英文を日本文に訳しなさい。
1.They have already made a chair.
2.Our daughter has never played tennis.
3.She has a cat.
2 指示に従って書き換えなさい。
1.Tom went to Hokkaido. (単語を加えて「2回行ったことがある」という文にする。)
2.Tom and Bob have read the book. (下線部分を尋ねる疑問文にする。)
3.They have already made a chair. (否定文にして訳す。)
4.It is cloudy now. ( now を since last week に換えて現在完了の文にする。)
5.He has been sick since yesterday. (下線部をたずねる疑問文にする。)
6.I came to Yokohama two years ago, and I am still in Yokohama.(同じ内容を現在完了の文でカッコに合わせて英文を作る。)
= I ( ) ( ) ( ) Yokohama ( ) two years.
7.Mary has a dog. (疑問文にして no で返す。)
8.They have cats. (否定文にする。)
9.Mary has a dog. ( since last year を加えて現在完了の文にする)
10.I became a doctor last month, and I’m still a doctor.(同じ内容を現在完了の文でカッコに合わせて英文を作る。)
= ( ) ( ) ( ) doctor ( ) last month.
3 語句を並び替えて正しい英文を作りなさい。
1.computers / have / ever / you / used / ?
2.the movie / times / you / many / have / how / seen / ?
3.been / year / they / last / busy / not / since / have / .
4.Japan / rainy / it / how / been / has / long / in / ?
4 日本文に合わせて英文を作るために( )内に語句を入れなさい。
1.私は今日本にいます。
I ( ) ( ) Japan ( ).
2.私は5年の間、ずっと日本にいます。
I ( ) ( ) ( ) Japan ( ) five years.
3.あなたはどれくらいの間ずっと日本にいるのですか。
( ) ( ) ( ) you ( ) ( ) Japan ?
4.あなたは50年間ずっと疲れているのですか。はい、疲れてます。
( ) you ( ) ( ) ( ) ( ) ( ) ?
Yes, ( ) ( ).
5.彼はアメリカへ行ってしまっています。
He ( ) ( ) ( ) America.
6.彼は何回アメリカへ行ったことがありますか。
( ) ( ) ( ) ( ) he ( ) to America ?
7.あなたは今までにトムに会ったことがありますか。
( ) you ( ) ( ) Tom ?
8.私はすでにその本を読むことを終えてあります。
I ( ) ( ) finished ( ) the book.
9.あなたはもう宿題をしてあるのですか。いいえ。
( ) you ( ) your homework ( ) ?
No, ( ) ( )
10.ごぶさたです!
I ( ) ( ) you ( ) a ( ) time !
11.この前の土曜日からずっと雪です。
( ) ( ) ( ) since ( ) ( ).
5 英文に直しなさい。
1.彼女は長い間ずっと日本に興味があります。
2.俺たちは親友になって30年になるぜ。
3.トムは一度も私に会ったことがありません。
4.私たちの娘はまだ彼女の宿題を終わらせてません。
現在完了 総合問題の解答
先生:以下答えです。確認して下さい。間違っているところやわからなかったところは解説を確認してね。解説は解答の下にまとめて載せてあるよ。
1 英文を日本文に訳しなさい。
- They have already made a chair.
彼らはすでに椅子を(1つ)作りました。 - Our daughter has never played tennis.
私たちの娘はテニスをしたことが一度もありません。 - She has a cat.
彼女は(一匹の)ネコを飼っています。
2 指示に従って書き換えなさい。
- Tom went to Hokkaido. (単語を加えて「2回行ったことがある」という文にする。)Tom has been to Hokkaido twice.
- Tom and Bob have read the book. (下線部分を尋ねる疑問文にする。)
Who has read the book? - They have already made a chair. (否定文にして訳す。)
They haven’t made a chair yet.
彼らはまだ椅子を作っていません。 - It is cloudy now. ( now を since last week に換えて現在完了の文にする。)
It has been cloudy since last week. - He has been sick since yesterday. (下線部をたずねる疑問文にする。)
How long has he been sick? - I came to Yokohama two years ago, and I am still in Yokohama.(同じ内容を現在完了の文でカッコに合わせて英文を作る。)
= I ( have ) ( been ) ( in ) Yokohama ( for ) two years. - Mary has a dog. (疑問文にして no で返す。)
Does Mary have a dog? No, she doesn’t. - They have cats. (否定文にする。)
They don’t have cats. - Mary has a dog. ( since last year を加えて現在完了の文にする)
Mary has had a dog since last year. - I became a doctor last month, and I’m still a doctor. (同じ内容を現在完了の文でカッコに合わせて英文を作る。)
= ( I’ve ) ( been ) ( a ) doctor ( since ) last month.
3 語句を並び替えて正しい英文を作りなさい。
- computers / have / ever / you / used / ?
Have you ever used computers? - the movie / times / you / many / have / how / seen / ?
How many times have you seen the movie? - been / year / they / last / busy / not / since / have / .
They have not been busy since last year. - Japan / rainy / it / how / been / has / long / in / ?
How long has it been rainy in Japan?
4 日本文に合わせて英文を作るために( )内に語句を入れなさい。
1.私は今日本にいます。
I ( am ) ( in ) Japan ( now ).
2.私は5年の間、ずっと日本にいます。
I ( have ) ( been ) ( in ) Japan ( for ) five years.
3.あなたはどれくらいの間ずっと日本にいるのですか。
( How ) ( long ) ( have ) you ( been ) ( in ) Japan ?
4.あなたは50年間ずっと疲れているのですか。はい、疲れてます。
( Have ) you ( been ) ( tired ) ( for ) ( fifty ) ( years ) ?
Yes, ( I ) ( have ).
5.彼はアメリカへ行ってしまっています。
He ( has ) ( gone ) ( to ) America.
6.彼は何回アメリカへ行ったことがありますか。
( How ) ( many ) ( times ) ( has ) he ( been ) to America ?
7.あなたは今までにトムに会ったことがありますか。
( Have ) you ( ever ) ( met ( seen ) ) Tom ?
8.私はすでにその本を読むことを終えてあります。
I ( have ) ( already ) finished ( reading ) the book.
9.あなたはもう宿題をしてあるのですか。いいえ。
( Have ) you ( done ) your homework ( yet ) ?
No, ( I ) ( haven’t )
10.ごぶさたです!
I ( haven’t ) ( seen ) you ( for ) a ( long ) time !
11.この前の土曜日からずっと雪です。
( It’s ) ( been ) ( snowy ) since ( last ) ( Saturday ).
5 英文に直しなさい。
1.彼女は長い間ずっと日本に興味があります。
She has been interested in Japan for a long time.
2.俺たちは親友になって30年になるぜ。
We have been good friends for thirty years.
3.トムは一度も私に会ったことがありません。
Tom has never met me.
4.私たちの娘はまだ彼女の宿題を終わらせてません。
Our daughter hasn’t finished her homework yet.
現在完了 総合問題の解説
先生:では解説をしていこう。必要な部分だけ確認してね。
1の解説
1.already の文は「もう~してある」「すでに~した」と完了している意味で訳そう。
2.never の文は「一度も~したことがない」と経験が無い意味になるよう訳そう。
3.has を見たらすぐに現在完了の文だと判断すると間違えることがあるので気を付けよう。has の後は過去分詞が来ていないので現在形「~を持っている、~を飼っている」という意味だ。すぐ後にネコ(a cat)があるので、彼女はネコを飼っている、と訳そう。
2の解説
1.日本語訳の「行ったことが…」から go を使いたくなるけど、「~へ行ったことがある=have been to ~」だ。三単現のSの付け忘れにも注意しよう。
2.人物の部分がわからなくて下線が引かれているね。だれなのかを尋ねるので疑問詞 who を使おう。疑問詞が主語になると肯定文の語順になる。だから who の後に have(has) +過去分詞の固まりを持って来よう。あと、who は I, you, 複数以外なので三人称単数だ。has にするのを忘れないように。
3.already は否定文で yet になって文末へ移動する。その場合の訳は「まだ~してない」というものになる。
4.cloudy は「曇っている、曇りの状態だ」という意味の形容詞だ。「ずっと形容詞の状態だ」という文を作りたい時は、主語の後に「have(has) been 形容詞」の固まりを持って来よう。
5.「昨日から」の部分を尋ねる時は「いつから?」となるので、疑問詞の固まり how long を文頭に持って来る。その後は疑問文が来るので、he has been sick の has を主語の前に出して has he been sick? をくっつけよう。
6.もとの文を訳すと「私は2年前に横浜へ来まして、まだ横浜に居ます。」となっている。ということは、「私は2年間ずっと横浜に居ます。」という英文を作ればいいわけだ。「~にいる」という表現は主語の後に「be動詞 +場所を表す語句」を持って来よう。
↓現在完了の文に変形
I have been in Yokohama.
このようにして現在完了の文を作ろう。「~にずっといる= have been in ~」と覚えておいてもいいね。あと以下の文を間違って作った人が居るかもしれない。
7.文中の has は一般動詞の現在形で「~を飼っている、~を持っている」という意味だ。後ろに過去分詞があれば現在完了の文だけど、過去分詞は無いからね。ということで、一般動詞の現在形を使った文を疑問文にするときは、主語の左に do を登場させるのがルールだ。
Do you have ~? とか、三単現のSが付く場合は Does she have ~?としてあげよう。それに対しては、No, I don’t. とか、No, she doesn’t.と返すことになる。ちなみに答えの文の訳は「メアリーは犬を飼っていますか。」「いいえ、飼っていません。」だ。
Has Mary a dog? とやってはいけないよ。
8.文中の have は一般動詞の現在形で「~を飼っている」という意味だ。後ろに過去分詞が無いからね。ということで、一般動詞の現在形を使った文を否定文にするときは、主語と動詞の間に do not (=don’t)を登場させるのがルールだ。
三単現のSが付く場合は does not (=doesn’t)としてあげよう。They haven’t cat. とやってはいけないよ。ちなみに答えの英文の訳は「彼らはネコを飼っていません。」だ。
9.もとの Mary has a dog. は「メアリーは犬を飼っています。」という意味だね。動詞 has が使われている。これを現在完了にするときは、主語 Mary の後に has を持って来よう。
その後にもとの動詞の has を過去分詞(had)に変形してくっつけ、更に a dog 以下もくっつけよう。
これで現在完了の文が完成だ。「持っている(have)」という単語が2連続していると変な感じがするけど、正しい文だよ。「メアリーは昨年からずっと犬を飼っています。」という意味だ。
ちなみに三単現のSの付かない主語に換えると以下の文になる。
これも正しい現在完了の文で、「私は昨年からずっと犬を飼っています。」という意味だ。
10.もとの文を訳すと「私は先月医者になって、まだ医者だ。」となる。ということは「私は医者だ。= I am a doctor.」というのが先月からずっと続いていることになるね。だから I have been ~.と be動詞を使った現在完了の文を作ろう。かっこの数に合わせるために主語と have を短縮形にしておこう。以下の文を間違って作った人が居るかもしれない。
3の解説
1.肯定文で並べると you have used computers となるね。ever は過去分詞の左に入ると覚えておこう。you have ever used computers となる。そして have を主語の左に出して疑問文の語順にすれば答えだ。
2.times / many / how を見て、疑問詞の固まり how many times を文頭へ持って来る。その後は疑問文が来るので have you seen ~の形を持って来よう。
3.busy は「忙しい」という意味の形容詞だ。だから肯定文では「have been 形容詞」という形が主語の後にくる。否定文では「have not been 形容詞」となる(not は have の後ろにくっつける)。つまり They have not been busy ~となる。
4.how と long があるので疑問詞の固まりとして文頭へ持ってくる。そして rainy だけど「雨降りだ、雨が降っている状態だ」という意味の形容詞だ。だから天候を表す it を主語にして、その後に「have(has) been 形容詞」の形を持って来よう。
一度こうなるのだけど、疑問詞の後は疑問文の語順にしなければならないので has を it の前に出す(=it と has をひっくり返す)。最後に(文末に)場所を表す語句である in Japan をくっつけて…
このようにやってあげて答えだ。「どれくらいの間、日本でずっと雨が降っているのですか。」という意味だよ。
4の解説
1.「~にいます」という表現は「be動詞+場所を表す語句」の形にしよう。be動詞は am、場所を表す語句は in Japan だ。今現在のことを言っているだけだから、現在完了の文にはしないよ。
2.「ずっと~にいる」とあるので現在完了・継続用法の文だ。この場合は have の後にbe動詞の過去分詞形+場所を表す語句を持って来よう。つまり「have been in ~=~にずっといる」となる。
3.「どれくらい」とあるので how long を文頭へ持ってくる。そのあとは you have been in ~(あなたはずっと~にいる)という肯定文を疑問文の語順にしてくっつけよう。
4.tired(疲れている)は形容詞だ。だから「have been 形容詞」の形を作ろう。肯定文では You have been tired ~となる。have を主語の前に出して疑問文の語順にして答えを作ろう。
5.「~へ行ってしまっている」というのは結果用法の表現で、have(has) gone to ~を使おう。
6.まず how many times を文頭に持って来よう。そして「彼は~へ行ったことがあります。」という「he has been to ~」を作る。それを疑問文の語順にして「has he been to ~?」を疑問詞の固まりの後にくっつければ答えだ。
7.「主語は今までに~したことがありますか。」という文なので「Have 主語 ever 過去分詞?」の形を持って来よう。
8.「すでに~してある」とあるので「 have already 過去分詞」の形を持って来よう。ちなみに「~し終える」を英語にすると「finish ~ing」だから、I have already finished の後を reading とするのを忘れないように。
9.「宿題をする」と言いたい時の動詞「する」は do だ。その過去分詞 done を使おう。「もう~してあるのですか。」と疑問文になるので already ではなく yet を文末へ置こう。
10.答えの英文である I haven’t seen you for a long time! を直訳すると「私は長い間あなたにずっと会ってません!」となる。つまり「久しぶり!」「ごぶさたしてます!」という意訳になる。「久しぶり、ご無沙汰です=長い間ずっと会ってない」と現在完了・継続用法の否定文を作ることを覚えておこう。
11.天気が雪である場合、snowy(雪降りだ)という形容詞を使おう。単語数を気にしないで現在完了の表現にすると It has been snowy ~となる。4単語になるが、問題ではこの部分を3単語にしてかっこに入れなければいけないので、It と has を短縮形 It’s にしよう。
5の解説
1.人間が「~に興味がある」という場合は be interested in ~という熟語表現を使おう。be動詞が入るので現在完了の文にすると、主語の後に have(has) been interested in ~という形が来るよ。
2.親友になって30年ということは、「30年間ずっと親友だ」という現在完了・継続用法の英文を作ることになる。We are good friends.(私たちは親友だ。)を現在完了の文に変形させよう。We have been good friends.となる。その後ろに for thirty years をくっつけて答えだ。
3.一度も~ない、とあるので never を過去分詞の左に入れよう。ちなみに met の代わりに seen でも正解だ。
4. まだ~してません、とあるので hasn’t finished と否定文を作り、yet を文末に置こう。
先生:以上で解説終了です。他に質問あるかな?質問がある人はコメント欄を使って下さいね。では現在完了の授業おしまいです。気を付け、礼。ありがとうございました^^