blob: ab3f9ea9f121442b5f5b21ea9cc6653ecf9e3aa2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# cython: profile=True
# calc_pi.pyx
cimport cython
@cython.profile(False)
cdef inline double recip_square(int i):
return 1. / (i * i)
def approx_pi(int n=10000000):
cdef double val = 0.
cdef int k
for k in range(1, n + 1):
val += recip_square(k)
return (6 * val) ** .5
|