Ответ:

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

Present Perfect Continuous обычно подчёркивает продолжающееся действие, а Present Perfect — завершённость или результат. С глаголами состояния, например know и be, употребляется Present Perfect.

  1. Nina has been learning English for 2 years. (Нина изучает английский уже два года.)
  2. The birds have already flown to the South. (Птицы уже улетели на юг.)
  3. They have known him for many years. (Они знают его много лет.)
  4. Mike has forgotten to learn the poem. (Майк забыл выучить стихотворение.)
  5. The children have been watching cartoons for 2 hours. (Дети смотрят мультфильмы уже два часа.)
  6. The train has just come. (Поезд только что пришёл.)
  7. We haven’t had a holiday for 5 years. (Мы не были в отпуске пять лет.)
  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. (Их родители дружат с детства.)
  12. Dave has been a student for 2 years. (Дэйв учится уже два года.)

В предложениях 5 и 10 выбран вариант с длительным действием: он подчёркивает, что занятия продолжаются в течение указанного периода.