Ejercicio 4-6 Número de narcisos (20 puntos) El
número de narcisos se refiere a un número entero positivo de N dígitos (N≥3), y la suma de los números de cada dígito a la potencia de N es igual a sí mismo. P.ej:
Esta pregunta requiere escribir un programa para calcular el número de todos los narcisos de N dígitos.
Formato de entrada:
introduzca un número entero positivo N (3≤N≤7) en una línea.
Formato de
salida : muestra todos los números de narcisos de N dígitos en orden creciente, cada número ocupa una línea.
Muestra de entrada:
3
muestra la salida:
153
370
371
407
#include<stdio.h>
int main()
{
int x = 1 , y = 1;
int n;
scanf("%d",&n);
for(int i = 1 ; i < n ;i ++)
{
x *= 10;
y *= 10;
}
y *= 10;
for(int i = x ;i < y ;i ++)
{
int t = i,sum = 0;
while(t != 0)
{
int m = n,tt = 1, l = t%10;
while(m--)
{
tt*=l;
}
sum += tt;
t /= 10;
//
}
//printf("sum = %d\n",sum);
if(sum==i)
printf("%d\n",i);
}
return 0;
}