Python - Interesante función en Python

 
Vista:

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!

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
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de algoritmo
Val: 496
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Interesante función en Python

Publicado por algoritmo (139 intervenciones) el 27/12/2019 23:55:49
Hola

Espero que te sirva :)

1
2
3
4
5
6
7
8
9
10
11
def ullman(x):
    y = [x]
    while x != 1:
        if (x%2) == 0:
            x = (x/2)
        else:
            x = (3 * x + 1)
        y.append(x)
    return y
 
print(ullman(26))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar