using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace p1_3
{
class Program
{
static void Main(string[] args)
{
string strA = "",strB = "";
//strA strB 存放符合条件的文本型变量
Console.WriteLine("打印1000以内的完全数:");
for (int i = 2; i < 1000; i++)
{
if (PerfectNumber(i))
{
strA = strA +" "+ i;
}
if (daffodil(i))
{
strB = strB + " " + i;
}
}
//输出
Console.WriteLine("完全数:" + strA);
Console.WriteLine("素数:" + strB);
Console.ReadKey();
}
//-------------完全数-------------start
//参数:iA-整数型
//返回值:bool型
static bool PerfectNumber(int iA)
{
int iSum = 0;
for (int i = 1; i < iA; i++)
{
if (iA % i == 0)
{
iSum = iSum + i;
}
}
if (iSum == iA)
{
return true;
}
return false;
}
//-------------完全数-------------end
//-------------水仙花数-------------start
//参数:iA-整数型
//返回值:bool型
static bool daffodil(int iA)
{
int iQ, iW, iE;
iQ = iA / 100;//取百位
iW = (iA - iQ * 100) / 10;//取十位
iE = (iA - iQ * 100 - iW * 10);//取个位
if (iA == iQ * iQ * iQ + iW * iW * iW + iE * iE * iE)
{
return true;
}
else
{
return false;
}
}
//-------------水仙花数-------------end
}
}