Grammar / B1 Grammar lessons and exercises \ Past simple or present perfect?

We often use short forms in speaking — except in positive short answers.
❗ Never use short forms in positive short answers:
❌ “Have you finished?” — “Yes, I’ve.” ← Wrong
✅ “Have you finished?” — “Yes, I have.” ← Correct
I have broken my arm.
She has found a job.
We have passed the exam.
Tony has just called. (very recent)
I have already finished my homework. (sooner than expected)
Have you finished yet? / I haven’t finished yet. (expected but not done)
They have recently bought a new car.
I have been very busy lately.
I have seen John today. (today isn’t over)
Has she called you this week?
I have never read this book.
Have you ever seen a John Wayne film?
I haven’t experienced anything like this before.
This is the best meal I have ever had.
It’s the most amazing place we have ever travelled to.
I have watched this film three times.
We have been to Paris twice.
We have been married for 25 years.
I have had this watch since I was a kid.
How long have you been friends?
→ For + period (2 hours, 3 years)
→ Since + point in time (May, 2020, I was born)
She has been with me all day.
I have lived here all my life.
Tom has gone to Ireland. He’ll be there for a couple of weeks.
→ He is in Ireland now.
We have been to Ireland three times. We love it.
→ We are not in Ireland now.
❌ I’ve had my watch since two years ago.
✅ I’ve had my watch for two years.
✅ I have lost my keys. (Don’t know when)
❌ I have lost my keys yesterday. ← Wrong
✅ I lost my keys yesterday. ← Correct
A: I have been to the cinema.
B: What did you see?
A: I saw a great film by...
A: Oh, you have broken your arm!
B: Yes, I have.
A: How did it happen?
📌 Remember:
Use present perfect for experiences, recent actions, unfinished time, and duration.
Use past simple when time is specific or known.
❗ No “ago” with present perfect → use “for” or “since”.
🔄 “Have gone” = still away | “Have been” = came back