Пример из учебника на сайте
Товарищи специалисты, обьясните, пожалуйста, как работает пример из учебника на сайте? Никак не могу разобраться! Вот ссылка на сам пример: http://learn.javascript.ru/task/vyvesti-prostye-chisla
Как я понимаю, сначала в первом цикле i=2, дальше идём во второй цикл, там j=2, сравнение 2<2 не срабатывает и выводится значение і=2. Потом следующая итерация: i=3, j=2, 2<3, 3 не делится нацело на 2 - и поэтому увеличиваем j на еденицу (j=3). Снова сравнение 3<3 не срабатывает и выводится i=3. Но если следовать данной логике, то дальше выведутся числа 4, 5 и т.д.! А этого происходить не должно! В чем же проблема? |
Механика такая: в первом цикле мы перебираем числа в заданном интервале (от 2-10), во втором цикле мы делаем проверку делятся ли числа из первого цикла на числа из второго, если число из первого цикла делится без остатка, то оно второй раз не проверяется (уже не простое) -> continue; Берется следующее число в первом цикле и т.д.
|
Цитата:
Во внутреннем цикле, если условие ложное, то мы снова проходим по данному циклу и ничего не выводится, правильно? |
Правильно) Оно и не должно выводить, выводится в другом цикле, когда через фильтр (внутренний цикл) пройдет.
|
Цитата:
|
Часовой пояс GMT +3, время: 01:23. |