Javascript中的素因子分解
我需要编写一个素因子分解函数,它返回一个对象,该对象的键是素因子,值是相应素因子的指数。例如 console.log(primefactoriation(4))//{2:2} log(primefactoriation(6))//{2:1,3:1} 到目前为止,我的代码在下面,但我被卡住了。非常感谢您的帮助Javascript中的素因子分解,javascript,prime-factoring,Javascript,Prime Factoring,我需要编写一个素因子分解函数,它返回一个对象,该对象的键是素因子,值是相应素因子的指数。例如 console.log(primefactoriation(4))//{2:2} log(primefactoriation(6))//{2:1,3:1} 到目前为止,我的代码在下面,但我被卡住了。非常感谢您的帮助 const primeFactorisation = (num) => { let result = {}; for (let i = 2; i < num; i
const primeFactorisation = (num) => {
let result = {};
for (let i = 2; i < num; i++) {
if (num % i === 0) {
result[i] = i;
num /= i;
}
}
return result
}
const primefactoriation=(num)=>{
让结果={};
for(设i=2;i
当找到一个数字时,在结果对象上增加它,而不是将i
分配给结果对象
您还需要一个嵌套的循环来不断测试这个数字,直到它不再均匀地分割,并且还需要i{
让结果={};
对于(让i=2;我给你一个提示:result[i]=i;
应该是result[i]++=1;
但首先需要检查它是否至少为0。此外,在if语句内部,放置一个i--
。这意味着i++
将被求反,因此第二次循环时i
将保持不变。编辑:嵌套的while
循环也将起作用