繁体   English   中英

Javascript:如何从任何给定的整数中查找因子对

[英]Javascript: how to find factor pairs from any given integer

我需要从任何给定数目中找到因子对的数目。 这里有一个例子。区别是我需要知道有多少对,而不仅仅是对本身。)我真的不知道如何开始,我希望有人能够协助我

这是一个方法:

var anyNumber = 6;
var count = 0;
var number1 = 0;
var number2 = anyNumber;
for (var i = 1; i < anyNumber; i++){
    if (anyNumber % i === 0){
        number1 = i;
      number2 = anyNumber / i;
    if (number2 >= number1){
      count++
    } else {
        break;
    }
  }
}
alert(count);

如果您不想获得唯一对的结果,请忽略:

if (number2 >= number1)

您可以将anyNumber更改为所需的数字。 上面的代码一直循环,直到您到达number2小于number1(唯一对)的地步为止。

您已经知道答案了,

您提到的页面来源:

function doit(){
    a=document.factors.num.value;    //number to be evaluated
    checker=Math.sqrt(a);    //maximum divisor
    output="";

    for (x=1; x<=checker; x++)
    {
        c=a/x;
        d=Math.floor(c);
        // compare integer answer and division answer
        if(c==d){
        output = output + "factor pair = " +  c +  "," +  x  + "\n";
        }
    }
 document.factors.worksp.value=output;
}

评论甚至足以理解解决方案。 每次进入if(c == d)情况时,都会有一对,因此工作就差不多完成了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM