Advertisement
elcocodrilotito

Enero 2015, 1

Dec 7th, 2016
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.10 KB | None | 0 0
  1. #(a)
  2. def es_narcisista(a):
  3.     cadena=str(a)
  4.     suma=0
  5.     for i in cadena:
  6.         suma=suma+int(i)**(len(cadena))
  7.     if suma==a:
  8.         return True
  9.     return False
  10.  
  11. #(b)
  12. numeros=input("Introduce un par de números separados por espacio: ")
  13. num1=int(numeros.split()[0])
  14. num2=int(numeros.split()[1])
  15. contador=0
  16. resultado=""
  17. while num1!=num2:
  18.     if es_narcisista(num1):
  19.         if str(num1) not in resultado:
  20.             resultado=resultado+", "+str(num1)
  21.             contador+=1
  22.     if es_narcisista(num2):
  23.         if str(num2) not in resultado:
  24.             resultado=resultado+", "+str(num2)
  25.             contador+=1
  26.     numeros=input("Introduce un par de números separados por espacio: ")
  27.     num1=int(numeros.split()[0])
  28.     num2=int(numeros.split()[1])
  29. print("\nSe han introducido",contador,"números narcisistas diferentes")
  30. print("Los números narcisistas son los siguientes:",resultado[2:])
  31.  
  32. #Pongo resultado[2:] porque como he hecho lo de resultado, en vez de
  33. #quedarme "5, 153, 4, 1634" me quedaría ", 5, 153, 4, 1634"
  34. #Entonces digo que me imprima solo del [2] en adelante
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement