展开全部

按照你的要求编写的用于判断一个整数n是不32313133353236313431303231363533e58685e5aeb931333363366164是完数的Java程序如下import java.util.Scanner;

public class G {

public static void perfectNumber(int n){

int f[]=new int[32];

int sum=0;

int j=0;

for(int i=1;i

if(n%i==0){

sum=sum+i;

f[j]=i;

j++;

}

}

if(n==sum){

System.out.println(n+"是完数");

System.out.print(n+"=");

for(int i=0;i

if(i

System.out.print(f[i]+"+");

}else{

System.out.print(f[i]);

}

}

}else{

System.out.println(n+"不是完数");

}

}

public static void main(String[] args) {

System.out.print("请输入一个正整数");

Scanner sc=new Scanner(System.in);

int n=sc.nextInt();

perfectNumber(n);

}

}

运行结果

请输入一个正整数28

28是完数

28=1+2+4+7+14

Logo

昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链

更多推荐