4 5
sumatorio a return sumatorio
k
k
Mmmm. Mal. Por una parte, nos han prohibido usar el operador efectuar el correspondiente cálculo de otro modo. Recuerda que ak =
E 1 2 3 4 5 6 7 8 9
10
k i=1
, así que tendremos que
a.
def exponencial a n sumatorio 0.0 for k in range n Cálculo de a elevado a k. numerador 1.0 for i in range 1 k 1 numerador a Adición de nuevo sumando al sumatorio. sumatorio numerador k return sumatorio
Y por otra parte, no hay operador factorial en Python. Tenemos que calcular el factorial explícitamente. Recuerda que
1 2 3 4 5 6 7 8 9
10 11 12 13 14
1 2 3 4 5 6 7 8 9
10 11
Corregimos el programa anterior:
k! =
k i=1
i.
def exponencial a n sumatorio 0.0 for k in range n Cálculo de a elevado a k. numerador 1.0 for i in range 1 k 1 numerador a Cálculo de k factorial. denominador 1.0 for i in range 1 k 1 denominador i Adición de nuevo sumando al sumatorio. sumatorio numerador denominador return sumatorio
Y ya está. La verdad es que no queda muy legible. Analiza esta otra versión:
def elevado a k productorio 1.0 for i in range 1 k 1 productorio a return productorio def factorial k productorio 1.0 for i in range 1 k 1 productorio i return productorio
Andrés Marzal / Isabel Gracia / Pedro García - ISBN: 978-84-697-1178-1
297
Introducción a la programación con Python 3 - UJI - DOI: http://dx.doi.org/10.6035/Sapientia93