Как работает цикл?

У меня есть такой цикл. Не могу понять как он работает.
for (let i = 2; i <= 10; i++) { 

  for (let k = 2; k < i; k++) { 
    if (i % k == 0) continue; 
  }

  console.log( i ); 
}

Тут получается в первом внешнем цикле сначала i = 2, k = 2. Во внутреннем цикле это не удовлетворяет условию т.к. i должно быть больше k. И вот я не могу понять что происходит дальше: вращается внутренний цикл до тех пор, пока k не станет равна 3, либо цикл возвращается к внешнему циклу - к i?
  • Вопрос задан
  • 143 просмотра
Решения вопроса 1
@gsaw
Сначала инициализация переменной, потом проверка условия, потом тело цикла отработает если условие ОК, и только потом инкремент.

То есть при i = 2, внутренний цикл только инициализацию проведет, проверит условие и больше ничего не будет, потом управление вернется внешнему циклу. При i = 3 один раз щелкнет внутренний цикл, при i = 4 сработает внутренний один раз, и второй раз сработает if и выполнится continue. и так далее
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Что вам не понятно?

Крутится внешний цикл начиная с 2 и выводится в консоль значение переменной цикла, крутится внутренний цикл начиная с 2 при условии что переменная внутреннего цикла меньше переменной внешнего цикла, в теле внутреннего цикла имеется условие, что если остаток от деления переменной внешнего цикла(i) % внутреннего цикла(k) равен 0, то пропустить итерацию.

https://learn.javascript.ru/while-for
Ответ написан
Комментировать
sergiks
@sergiks Куратор тега JavaScript
♬♬
Вывод к консоль — друг человека!
for (let i = 2; i <= 10; i++) {
  console.log('i  %02d', i);

  for (let k = 2; k < i; k++) { 
    console.log(' k %02d', k);
    if (i % k == 0) continue;
  }
}

Начало вывода:
i   2
i   3
 k  2
i   4
 k  2
 k  3
i   5
 k  2
 k  3
 k  4
i   6
 k  2
 k  3
 k  4
 k  5
i   7
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы