JavaScript 函数将两个数字相乘,直到它们相等

标签 javascript

我正在尝试构建此函数来由用户传递两个数字,并找到这两个数字的最小公倍数。我试图使用这个逻辑来构建该函数。继续相乘,直到两个数字的结果相等。我需要一些逻辑上的帮助。谢谢。

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,因为 i0 开始,因此 result1 将为 0,result2 将为为 0。

要找到 LCM,您需要测试不同的乘积集(例如,对于 LCM(12, 18),您需要乘以 182123)。

一种方法是:

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/

相关文章:

javascript - 这个 JSON 有什么问题?

javascript - Javascript 中共享闭包的内存泄漏

javascript - 设置 top.location 并打开新选项卡?

javascript - 无法使用深层链接获取网址

javascript - typescript 中 switch 的替代方案

javascript - 如何判断一个 promise 是否已解决?

Javascript 和 HTML : get the first value of an array row

javascript - 如何清除 chrome 性能条目或绕过它们的数量限制?

javascript - Require.js 错误 : Load timeout for modules: backbone,

javascript - 从对象中删除逗号