Advertisement
jukaukor

kaprekar.py

Jul 9th, 2018
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. # Kaprekar numbers
  2. # 9^2 = 81 --> 8+1 = 9
  3. # 45^2 = 2025 --> 20+25 = 45
  4. # 55^2 = 3025 --> 30+25 = 55
  5. # 99^2 = 8901 --> 98+01 = 99
  6. # 297^2 = 88209 --> 88 + 209 = 297
  7. # Python program idea from rosettacode.org
  8. # Not elegant math, only brutal string handling...;-)
  9. # Juhani Kaukoranta 9.7.2018
  10. #
  11. def kaprekar(n):
  12. n2 = str(n**2)
  13. for i in range(len(n2)):
  14. a, b = int(n2[:i] or 0), int(n2[i:])
  15. if b and a + b == n:
  16. return n
  17. maxvalue = int(input("anna luku, jota pienempie kaprekar-lukuja haluat tulostaa "))
  18. for x in range(1,maxvalue):
  19. if kaprekar(x):
  20. print(x,end=" ")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement