Python - Productoria

 
Vista:

Productoria

Publicado por Fernanda (1 intervención) el 18/01/2020 03:52:14
Hola muy buenas,

Necesito ayuda para poder programar una productoria que haga lo siguiente:

1
2
3
4
5
[1,
(X-X0),
(X-X0) * (X-X1),
(X-X0) * (X-X1) * (X-X2)
]

Lo que tengo es:

1
2
3
4
5
x = Symbol("x")
 
a[0] = 1
for i in range(n-1):
    a[i+1] = (x-b[i][0]) * a[i]

Lo que me da:

1
2
3
4
5
[1,
x - X0,
(x - X1) * (x - X0),
(x - X2) * (x - X1)*(x - X0)
]

Lo que quisiera del código es que no tenga que definir el primer termino como lo hice, pero no encuentro la formula a seguir para poder programarla.
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
sin imagen de perfil
Val: 388
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Productoria

Publicado por Daniel (111 intervenciones) el 18/01/2020 19:38:29
Hola,

No sé si es esto lo que se busca:

1
2
3
4
5
6
X = [1, 2, 3]
S = (len(X)+1) * [1]
x = 4
 
for i in range(len(X)):
    S[i + 1] = (x - X[i]) * S[i]

Saludos,
Daniel Rodríguez.
Analytics Lane
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
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Productoria

Publicado por joel (901 intervenciones) el 18/01/2020 22:04:00
Hola Fernanda... haber si te sirve este código:

1
2
3
4
5
6
result=[""]
for i in range(3):
    result.append("{}{}(X-X{})".format(result[-1], "" if result[-1]=="" else " * " , i))
result[0]=1
 
print(result)

Te devuelve una lista:
1
[1, '(X-X0)', '(X-X0) * (X-X1)', '(X-X0) * (X-X1) * (X-X2)']
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