我试图编写一个脚本来找到最大的公因子(最高公因子/ HCF),但是循环向下计数,所以我想在它找到第一个公因子后立即中断(因为它向下计数所以这是也是HCF).
然而,我的代码结果显示了所有常见因素,并且一旦找到4,就没有突破循环,HCF为12和8.
这里是:
function maxi(a, b) {
for (var i = a; i >= 1; i--) {
for (var j = b; j >= 1; j--) {
if (a % i == 0) {
if (b % j == 0 && i == j) {
console.log(i);
break;
}
}
}
}
}
maxi(12, 8);
Run Code Online (Sandbox Code Playgroud)
我猜你有正确的逻辑.
只是改变
if (b % j == 0 && i == j){
console.log(i);
break;
}
Run Code Online (Sandbox Code Playgroud)
至
if (b % j == 0 && i == j){
console.log(i);
return;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
94 次 |
| 最近记录: |