私はまだJSで新しく、完全に間違っていてもコードを動作させました。私は問題5のためのソリューションに取り組んでいたプロジェクトオイラー#5 JavaScriptコードが大きな誤りを抱えています
:https://projecteuler.net/problem=5
私の思考は、それがタスクの基準を満たす最小の数を検出するまで実行whileループを開始することでした。
しかし、私が "終了"したとき、コード内でwhileループ条件をfalseに再割り当てしなくても、コードが機能することがわかりました。ループ自体が停止するだけで、whileループが削除されてもコードは機能しません。
私はこの問題の解決策をいくつか見つけました。例えば、一般的ではない倍数を使用していますが、まずコードを修正したいと考えています。
function smallestMultiple(max) {
var n = max;
var counter = 0;
var evenlyDivided = true;
while (evenlyDivided) {
for (var i=1; i<=max; i++) {
if(n%i===0) {
counter += 1;
if(counter===max) {
return n;
}
}
else {
counter=0;
n++;
}
}
}
}
smallestMultiple(10);
P.S.私が学んでおり、JSコードの良い習慣が開発されていないので、私のコードに対するすべてのフィードバックと批評は大歓迎です!