#include <stdio.h>
int narcissistic( int number );
void PrintN( int m, int n );
int main()
{
int m, n;
scanf("%d %d", &m, &n);
if ( narcissistic(m) ) printf("%d is a narcissistic number\n", m);
PrintN(m, n);
if ( narcissistic(n) ) printf("%d is a narcissistic number\n", n);
return 0;
}
int narcissistic( int number )
{
int cnt=0,sum=0,ret=1,n=number,i;
while(n) // count power
{
cnt++;
n/=10;
}
n = number;
while(n)
{
i=n%10;
for(int t=0;t<cnt;t++)//pow
{
i*=i;
}
sum += i;
n /= 10;
}
if(sum == number)ret = 1;
else ret = 0;
return ret;
}
void PrintN( int m, int n )
{
for(int i=m+1;i<=n;i++)
{
if(narcissistic(i))
printf("%d\n",i);
}
}
10.31
最新推荐文章于 2024-09-14 18:59:16 发布