Python - Suma sencilla en Python

   
Vista:

Suma sencilla en Python

Publicado por Gaussa (1 intervención) el 30/01/2016 23:32:01
Hola.

Intento realizar la suma en k de k*(factorial(n)/(factorial(k)*factorial(n-k))) en Python. Intento usar la función sum(), haciendo lo siguiente:

1
sum(k*(factorial(n)/(factorial(k)*factorial(n-k))) for k in range(1, n))

Pero me sale error. En cambio, si en lugar de n doy el número, sí que me sale. Esa suma debería saber calcularla, pues la hago en el programa Mathematica y sí me da el resultado que tiene que salir. Pero aquí sólo me da errores.

Por otra parte, he intentado también realizarlo con un bucle y prescindir de la función sum(), pero tampoco:

1
2
suma = 0
for k in range(0,n): suma = k*(factorial(n)/(factorial(k)*factorial(n-k)))+ suma

¿Alguien sabe qué está ocurriendo?

Muchas gracias!
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

Suma sencilla en Python

Publicado por dario (53 intervenciones) el 01/02/2016 05:44:06
Prueba con este codigo.

1
2
3
4
5
6
7
8
9
10
from math import factorial
 
def prueba(n):
    suma = 0
    for k in range(0,n):
        suma = k*(factorial(n)/(factorial(k)*factorial(n-k)))+ suma
    return suma
 
n = 10
print(prueba(n))

Te sirvio?
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