Interesante función en Python
Publicado por Raul Cruz (1 intervención) el 27/12/2019 21:53:04
Hola, estoy tratando de resolver este ejercicio
Elabore una función que dado un entero n > 1, calcule e imprima los elementos correspondientes a la conjetura de Ullman que consiste en lo siguiente: - Empiece con cualquier entero positivo. - Si es par, divídalo entre 2; si es impar, multiplíquelo por 3 y agréguele 1. - Obtenga enteros sucesivamente repitiendo el proceso; al final se obtendrá el número 1, independientemente del entero inicial. Por ejemplo, cuando el entero inicial es 26, la secuencia resultao será: 26 13 40 20 10 5 16 8 4 2 1.
Estoy tratando algo así pero no lo logro, espero me puedan ayudar. Gracias!
Elabore una función que dado un entero n > 1, calcule e imprima los elementos correspondientes a la conjetura de Ullman que consiste en lo siguiente: - Empiece con cualquier entero positivo. - Si es par, divídalo entre 2; si es impar, multiplíquelo por 3 y agréguele 1. - Obtenga enteros sucesivamente repitiendo el proceso; al final se obtendrá el número 1, independientemente del entero inicial. Por ejemplo, cuando el entero inicial es 26, la secuencia resultao será: 26 13 40 20 10 5 16 8 4 2 1.
Estoy tratando algo así pero no lo logro, espero me puedan ayudar. Gracias!
1
2
3
4
5
6
7
8
9
10
11
12
def ullman(x):
y = [x]
x1 = []
while 1 not in y == True:
if (x%2) == 0:
x1 = (x/2)
elif (x%2) != 0:
x1 = (3 * x + 1)
y.append(x1)
print(y)
Valora esta pregunta


0