本人来自南阳师范学院计算机科学与技术系,刚自学C#两天,这是我用C#控制台程序编的求1000之内的完数程序:
using System;
using SystemCollectionsGeneric;
using SystemLinq;
using SystemText;
namespace Wanshu
{
class Program
{
static void Main(string[] args)
{
ConsoleWriteLine("1000之内的所有“完数”:");
for (int i = 1; i <= 1000; i++)
{
int num = 0;
for (int j = 1; j < i; j++)
{
if (i % j == 0)
{
num += j;
}
}
if (num == i)
{
ConsoleWriteLine(i);
}
}
ConsoleReadLine();
}
}
}
输出结果为;
1000之内的所有“完数”:
6
28
496
根据完全数的定义,先计算所选取的整数a(a的取值1~1000)的因子,将各因子累加于m,若m等于a,则可确认a为完全数。
程序说明与注释
#include<stdioh>
void main()
{
int a,i,m;
printf("There are following perfect numbers smaller than 1000:\\n");
for(a=1;a<1000;a++) /循环控制选取1~1000中的各数进行判断/
{
for(m=0,i=1;i<=a/2;i++) /计算a的因子,并将各因子之和m=a,则a是完全数输出/
if(!(a%i))m+=i;
if(m==a)
printf("%4d ",a);
}
printf("\\n");
}
运行结果
TThere are following perfect numbers smaller than 1000:
6 28 496
完全数(Perfect number),又称完美数或完备数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。
#include "stdioh"int main()
{
int sum,k,j;
sum=0;
for(k=2;k<=100;k++)//从2开始判断该数是否是完数
{
sum=0;
for(j=1;j<k;j++)//计算所有真因子的和
if(k%j==0)
sum=sum+j;
if(sum==k)//如果该数恰好等于它的所有真因子的和,输出该完数
printf("%d ",k);
}
return 0;
}
以上就是关于c# 求1000之内的所有完数 程序怎么写全部的内容,包括:c# 求1000之内的所有完数 程序怎么写、利用C语言中的函数求1000以内的完数、如何编写程序 “100以内所有完数”等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)