-3
から誰でも説明できるコード/ブレークダウンコードをループしますか?私はfreecodecampに「最小の共通倍数」の挑戦を見つけるつもりです。また、私が理解している限り、コメントを追加しました。最小公倍数を見つけるためにwhileループを理解するループ
function smallestCommons(arr) {
var min = Math.min(arr[0], arr[1])
var max = Math.max(arr[0], arr[1])
var range = []
for(var i = min; i<=max; i++){
range.push(i); //array of numbers between min and max
}
var a = Math.abs(range[0]) //absolute position of negative nums from 0
for(var j=1; j<range.length; j++){
var b = Math.abs(range[j]); //iterating range array
var c = a;
while(a && b){ //filtering 0. will continue looping as long as a and b is NOT 0
if(a>b) {
a = a%b; //then we will change the value of a to the remainder of a/b
} else {
b= b%a; //changing the value of b
}
}
a = Math.abs(c*range[j] /(a + b));
}
return a;
}
smallestCommons([1,5]);
あなたはそれをかなりよく理解しているように思えます。どの部分が正確にあなたは苦労していますか? 'a = a%b'?これはあなたに正しい方向へのプッシュを与えるために[**モジュロ**](https://en.wikipedia.org/wiki/Modulo_operation)として知られています:) –
それはあなたが見上げて自分でやるべきことのようですが、あなたが学びたいならば。モジュロの背後にある数学を理解することは役に立ちます。ところで、 'var a'に対するあなたのコメントは理にかなっていません。 – NetMage
ありがとう@ObsidianAge!私は 'a = a%b;'を理解しています。 aの値をa/bの残りの部分に変更しますが、私はちょうどその背後にある論理に従うことができません。 – bom