Как работает цикл while в моем примере?

Здравствуйте! Объясните пожалуйста, максимально подробно, если можно, логику данного цикла? Почему мы получаем следующую последовательность цифр?

10 0 9 1 8 2 7 3 6 4 5 5 4 6 3 7 2 8 1 9 0 10

function t15() {
  const out15 = document.querySelector(".out-15");

  let i = 10 + 1;

  while (i > 0) {
    i--;
    out15.textContent +=  i + ' '+(10-i)+' ';
  }
}

document.querySelector(".b-15").onclick = t15;
  • Вопрос задан
  • 94 просмотра
Решения вопроса 1
samodum
@samodum
Какой вопрос - такой и ответ
i=11

цикл:
i=11-1 => 10
out15 = 10 + (10-10) => "10 0"

i= 10-1 => 9
out15 = "10 0" + 9 + (10-9) => "10 0" + "9 1" => "10 0 9 1"

i= 9-1 => 8
out15 = "10 0 9 1" + 8 + (10-8) => "10 0 9 1" + "8 2" => "10 0 9 1 8 2"

...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alexalexes
Сделайте подробную трассировку решения.
Код объяснит себя сам как он работает.
let j = 1;
  while (i > 0) {
    i--;
    out15.textContent += 'шаг цикла=' + j + '; ' + 'i='+ i + '; (10-i)='+(10-i)+'<br/>';
   j++;
  }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы