1000以内的完数有哪些,不要程序,只要结果,谢谢了 求1000以内的所有完数

作者&投稿:惠士 (若有异议请与网页底部的电邮联系)
1000以内的完数只有3个:6,28,496

Description
编程找出1000之内的所有完数。一个数如果恰好等于它的因子(不包含自身的所有因子)之和,这个数就称为“完数”。例如,6的因子为1、2、3,而6=1+2+3,因此6是完数。
Input

Output
每个完数和它的因子之和单独占一行
Sample Input
Sample Output
6=1+2+3
Source

输出1000以内的所有的完数~

/*输出1000以内的所有完数并输出其因子*/
#include
int main(){
int sum = 0;
for (int i = 1; i <= 1000; i++){
sum = 0;
for (int j = 1; j < i; j++){
if (i%j == 0){
sum = sum + j;
}
}
if (sum == i){
printf("%d
", i);
for (int j = 1; j < i; j++){
if (i%j == 0)
printf("因子:%d", j);
}
printf("
");
}
}
return 0;
}

#include void main(){int i,j;printf("1000之内的所有完数:
");for(i=6;i<1000;i++){
int sum=0;
for(j=1;j<i;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编程 求10000以内的所有完全数。我这个说答案错误?希望大家解答...
答://你传的图片看不清,所以没办法回答是哪里错了,我自己写了一个 public static void main(String[] args) { Scanner scan = new Scanner(System.in);System.out.println("请输入一个数字!");int num = scan.nextInt();System.out.println("0-"+num+"以内的完全数有:");//遍历0-num...

...和n(m≥1,n≤1 000),输出m ~n 之间的所有完数,完数就是因子和与...
答:include<stdio.h> int factorsum(int number);int main(){ int m,n,i;printf("Input m: ");scanf("%d",&m);printf("Input n: ");scanf("%d",&n);for(i=m;i<=n;i++){ if(factorsum(i)==i)printf("%5d",i);} printf("\n");return 0;} int factorsum(int number){ in...

请问在VB里面如何设计程序找出1000以内的完数?
答:1、启动VB6.0,新建一个标准exe工程。2、在窗体上绘制一个命令按钮,名称为Command1。3、双击命令按钮进入代码窗口。4、编写命令按钮的单击事件。Private Sub Command1_Click()For n = 1 To 1000 s = "" '这一句要加上 Sum = 0 For i = 1 To n / 2 If n Mod i = 0 Then Sum = ...

000块以内,接受二手,小白求推荐性价比高的相机有哪些?
答:1550年,意大利的卡尔达诺将双凸透镜置于原来的针孔位置上,映像的效果比暗箱更为明亮清晰 。1558年,意大利的巴尔巴罗又在卡尔达诺的装置上加上光圈,使成像清晰度大为提高;1665年,德国僧侣约翰章设计制作了一种小型的可携带的单镜头反光映像暗箱,因为当时没有感光材料,这种暗箱只能用于绘画。1839年,...

求vb代码 “求1000以内的所有完数”输出格式为 完数=因子1+因子2+...
答:Print "1000以内的所有完数为:"; Dim b As Double Dim i As Double, j As Double, k As Double For i = 2 To 10000 k = 0 For j = 2 To Sqr(i) If i Mod j = 0 Then k = k + i / j + j Next j k = k + 1 If k = i Then Print Print CStr(i) & "="; fenjie (i) ...

100000000以内的完全数
答:证明到此为止,并不复杂.若2n+11为合数,则因数不止这些,所以120与2016不是完全数.于是, 通过100000000内完全数的探求,我们可以得到完全数的一个形式:当n为自然数(n≠0),且2n+11为质数时,(2n)×(2n+11)=完全数.囿于目前的知识水平,我们还没有证明:只要是完全数,就一定符合(2n)×(2n+1...

C++程序 要求输出1000以内的完数
答:if(n/i-int(n/i)==0)错了。1、if(n/i-int(n/i)==0)这个改为if(n%i == 0)2、找到一个完数以后,没有把s初始化为0,所以后面肯定会出错。在n=n+1;后面加s=0。C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。

C++编程,求1000以内的完数并每行按格式输出其因子:6=1+2+3
答:include"stdafx.h"include<stdio.h> int totalnum(int num)//返回所有约数的和 { int sum=0;//记录所有约数的和 int i=0;for(i=1;i<=num/2;i++){ if(num%i==0){ sum+=i;} } return sum;} int main(){ int i=0;int j=0;for(i=2;i<=1000;i++){ int k=totalnum(i...

输入2 个正整数m 和n(m≥1,n≤1 000),输出m ~n 之间的所有完数
答:{ continue;} if(wanshu>=x&&wanshu<=y)cout<<"n以内的完数:"<<wanshu<<"\t"<<endl;} system("pause");} 解这个题的方法有很多,我写一个吧!!!x代表m,y代表n(至于n不能输太大,输入10就可以达到你题的要求了,另外我写的是c++,思想没问题)传个图吧!!!自己看!!!

编程,找出200以内所有完数,并输出其因子。一个数如恰好等于它的因子之...
答:include<stdio.h> int main(){ int n,i,s=0; printf("200以内的完数有:"); for(n=2;n<=200;n++) { s=0;//针对每一个n,s必须重设为0 for(i=1;i<n;i++) { if(n%i==0)s+=i; } if(s==n){ printf("%d:1",n); for(i=2;i...