fork download
  1. # Listas, repetición, decisión
  2. # Collatz, empleando en una lista
  3. # Conjetura de Collatz. Cualquier valor natural puede llegar a transformarse
  4. # en 1 aplicando los siguientes pasos:
  5. # 1. Si es par, dividirlo por dos.
  6. # 2. Si es impar, multiplicarlo por 3 y sumarle uno.
  7.  
  8. x = int(input("Dame valor entero: "))
  9. suc_collatz = []
  10. n = x
  11.  
  12. while x > 1:
  13. if x % 2 == 0:
  14. x //= 2
  15. else:
  16. x = 3 * x + 1
  17.  
  18. suc_collatz += [x]
  19.  
  20. print(n, "=", suc_collatz)
  21.  
Success #stdin #stdout 0.02s 9312KB
stdin
13251
stdout
Dame valor entero: 13251 = [39754, 19877, 59632, 29816, 14908, 7454, 3727, 11182, 5591, 16774, 8387, 25162, 12581, 37744, 18872, 9436, 4718, 2359, 7078, 3539, 10618, 5309, 15928, 7964, 3982, 1991, 5974, 2987, 8962, 4481, 13444, 6722, 3361, 10084, 5042, 2521, 7564, 3782, 1891, 5674, 2837, 8512, 4256, 2128, 1064, 532, 266, 133, 400, 200, 100, 50, 25, 76, 38, 19, 58, 29, 88, 44, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1]