#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
)
{
cnt
++;
n
/=10;
}
n
= number
;
while(n
)
{
i
=n
%10;
for(int t
=0;t
<cnt
;t
++)
{
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
);
}
}
转载请注明原文地址: https://mac.8miu.com/read-488770.html