蓝桥算法训练 完数 JAVA

如果一个自然数的所有小于自身的因子之和等于该数,则称为完数。
设计算法,打印1-9999之间的所有完数。
思路:完数6=1+2+3 符合这个条件即为完数。

public class Main {
	public static void main(String[] args) {
		for (int i = 1; i <= 9999; i++) {       //题目要求1-9999之间的完数
			int ans = 0;                        //统计 和
			for (int j = 1; j < i; j++) {       
				if (i % j == 0) {               
					ans += j;                   //6=1+2+3 应该能明白??
				}
			}
			if (ans == i) {                     //如果是循环体内的数字,输出
				System.out.println(ans);
			}
		}
	}
}

小剧场:回忆与期待一样,是一种简化和剪辑现实的工具。

上一篇:5739 周赛 最高频元素的频数 滑动窗口双指针


下一篇:ZZULIOJ 1129: 第几天