本文主要是介绍求一个质数的因子/因数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>求一个质数的因子/因数</title>
</head>
<body></body>
<script type="text/javascript">
function primefactory(val){if(isNaN(Number(val))){console.log("请输入整数");return val;}let nval = Number(val);let i=2;// 先加1再平方根 和 平方根后再加1 防止遗留银子let j=Math.round(Math.sqrt(val+1))+1;let farr = [];for(;i<j;i++){if(nval%i == 0){nval = nval/i;if(j == 1){break;}else{farr.push(i)// 此处赋值为1 返回到循环时++后变为2i = 1;}}}// 如果没有因数if(farr.length == 0){farr.push(nval)}console.log(farr);return farr;
}
</script>
</html>
以上方式有点别扭,使用新的方法
function getfactor(val){if(isNaN(Number(val))){console.log("请输入整数");return val;}let nval = Number(val);let i=2;let farr = [1];while(i<=nval){if(nval%i == 0){farr.push(i);nval = nval/i;i=2;continue;}i += 1;}console.log(farr);return farr;
}
这篇关于求一个质数的因子/因数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!