私はJSで始まったばかりで、gcdを計算するのに助けが必要です。 2つの配列の2つの要素のすべての組み合わせについて、gcdを計算したいと思います。配列内の要素のGCDを計算する。 JavaScript
Iの意味:配列Aの各要素A[i]
ため、Bの各要素B[j]
ため、A[i]
とB[j]
のGCD値を計算し、コンソールでそれを印刷します。私には16枚のプリントがありますが、それらは正しくありません。私はそれを計算するためにユークリッドのアルゴリズムを使用し、A[i]
の値が上書きされているように見えます。なぜ私は考えていない。誰か助けてくれますか?これは私のコードです:
var n = 4;
var A = [2, 5, 6, 7];
var B = [4, 9, 10, 12];
for (var i = 0; i < n; i++) {
for (var j = 0; j < n; j++) {
while (A[i] != B[j]) {
if (A[i] < B[j]) {
B[j] = B[j] - A[i];
} else {
A[i] = A[i] - B[j];
}
}
console.log(A[i]);
}
}
'const gcd =(a、b)=>(!b)? a:gcd(b、a%b) 'は事を複雑にしません –