我正在尝试构建此函数来由用户传递两个数字,并找到这两个数字的最小公倍数。我试图使用这个逻辑来构建该函数。继续相乘,直到两个数字的结果相等。我需要一些逻辑上的帮助。谢谢。
function performCalc(one, two) {
var num1 = new Number;
var num2 = new Number;
var i = new Number(0);
var num1 = one;
var num2 = two;
var result1 = new Number;
var result2 = new Number;
do {
result1 = num1 * i;
result2 = num2 * i;
i++
}
while (result1 != result2);
if (result1 == result2) {
return result1;
}
}
最佳答案
这将始终返回 0,因为 i
从 0
开始,因此 result1
将为 0,result2
将为为 0。
要找到 LCM,您需要测试不同的乘积集(例如,对于 LCM(12, 18)
,您需要乘以 18
由2
和12
由3
)。
一种方法是:
var i,j;
for(i=1;i <= two; ++i) {
for(j=1; j<=one; ++j) {
if(one * i == two * j) {
return one * i;
}
}
}
关于JavaScript 函数将两个数字相乘,直到它们相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19310482/