Unit 40 Conditionals 3 – условные предложения 3 типа: If I HAD DONE

Subject:

Number of questions:

Description:

Notes: Notes
Help

Result:

Your answer:

Right answer:



7 thoughts on “Unit 40 Conditionals 3 – условные предложения 3 типа: If I HAD DONE

  1. Татьяна

    В третьем предложении наверно ошибка, третья форма get — got.
    А вторую часть этого предложения вообще не принимает.

    Reply
    1. Татьяна

      Ага, есть два варианта третьей формы глагола get. Какая разница, подскажите пожалуйста.

      Reply
      1. Елена Викторовна

        честно говоря, я пока нашла только такое различие — британцы предпочитают форму got, американцы gotten. Но в связке have got (у меня есть), и в Америке, и в Британии используется только got, и никогда gotten

        Reply
    2. Елена Викторовна

      вторая часть должна работать.

      Reply
  2. Bawarez

    Если первый ответ в вопросе верный, а второй — нет, то ответ подсвечивается синим. Это затрудняет поиск ошибок. Также после отправки ответов только первые звёздочки в предложениях заменяются верными ответами. А если отправить ответы ещё раз, то вторые звёздочки заменяются тем же, чем уже заменены первые. В предложенной ниже функции исправлены данные ошибки. Если захотите подправить тест, нужно лишь заменить функцию checkAnswers() в файле unit-40-blue-4.js. Может заработать не сразу, если браузер будет использовать кэшированую версию скрипта.
    function checkAnswers() {
    var correct = 0
    var incorrect = 0
    for(i = 0; i < questions.length; i += 2) {
    var firstInput = document.getElementById('input' + i).value.toLowerCase();
    var secondInput = document.getElementById('input' + (i+1)).value.toLowerCase();
    // Заменяем точку/запятую на пробел,
    // затем убираем пробелы в начале и в конце строки,(можно использовать метод .trim(), но он не поддерживается старыми браузерами)
    // и в завершении избавляемся от множественных пробелов между словами.
    firstInput = firstInput.replace(/[\.,]+/g, ' ').replace(/(^\s+|\s+$)/g,'').replace(/\s+/g, ' ');
    secondInput = secondInput.replace(/[\.,]+/g, ' ').replace(/(^\s+|\s+$)/g,'').replace(/\s+/g, ' ');
    var content = document.getElementById("label"+i).innerHTML;
    var fullanswer = content.replace("***", questions[i].A).replace("***", questions[i+1].A);
    document.getElementById("label"+i).innerHTML = fullanswer;

    var isCorrectFirst = firstInput == questions[i].A;
    var isCorrectSecond = secondInput == questions[i+1].A;
    if (isCorrectFirst && isCorrectSecond) {
    correct += 2;
    document.getElementById('label' + i).className = 'correct'
    } else {
    if (isCorrectFirst ^ isCorrectSecond){
    correct++;
    incorrect++;
    } else {
    incorrect += 2;
    }
    document.getElementById('label' + i).className = 'incorrect'
    }
    }
    document.getElementById('correct').innerHTML = correct
    document.getElementById('incorrect').innerHTML = incorrect
    if (correct === 10) {
    fireworks()
    congrats()
    }
    }

    Reply
    1. Bawarez

      Для двух следующих тестов этого юнита тоже можно применить данную функцию

      Reply
    2. Елена Викторовна

      Спасибо, я передам материал моему помощнику, он занимается работой скрипта.
      Спасибо, что помогаете сделать сайт лучше

      Reply

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *