Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 15.03.2023, 18:48
Аватар для deniscikasov@gmail.com
Аспирант
Отправить личное сообщение для deniscikasov@gmail.com Посмотреть профиль Найти все сообщения от deniscikasov@gmail.com
 
Регистрация: 14.03.2023
Сообщений: 82

Спасибо
Ответить с цитированием
  #12 (permalink)  
Старый 15.03.2023, 19:53
Аватар для Белый шум
Профессор
Отправить личное сообщение для Белый шум Посмотреть профиль Найти все сообщения от Белый шум
 
Регистрация: 19.01.2012
Сообщений: 505

Сообщение от deniscikasov@gmail.com
Вот i % j == 0. Что это значит?
Результатом операции i % j является остаток от деления i на j.
3 % 2 - будет один. 9 % 3 - будет ноль.
Затем этот результат сравнивается с нулём: == 0

Логика простая: если нашёлся хоть один делитель (j) для текущего делимого (i), при котором результат - ноль, то это число не является простым, а значит мы его пропускаем и идём проверять следующее.
Если же внутренний цикл полностью отработал, значит делителя не нашлось, а значит данное число является простым.

Последний раз редактировалось Белый шум, 16.03.2023 в 08:48.
Ответить с цитированием
  #13 (permalink)  
Старый 16.03.2023, 09:35
Аватар для deniscikasov@gmail.com
Аспирант
Отправить личное сообщение для deniscikasov@gmail.com Посмотреть профиль Найти все сообщения от deniscikasov@gmail.com
 
Регистрация: 14.03.2023
Сообщений: 82

Спасибо, я всё понял.
Если будут ещё вопросы - я знаю к кому обратиться.
Спасибо большое, никак не мог понять принцип работы.
Ответить с цитированием
  #14 (permalink)  
Старый 16.03.2023, 09:46
Аватар для deniscikasov@gmail.com
Аспирант
Отправить личное сообщение для deniscikasov@gmail.com Посмотреть профиль Найти все сообщения от deniscikasov@gmail.com
 
Регистрация: 14.03.2023
Сообщений: 82

Заключительный вопрос.
Во внутреннем цикле j всегда начинается с 2? Или при ==0 мы запускаем цикл по новому, где, допустим, I == 4, а внутренний цикл уже 3? Или он также начинается с 2, и мы будем повторять цикл до тех пор, пока внешний цикл/ внутренний цикл не покажет ==1
Просто в предыдущем ответе вы сказали, что внутренний цикл начинается сначала и будет ==2, где внешний уже 3.

Надеюсь понятно описал вопрос

Последний раз редактировалось deniscikasov@gmail.com, 16.03.2023 в 10:46.
Ответить с цитированием
  #15 (permalink)  
Старый 16.03.2023, 11:19
Аватар для deniscikasov@gmail.com
Аспирант
Отправить личное сообщение для deniscikasov@gmail.com Посмотреть профиль Найти все сообщения от deniscikasov@gmail.com
 
Регистрация: 14.03.2023
Сообщений: 82

let n = 10;

nextPrime:
for (let i = 2; i <= n; i++) { // Для всех i…

for (let j = 2; j < i; j++) { // проверить, делится ли число…
if (i % j == 0) continue nextPrime; // не подходит, берём следующее
}

alert( i ); // простое число

Вот как я это понимаю: просто скажите где не так и мне будет достаточно
Если I <= n то мы переходим вниз к другому циклу
В нём j < I - это false и он завершается
Переходим опять наверх, где I++
Итого i ==3 и j == 2
Далее j < I - true
Мы делаем (i%j) и если получается == 1, то мы переходим к алерт
Если i% j покажет в каком то случае 0, то цикл вернётся вначало и добавит по 1 к каждой переменной

Сижу на работе просто, с телефона неудобно, так бы перелопатил все полученные знания, но пока так. Если я туплю - не обижайтесь, я не специально

Последний раз редактировалось deniscikasov@gmail.com, 16.03.2023 в 11:33.
Ответить с цитированием
  #16 (permalink)  
Старый 16.03.2023, 12:54
Аватар для Белый шум
Профессор
Отправить личное сообщение для Белый шум Посмотреть профиль Найти все сообщения от Белый шум
 
Регистрация: 19.01.2012
Сообщений: 505

Сообщение от deniscikasov@gmail.com
Во внутреннем цикле j всегда начинается с 2?
Да.

Подробнее тут - https://learn.javascript.ru/while-for#tsikl-for
Ответить с цитированием
  #17 (permalink)  
Старый 16.03.2023, 13:55
Аватар для deniscikasov@gmail.com
Аспирант
Отправить личное сообщение для deniscikasov@gmail.com Посмотреть профиль Найти все сообщения от deniscikasov@gmail.com
 
Регистрация: 14.03.2023
Сообщений: 82

Я вам очень благодарен. Вы единственный, кто действительно помог мне. Конечно на других форумах я тоже спрашивал, но палец вверх я ставлю вам
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Трагедия новичка: вынос переменных за циклы изменяет работу программы. logicaface Общие вопросы Javascript 20 18.11.2022 14:10
Как вычислить среднее значение между двумя временными метками okuznetsov1 Общие вопросы Javascript 11 15.04.2017 16:28
Яндекс Карты с метками vasyakrn Элементы интерфейса 0 21.06.2015 20:28
почему вместо методов Array используют циклы finestra Общие вопросы Javascript 29 03.02.2014 10:25