一 问题描述
二 设计思路
1.利用循环结构 穷举1~100000
2. 利用条件判断判断 是否为自守数
3.可用数组存放 当前数和平方尾数
三 流程图
四 c++代码实现
#include<iostream>
using namespace std;
int ifwan(int);
int main()
{
int i=1;
int n=0;
for(;i<=100000;i++)
{
if(ifwan(i))
{n++;
cout<<"案例:"<<n<<endl;
cout<<i<<"是完数"<<endl;
}
}
return 0;
}
int ifwan(int a)
{
int b=a*a,b1;
int a1=a,l=0,k=1;;
while(a1!=0)
{
l++;
k=k*10;
a1=a1/10;
}
b1=b%k;
if(a==b1)return 1;
return 0;
}