Odpowiedź:
2) He has been playing tennis since 5 PM.
3) It has been snowing for three hours.
4) I haven't seen Susan since 2001.
5) Bill and Richard have been taking karate lessons since March.
6) I have been waiting for my friend for twenty minutes.
7) Tina has been going on holiday to Santorini for five years.
8) I haven't seen David for ages.
Wyjaśnienie:
"since" użyjesz, gdy możesz podać czas w przeszłości - od jakiegoś tam momentu , od marca, od 2001 roku, od 5 po południu
"for" użyjesz, gdy chcesz podać jak długo jakaś czynność albo sytuacja trwała - całe lata / wieki (for years, ages), trzy godziny (for three hours), 20 minutes (for twenty minutes)