java题目 完全数计算
描述
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。
它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。
输入n,请输出n以内(含n)完全数的个数。
数据范围: 1 \le n \le 5 \times 10^{5} \1≤n≤5×105
本题输入含有多组样例。
输入描述:
输入一个数字n
输出描述:
输出不超过n的完全数的个数
示例1
输入:
1000 7 100
输出:
3 1 2
1 import java.util.Scanner; 2 3 public class Main { 4 public static void main(String[] args) { 5 Scanner sc = new Scanner(System.in); 6 while(sc.hasNextInt()) { 7 int n = sc.nextInt(); 8 int count =0; 9 for(int i =1; i <= n; i++) { 10 if (isPerfect(i)) { 11 count++; 12 } 13 } 14 System.out.println(count); 15 } 16 } 17 18 public static boolean isPerfect(int num) { 19 int result = 0; 20 for (int i =1; i <= num/2; i++) { 21 if(num % i ==0 && num != i) { 22 result = result + i; 23 } 24 } 25 if(result == num) { 26 return true; 27 } 28 return false; 29 } 30 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix