c语言一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数
#include<stdio.h>voidmain(){inti,j,sum=1;for(i=3;i<=1000;i++){sum=1;for(j=2;j<i;j++)i...
#include<stdio.h>
void main()
{
int i,j,sum=1;
for(i=3;i<=1000;i++)
{
sum=1;
for(j=2;j<i;j++)
if( i%j==0) sum+=j;
if(i==sum)printf("%d,",i);
}
}
这程序是对的。我想在输出的6 28 496后面添上相应的因子。该怎么改 展开
void main()
{
int i,j,sum=1;
for(i=3;i<=1000;i++)
{
sum=1;
for(j=2;j<i;j++)
if( i%j==0) sum+=j;
if(i==sum)printf("%d,",i);
}
}
这程序是对的。我想在输出的6 28 496后面添上相应的因子。该怎么改 展开
13个回答
2016-04-09
展开全部
dim i as Long,j as Long,k as Long
for i=1 to 10000
j=1
for k=2 to int(i/2+0.01)
if i mod k=0 then
j=j+k
end if
next k
if j=i then
console.writeline(i)
end if
next i
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-23
展开全部
#include<cstdio>
#include<cmath>int main(){
for(int i=2;i<=1000;i++){
int sum=0;
for(int o=1;o<=i/2;o++){
if(i%o){}else{
sum+=o;
}
}
if(sum==i){
printf("%d its factors are",i);
for(int o=1;o<sqrt(i);o++){
if(i%o){}else{
printf("%s%d",(o-1)?",":" ",o);
}
}
putchar(10);
}
}
return 0;
}
#include<cmath>int main(){
for(int i=2;i<=1000;i++){
int sum=0;
for(int o=1;o<=i/2;o++){
if(i%o){}else{
sum+=o;
}
}
if(sum==i){
printf("%d its factors are",i);
for(int o=1;o<sqrt(i);o++){
if(i%o){}else{
printf("%s%d",(o-1)?",":" ",o);
}
}
putchar(10);
}
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int f(int n) //这里用int n,int是n的类型
{
int m, sum=0;
for(m=1; m<n; m++)
if(n%m == 0)
sum+=m;
return sum;
}
void main()
{
int n, k;
for(n=1; n<=1000; n++)
{
k=f(n);
if(k==n)
printf("%d\n", n);
}
}
int f(int n) //这里用int n,int是n的类型
{
int m, sum=0;
for(m=1; m<n; m++)
if(n%m == 0)
sum+=m;
return sum;
}
void main()
{
int n, k;
for(n=1; n<=1000; n++)
{
k=f(n);
if(k==n)
printf("%d\n", n);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询