用java求完数:
题目:一个数如果恰好等于它的真因子(即不包括它本身)之和,这个数就称为"完数"。例如6=1+2+3.请编程找出1000以内的所有完数。
代码如下:
package homework08.homework0824;
public class Demo {
/*11.一个数如果恰好等于它的真因子(即不包括它本身)之和,这个数就称为"完数"。
例如6=1+2+3.编程 找出1000以内的所有完数。*/
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
int result = 0;//定义一个数来存储真因子
for (int j = 1; j <= i / 2; j++) {
//除了它本身之外,其他的真因子不会大过这个数的一半
if (i % j == 0) {//判断j是否是i的真因子
result += j;//真因子累加
}
}
if (result == i) {//判断这个数和它的真因子之和是否相等
System.out.println(i + "是完数");//相等则输出i是完数;
}
}
}
}
代码结果如下:
更多推荐
java求完数的代码
发布评论