Почему не изменяется "P"?
Здравствуйте! Есть код
<script> var a = []; var p = 2; var i; function searchPrime(p){ for(i = 1; i < 98; i++){ if((i + 2) == p){ continue; } if(((i + 2) % p) == 0){ a[i] = false; } } } function findP(p){ i = (p - 2 + 1); while(i < 98){ if(a[i] == true){ p = i + 2; alert(p); return; } i++; } } for(i = 0; i < 98; i++){ a[i] = true; } while((p * p) < 99){ searchPrime(p); alert(p); findP(p); alert(p); } for(i = 0; i < 98; i++){ if(a[i] == true){ alert((i + 2)); } } </script> Почему после работы функции findP(p) никогда не изменяется p? Я просто плохо знаю синтаксис, но вроде в логике работы ошибки нет. |
Bruha1991,
Ну не интересно никому без пояснений задачи копаться в чьихто кодах Хотите нормального подхода и интереса в топике, расшифровывайте задачу! Какая цель, для чего, что нужно добиться. Ибо скриптёру интересен нестандартный подход и минимизация кода. Вы же предлагаете рыть неизвестно зачем и почему! Нахрена этот код вообще нужен ? Мне он ни уму, ни сердцу, ни интересу. Заинтересуйте, поясните процесс и что желаете добиться данным скриптом, - будут и желающие помочь и разобраться! |
так у вас эта функция ничего и не изменяет, Вы же передаете p явным параметром. У вас функция получает значение p, внешнюю переменную она не трогает.
|
Часовой пояс GMT +3, время: 00:55. |