1. Подивись, де закінчується період
Почни не зі слова for, а з простого питання: цей стан досі є частиною теперішнього життя чи ми говоримо про закритий минулий період? Коли початок у минулому, а тривалість рахуємо до зараз, для станів використовуємо Present Perfect.
Якщо період закінчився раніше, Past Simple показує його як окрему частину минулого. У цих прикладах факт «досі тут» або «потім переїхали» знімає сумнів. Однакова тривалість не означає однаковий час.
We have lived in this flat for six years. It is still our home.
Ми живемо в цій квартирі вже шість років. Це досі наш дім.
Шість років відраховано до теперішнього моменту; проживання триває.
We lived in that flat for six years. Then we moved out.
Ми прожили в тій квартирі шість років. Потім ми виїхали.
Переїзд закриває саме той період проживання.
2. Стан донині: have/has + третя форма
Для тривалого знайомства, володіння річчю та стану використовуй known, had, been: це треті форми know, have, be. Українською часто кажемо теперішнім часом: «Я знаю… вже…», а англійською показуємо весь відрізок донині.
З I/you/we/they потрібне have, з he/she/it — has. У запереченні додаємо not після have/has; у питанні ставимо have/has перед підметом. Після допоміжного дієслова третя форма не змінюється.
I/you/we/they have + третя форма • he/she/it has + третя форма • Have/Has + підмет + третя форма…?
- subject / S —
- Підмет: про кого або що йдеться в реченні; з ним узгоджується дієслово. У The book was written підмет — the book, хоча дію виконує хтось інший.
I have known our neighbour for ten years.
Я знаю нашого сусіда вже десять років.
Знайомство триває донині: known, не knew.
She has had this camera since April.
У неї ця камера з квітня.
Has утворює час, had означає володіння камерою; два дієслова тут потрібні.
How long have you been a member?
Як довго ви вже є учасником?
Питаємо про тривалість теперішнього членства, тому have you been.
Завершений період: минула форма або was/were
Для колишньої роботи, минулого місця проживання чи вже завершеного стану використовуй Past Simple. Закриту рамку можуть задавати дати, until, then або попередня репліка. Не потрібно вставляти yesterday у кожне речення.
Зі звичайними дієсловами в питаннях і запереченнях did/didn't уже показує минулий час, тому далі V1. З be використовуємо was/were без did. Завершений період не є обіцянкою «ніколи більше»: можна повернутися до того самого місця пізніше.
підмет + форма минулого часу • did not + початкова форма • Did + підмет + початкова форма…? • was/were
- subject / S —
- Підмет: про кого або що йдеться в реченні; з ним узгоджується дієслово. У The book was written підмет — the book, хоча дію виконує хтось інший.
I had that bike for four years, but I sold it in June.
Той велосипед був у мене чотири роки, але в червні я його продав.
Had тут самостійна минула форма: володіння тим велосипедом закінчилося.
How long did you work at the old shop?
Як довго ви працювали в старому магазині?
Йдеться про колишню роботу: did + work, не did + worked.
I lived here as a student. I moved back last month.
Я жив тут у студентські роки. Минулого місяця я повернувся.
Past Simple описує попередній період, хоча тепер людина знову живе тут.
4. For показує тривалість, since — початок
For two months відповідає на «як довго?», since March — на «відколи?». For можливе і з періодом донині, і з завершеним періодом. Рішення дає стан ситуації, не сам прийменник.
У наших реченнях про стан донині since + точка початку поєднується з Present Perfect у головній частині. Але since не наказує ставити Present Perfect у кожній частині речення: після since може стояти Past Simple, якщо ця частина називає подію-початок. Для закритого діапазону з двома датами зручно from…to….
The shop has been open for two hours. It is open now.
Магазин відкритий уже дві години. Зараз він працює.
For задає тривалість стану донині.
The shop was open for two hours yesterday, then it closed.
Учора магазин працював дві години, потім зачинився.
Те саме for, але завершена вчорашня рамка.
We have been friends since we met at college.
Ми дружимо відтоді, як познайомилися в коледжі.
Have been — дружба донині; met — окрема подія, з якої вона почалася.
He worked there from 2019 to 2022.
Він працював там із 2019 до 2022 року.
Обидві межі цього періоду в минулому.
5. Know, have, be — не те саме, що live та work
Для звичайного значення «знати людину», «мати річ», «бути учасником» вживаємо просту доконану форму: have known, have had, have been. Не утворюй been knowing або been having, коли йдеться саме про знання чи володіння.
Live та work можуть описувати діяльність, яка триває. Тут природні і have lived/worked, і have been living/working. Continuous сильніше звертає увагу на перебіг діяльності; зараз не потрібно вивчати всю різницю між ними. У відкритих відповідях обидва варіанти допустимі, якщо зміст збережено. Якщо вправа тренує саме прості форми, це прямо сказано в умові.
I have had this desk for years.
Цей стіл у мене вже багато років.
Володіння — стан; уживаємо have had.
She has worked here since May. / She has been working here since May.
Вона працює тут із травня.
За умови, що робота триває, обидві конструкції можливі.
We have lived near the station for a year. / We have been living near the station for a year.
Ми живемо біля станції вже рік.
Це допустимі способи описати теперішній період проживання.
6. Не перетворюй корисний контраст на абсолютне правило
Цей урок — про тривалі стани та періоди. Present Perfect має й інші вживання: він може повідомляти про вже завершену дію з важливим теперішнім результатом. Тому «є have + V3» не означає «дію ще не завершено».
Так само Past Simple не завжди повідомляє, що стан неможливий зараз: речення може стосуватися лише певної минулої рамки. Якщо контекст не каже, чи людина досі працює або живе там, не вигадуй її теперішній статус. Уточни його.
I have finished the form. You can send it now.
Я завершив заповнення форми. Тепер її можна надсилати.
Заповнення завершене: Present Perfect тут показує результат, не тривання.
I worked in the café last summer.
Минулого літа я працював у кафе.
Ми знаємо про минуле літо, але не знаємо, де людина працює зараз.
Do you still work there?
Ви досі там працюєте?
Просте уточнення знімає невизначеність перед питанням про тривалість.
7. Перенеси часову рамку в розмову
Щоб повідомлення було зрозумілим, поєднай тривалість із коротким фактом про теперішній статус. Для свого теперішнього стану порахуй від початку до зараз; для попереднього періоду назви його завершення, якщо співрозмовник цього ще не знає.
У питаннях How long have you…? стосується тривалості донині; How long did you…? — тривалості завершеного періоду. З be в минулому запитуємо How long were you…? В одному діалозі можна природно перейти від колишньої роботи до теперішньої.
How long were you a teacher? — For eight years. I left teaching in 2021.
Як довго ви були вчителем? — Вісім років. Я залишив викладання у 2021 році.
Завершена професійна роль: were, а не did be.
How long have you been a driver? — Since 2022. I still enjoy the job.
Як довго ви вже працюєте водієм? — Із 2022 року. Мені досі подобається ця робота.
Нинішня роль: have been і відлік донині.
Типові помилки
Неправильно:She have worked here since May.
Правильно:She has worked here since May.
З she потрібне has. Саме worked після нього не змінюється.
Неправильно:I have knew him for years.
Правильно:I have known him for years.
Після have у Present Perfect потрібна третя форма known, а не минула knew.
Неправильно:Did you lived there for long?
Правильно:Did you live there for long?
Після did ставимо базову форму live; минулий час уже виражено did.
Неправильно:We have been neighbours since five years.
Правильно:We have been neighbours for five years.
Five years — тривалість, тому for; since потребує точки початку.
Неправильно:How long did you be a member?
Правильно:How long were you a member?
Для минулого стану з be потрібне were без did.