Ответ:

Перевод задания: Выберите правильную форму времени.

  1. Nina has been learning English for 2 years. (Нина учит английский язык уже два года.) Действие продолжается; указан его срок.
  2. The birds have already flown to the South. (Птицы уже улетели на юг.) Present Perfect сообщает о завершённом перемещении.
  3. They have known him for many years. (Они знают его много лет.) Глагол know обычно не употребляется в Continuous.
  4. Mike has forgotten to learn the poem. (Майк забыл выучить стихотворение.) Здесь говорится о результате — он забыл; форма been forgetting не подходит.
  5. The children have been watching cartoons for 2 hours. (Дети смотрят мультфильмы уже два часа.) Действие продолжается в течение указанного времени.
  6. The train has just come. (Поезд только что прибыл.) Just указывает на недавнее завершённое действие.
  7. We haven’t had a holiday for 5 years. (Мы не отдыхали уже пять лет.) Have в значении «иметь/проводить отпуск» здесь не используется в Continuous.
  8. She has been teaching at this school for twenty years. (Она преподаёт в этой школе уже двадцать лет.) Подчёркнута длительность продолжающегося занятия.
  9. David has been painting in his studio since 10 o’clock. (Дэвид рисует в своей студии с десяти часов.) Подчёркнут процесс, начавшийся в указанное время.
  10. Mary and Sam have been collecting stamps for 3 years. (Мэри и Сэм собирают марки уже три года.) Подчёркнута длительность продолжающегося занятия.
  11. Their parents have been friends since their childhood. (Их родители дружат с детства.) Be в значении состояния не употребляется в Continuous.
  12. Dave has been a student for 2 years. (Дэйв учится два года.) Be в значении состояния не употребляется в Continuous.