public static BigInteger getFactorCount(BigInteger num) { BigInteger count = new BigInteger("0"); // 计数结果 BigInteger zero = BigInteger.ZERO; // BigInteger内置字段,代表0 BigInteger one = BigInteger.ONE; // BigInteger内置字段,代表1 // 在此
时间: 2023-06-10 13:07:21 浏览: 89
Java大数字运算之BigInteger <font color=red>原创</font>
处可以添加一些输入值的校验,例如判断num是否为正整数,是否超出范围等等。接下来是具体实现:
if (num.compareTo(zero) <= 0) { // 如果num小于等于0,返回计数结果0
return count;
}
BigInteger i = new BigInteger("1"); // 计数器,从1开始
while (i.compareTo(num) <= 0) { // 当计数器小于等于num时,执行循环体
if (num.remainder(i).compareTo(zero) == 0) { // 如果num能被i整除
count = count.add(one); // 则计数结果加1
}
i = i.add(one); // 计数器加1
}
return count; // 返回计数结果
阅读全文