тут написано:
2. Пусть переменная p изначально равна двум — первому простому числу.
3. "Зачеркнуть в списке числа от 2p до n считая шагами по p (это будут числа кратные p: 2p, 3p, 4p, …)."
это означает, что p = 2, а в 3 шаге написано, что зачеркнуты должны четные числа, притом 3p никак не попадает под эту категорию, т.к он не кратен 2. Опечатка? в алгоритме на js совсем другое. В коде видно, что сначала вычеркиваем все кратные, и там нету 3-ойки
не совсем понятно, почему такая запись имеет смысл
for (i = p + 1; i < 100; i++) {
if (arr[i]) break;
}
ведь, если число true, то цикл прерывается. А оно полюбому true, т.к p + 1 = 2 + 1 = 3, а 3, это true, поскольку всем числам после 2 в самом первом цикле присвоили значение true. Поэтому цикл сразу прерывается на первой итерации. В чем такой "прикол"? и выражение p = i; как вообще работает здесь, оно же каждый раз получает новое значение, а старое забывается