java求完数的代码 Java求完数

java求完数

因为这里的sum实际上就是你要的完数,所以你在1到1000之内,没算一次完数,就需要把sum置为0;不然就像你把int sum=0;放到for(int i=1;i=1000;i++)之前,sum每次都没有置0,sum会一直累加,所以sum不会等于i,所以没有输出结果了

创新互联公司-专业网站定制、快速模板网站建设、高性价比东宁网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式东宁网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖东宁地区。费用合理售后完善,十载实体公司更值得信赖。

JAVA编程 完全数

public class PerfectNumber{

private static String[] isPrefectnumber(int n){

int sum=0;

StringBuffer sBuffer = new StringBuffer();;

for (int i = 1; i n; i++) {

if (n % i == 0){

sum += i;

sBuffer.append(","+i);

}

}

if (sum==n) {

return sBuffer.toString().replaceFirst(",", "").split(",");

}else {

return new String[0];

}

}

public static void main(String[] args){

String[] al= isPrefectnumber(t);

if (al.length!=0) {

StringBuffer sb = new StringBuffer();

sb.append(t+"是完数,其因子为");

for (int i = 0; i al.length ; i++) {

sb.append(","+al[i]);

}

System.out.println(sb.toString());

} else {

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

}

}

}

求1000以内的所有完数

#include stdio.h

void main()

{

int i,j;

printf("1000之内的所有完数:\n");

for(i=6;i1000;i++){

int sum=0;

for(j=1;ji;j++){

if(i%j==0)

sum = sum+j;

}

if(sum==i)printf("%d,",i);

}

}

输出结果为:6,28,496

原代码中的sum 初始化的位置是错误的,导致结果不正确,正确代码请看我的回答。

扩展资料:

完数,一般指完全数,一个自然数如果它的所有真因子(即除了自身以外的约数)的和等于该数,那么这个数就是完全数,如:6的真因子有1 、2、3,6=1+2+3,所以6是一个完全数。

求1000以内的完数可以用C,C++、java和Pascal语言等,下面举例java语言实现代码。

用java编写1000以内的完数如下:

public class PerfectNumber {    public static void main(String[] args) {    System.out.println("1000以内的所有完数有:");    for (int i = 2; i 1000; i++) {// 遍历1000以内的所有整数      int sum = 0;// 定义和变量      for (int j = 1; j i; j++) {        if (i % j == 0) {// 满足是i的因子,就累加          sum += j;        }      }      if (sum == i) {// 满足因子之和等于i就打印该完数        System.out.print(i + " ");      }    }  }}

java编程 求完全数

直接把我的答案复制测试,一定通过。。

注意:类名

public class QiouWanQuanShu {

public static void main(String[] args) {

int sum=0; //用来存放因数的和

System.out.print("1000中de完全数有:");

for(int i=1;i=1000;i++){ //循环1000次

for(int j=1;ji;j++){

if(i%j==0) //判断除数是否被整除

sum=sum+j;

}

if(i==sum) //判断因数是否与这个数的本身想等

System.out.print(i+" ");

sum=0; //初始存放因数的和,下次循环继续用

}

}

}

网页题目:java求完数的代码 Java求完数
转载注明:https://www.cdcxhl.com/article14/docodde.html

成都网站建设公司_创新互联,为您提供标签优化小程序开发动态网站关键词优化域名注册面包屑导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

商城网站建设