Trả lời nhanh
Đáp án đúng là A. I have not seen her for three years. Cấu trúc “The last time + S + V (quá khứ) + was + khoảng thời gian + ago” được viết lại bằng thì hiện tại hoàn thành phủ định: “S + have/has not + V (P2) + for + khoảng thời gian”. Ba năm trước là lần cuối gặp, nên đến giờ đã ba năm chưa gặp lại.
Đề bài
Chọn câu có nghĩa gần nhất với câu gốc:
The last time I saw her was three years ago.
A. I have not seen her for three years.
Bản lưu của đề không còn đủ các phương án B, C, D nên trang này tập trung vào phương án A và cách nhận biết đáp án đúng cho mọi câu cùng dạng.
Vì sao chọn “I have not seen her for three years”?
- Về nghĩa: câu gốc nói lần cuối nhìn thấy cô ấy cách đây ba năm. Nghĩa là từ lúc đó đến nay, tôi không gặp cô ấy nữa.
- Về thì: hành động “không gặp” kéo dài từ quá khứ đến hiện tại, nên dùng hiện tại hoàn thành (have not seen).
- Về giới từ: “three years” là một khoảng thời gian, đi với for. Nếu là mốc thời gian (since 2023, since last summer) mới dùng since.
Công thức chuyển đổi cần nhớ
| Dạng câu | Công thức | Ví dụ |
|---|---|---|
| 1 | The last time + S + Vquá khứ + was + … ago | The last time I saw her was three years ago. |
| 2 | S + have/has not + VP2 + for + khoảng thời gian | I have not seen her for three years. |
| 3 | It is + khoảng thời gian + since + S + last + Vquá khứ | It is three years since I last saw her. |
| 4 | S + last + Vquá khứ + … ago | I last saw her three years ago. |
Cả bốn câu trong bảng đều cùng nghĩa. Khi đề cho câu dạng 1, bạn chỉ cần tìm phương án thuộc dạng 2, 3 hoặc 4.
Cách loại các phương án sai
Với dạng bài này, các phương án sai thường rơi vào những lỗi sau:
- Sai thì: “I did not see her for three years” hoặc “I do not see her for three years” không diễn tả được việc kéo dài đến hiện tại.
- Sai giới từ: “I have not seen her since three years” là sai, vì since cần một mốc thời gian, không đi với “three years”.
- Thừa “ago”: “I have not seen her for three years ago” sai, vì hiện tại hoàn thành không đi với ago.
- Đổi nghĩa: “I have seen her for three years” nghĩa là tôi vẫn gặp cô ấy suốt ba năm, trái với câu gốc.
Mẹo nhớ nhanh
Hãy nhớ: “last time … ago” → “not … for”. Thấy ago thì bỏ ago, đổi động từ sang P2, thêm “have not” và thay bằng for. Còn nếu đề là “It is … since”, hãy giữ thì quá khứ đơn sau since.
Lỗi sai thường gặp
- Quên đổi động từ sang P2: viết “have not saw” thay vì “have not seen”.
- Dùng “has” với chủ ngữ I/you/we/they. Chỉ he/she/it mới dùng has.
- Nhầm “since + khoảng thời gian”. Đúng là “since + mốc” hoặc “for + khoảng”.
Bài luyện tập
Viết lại các câu sau, giữ nguyên nghĩa:
- The last time she called me was two weeks ago. → She …
- It is five years since he last played football. → He …
- We have not eaten pizza for a month. → The last time …
Đáp án:
- She has not called me for two weeks.
- He has not played football for five years.
- The last time we ate pizza was a month ago.
Câu hỏi thường gặp
The last time I saw her was three years ago viết lại thế nào?
Viết lại thành: I have not seen her for three years. Có thể viết: It is three years since I last saw her, hoặc I last saw her three years ago.
Khi nào dùng for, khi nào dùng since trong câu này?
Dùng for với khoảng thời gian (three years, two weeks) và since với mốc thời gian (2023, last Monday). Vì vậy câu này dùng for three years.
Có dùng 'ago' trong câu hiện tại hoàn thành không?
Không. Ago đi với quá khứ đơn. Khi chuyển sang hiện tại hoàn thành phải bỏ ago và dùng for.
Có thể viết 'I haven't seen her for three years' không?
Có. Đây là dạng viết tắt của I have not seen her for three years và hoàn toàn đúng nghĩa.