[Tutor] getting error while solving a series that estimates the value of pi
surya k
suryak at live.com
Mon Jul 18 18:10:37 CEST 2011
Hi,
The problem is to estimate the value of pi using the following series.
*1 / pi = (( 2 * sqrt(2) )/ 9801 ) * SIGMA of k[ (4k)! (1103 + 26390*k) /
(k!^ 4 ) * 396^(4k) ]*
*where k is [0, infinity)*
* Problem is located at : ThinkPython Book, www.thinkpython.org
*Pg 89, Exercise 7.5, Think Python Book. *
*
*
the series should be considered till the last term of the sigma must be <
1e-15
I have written the below code :
*# program estimates the value of pi*
*# Ramanujan's series... *
*import math*
*
*
*def fact(n) : # def of factorial function.*
* if n > 0 : *
* return n * fact(n-1)*
* if n == 0 :*
* return 1*
*
*
*k = 0*
*tot = 0*
*temp1 = 0*
*while k >= 0 and temp1 == 0 :*
*
*
* a = ( 2 * math.sqrt(2) ) / 9801 # first term before sigma *
* nu = fact (4*k) * (1103 + (26390*k) ) # numerator of series*
* de = pow( fact(k), 4 ) * pow ( 396, 4*k ) # denominator of series*
* *
* if de / nu > 1e-15 : *
* temp = nu / de*
* tot = tot + temp*
* temp1 = 0 *
* k = k + 1 *
* elif de / nu == 1e-15 :*
* series = a * tot *
* k = k + 1*
* temp1 = 0*
* elif de / nu < 1e-15 :*
* print series*
* temp1 = 1*
I am getting the following error : which is completely surprising!
*Traceback (most recent call last):*
* File "pi.py", line 30, in <module>*
* print series*
*NameError: name 'series' is not defined*
*
*
Thus I have removed name 'series' and replaced with *a*tot, *
now I am getting this error
*Traceback (most recent call last):*
* File "pi.py", line 30, in <module>*
* print 1 / (a * tot)*
*ZeroDivisionError: float divisio*n
Thus I changed the first highlighted lines to
*nu = float (fact (4*k) * (1103 + (26390*k) ) )*
* de = float (pow( fact(k), 4 ) * pow ( 396, 4*k )) *
now I am getting
* Traceback (most recent call last):*
* File "pi.py", line 18, in <module>*
* de = float (pow( fact(k), 4 ) * pow ( 396, 4*k ) )*
*OverflowError: long int too large to convert to float*
*help me out of this problem, how could I fix this*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20110718/4fa83c90/attachment.html>
More information about the Tutor
mailing list