c# 实验5-求完数

(1)实验目的

通过该实验,让学生掌握控制台应用程序的综合运用。

(2)实验内容

编写控制台应用程序,求1000之内的所有“完数”。所谓“完数”是指一个数恰好等于它的所有因子之和。例如6是完数,因为6=1+2+3。

using System;
namespace ConsoleApplicationExample
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("1000以内的完数为:");
            int a;
            for (int i= 6; i <=1000 ; i++)//6之前的数都不满足,降低计算量
            {
                string s="1";
                a = 1;
                for(int j=2; j<=i/2;j++)//一个数的最大因数小于等于这个数的一半,减少计算量
                {
                    if(i%j == 0)
                    {
                        a+=j;
                        s += "+" + j;
                    }
                }
                if(a==i)
                    Console.WriteLine(a+"="+s);
            }
        }
    }
}

运行结果为

猜你喜欢

转载自blog.csdn.net/qq_64628470/article/details/126775784